@btc-vision/transaction
Version:
OPNet transaction library allows you to create and sign transactions for the OPNet network.
39 lines • 1.84 kB
TypeScript
import { type Network } from '@btc-vision/bitcoin';
import { MLDSASecurityLevel } from '@btc-vision/bip32';
export declare enum AddressTypes {
P2PKH = "P2PKH",
P2OP = "P2OP",
P2SH_OR_P2SH_P2WPKH = "P2SH_OR_P2SH-P2WPKH",
P2PK = "P2PK",
P2TR = "P2TR",
P2MR = "P2MR",
P2WPKH = "P2WPKH",
P2WSH = "P2WSH",
P2WDA = "P2WDA"
}
export interface ValidatedP2WDAAddress {
readonly isValid: boolean;
readonly isPotentiallyP2WDA: boolean;
readonly isDefinitelyP2WDA: boolean;
readonly publicKey?: Uint8Array;
readonly error?: string;
}
export declare class AddressVerificator {
static isValidP2TRAddress(inAddress: string, network: Network): boolean;
/**
* Validates that the given address is a valid P2MR (BIP 360) address.
* Checks for witness version 2 with a 32-byte Merkle root program.
*/
static isValidP2MRAddress(inAddress: string, network: Network): boolean;
static isP2WPKHAddress(inAddress: string, network: Network): boolean;
static isP2WDAWitnessScript(witnessScript: Uint8Array): boolean;
static isP2PKHOrP2SH(addy: string, network: Network): boolean;
static isValidPublicKey(input: string, network: Network): boolean;
static isValidMLDSAPublicKey(input: string | Uint8Array): MLDSASecurityLevel | null;
static isValidP2OPAddress(inAddress: string, network: Network): boolean;
static requireRedeemScript(addy: string, network: Network): boolean;
static detectAddressType(addy: string, network: Network): AddressTypes | null;
static detectAddressTypeWithWitnessScript(addy: string, network: Network, witnessScript?: Uint8Array): AddressTypes | null;
static validateP2WDAAddress(address: string, network: Network, witnessScript?: Uint8Array): ValidatedP2WDAAddress;
}
//# sourceMappingURL=AddressVerificator.d.ts.map