import type { AdapterOperation, AdapterResponse, AdapterRole, AdapterScriptOperation, AdapterScriptType, NegotiatedAdapter, PsbtVersion } from "../protocol/types.js"; export interface ExpectedAdapterContract { name: string; version: string; sourceRevision: string; operations: readonly AdapterOperation[]; roles: readonly AdapterRole[]; psbtVersions: readonly PsbtVersion[]; scriptTypes: readonly AdapterScriptType[]; operationScriptTypes: Readonly>>; features?: readonly string[]; } export declare const RUST_ADAPTER_CONTRACT: { readonly name: "rust-bitcoin"; readonly version: "0.1.0"; readonly sourceRevision: "bitcoin-crate-0.32.102"; readonly operations: readonly ["hello", "native-parse", "roundtrip", "sign", "finalize-inputs"]; readonly roles: readonly ["parser", "signer", "finalizer"]; readonly psbtVersions: readonly [0]; readonly scriptTypes: readonly ["p2pkh", "p2wpkh", "p2sh-p2wpkh", "p2sh-p2wsh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly operationScriptTypes: { readonly roundtrip: readonly ["p2pkh", "p2wpkh", "p2sh-p2wpkh", "p2sh-p2wsh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly sign: readonly ["p2pkh", "p2wpkh", "p2sh-p2wsh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly "finalize-inputs": readonly ["p2wsh", "p2tr-scriptpath"]; }; readonly features: readonly ["fixture-commitment-sha256", "sighash-matrix-v1", "adversarial-signer-inputs-v1"]; }; export declare const GO_ADAPTER_CONTRACT: { readonly name: "btcsuite-go"; readonly version: "v1.2.0"; readonly sourceRevision: "github.com/btcsuite/btcd/btcutil/psbt@v1.2.0"; readonly operations: readonly ["hello", "native-parse", "inspect", "roundtrip", "sign", "finalize", "finalize-inputs"]; readonly roles: readonly ["parser", "signer", "finalizer"]; readonly psbtVersions: readonly [0]; readonly scriptTypes: readonly ["p2wpkh", "p2sh-p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly operationScriptTypes: { readonly inspect: readonly ["p2wpkh", "p2sh-p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly roundtrip: readonly ["p2wpkh", "p2sh-p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly sign: readonly ["p2wpkh", "p2wsh", "p2tr-keypath"]; readonly finalize: readonly ["p2wsh"]; readonly "finalize-inputs": readonly ["p2wsh"]; }; readonly features: readonly ["fixture-commitment-sha256"]; }; export declare const BITCOINJS_ADAPTER_CONTRACT: { readonly name: "bitcoinjs-lib"; readonly version: "1.0.0"; readonly sourceRevision: "bitcoinjs-lib-7.0.1+tiny-secp256k1-2.2.4"; readonly operations: readonly ["hello", "native-parse", "inspect", "roundtrip", "sign", "combine", "finalize", "finalize-inputs"]; readonly roles: readonly ["parser", "signer", "combiner", "finalizer"]; readonly psbtVersions: readonly [0]; readonly scriptTypes: readonly ["p2wpkh", "p2sh-p2wpkh", "p2sh-p2wsh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly operationScriptTypes: { readonly inspect: readonly ["p2wpkh", "p2sh-p2wpkh", "p2sh-p2wsh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly roundtrip: readonly ["p2wpkh", "p2sh-p2wpkh", "p2sh-p2wsh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly sign: readonly ["p2wpkh", "p2sh-p2wsh", "p2wsh", "p2tr-keypath"]; readonly combine: readonly ["p2wpkh", "p2sh-p2wsh", "p2wsh", "p2tr-keypath"]; readonly finalize: readonly ["p2wsh"]; readonly "finalize-inputs": readonly ["p2wsh"]; }; readonly features: readonly ["fixture-commitment-sha256", "combiner-conflicts-v1"]; }; export declare const BDK_ADAPTER_CONTRACT: { readonly name: "bdkpython"; readonly version: "2.3.1"; readonly sourceRevision: "bdk-ffi-v2.3.1"; readonly operations: readonly ["hello", "native-parse", "inspect", "roundtrip", "finalize"]; readonly roles: readonly ["parser", "finalizer"]; readonly psbtVersions: readonly [0]; readonly scriptTypes: readonly ["p2wsh"]; readonly operationScriptTypes: { readonly inspect: readonly ["p2wsh"]; readonly roundtrip: readonly ["p2wsh"]; readonly finalize: readonly ["p2wsh"]; }; readonly features: readonly ["historical-regression.bdk-wallet-488"]; }; export declare const PSBTV2_ADAPTER_CONTRACT: { readonly name: "rust-psbt-v2"; readonly version: "0.1.0"; readonly sourceRevision: "rust-psbt/psbt-v2-0.3.0@8ca657c333b6b391f2501e8b31627ccbb6a67f66"; readonly operations: readonly ["hello", "native-parse", "inspect", "roundtrip", "sign", "combine", "finalize", "extract", "construct", "silent-payment-send", "silent-payment-send-advanced", "silent-payment-spend"]; readonly roles: readonly ["parser", "updater", "signer", "combiner", "finalizer", "extractor", "constructor"]; readonly psbtVersions: readonly [2]; readonly scriptTypes: readonly ["p2pkh", "p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly operationScriptTypes: { readonly inspect: readonly ["p2pkh", "p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly roundtrip: readonly ["p2pkh", "p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly sign: readonly ["p2wpkh", "p2wsh"]; readonly combine: readonly ["p2wpkh", "p2wsh"]; readonly finalize: readonly ["p2wpkh", "p2wsh"]; readonly extract: readonly ["p2wpkh", "p2wsh"]; readonly construct: readonly ["p2wpkh", "p2wsh"]; readonly "silent-payment-send": readonly ["p2pkh"]; readonly "silent-payment-send-advanced": readonly ["p2wpkh"]; readonly "silent-payment-spend": readonly ["p2tr-keypath"]; }; readonly features: readonly ["bip370-official-vectors", "bounded-map-counts", "fixture-commitment-sha256", "bip370-unique-id", "unsigned-tx-sha256", "bip370-constructor", "bip370-locktime", "bip371-taproot-roundtrip", "bip375-silent-payments", "bip375-sender-workflow", "bip375-advanced-sender-workflows", "bip376-spend-workflow"]; }; export declare const LIBWALLY_ADAPTER_CONTRACT: { readonly name: "libwally-core"; readonly version: "1.5.4"; readonly sourceRevision: "libwally-core-release_1.5.4@c5591834b3ae4ee4c7db9e537a9c19104ab4bf0c"; readonly operations: readonly ["hello", "native-parse", "inspect", "roundtrip", "sign", "combine", "finalize", "extract", "convert"]; readonly roles: readonly ["parser", "signer", "combiner", "finalizer", "extractor"]; readonly psbtVersions: readonly [0, 2]; readonly scriptTypes: readonly ["p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly operationScriptTypes: { readonly inspect: readonly ["p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly roundtrip: readonly ["p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly sign: readonly ["p2wpkh", "p2wsh"]; readonly combine: readonly ["p2wpkh", "p2wsh"]; readonly finalize: readonly ["p2wpkh", "p2wsh"]; readonly extract: readonly ["p2wpkh", "p2wsh"]; readonly convert: readonly ["p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; }; readonly features: readonly ["fixture-commitment-sha256", "bip370-unique-id", "unsigned-tx-sha256", "psbt-v0-v2-conversion", "network-free", "bip371-taproot-roundtrip"]; }; export declare const BDK_CURRENT_ADAPTER_CONTRACT: { readonly name: "bdk-wallet-current"; readonly version: "3.1.0"; readonly sourceRevision: "bdk-wallet-v3.1.0+bitcoin-0.32.102+miniscript-12.3.7"; readonly operations: readonly ["hello", "native-parse", "inspect", "roundtrip", "sign", "finalize"]; readonly roles: readonly ["parser", "signer", "finalizer"]; readonly psbtVersions: readonly [0]; readonly scriptTypes: readonly ["p2wpkh", "p2sh-p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly operationScriptTypes: { readonly inspect: readonly ["p2wpkh", "p2sh-p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly roundtrip: readonly ["p2wpkh", "p2sh-p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly sign: readonly ["p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; readonly finalize: readonly ["p2wpkh", "p2wsh", "p2tr-keypath", "p2tr-scriptpath"]; }; readonly features: readonly ["fixture-commitment-sha256", "network-free", "trusted-witness-utxo-authorized-fixtures-only"]; }; export declare const MUSIG2_SIGNER_ONE_ADAPTER_CONTRACT: { readonly name: "musig2-rust-signer-1" | "musig2-scure-signer-2"; readonly version: "0.1.0"; readonly sourceRevision: string; readonly operations: readonly ["hello", "native-parse", "roundtrip", "musig2-nonce", "musig2-partial-sign", "musig2-aggregate"]; readonly roles: readonly ["parser", "updater", "signer", "combiner", "finalizer"]; readonly psbtVersions: readonly [0]; readonly scriptTypes: readonly ["p2tr-keypath"]; readonly operationScriptTypes: { readonly roundtrip: readonly ["p2tr-keypath"]; readonly "musig2-nonce": readonly ["p2tr-keypath"]; readonly "musig2-partial-sign": readonly ["p2tr-keypath"]; readonly "musig2-aggregate": readonly ["p2tr-keypath"]; }; readonly features: readonly ["bip373-musig2-v1", "bip327-csprng-nonce-v1", "fixture-commitment-sha256", "network-free"]; }; export declare const MUSIG2_SIGNER_TWO_ADAPTER_CONTRACT: { readonly name: "musig2-rust-signer-1" | "musig2-scure-signer-2"; readonly version: "0.1.0"; readonly sourceRevision: string; readonly operations: readonly ["hello", "native-parse", "roundtrip", "musig2-nonce", "musig2-partial-sign", "musig2-aggregate"]; readonly roles: readonly ["parser", "updater", "signer", "combiner", "finalizer"]; readonly psbtVersions: readonly [0]; readonly scriptTypes: readonly ["p2tr-keypath"]; readonly operationScriptTypes: { readonly roundtrip: readonly ["p2tr-keypath"]; readonly "musig2-nonce": readonly ["p2tr-keypath"]; readonly "musig2-partial-sign": readonly ["p2tr-keypath"]; readonly "musig2-aggregate": readonly ["p2tr-keypath"]; }; readonly features: readonly ["bip373-musig2-v1", "bip327-csprng-nonce-v1", "fixture-commitment-sha256", "network-free"]; }; export declare const HWI_SIMULATOR_ADAPTER_CONTRACT: { readonly name: "hwi-simulator"; readonly version: "0.1.0"; readonly sourceRevision: "hwi-json-contract-v1+bitcoinjs-lib-7.0.1+tiny-secp256k1-2.2.4"; readonly operations: readonly ["hello", "native-parse", "roundtrip", "sign"]; readonly roles: readonly ["parser", "signer"]; readonly psbtVersions: readonly [0]; readonly scriptTypes: readonly ["p2wpkh"]; readonly operationScriptTypes: { readonly roundtrip: readonly ["p2wpkh"]; readonly sign: readonly ["p2wpkh"]; }; readonly features: readonly ["fixture-commitment-sha256", "hwi-json-process-v1", "hwi-simulator-v1", "simulated-user-confirmation-v1", "network-free"]; }; export declare function assertAdapterHello(response: AdapterResponse, expected: ExpectedAdapterContract): NegotiatedAdapter; export declare function assertByteIdenticalRoundtrip(response: AdapterResponse, source: string, label: string): string; //# sourceMappingURL=contracts.d.ts.map