import { Type } from "typebox"; /** * Gateway state snapshot schemas. * * Snapshots are sent during hello and later event streams; they summarize node * presence, health, session defaults, and version counters for clients. */ /** One gateway-visible presence record for a node/client/runtime. */ export declare const PresenceEntrySchema: Type.TObject<{ host: Type.TOptional; ip: Type.TOptional; version: Type.TOptional; platform: Type.TOptional; deviceFamily: Type.TOptional; modelIdentifier: Type.TOptional; mode: Type.TOptional; lastInputSeconds: Type.TOptional; reason: Type.TOptional; tags: Type.TOptional>; text: Type.TOptional; ts: Type.TInteger; deviceId: Type.TOptional; roles: Type.TOptional>; scopes: Type.TOptional>; instanceId: Type.TOptional; }>; /** Health snapshot is intentionally opaque because providers contribute nested shapes. */ export declare const HealthSnapshotSchema: Type.TAny; /** Default session routing keys included in initial gateway snapshots. */ export declare const SessionDefaultsSchema: Type.TObject<{ defaultAgentId: Type.TString; mainKey: Type.TString; mainSessionKey: Type.TString; scope: Type.TOptional; }>; /** Monotonic version counters for snapshot subtrees. */ export declare const StateVersionSchema: Type.TObject<{ presence: Type.TInteger; health: Type.TInteger; }>; /** Initial and incremental gateway state snapshot payload. */ export declare const SnapshotSchema: Type.TObject<{ presence: Type.TArray; ip: Type.TOptional; version: Type.TOptional; platform: Type.TOptional; deviceFamily: Type.TOptional; modelIdentifier: Type.TOptional; mode: Type.TOptional; lastInputSeconds: Type.TOptional; reason: Type.TOptional; tags: Type.TOptional>; text: Type.TOptional; ts: Type.TInteger; deviceId: Type.TOptional; roles: Type.TOptional>; scopes: Type.TOptional>; instanceId: Type.TOptional; }>>; health: Type.TAny; stateVersion: Type.TObject<{ presence: Type.TInteger; health: Type.TInteger; }>; uptimeMs: Type.TInteger; configPath: Type.TOptional; stateDir: Type.TOptional; sessionDefaults: Type.TOptional; }>>; authMode: Type.TOptional, Type.TLiteral<"token">, Type.TLiteral<"password">, Type.TLiteral<"trusted-proxy">]>>; updateAvailable: Type.TOptional>; }>;