*/ public function fetchPosts(int $page, ?PostFilterDTO $filters, ?PostOrderDTO $orderDef): PaginableResource; public function findPost(int $id): ?Post; /** * @param array $data * @return Post */ public function storePost(array $data): Post; /** * @param array $data */ public function updatePost(array $data, int $id): ?Post; public function deletePost(int $id): bool; }