UNPKG

@bitgo/utxo-lib

Version:

Client-side Bitcoin JavaScript library

46 lines 1.89 kB
import { Network } from './'; import { TxOutput, Transaction } from './'; export interface Signer { privateKey?: Buffer; publicKey: Buffer; getPublicKey?(): Buffer; sign(hash: Buffer, lowR?: boolean): Buffer; signSchnorr(hash: Buffer): Buffer; } interface TxbSignArg<TNumber extends number | bigint = number> { prevOutScriptType: string; vin: number; keyPair: Signer; redeemScript?: Buffer; hashType?: number; witnessValue?: TNumber; witnessScript?: Buffer; controlBlock?: Buffer; annex?: Buffer; } export declare class TransactionBuilder<TNumber extends number | bigint = number> { network: Network; maximumFeeRate: number; static fromTransaction<TNumber extends number | bigint = number>(transaction: Transaction<TNumber>, network?: Network, prevOutputs?: TxOutput<TNumber>[]): TransactionBuilder<TNumber>; private __PREV_TX_SET; private __INPUTS; private __TX; private __USE_LOW_R; constructor(network?: Network, maximumFeeRate?: number); setLowR(setting?: boolean): boolean; setLockTime(locktime: number): void; setVersion(version: number): void; addInput(txHash: Buffer | string | Transaction<TNumber>, vout: number, sequence?: number, prevOutScript?: Buffer, value?: TNumber): number; addOutput(scriptPubKey: string | Buffer, value: TNumber): number; build(): Transaction<TNumber>; buildIncomplete(): Transaction<TNumber>; sign(signParams: number | TxbSignArg<TNumber>, keyPair?: Signer, redeemScript?: Buffer, hashType?: number, witnessValue?: TNumber, witnessScript?: Buffer, controlBlock?: Buffer, annex?: Buffer): void; private __addInputUnsafe; private __build; private __canModifyInputs; private __needsOutputs; private __canModifyOutputs; private __overMaximumFees; } export {}; //# sourceMappingURL=transaction_builder.d.ts.map