| 1 | <?php  | 
            ||
| 19 | abstract class AbstractDocument implements DocumentInterface  | 
            ||
| 20 | { | 
            ||
| 21 | /**  | 
            ||
| 22 | * get fields  | 
            ||
| 23 | *  | 
            ||
| 24 | * @return array  | 
            ||
| 25 | */  | 
            ||
| 26 | abstract protected function getFields(): array;  | 
            ||
| 27 | |||
| 28 | /**  | 
            ||
| 29 | * to json  | 
            ||
| 30 | *  | 
            ||
| 31 | * @return string  | 
            ||
| 32 | */  | 
            ||
| 33 | 5 | public function toJson(): string  | 
            |
| 57 | |||
| 58 | /**  | 
            ||
| 59 | * to snake case  | 
            ||
| 60 | *  | 
            ||
| 61 | * @param string $string  | 
            ||
| 62 | *  | 
            ||
| 63 | * @return string  | 
            ||
| 64 | */  | 
            ||
| 65 | 4 | private function toSnakeCase(string $string): string  | 
            |
| 69 | }  | 
            ||
| 70 |