, total: int} * * @since 0.1.0 */ public function list_for_admin( int $limit, int $offset ): array; /** * Find a form by id. * * @param int $id Form id. */ public function find_by_id( int $id ): ?BookingForm; /** * Find a form by slug. * * @param string $slug Unique slug. */ public function find_by_slug( string $slug ): ?BookingForm; /** * Persist a form (insert or update). * * @param BookingForm $form Form entity. */ public function save( BookingForm $form ): void; /** * Delete a form permanently. * * @param int $id Form id. */ public function delete( int $id ): void; /** * Stored forms. Used for edition ceilings. * * @since 0.26.0 */ public function count_stored(): int; }