import type { EventBus } from "@voyant-travel/core"; import type { PostgresJsDatabase } from "drizzle-orm/postgres-js"; export declare const setUpdated: { updatedAt: Date; }; export declare function paginate(query: { limit: number; offset: number; }): { limit: number; offset: number; }; export interface CruiseMutationRuntime { eventBus?: EventBus; /** Require the local search projection to commit with the canonical write. */ projection?: "best-effort" | "required"; } /** Project a cruise and propagate failure so a surrounding transaction can roll back. */ export declare function reprojectCruise(db: PostgresJsDatabase, cruiseId: string): Promise; /** * Re-project a cruise into cruise_search_index after a mutation. Errors are * swallowed and logged; the search index is best-effort and never blocks the * underlying mutation. */ export declare function reprojectIfPossible(db: PostgresJsDatabase, cruiseId: string | null): Promise;