export interface StartArgs { action: "start"; command: string; cwd?: string; name?: string; } export interface StopArgs { action: "stop"; id?: string; } export interface StdinArgs { action: "stdin"; id: string; data: string; } export interface StdoutArgs { action: "stdout"; id: string; lines?: number; } export interface StreamArgs { action: "stream"; id: string; since_last?: boolean; strip_ansi?: boolean; } export interface TermSizeArgs { action: "term-size"; id: string; } export interface ResizeArgs { action: "resize"; id: string; cols: number; rows: number; } export interface AttachArgs { action: "attach"; id: string; } export interface DetachArgs { action: "detach"; id: string; } export interface ListArgs { action: "list"; } export interface KillServerArgs { action: "kill-server"; } export interface VersionArgs { action: "version"; } export type Args = StartArgs | StopArgs | StdinArgs | StdoutArgs | StreamArgs | TermSizeArgs | ResizeArgs | AttachArgs | DetachArgs | ListArgs | KillServerArgs | VersionArgs; export interface AttachResult { cols: number; rows: number; rawOutput?: string; } export interface TermSizeResult { rows: number; cols: number; scrollback_lines: number; } export interface ServerRequest { id: string; type: "request"; args: Args; } export interface ServerResponse { id: string; type: "response"; result?: string | AttachResult | TermSizeResult; error?: string; } export interface OutputEvent { event: "output"; sessionId: string; data: string; } export interface ResizeEvent { event: "resize"; sessionId: string; cols: number; rows: number; } export interface ExitEvent { event: "exit"; sessionId: string; exitCode: number; } export type ServerEvent = { type: "event"; } & (OutputEvent | ResizeEvent | ExitEvent); export type ServerMessage = ServerResponse | ServerEvent; export declare function createRequest(args: Args): ServerRequest; //# sourceMappingURL=messages.d.ts.map