/**
 * WebSocket/Socket.io 实时通知服务
 * 提供候选人、食谱、规则的实时更新通知
 */
import { Server as SocketIOServer } from 'socket.io';
export declare class RealtimeService {
    io: SocketIOServer;
    constructor(httpServer: import('http').Server);
    /** 设置事件处理器 */
    setupEventHandlers(): void;
    /** 广播候选人创建事件 */
    broadcastCandidateCreated(candidate: unknown): void;
    /** 广播候选人状态变化事件 */
    broadcastCandidateStatusChanged(candidateId: string, newStatus: string, oldStatus: string): void;
    /** 广播 Token 用量变化事件（Sidebar 指标刷新用） */
    broadcastTokenUsageUpdated(): void;
    /** 广播食谱创建事件 */
    broadcastRecipeCreated(recipe: unknown): void;
    /** 广播食谱发布事件 */
    broadcastRecipePublished(recipeId: string, recipe: unknown): void;
    /** 广播规则创建事件 */
    broadcastRuleCreated(rule: unknown): void;
    /** 广播规则状态变化事件 */
    broadcastRuleStatusChanged(ruleId: string, enabled: boolean): void;
    /** 广播通用事件 */
    broadcastEvent(eventName: string, data: unknown): void;
    /** 获取 Socket.io 实例 */
    getIO(): SocketIOServer<import("socket.io").DefaultEventsMap, import("socket.io").DefaultEventsMap, import("socket.io").DefaultEventsMap, any>;
    /** 获取连接的客户端数量 */
    getConnectedClients(): number;
}
export declare function initRealtimeService(httpServer: import('http').Server): RealtimeService;
export declare function getRealtimeService(): RealtimeService;
