import type { BoundarySchema } from './boundaryDecoder'; export interface PaneDaemonEndpoint { transport: 'pipe' | 'unix'; path: string; } interface InvokeOptions { paneDir?: string; /** `Infinity` waits as long as the call takes, for requests that wait on a person. */ timeoutMs?: number; eventInclude?: string[] | null; } export declare class PaneDaemonClientError extends Error { readonly code?: string | undefined; readonly connectionFailure: boolean; readonly next?: string | undefined; constructor(message: string, code?: string | undefined, connectionFailure?: boolean, next?: string | undefined); } export declare function resolvePaneDirectory(paneDir?: string): string; export declare function getPaneDaemonEndpoint(appDirectory: string, platform?: NodeJS.Platform): PaneDaemonEndpoint; /** Another machine's Pane, reached through `tailscale serve` (see `runpane workspace`). */ export interface RemoteDaemonTarget { machine: string; baseUrl: string; } /** Sends every later daemon call in this process to another machine (`runpane workspace `). */ export declare function routeDaemonCallsTo(target: RemoteDaemonTarget | null): void; export declare function invokeRemoteDaemon(target: RemoteDaemonTarget, channel: string, args: unknown[], resultSchema: BoundarySchema, timeoutMs?: number): Promise; export declare function invokeDaemon(channel: string, args: unknown[] | undefined, resultSchema: BoundarySchema, options?: InvokeOptions): Promise; export {}; //# sourceMappingURL=daemonClient.d.ts.map