@node-dlc/bitcoin
Version:
72 lines (71 loc) • 1.94 kB
TypeScript
/// <reference types="node" />
import { StreamReader } from '@node-dlc/bufio';
import { ICloneable } from './ICloneable';
import { OutPoint } from './OutPoint';
import { Script } from './Script';
import { Sequence } from './Sequence';
import { Witness } from './Witness';
export declare class TxIn implements ICloneable<TxIn> {
/**
* Parses a TxIn from a a stream reader.
* @param stream
*/
static parse(reader: StreamReader): TxIn;
/**
* Parses a hex string serialization of a transaction input. This
* is a helper function instead of having to do `StreamReader.fromHex`
* on a string directly.
* @param hex
*/
static fromHex(hex: string): TxIn;
/**
* The previous transaction output tuple
*/
outpoint: OutPoint;
/**
* ScriptSig for the input
*/
scriptSig: Script;
/**
* nSequence value for the transaction. Defaults to 0xffffffff which
* disables the absolute timelock.
*/
sequence: Sequence;
/**
* Witness data that is required by the input
*/
witness: Witness[];
/**
* Constructs a new transaction input from the values
* @param outpoint
* @param scriptSig
* @param sequence
* @param witness
*/
constructor(outpoint: OutPoint, scriptSig?: Script, sequence?: Sequence, witness?: Witness[]);
/**
* Creates a string of the transaction input that includes all of the
* properties.
*/
toString(): string;
/**
* Creates a JSON object of the transaction input that includes all
* of the properties.
*/
toJSON(): {
outpoint: {
txid: string;
index: number;
};
scriptSig: string;
sequence: string;
};
/**
* Returns the byte serialization of the transaction input
*/
serialize(): Buffer;
/**
* Clone via deep copy
*/
clone(): TxIn;
}