@btc-vision/transaction
Version:
OPNet transaction library allows you to create and sign transactions for the OPNet network.
84 lines (69 loc) • 2.12 kB
text/typescript
import type {
IDeploymentParameters,
IFundingTransactionParameters,
IInteractionParameters,
} from './ITransactionParameters.js';
import type { ICustomTransactionParameters } from './ICustomTransactionParameters.js';
import type { ICancelTransactionParameters } from './ICancelTransactionParameters.js';
import { MLDSASecurityLevel } from '@btc-vision/bip32';
export type InteractionParametersWithoutSigner = Omit<
IInteractionParameters,
'signer' | 'challenge' | 'mldsaSigner'
>;
export type IDeploymentParametersWithoutSigner = Omit<
IDeploymentParameters,
'signer' | 'network' | 'challenge' | 'mldsaSigner'
>;
export type ICustomTransactionWithoutSigner = Omit<
ICustomTransactionParameters,
'signer' | 'challenge' | 'mldsaSigner'
>;
export type ICancelTransactionParametersWithoutSigner = Omit<
ICancelTransactionParameters,
'signer' | 'challenge' | 'network' | 'mldsaSigner'
>;
export type IFundingTransactionParametersWithoutSigner = Omit<
IFundingTransactionParameters,
'signer' | 'network' | 'mldsaSigner' | 'gasSatFee'
>;
export interface BroadcastTransactionOptions {
raw: string;
psbt: boolean;
}
export interface BroadcastedTransaction {
/** Whether the transaction was successfully broadcasted. */
readonly success: boolean;
/**
* The result of the broadcasted transaction.
*/
readonly result?: string;
/**
* The error message if the transaction was not successfully broadcasted.
*/
readonly error?: string;
/**
* The number of peers that the transaction was broadcasted to.
*/
readonly peers?: number;
}
/**
* ML-DSA signature result
*/
export interface MLDSASignature {
/**
* The ML-DSA signature in hex format
*/
readonly signature: string;
/**
* The ML-DSA public key used for signing in hex format
*/
readonly publicKey: string;
/**
* The security level used (44, 65, or 87)
*/
readonly securityLevel: MLDSASecurityLevel;
/**
* The message hash that was signed
*/
readonly messageHash: string;
}