lotus-sdk
Version:
Central repository for several classes of tools for integrating with, and building for, the Lotusia ecosystem
32 lines • 1.61 kB
TypeScript
import { Signature } from '../crypto/signature.js';
import { Script } from '../script.js';
import { Output } from './output.js';
import { BufferWriter } from '../encoding/bufferwriter.js';
import { BN } from '../crypto/bn.js';
import { PrivateKey } from '../privatekey.js';
import { PublicKey } from '../publickey.js';
export interface TransactionLike {
inputs: Array<{
prevTxId: Buffer;
outputIndex: number;
sequenceNumber: number;
script?: Script | null;
}>;
outputs: Array<{
satoshis: number;
script?: Script;
toBufferWriter(writer: BufferWriter): void;
}>;
spentOutputs?: Output[];
toBuffer(): Buffer;
version?: number;
nLockTime?: number;
}
declare function sighash(transaction: TransactionLike, sighashType: number, inputNumber: number, subscript: Script, satoshisBN?: BN, flags?: number): Buffer;
declare function sign(transaction: TransactionLike, privateKey: PrivateKey, sighashType: number, inputIndex: number, subscript: Script, satoshisBN?: BN, flags?: number, signingMethod?: 'ecdsa' | 'schnorr'): Signature;
declare function verify(transaction: TransactionLike, signature: Signature, publicKey: PublicKey, inputIndex: number, subscript: Script, satoshisBN?: BN, flags?: number, signingMethod?: 'ecdsa' | 'schnorr'): boolean;
export declare const DEFAULT_SIGN_FLAGS: number;
export declare const SIGHASH_SINGLE_BUG = "0000000000000000000000000000000000000000000000000000000000000001";
export declare const BITS_64_ON = "ffffffffffffffff";
export { sighash, sign, verify };
//# sourceMappingURL=sighash.d.ts.map