export * as address from "./address.js";
export * as ast from "./ast/index.js";
export * as utxolibCompat from "./utxolibCompat.js";
export * as fixedScriptWallet from "./fixedScriptWallet/index.js";
export * as bip32 from "./bip32.js";
export * as ecpair from "./ecpair.js";
export { ECPair } from "./ecpair.js";
export { BIP32 } from "./bip32.js";
export type { CoinName } from "./coinName.js";
export type { Triple } from "./triple.js";
export type { AddressFormat } from "./address.js";
export type DescriptorPkType = "derivable" | "definite" | "string";
export type ScriptContext = "tap" | "segwitv0" | "legacy";
export type SignPsbtResult = {
    [inputIndex: number]: [pubkey: string][];
};
declare module "./wasm/wasm_utxo.js" {
    interface WrapDescriptor {
        /** These are not the same types of nodes as in the ast module */
        node(): unknown;
    }
    namespace WrapDescriptor {
        function fromString(descriptor: string, pkType: DescriptorPkType): WrapDescriptor;
        function fromStringDetectType(descriptor: string): WrapDescriptor;
    }
    interface WrapMiniscript {
        /** These are not the same types of nodes as in the ast module */
        node(): unknown;
    }
    namespace WrapMiniscript {
        function fromString(miniscript: string, ctx: ScriptContext): WrapMiniscript;
        function fromBitcoinScript(script: Uint8Array, ctx: ScriptContext): WrapMiniscript;
    }
    interface WrapPsbt {
        signWithXprv(this: WrapPsbt, xprv: string): SignPsbtResult;
        signWithPrv(this: WrapPsbt, prv: Uint8Array): SignPsbtResult;
    }
}
export { WrapDescriptor as Descriptor } from "./wasm/wasm_utxo.js";
export { WrapMiniscript as Miniscript } from "./wasm/wasm_utxo.js";
export { WrapPsbt as Psbt } from "./wasm/wasm_utxo.js";
export { DashTransaction, Transaction, ZcashTransaction } from "./transaction.js";
