export interface Transport { id: string; connect(): Promise; disconnect(): Promise; send(data: Uint8Array): Promise; onData?: (data: Uint8Array) => void; onError?: (error: Error) => void; onClose?: () => void; } export interface TransportCallbacks { onWrite?: (data: Uint8Array) => void; onClose?: () => void; } /** * WebSocketTransport implements Transport over WebSocket */ export declare class WebSocketTransport implements Transport { id: string; private ws; private url; private protocols?; private callbacks; onData?: (data: Uint8Array) => void; onError?: (error: Error) => void; onClose?: () => void; constructor(id: string, url: string, protocols?: string | string[]); connect(): Promise; disconnect(): Promise; send(data: Uint8Array): Promise; setCallbacks(callbacks: TransportCallbacks): void; } /** * CustomTransport allows implementing custom transport mechanisms */ export declare class CustomTransport implements Transport { id: string; private isConnected; onData?: (data: Uint8Array) => void; onError?: (error: Error) => void; onClose?: () => void; private connectImpl?; private disconnectImpl?; private sendImpl?; constructor(id: string, connectImpl?: () => Promise, disconnectImpl?: () => Promise, sendImpl?: (data: Uint8Array) => Promise); connect(): Promise; disconnect(): Promise; send(data: Uint8Array): Promise; injectData(data: Uint8Array): void; } /** * TransportManager manages the bridge between JavaScript transports and WASM */ export declare class TransportManager { private static instance; private transports; private wasmInstance; private constructor(); static getInstance(): TransportManager; setWasmInstance(wasmInstance: any): void; createTransport(transport: Transport): Promise; closeTransport(id: string): Promise; getTransport(id: string): Transport | undefined; } //# sourceMappingURL=transport.d.ts.map