import { ReconnectOptions } from './types';
/**
 * Socket重连管理器
 * 处理断线重连逻辑
 */
export declare class ReconnectManager {
    private options;
    private attempts;
    private timer;
    private isReconnecting;
    private reconnectCallback;
    private onAttempt;
    private onSuccess;
    private onFail;
    private onMaxAttemptsExceeded;
    /**
     * 创建重连管理器实例
     * @param options 重连配置
     * @param reconnectCallback 重连执行函数
     * @param callbacks 回调函数集合
     */
    constructor(options: ReconnectOptions, reconnectCallback: () => Promise<boolean>, callbacks?: {
        onAttempt?: (attempt: number) => void;
        onSuccess?: () => void;
        onFail?: (error: Error) => void;
        onMaxAttemptsExceeded?: () => void;
    });
    /**
     * 启动重连过程
     */
    startReconnect(): void;
    /**
     * 停止重连过程
     */
    stopReconnect(): void;
    /**
     * 获取当前重连尝试次数
     */
    getReconnectAttempts(): number;
    /**
     * 获取当前是否正在重连
     */
    isActive(): boolean;
    /**
     * 重置重连状态
     */
    reset(): void;
    /**
     * 安排下一次重连尝试
     */
    private scheduleReconnect;
    /**
     * 执行重连操作
     */
    private executeReconnect;
    /**
     * 计算重连延迟时间
     * 支持指数退避算法，增加随机抖动
     */
    private getReconnectDelay;
}
