import type { ClassifiedLiveMap, DocumentLiveMap, LiveMapRootMode } from "../../types/livemap.types.js"; import type { LocusRecoveryPlanner, LocusSelector, LocusSnapshotEnvelope } from "../../types/locus.types.js"; export declare const LOCUS_BOOTSTRAP_FORMAT: "hson-locus-bootstrap"; export declare const LOCUS_BOOTSTRAP_MEDIA_TYPE: "application/vnd.hson-live.locus-bootstrap+hson"; export declare const DEFAULT_LOCUS_BOOTSTRAP_MAX_BYTES: number; export declare const DEFAULT_LOCUS_BOOTSTRAP_MAX_GRAPH_DEPTH = 256; export declare const DEFAULT_LOCUS_BOOTSTRAP_MAX_GRAPH_NODES = 100000; export type LocusBootstrapState = Readonly<{ format: "hson"; payload: string; }>; export type LocusBootstrapContinuation = Readonly<{ transport: "websocket"; endpoint: string; capabilities: Readonly<{ hsonSnapshots: true; }>; }>; export type LocusBootstrap = Readonly<{ format: typeof LOCUS_BOOTSTRAP_FORMAT; locusSelector: LocusSelector; logicalMapId: string; incarnationId: string; mode: LiveMapRootMode; rev: number; state: LocusBootstrapState; continuation: LocusBootstrapContinuation; }>; export type LocusBootstrapCodecOptions = Readonly<{ maxBytes?: number; maxGraphDepth?: number; maxGraphNodes?: number; }>; export type LocusBootstrapErrorCode = "LOCUS_BOOTSTRAP_MALFORMED_HSON" | "LOCUS_BOOTSTRAP_ENVELOPE_INVALID" | "LOCUS_BOOTSTRAP_FORMAT_UNSUPPORTED" | "LOCUS_BOOTSTRAP_SELECTOR_INVALID" | "LOCUS_BOOTSTRAP_IDENTITY_INVALID" | "LOCUS_BOOTSTRAP_REVISION_INVALID" | "LOCUS_BOOTSTRAP_MODE_INVALID" | "LOCUS_BOOTSTRAP_STATE_INVALID" | "LOCUS_BOOTSTRAP_CONTINUATION_INVALID" | "LOCUS_BOOTSTRAP_TOO_LARGE" | "LOCUS_BOOTSTRAP_GRAPH_LIMIT_EXCEEDED" | "LOCUS_BOOTSTRAP_CAPTURE_FAILED"; export declare class LocusBootstrapError extends Error { readonly code: LocusBootstrapErrorCode; readonly cause?: unknown | undefined; constructor(code: LocusBootstrapErrorCode, message: string, cause?: unknown | undefined); } export type LocusBootstrapInstall = Readonly<{ bootstrap: LocusBootstrap; map: ClassifiedLiveMap; recovery: Readonly<{ logicalMapId: string; cursor: Readonly<{ incarnationId: string; lastAppliedRev: number; }>; }>; }>; /** Minimum authority surface required for one canonical bootstrap cut. */ export type LocusBootstrapAuthority = Readonly<{ stream: Readonly<{ logicalMapId: string; }>; recovery: LocusRecoveryPlanner; }>; /** Encode one fully validated current HTTP bootstrap package as canonical Hson text. */ export declare function encode_locus_bootstrap(bootstrap: LocusBootstrap, options?: LocusBootstrapCodecOptions): string; /** Decode and completely validate one current HTTP bootstrap package. */ export declare function decode_locus_bootstrap(encoded: string, options?: LocusBootstrapCodecOptions): LocusBootstrap; /** Capture a single exact authority cut using the established recovery planner. */ export declare function capture_locus_bootstrap(authority: LocusBootstrapAuthority, locusSelector: LocusSelector, websocketEndpoint: string, options?: LocusBootstrapCodecOptions): LocusBootstrap; /** Install a validated detached mirror and its exact existing-recovery cursor. */ export declare function install_locus_bootstrap(bootstrap: LocusBootstrap, options?: LocusBootstrapCodecOptions): LocusBootstrapInstall; /** Install a detached semantic document snapshot without transport or session metadata. */ export declare function install_locus_snapshot(snapshot: Extract & Readonly<{ mode: "document"; }>, options?: LocusBootstrapCodecOptions): Readonly<{ map: DocumentLiveMap; recovery: Readonly<{ logicalMapId: string; cursor: Readonly<{ incarnationId: string; lastAppliedRev: number; }>; }>; }>; //# sourceMappingURL=locus.bootstrap.d.ts.map