///
import { Block as BitcoinBlock, Network } from "bitcoinjs-lib";
import { BitcoinAddress } from "@polkadot/types/lookup";
import { HexString, MerkleProof, Transaction } from "../../src/types";
import { ElectrsAPI } from "../external";
export declare function encodeBtcAddress(address: BitcoinAddress, network: Network): string;
export declare function decodeBtcAddress(address: string, network: Network): {
p2pkh: string;
} | {
p2sh: string;
} | {
p2wpkhv0: string;
} | {
p2wshv0: string;
};
interface PartialTxProof {
merkleProof: MerkleProof;
transaction: Transaction;
txEncodedLen: number;
}
export declare function getTxProof(electrsAPI: ElectrsAPI, userTxId: string): Promise<{
userTxProof: PartialTxProof;
coinbaseProof: PartialTxProof;
}>;
export declare class BitcoinMerkleProof {
blockHeader: BitcoinBlock;
transactionsCount: number;
hashes: Array;
flagBits: Array;
constructor(buffer: Buffer);
static fromHex(hex: string): BitcoinMerkleProof;
}
export {};