import { IBaseUTXO } from "../rpc/types"; import { BytesBuilder } from "../utils/bytesBuilder"; import { BytesReader } from "../utils/bytesReader"; import { ITransaction, ITransactionInput, ITransactionInputWithoutScript, ITransactionJSON, ITransactionOutput } from "./types"; declare class Transaction implements ITransaction { version: number; inputs: ITransactionInput[]; outputs: ITransactionOutput[]; locktime: number; constructor(inputs: ITransactionInput[], outputs: ITransactionOutput[], locktime?: number, version?: number); static fromPartial(inputs: ITransactionInputWithoutScript[], outputs: ITransactionOutput[], locktime?: number, version?: number): Transaction; isDummyTransaction(): boolean; getVoutsForAddress(address: string): number[]; getUTXOsForAddress(address: string): IBaseUTXO[]; hasWitnesses(): boolean; byteLength(allowWitness?: boolean): number; weight(): number; virtualSize(): number; writeToBytesBuilder(builder: BytesBuilder, allowWitness: boolean | undefined, sigHashType: number | null): BytesBuilder; private toBufferInternal; toDisplay(): { version: number; inputs: { hash: string; index: number; script: string; sequence: number; witness: string[] | null; }[]; outputs: { value: number; script: string; }[]; locktime: number; }; toBuffer(allowWitness?: boolean): Uint8Array; toHex(): string; toSighashBuffer(sigHashType: number): Uint8Array; getTxid(): string; getSigHash(inputIndex: number, prevOutScript: Uint8Array, sighashType: number): Uint8Array; getSigHashPreimage(inputIndex: number, prevOutScript: Uint8Array, sighashType: number): Uint8Array; addInput(input: ITransactionInput): this; addOutput(output: ITransactionOutput): this; shallowClone(): Transaction; static fromBuffer(buffer: Uint8Array): Transaction; static fromHex(hex: string): Transaction; static fromBytesReader(reader: BytesReader): Transaction; getSighashInputIndex(): number; getSigHashConfig(): { isP2PKH: boolean; inputIndex: number; }; static fromBase(base: ITransaction): Transaction; toTxJSON(): ITransactionJSON; static fromTxJSON(txJSON: ITransactionJSON): Transaction; } export { Transaction };