import { type TerminalStreamFrame } from "@getpaseo/protocol/binary-frames/index"; import type { TerminalState } from "@getpaseo/protocol/messages"; export type TerminalStreamEvent = { terminalId: string; subscriptionId: string; } & ({ type: "output"; data: Uint8Array; } | { type: "snapshot"; state: TerminalState; } | { type: "restore"; data: Uint8Array; }); export declare class TerminalStreamRouter { private readonly slots; private readonly listeners; /** Passive wire diagnostics. App state consumes the registration's callback. */ onEvent(handler: (event: TerminalStreamEvent) => void): () => void; attach(subscriptionId: string, terminalId: string, slot: number, receive: (event: TerminalStreamEvent) => void): () => void; clearSlots(): void; handleFrame(frame: TerminalStreamFrame): void; } //# sourceMappingURL=terminal-stream-router.d.ts.map