import { BroadcastFailure, Broadcaster, BroadcastResponse, Transaction } from '@bsv/sdk';
export interface NamedBroadcaster {
    name: string;
    broadcaster: Broadcaster;
}
/**
 * Tries transaction propagation providers in priority order.
 *
 * Transient provider failures fall through to the next provider. Terminal
 * validation states, including double spends, stop immediately so a conflicting
 * transaction is not retried against a second propagation surface.
 */
export declare class ProviderChainBroadcaster implements Broadcaster {
    private readonly providers;
    constructor(providers: NamedBroadcaster[]);
    broadcast(tx: Transaction): Promise<BroadcastResponse | BroadcastFailure>;
}
//# sourceMappingURL=ProviderChainBroadcaster.d.ts.map