import { Struct } from "./struct.js"; import { UInt16, UInt16Type, UInt32, UInt32Type, UInt8, UInt8Type, VarUInt, VarUIntType } from "./integer.js"; import { Bytes, BytesType } from "./bytes.js"; import { Signature, SignatureType } from "./signature.js"; import { Checksum256, Checksum256Type } from "./checksum.js"; import { ABIDef } from "./abi.js"; import { NameType } from "./name.js"; import { TimePointSec, TimePointType } from "./time.js"; import { Action, ActionType, AnyAction } from "./action.js"; export declare class TransactionExtension extends Struct { type: UInt16; data: Bytes; } export interface TransactionHeaderFields { expiration: TimePointType; ref_block_num: UInt16Type; ref_block_prefix: UInt32Type; max_net_usage_words?: VarUIntType; max_cpu_usage_ms?: UInt8Type; delay_sec?: VarUIntType; } export type TransactionHeaderType = TransactionHeader | TransactionHeaderFields; export declare class TransactionHeader extends Struct { expiration: TimePointSec; ref_block_num: UInt16; ref_block_prefix: UInt32; max_net_usage_words: VarUInt; max_cpu_usage_ms: UInt8; delay_sec: VarUInt; static from(object: TransactionHeaderType): TransactionHeader; } export interface TransactionFields extends TransactionHeaderFields { context_free_actions?: ActionType[]; actions?: ActionType[]; transaction_extensions?: { type: UInt16Type; data: BytesType; }[]; } export interface AnyTransaction extends TransactionHeaderFields { context_free_actions?: AnyAction[]; actions?: AnyAction[]; transaction_extensions?: { type: UInt16Type; data: BytesType; }[]; } export type TransactionType = Transaction | TransactionFields; export declare class Transaction extends TransactionHeader { context_free_actions: Action[]; actions: Action[]; transaction_extensions: TransactionExtension[]; static from(object: TransactionType | AnyTransaction, abis?: ABIDef | { contract: NameType; abi: ABIDef; }[]): Transaction; equals(other: TransactionType): boolean; get id(): Checksum256; signingDigest(chainId: Checksum256Type): Checksum256; signingData(chainId: Checksum256Type): Bytes; } export interface SignedTransactionFields extends TransactionFields { signatures?: SignatureType[]; context_free_data?: BytesType[]; } export type SignedTransactionType = SignedTransaction | SignedTransactionFields; export declare class SignedTransaction extends Transaction { signatures: Signature[]; context_free_data: Bytes[]; get transaction(): Transaction; get id(): Checksum256; static from(object: SignedTransactionType): SignedTransaction; } export type PackedTransactionType = PackedTransaction | { signatures?: SignatureType[]; compression?: UInt8Type; packed_context_free_data?: BytesType; packed_trx: BytesType; }; export declare enum CompressionType { none = 0, zlib = 1 } export declare class PackedTransaction extends Struct { signatures: Signature[]; compression: UInt8; packed_context_free_data: Bytes; packed_trx: Bytes; static from(object: PackedTransactionType): PackedTransaction; static fromSigned(signed: SignedTransaction, compression?: CompressionType): PackedTransaction; getTransaction(): Transaction; getSignedTransaction(): SignedTransaction; } export declare class TransactionReceipt extends Struct { status: string; cpu_usage_us: UInt32; net_usage_words: UInt32; } //# sourceMappingURL=transaction.d.ts.map