trellis
Version:
Agentic State Engine — event-sourced causal graph with branching, decision traces, and realtime sync for AI-native applications
41 lines • 1.27 kB
TypeScript
/**
* WebSocket Sync Transport
*
* Implements SyncTransport over WebSocket for real-time peer sync.
* Uses Bun's native WebSocket support for both server and client.
*
* @module trellis/sync
*/
import type { SyncTransport, SyncMessage, SyncMessageHandler, PeerId } from './types.js';
export declare class WebSocketSyncTransport implements SyncTransport {
private localPeerId;
private connections;
private knownPeers;
private messageHandler;
constructor(localPeerId: string);
/**
* Connect to a remote peer's WebSocket endpoint.
*/
connect(peerId?: string, url?: string, name?: string): Promise<void>;
/**
* Accept an incoming WebSocket connection (server side).
*/
acceptConnection(peerId: string, ws: WebSocket): void;
send(peerId: string, message: SyncMessage): Promise<void>;
onMessage(handler: SyncMessageHandler): void;
peers(): PeerId[];
/**
* Disconnect from a peer.
*/
disconnect(peerId?: string): Promise<void>;
/**
* Disconnect from all peers.
*/
disconnectAll(): void;
/**
* Check if connected to a specific peer.
*/
isConnected(peerId: string): boolean;
getLocalPeerId(): string;
}
//# sourceMappingURL=ws-transport.d.ts.map