import { Takeover } from "./keys.js"; import { Schema } from "./schema.js"; //#region src/registry-bodies.d.ts interface RegisterBody { clientId: string; secret: string; namespaces: string[]; advertiseUrl: string; headroom: number; draining: boolean; challenge: string; challengeValue: string; hostname?: string | undefined; env?: string | undefined; envs?: Record | undefined; takeover?: Takeover | undefined; epoch?: number | undefined; instances?: Record | undefined; prevSessionId?: string | undefined; } declare const registerSchema: Schema; /** Validates and lowercases a registered hostname or env; "*" is reserved * for single-hostname mode. */ declare const validateWorldSegment: (kind: "hostname" | "env", raw: string) => string; interface HeartbeatBody { sessionId: string; headroom: number; draining: boolean; challenge: string; challengeValue: string; acks?: string[] | undefined; } declare const heartbeatSchema: Schema; declare const releaseItemSchema: Schema<{ sessionId: string; namespace: string; id: string; epoch?: string | undefined; }>; declare const deregisterSchema: Schema<{ sessionId: string; }>; declare const windDownSchema: Schema<{ namespace: string; id?: string | undefined; deadline: number | null; env?: string | undefined; }>; declare const drainSchema: Schema<{ clientId: string; deadline: number | null; }>; declare const undrainSchema: Schema<{ clientId: string; }>; //#endregion export { HeartbeatBody, RegisterBody, deregisterSchema, drainSchema, heartbeatSchema, registerSchema, releaseItemSchema, undrainSchema, validateWorldSegment, windDownSchema }; //# sourceMappingURL=registry-bodies.d.ts.map