/**
 * ConduitClient — High-level agent messaging that wraps a Transport adapter.
 *
 * This is the WHAT layer: send messages, subscribe to events, manage presence.
 * The Transport adapter (HttpTransport, LocalTransport, etc.) handles the HOW.
 *
 * @see docs/specs/SIGNALDOCK-UNIFIED-AGENT-REGISTRY.md Section 4.3
 * @task T177
 */
import type { AgentCredential, Conduit, ConduitMessage, ConduitSendOptions, ConduitSendResult, ConduitState, ConduitUnsubscribe, Transport } from '@cleocode/contracts';
/** ConduitClient wraps a Transport, adding high-level messaging semantics. */
export declare class ConduitClient implements Conduit {
    private transport;
    private credential;
    private state;
    /** Create a ConduitClient backed by the given transport and credential. */
    constructor(transport: Transport, credential: AgentCredential);
    /** The agent ID from the bound credential. */
    get agentId(): string;
    /** Current connection state (disconnected → connecting → connected | error). */
    getState(): ConduitState;
    /** Connect the underlying transport using the bound credential. */
    connect(): Promise<void>;
    /** Send a message to another agent, optionally within a thread. */
    send(to: string, content: string, options?: ConduitSendOptions): Promise<ConduitSendResult>;
    /** One-shot poll for new messages. Delegates to the transport's poll method. */
    poll(options?: {
        limit?: number;
        since?: string;
    }): Promise<ConduitMessage[]>;
    /** Subscribe to incoming messages. Uses real-time transport when available, else polls. */
    onMessage(handler: (message: ConduitMessage) => void): ConduitUnsubscribe;
    /** Send an empty heartbeat to maintain presence on the relay. */
    heartbeat(): Promise<void>;
    /** Check whether a remote agent is currently online via the cloud API. */
    isOnline(agentId: string): Promise<boolean>;
    /** Disconnect the transport and reset state to disconnected. */
    disconnect(): Promise<void>;
}
//# sourceMappingURL=conduit-client.d.ts.map