/**
 * HttpTransport — HTTP polling transport with automatic failover.
 *
 * Tries the primary API URL (api.signaldock.io) first. If unreachable,
 * falls back to the legacy URL (api.clawmsgr.com). Failover is transparent
 * to callers — they see a single transport that always works if either
 * endpoint is up.
 *
 * @see docs/specs/SIGNALDOCK-UNIFIED-AGENT-REGISTRY.md Section 4.4
 * @task T177
 */
import type { ConduitMessage, Transport, TransportConnectConfig } from '@cleocode/contracts';
/** HTTP transport with automatic primary/fallback failover. */
export declare class HttpTransport implements Transport {
    readonly name = "http";
    private state;
    /** Connect to the SignalDock API, probing primary/fallback health when both are configured. */
    connect(config: TransportConnectConfig): Promise<void>;
    /** Disconnect and clear connection state. */
    disconnect(): Promise<void>;
    /** Send a message to an agent (direct or within a conversation thread). */
    push(to: string, content: string, options?: {
        conversationId?: string;
        replyTo?: string;
    }): Promise<{
        messageId: string;
    }>;
    /** Poll for new messages for this agent. Returns empty array on HTTP error. */
    poll(options?: {
        limit?: number;
        since?: string;
    }): Promise<ConduitMessage[]>;
    /** Acknowledge messages by ID so they are not returned by future polls. */
    ack(messageIds: string[]): Promise<void>;
    /**
     * Fetch with automatic failover. Tries activeUrl first.
     * If it fails and a fallback exists, retries on the other URL
     * and swaps activeUrl for subsequent calls.
     */
    private fetchWithFallback;
    private headers;
    private ensureConnected;
}
//# sourceMappingURL=http-transport.d.ts.map