import { BaseLeaderElection } from './LeaderElection.js';
export declare class BroadcastChannelLeader extends BaseLeaderElection {
    private channelName;
    private tabId;
    private channel;
    private heartbeatInterval;
    private electionTimeout;
    private lastLeaderHeartbeat;
    private readonly heartbeatIntervalMs;
    private readonly electionTimeoutMs;
    constructor(channelName?: string);
    private setupChannel;
    private handleMessage;
    requestLeadership(): Promise<boolean>;
    private startElection;
    private cancelElection;
    private claimLeadership;
    private startHeartbeat;
    private stopHeartbeat;
    private sendHeartbeat;
    private sendMessage;
    releaseLeadership(): void;
    private isBroadcastChannelSupported;
    static isSupported(): boolean;
    dispose(): void;
}
