UNPKG

@btc-vision/transaction

Version:

OPNet transaction library allows you to create and sign transactions for the OPNet network.

38 lines (37 loc) 1.65 kB
import { Buffer } from 'buffer'; import { Psbt } from '@btc-vision/bitcoin'; import { TransactionType } from '../enums/TransactionType.js'; import { IInteractionParameters } from '../interfaces/ITransactionParameters.js'; import { TransactionBuilder } from './TransactionBuilder.js'; import { ChallengeSolution } from '../../epoch/ChallengeSolution.js'; import { IP2WSHAddress } from '../mineable/IP2WSHAddress.js'; export declare class InteractionTransactionP2WDA extends TransactionBuilder<TransactionType.INTERACTION> { private static readonly MAX_WITNESS_FIELDS; private static readonly MAX_BYTES_PER_WITNESS; readonly type: TransactionType.INTERACTION; protected readonly epochChallenge: IP2WSHAddress; protected readonly disableAutoRefund: boolean; private readonly contractAddress; private readonly contractSecret; private readonly calldata; private readonly challenge; private readonly randomBytes; private p2wdaGenerator; private scriptSigner; private p2wdaInputIndices; private readonly compiledOperationData; constructor(parameters: IInteractionParameters); getRndBytes(): Buffer; getChallenge(): ChallengeSolution; getContractSecret(): Buffer; protected buildTransaction(): Promise<void>; protected createMineableRewardOutputs(): Promise<void>; protected signInputs(transaction: Psbt): Promise<void>; private generateFeatures; private generateKeyPairFromSeed; private scriptSignerXOnlyPubKey; private validateP2WDAInputs; private validateOperationDataSize; private finalizePrimaryP2WDA; private splitIntoWitnessChunks; }