cavi-ai/
GitHub ↗

@cavi-ai/api-client/core/transport/node

Package subpath: ./core/transport/node

createStdioTransport#

Kind: function

ts
export declare function createStdioTransport(options: StdioTransportOptions): TransportByteChannel & Readonly<{
    closed: Promise<void>;
}>;

createUnixSocketTransport#

Kind: function

ts
export declare function createUnixSocketTransport(options: UnixSocketTransportOptions): TransportByteChannel & Readonly<{
    ready: Promise<void>;
    closed: Promise<void>;
}>;

StdioChildLike#

Kind: interface

ts
export interface StdioChildLike {
    readonly stdin: {
        write(chunk: Uint8Array): boolean;
        end(): void;
        once(event: "drain", listener: () => void): void;
    };
    readonly stdout: {
        on(event: "data", listener: (chunk: Uint8Array) => void): void;
    };
    readonly stderr: {
        on(event: "data", listener: (chunk: Uint8Array) => void): void;
    } | null;
    once(event: "error" | "exit", listener: (...args: unknown[]) => void): void;
    kill(signal?: string): boolean;
}

StdioSpawn#

Kind: type

ts
export type StdioSpawn = (command: string, args: readonly string[], options: {
    cwd?: string;
    env?: Readonly<Record<string, string>>;
}) => StdioChildLike;

StdioTransportOptions#

Kind: type

ts
export type StdioTransportOptions = Readonly<{
    command: string;
    args?: readonly string[];
    cwd?: string;
    env?: Readonly<Record<string, string>>;
    stderr?: "ignore" | "inherit" | ((chunk: Uint8Array) => void);
    signal?: AbortSignal;
    spawnImpl?: StdioSpawn;
}>;

UnixSocketConnect#

Kind: type

ts
export type UnixSocketConnect = (path: string) => UnixSocketLike;

UnixSocketLike#

Kind: interface

ts
export interface UnixSocketLike {
    write(chunk: Uint8Array): boolean;
    end(): void;
    destroy(error?: Error): void;
    on(event: "connect" | "drain" | "end" | "close", listener: () => void): void;
    on(event: "data", listener: (chunk: Uint8Array) => void): void;
    on(event: "error", listener: (error: Error) => void): void;
}

UnixSocketTransportOptions#

Kind: type

ts
export type UnixSocketTransportOptions = Readonly<{
    path: string;
    reconnect?: TransportReconnectPolicy;
    signal?: AbortSignal;
    connectImpl?: UnixSocketConnect;
    dependencies?: Partial<TransportDependencies>;
}>;