interface DiscordSession {
    tenantId: string;
    token: string;
    ws: WebSocket | null;
    status: 'connecting' | 'connected' | 'disconnected' | 'auth_failed';
    botUserId: string | null;
    botUsername: string | null;
    sessionId: string | null;
    resumeUrl: string | null;
    sequence: number | null;
    heartbeatTimer: NodeJS.Timeout | null;
    reconnectAttempts: number;
    reconnectTimer: NodeJS.Timeout | null;
    messagesToday: number;
    messagesTotal: number;
    lastError: string | null;
    startedAt: number;
}
export declare function startDiscordSession(tenantId: string, token: string): Promise<DiscordSession>;
export declare function disconnectDiscordSession(tenantId: string): Promise<void>;
export declare function getDiscordStatus(tenantId: string): {
    status: string;
    bot_username: null;
    bot_user_id: null;
    reconnect_attempts: number;
    messages_today: number;
    messages_total: number;
    last_error: null;
} | {
    status: "connecting" | "connected" | "disconnected" | "auth_failed";
    bot_username: string | null;
    bot_user_id: string | null;
    reconnect_attempts: number;
    messages_today: number;
    messages_total: number;
    last_error: string | null;
};
export {};
//# sourceMappingURL=adapter.d.ts.map