import type { Transport, MessageHandler, TransportMeta } from '@open-matrix/federation';
export interface IWireCodecTransportOptions {
    /** Globally unique root identity (e.g., 'com.nimbletec.richard.santomauro') */
    root?: string;
    /** @deprecated Use `root`. */
    realm?: string;
    /** Enable verbose debug logging */
    debug?: boolean;
}
/**
 * Transport decorator — now a pass-through identity function.
 *
 * With DNS hierarchical addressing, the NATS subject IS the fully
 * qualified address ({root}.{mount}.$facet). No encoding needed.
 * Kept as a shell for migration safety; will be removed in a follow-up.
 */
export declare class WireCodecTransport implements Transport {
    private readonly _inner;
    private readonly _root;
    private readonly _debug;
    constructor(inner: Transport, options: IWireCodecTransportOptions);
    /** The root this transport encodes for. Used by RequestReply for cross-root detection. */
    get root(): string;
    /** @deprecated Use `root`. */
    get realm(): string;
    /**
     * Delegate underlying-client access through the wire codec layer.
     */
    getUnderlyingClient(): unknown;
    /**
     * Delegate disconnect through the wire codec layer.
     */
    disconnect(): Promise<void>;
    /**
     * Identity pass-through. With DNS hierarchical addressing, the NATS subject
     * IS the fully qualified address — no encoding layer needed.
     * Kept as shell for migration safety; will be deleted in follow-up.
     */
    private _encode;
    /**
     * Identity pass-through. See _encode().
     */
    private _decode;
    publish(topic: string, payload: string, meta?: TransportMeta): void;
    subscribe(topic: string, handler: MessageHandler): () => void;
    /**
     * Access to flushSubscriptions() if the inner transport supports it.
     */
    flushSubscriptions(): Promise<void>;
}
//# sourceMappingURL=WireCodecTransport.d.ts.map