/** * MessengerAdapter — the contract every messaging adapter must fulfill. * * Adapters are independent processes. They implement this interface * structurally by registering IPC handlers that match these method * signatures. The interface exists for documentation and for the * adapter scaffold generator. */ export interface MessengerAdapter { readonly name: string; readonly displayName: string; readonly version: string; start(config: AdapterConfig): Promise; stop(): Promise; health(): Promise; login(): Promise; connectionStatus(): Promise; sendText(text: string, recipient?: string): Promise; sendVoice(audioPath: string, recipient?: string): Promise; sendFile(filePath: string, caption?: string, mimetype?: string, recipient?: string): Promise; sendImage(imagePath: string, caption?: string, recipient?: string): Promise; } export interface AdapterConfig { appDir: string; socketPath: string; hubSocketPath: string; settings: Record; } export type AdapterConnectionStatus = "connected" | "connecting" | "disconnected" | "error"; export interface AdapterHealth { status: "ok" | "degraded" | "down"; connectionStatus: AdapterConnectionStatus; stats: { messagesReceived: number; messagesSent: number; errors: number; }; lastMessageAgo: number | null; detail?: string; } //# sourceMappingURL=adapter.d.ts.map