import { UTXO } from "../../lib/utxo";
export declare const broadcastTransaction: (insightURL: string) => (txHex: string) => Promise<string>;
export declare const Insight: {
    fetchUTXO: (insightURL: string) => (txHash: string, vOut: number) => Promise<UTXO>;
    fetchUTXOs: (insightURL: string) => (address: string, confirmations: number) => Promise<readonly UTXO[]>;
    fetchTXs: (insightURL: string) => (address: string, confirmations: number) => Promise<readonly UTXO[]>;
    broadcastTransaction: (insightURL: string) => (txHex: string) => Promise<string>;
};
export interface ScriptSig {
    hex: string;
    asm: string;
}
export interface Vin {
    txid: string;
    vout: number;
    sequence: number;
    n: number;
    scriptSig: ScriptSig;
    addr: string;
    valueSat: number;
    value: number;
    doubleSpentTxID?: any;
}
export interface ScriptPubKey {
    hex: string;
    asm: string;
    addresses: string[];
    type: string;
}
export interface Vout {
    value: string;
    n: number;
    scriptPubKey: ScriptPubKey;
    spentTxId: string;
    spentIndex: number;
    spentHeight: number;
}
export interface TxResponse {
    txid: string;
    version: number;
    locktime: number;
    vin: Vin[];
    vout: Vout[];
    vjoinsplit: any[];
    blockhash: string;
    blockheight: number;
    confirmations: number;
    time: number;
    blocktime: number;
    valueOut: number;
    size: number;
    valueIn: number;
    fees: number;
    fOverwintered: boolean;
    nVersionGroupId: number;
    nExpiryHeight: number;
    valueBalance: number;
    spendDescs: any[];
    outputDescs: any[];
}
export interface FetchTXsResult {
    pagesTotal: number;
    txs: TxResponse[];
}
