@btc-vision/transaction
Version:
OPNet transaction library allows you to create and sign transactions for the OPNet network.
101 lines • 3.62 kB
TypeScript
import type { ISerializableTransactionState } from './interfaces/ISerializableState.js';
/**
* Serializes and deserializes transaction state for offline signing.
* Uses binary format for compact size.
*/
export declare class TransactionSerializer {
/**
* Serialize transaction state to binary format
* @param state - The transaction state to serialize
* @returns Uint8Array containing serialized state with checksum
*/
static serialize(state: ISerializableTransactionState): Uint8Array;
/**
* Deserialize binary format to transaction state
* @param data - Uint8Array containing serialized state
* @returns Deserialized transaction state
* @throws Error if checksum validation fails or format is invalid
*/
static deserialize(data: Uint8Array): ISerializableTransactionState;
/**
* Export state as base64 string (for transport)
* @param state - Transaction state to export
* @returns Base64-encoded string
*/
static toBase64(state: ISerializableTransactionState): string;
/**
* Import state from base64 string
* @param base64 - Base64-encoded state
* @returns Deserialized transaction state
*/
static fromBase64(base64: string): ISerializableTransactionState;
/**
* Export state as hex string
* @param state - Transaction state to export
* @returns Hex-encoded string
*/
static toHex(state: ISerializableTransactionState): string;
/**
* Import state from hex string
* @param hex - Hex-encoded state
* @returns Deserialized transaction state
*/
static fromHex(hex: string): ISerializableTransactionState;
private static writeHeader;
private static readHeader;
private static writeBaseParams;
private static readBaseParams;
private static writeUTXOArray;
private static writeUTXO;
private static readUTXOArray;
private static readUTXO;
private static writeOutputArray;
private static writeOutput;
private static readOutputArray;
private static readOutput;
private static writeSignerMappings;
private static readSignerMappings;
private static writeTypeSpecificData;
private static readTypeSpecificData;
private static writeFundingData;
private static readFundingData;
private static writeDeploymentData;
private static readDeploymentData;
private static writeInteractionData;
private static readInteractionData;
private static writeMultiSigData;
private static readMultiSigData;
private static writeCustomScriptData;
private static writeScriptElement;
private static readCustomScriptData;
private static readScriptElement;
private static writeCancelData;
private static readCancelData;
private static writeChallenge;
private static writeChallengeVerification;
private static readChallenge;
private static readChallengeVerification;
private static writeLoadedStorage;
private static readLoadedStorage;
private static writePrecomputedData;
private static readPrecomputedData;
/**
* Calculate double SHA256 checksum (Bitcoin standard)
*/
private static calculateChecksum;
/**
* Compare two Uint8Arrays for equality
*/
private static bytesEqual;
/**
* Encode Uint8Array to base64 string
*/
private static uint8ArrayToBase64;
/**
* Decode base64 string to Uint8Array
*/
private static base64ToUint8Array;
private static networkNameToU8;
private static u8ToNetworkName;
}
//# sourceMappingURL=TransactionSerializer.d.ts.map