export type Answer = { "answer": "preview"; route: PreviewRoute; } | { "answer": "terminal"; plan: TerminalPlan; member?: string; } | { "answer": "pong"; }; export type Certificate = { certificate: string; privateKey: string; }; export type Endpoint = { host: string; port: number; }; export type FromNode = { "kind": "hello"; build: string; pid: number; generation?: number; } | { "kind": "listen"; config: ListenConfig; } | { "kind": "certificate"; certificate?: Certificate; } | { "kind": "tunnel"; tunnel?: TunnelConfig; } | { "kind": "ask"; id: number; question: NetdQuestion; } | { "kind": "answer"; id: number; answer: Answer; } | { "kind": "refused"; id: number; message: string; } | { "kind": "revoke"; member?: string; } | { "kind": "watch"; checkout: WatchedCheckout; } | { "kind": "unwatch"; dir: string; }; export type ListenConfig = { daemon: Endpoint; preview?: Endpoint; loopback?: Endpoint; sandboxId?: string; frameAncestors: Array; previewProbePath: string; }; export type NetdAnswer = { "answer": "sync"; generations: Array; }; export type NetdHeader = "x-intentic-preview" | "x-intentic-preview-unreachable" | "x-intentic-listener"; export type NetdQuestion = { "question": "sync"; dirs: Array; }; export type Page = { status: number; headers: { [key in string]: string; }; body: string; }; export type PreviewRoute = { "to": "upstream"; upstream: Upstream; } | { "to": "page"; page: Page; } | { "to": "outbox"; }; export type Question = { "question": "preview"; host: string; probe: boolean; } | { "question": "terminal"; query: string; } | { "question": "ping"; }; export type Scheme = "http" | "https"; export type TerminalPlan = { "plan": "session"; name: string; createIn?: string; } | { "plan": "tail"; path: string; } | { "plan": "exit"; code: number; reason: string; } | { "plan": "refused"; code: number; reason: string; }; export type ToNode = { "kind": "ask"; id: number; question: Question; } | { "kind": "answer"; id: number; answer: NetdAnswer; } | { "kind": "refused"; id: number; message: string; } | { "kind": "tunnel"; connected: boolean; reason?: string; refused?: TunnelRefusal; } | { "kind": "hiddenLine"; session: string; prompt: string; value: string; }; export type TunnelConfig = { url: string; grant: string; bulk: Array; }; export type TunnelRefusal = { "refusal": "elsewhere"; host: string; } | { "refusal": "deleted"; }; export type Upstream = { host: string; port: number; scheme: Scheme; localhost: boolean; frameable: boolean; }; export type WatchedCheckout = { dir: string; gitDir: string; commonDir: string; }; //# sourceMappingURL=wire.d.ts.map