/** * Process-local registry of cruise adapters. * * Templates register adapters at app startup: * * import { registerCruiseAdapter } from "@voyant-travel/cruises/adapters" * import { createCruiseAdapter } from "external-cruise-adapter" * * registerCruiseAdapter(createCruiseAdapter({ token: env.CRUISE_ADAPTER_TOKEN })) * * The route layer resolves an adapter by `sourceProvider` (the prefix in the * unified key `:`) before dispatching detail reads, refresh, * detach, or the external booking commit. * * The registry is intentionally a plain Map. There's no per-tenant scoping — * each Voyant deployment is single-tenant. Tests can reset state via * `clearCruiseAdapters()`. */ import type { CruiseAdapter } from "./index.js"; export declare function registerCruiseAdapter(adapter: CruiseAdapter): void; export declare function unregisterCruiseAdapter(name: string): boolean; export declare function clearCruiseAdapters(): void; export declare function resolveCruiseAdapter(name: string): CruiseAdapter | undefined; export declare function listCruiseAdapters(): CruiseAdapter[]; export declare function hasCruiseAdapter(name: string): boolean;