import type { JsonValue } from "../../core/types.js"; import type { LiveMapLibraries } from "../../types/livemap.types.js"; import type { LocusActionAuthorizer, LocusActionPayloads, LocusClientActionResult, LocusConnectionContext, LocusDisposer, LocusSessionId, LocusSessionOptions, LocusActionDedupeOptions, LocusSchema, LocusSocketLike } from "../../types/locus.types.js"; import { make_locus_action_dedupe_store } from "./locus.actions.js"; import { make_locus_session_manager } from "./locus.session.js"; import { type LocusHostedAggregate, type LocusHostedAggregateAction, type LocusHostedAggregateGateInput } from "./locus.hosted-multi-library.js"; /** The established Locus retained live-history budget. */ export declare const DEFAULT_LOCUS_HOSTED_AGGREGATE_HISTORY_BYTES: number; export type LocusHostedAggregateSocketOptions = Readonly<{ map: LiveMapLibraries; actions?: Readonly>; gate?: (input: LocusHostedAggregateGateInput) => void | Promise; maxWireBytes?: number; maxHistoryBytes?: number; authorizeAction?: LocusActionAuthorizer; sessionId?: LocusSessionId | (() => LocusSessionId); sessions?: LocusSessionOptions; actionDedupe?: LocusActionDedupeOptions; schema?: Pick, "actions">; /** Internal deterministic interleave seam for pending-live proof coverage. */ internal?: Readonly<{ afterRecoveryCut?: () => void | Promise; beforeRecoveryCaughtUp?: () => void | Promise; afterRecoveryCaughtUp?: () => void | Promise; acquireActionActivity?: () => LocusDisposer; acquireSessionActivity?: () => LocusDisposer; acquireConnectionActivity?: () => LocusDisposer; acquireRecoveryActivity?: () => LocusDisposer; }>; }>; export type LocusHostedAggregateSocketServer = Readonly<{ map: LiveMapLibraries; readonly logicalMapId: string; readonly incarnationId: string; readonly registryDigest: string; readonly rev: number; connect: (socket: LocusSocketLike, context?: LocusConnectionContext) => LocusDisposer; mutate: LocusHostedAggregate["mutate"]; dispatch_action: LocusHostedAggregate["dispatch_action"]; dispatch_message: (message: import("../../types/locus.types.js").LocusClientActionMessage) => Promise; sessions: Readonly<{ debug: ReturnType["debug"]; onChange: ReturnType["onChange"]; dispose: () => void; }>; actionRequests: Readonly<{ debug: ReturnType["debug"]; dispose: () => void; }>; /** Ordered internal barrier used by persistence checkpointing. */ run_exclusive: LocusHostedAggregate["run_exclusive"]; debug: () => Readonly<{ historyBaseRevision: number; retainedHistoryBytes: number; retainedCommits: number; connections: number; effectiveLiveWireBytes: number; effectiveSnapshotWireBytes: number; }>; dispose: () => void; }>; /** * Aggregate transport authority. It deliberately owns one aggregate * Locus, one global retained history and one map-wide recovery cut; it does * not route a library through the legacy solo Locus representation. */ export declare function create_locus_hosted_aggregate_socket_internal(options: LocusHostedAggregateSocketOptions): LocusHostedAggregateSocketServer; //# sourceMappingURL=locus.hosted-multi-library.socket.d.ts.map