import type { GatewayEventDescriptor } from './method-catalog-shared.js'; /** * The discriminated `event` values carried inside every `session-update` wire frame. * * The SharedSessionBroker collapses ALL of its lifecycle signals onto a single wire event * named `session-update` (session-broker.ts `publishUpdate`); the real lifecycle name lives * in the frame's `payload.event` field. This list is the source of truth for that * discriminant and is documented by the `control.session_update` descriptor below so a * subscriber (webui/TUI) can switch on `payload.event` against a contract-backed enum * instead of guessing from undocumented behavior. * * NOTE (One-Platform S1 coordination): new broker signals flow through the SAME * `session-update` wire channel automatically because `publishUpdate` is generic, when * S1's `sessions.register` flow emits e.g. `session-registered`, only THIS enum needs the * added string (the wire channel already carries it). Keep this list aligned with the * broker's publishUpdate/publishInputLifecycleEvent call sites. */ export declare const SESSION_UPDATE_WIRE_EVENTS: readonly ["session-created", "session-closed", "session-deleted", "session-reopened", "session-agent-bound", "session-agent-completed", "session-message-appended", "session-message-forwarded", "session-route-attached", "session-detached", "session-input-queued", "session-input-queued-for-surface", "session-input-delivered", "session-input-spawned", "session-input-completed", "session-input-failed", "session-input-rejected", "session-input-cancelled", "session-follow-up-queued", "session-follow-up-spawned"]; /** * Maps each cross-surface invalidation intent to the concrete `payload.event` value(s) a * subscriber must react to. Documented in the descriptor so the webui/TUI do not guess. */ export declare const SESSION_UPDATE_INTENT_MAP: { readonly created: readonly ["session-created"]; readonly updated: readonly ["session-message-appended", "session-agent-completed", "session-route-attached", "session-detached", "session-reopened"]; readonly steered: readonly ["session-input-queued-for-surface", "session-input-delivered", "session-message-forwarded"]; readonly closed: readonly ["session-closed"]; readonly deleted: readonly ["session-deleted"]; }; /** * The lifecycle names carried in a `hosted-session-update` frame's * `payload.event`. Kept beside the descriptor so a subscriber switches on a * contract-backed list rather than guessing from observed behavior. */ export declare const HOSTED_SESSION_UPDATE_WIRE_EVENTS: readonly ["hosted-session-created", "hosted-session-attached", "hosted-session-detached", "hosted-session-turn-started", "hosted-session-turn-ended", "hosted-session-terminated", "hosted-session-restored"]; export declare const builtinGatewayEventDescriptors: readonly GatewayEventDescriptor[]; //# sourceMappingURL=method-catalog-events.d.ts.map