$places * * @throws Exception */ public function countDocForAccompanyingPeriod(AccompanyingPeriod $accompanyingPeriod, ?\DateTimeImmutable $startDate = null, ?\DateTimeImmutable $endDate = null, ?string $content = null, array $places = []): int; public function countDocForPerson(Person $person, ?\DateTimeImmutable $startDate = null, ?\DateTimeImmutable $endDate = null, ?string $content = null, array $places = []): int; /** * @param list $places places to search. When empty, search in all places * * @return iterable * * @throws Exception */ public function findDocForAccompanyingPeriod(AccompanyingPeriod $accompanyingPeriod, int $offset = 0, int $limit = 20, ?\DateTimeImmutable $startDate = null, ?\DateTimeImmutable $endDate = null, ?string $content = null, array $places = []): iterable; /** * @param list $places places to search. When empty, search in all places * * @return iterable */ public function findDocForPerson(Person $person, int $offset = 0, int $limit = 20, ?\DateTimeImmutable $startDate = null, ?\DateTimeImmutable $endDate = null, ?string $content = null, array $places = []): iterable; public function placesForPerson(Person $person): array; public function placesForAccompanyingPeriod(AccompanyingPeriod $accompanyingPeriod): array; public function isGenericDocNormalizable(GenericDocDTO $genericDocDTO, string $format, array $context = []): bool; /** * @return array{title: string, html?: string} */ public function normalizeGenericDoc(GenericDocDTO $genericDocDTO, string $format, array $context = []): array; public function buildOneGenericDoc(string $key, array $identifiers): ?GenericDocDTO; /** * @throws AssociatedStoredObjectNotFound if no stored object can be found */ public function fetchStoredObject(GenericDocDTO $genericDocDTO): StoredObject; }