import type { Config } from '../config/schema.js'; import type { ApprovalDecision, ApprovalKind, ConversationDescriptor, PendingApproval, QueueEvent, WaitFilter } from './channel-shared.js'; import type { GatewayCredential } from '../gateway/credential.js'; export declare class XopcChannelBridge { private readonly cfg; private readonly params; private client; private readonly queue; private readonly pendingApprovals; private cursor; private closed; private readonly realtimeClientId; private realtime; constructor(cfg: Config, params: { gatewayUrl?: string; gatewayCredential?: GatewayCredential; }); start(): Promise; close(): Promise; private connectRealtime; private handleRealtimeEvent; private enqueueFromBroadcast; private pushEvent; listConversations(args: { limit?: number; search?: string; channel?: string; }): Promise; getConversation(sessionKey: string): Promise; readMessages(sessionKey: string, limit: number): Promise>>; pollEvents(filter: WaitFilter, limit: number): { events: QueueEvent[]; nextCursor: number; }; waitForEvent(filter: WaitFilter, timeoutMs: number): Promise; sendMessage(params: { sessionKey: string; text: string; }): Promise>; listPendingApprovals(): PendingApproval[]; respondToApproval(params: { kind: ApprovalKind; id: string; decision: ApprovalDecision; }): Promise>; handleClaudePermissionRequest(_params: { requestId: string; toolName: string; description: string; inputPreview: string; }): Promise; } export declare function loadMcpServeConfig(): Config;