/** * RuntimeEventMap, master mapping of all typed runtime event types to their payloads. * * Used by RuntimeEventBus for type-safe subscriptions. Combine all domain * discriminated union members into a single flat map keyed by the type string. */ import type { SessionEvent } from './session.js'; import type { TurnEvent } from './turn.js'; import type { ProviderEvent } from './providers.js'; import type { ToolEvent } from './tools.js'; import type { TaskEvent } from './tasks.js'; import type { AgentEvent } from './agents.js'; import type { WorkflowEvent } from './workflows.js'; import type { OrchestrationEvent } from './orchestration.js'; import type { CommunicationEvent } from './communication.js'; import type { PlannerEvent } from './planner.js'; import type { PermissionEvent } from './permissions.js'; import type { PluginEvent } from './plugins.js'; import type { McpEvent } from './mcp.js'; import type { TransportEvent } from './transport.js'; import type { CompactionEvent } from './compaction.js'; import type { GoodVibesUIEvent as UIEvent } from './ui.js'; import type { OpsEvent } from './ops.js'; import type { ForensicsEvent } from './forensics.js'; import type { SecurityEvent } from './security.js'; import type { AutomationEvent } from './automation.js'; import type { RouteEvent } from './routes.js'; import type { ControlPlaneEvent } from './control-plane.js'; import type { DeliveryEvent } from './deliveries.js'; import type { WatcherEvent } from './watchers.js'; import type { SurfaceEvent } from './surfaces.js'; import type { KnowledgeEvent } from './knowledge.js'; import type { WorkspaceEvent } from './workspace.js'; import type { FleetEvent } from './fleet.js'; import type { ConfigEvent } from './config.js'; /** Union of all runtime domain events. */ export type AnyRuntimeEvent = SessionEvent | TurnEvent | ProviderEvent | ToolEvent | TaskEvent | AgentEvent | WorkflowEvent | OrchestrationEvent | CommunicationEvent | PlannerEvent | PermissionEvent | PluginEvent | McpEvent | TransportEvent | CompactionEvent | UIEvent | OpsEvent | ForensicsEvent | SecurityEvent | AutomationEvent | RouteEvent | ControlPlaneEvent | DeliveryEvent | WatcherEvent | SurfaceEvent | KnowledgeEvent | WorkspaceEvent | FleetEvent | ConfigEvent; /** * Utility type that maps an event type discriminant to its full event shape. * * Example: * ```ts * type Payload = RuntimeEventPayload<'TURN_SUBMITTED'>; * // => { type: 'TURN_SUBMITTED'; turnId: string; prompt: string } * ``` */ export type RuntimeEventPayload = Extract; export { RUNTIME_EVENT_DOMAINS, isRuntimeEventDomain, } from '@pellux/goodvibes-contracts'; export type { RuntimeEventDomain } from '@pellux/goodvibes-contracts'; /** Map from domain label to its event union type. */ export type DomainEventMap = { session: SessionEvent; turn: TurnEvent; providers: ProviderEvent; tools: ToolEvent; tasks: TaskEvent; agents: AgentEvent; workflows: WorkflowEvent; orchestration: OrchestrationEvent; communication: CommunicationEvent; planner: PlannerEvent; permissions: PermissionEvent; plugins: PluginEvent; mcp: McpEvent; transport: TransportEvent; compaction: CompactionEvent; ui: UIEvent; ops: OpsEvent; forensics: ForensicsEvent; security: SecurityEvent; automation: AutomationEvent; routes: RouteEvent; 'control-plane': ControlPlaneEvent; deliveries: DeliveryEvent; watchers: WatcherEvent; surfaces: SurfaceEvent; knowledge: KnowledgeEvent; workspace: WorkspaceEvent; fleet: FleetEvent; config: ConfigEvent; }; /** Transport-layer runtime event record type. */ export type { RuntimeEventRecord } from '@pellux/goodvibes-contracts'; //# sourceMappingURL=domain-map.d.ts.map