import { ClientSyncMessage, CloseReason } from '../@triplit/types/sync.js';
import { ConnectionStatus, SyncTransport, TransportConnectParams } from '../types.js';
export declare class HttpTransport implements SyncTransport {
    private eventSource;
    private closeCallback;
    private transportOptions;
    constructor();
    get isOpen(): boolean;
    get connectionStatus(): ConnectionStatus;
    onOpen(callback: (ev: any) => void): void;
    sendMessage(message: ClientSyncMessage): boolean;
    onMessage(callback: (message: any) => void): void;
    onError(callback: (ev: any) => void): void;
    connect(params: TransportConnectParams): void;
    close(reason?: CloseReason): void;
    onClose(callback: (ev: any) => void): void;
    onConnectionChange(callback: (state: ConnectionStatus) => void): void;
}
declare global {
    interface EventSource {
        onconnectionchange: (status: ConnectionStatus) => void;
    }
}
