///
import { UnsignedTransaction as NativeUnsignedTransaction } from '@ironfish/rust-nodejs';
import { BurnDescription } from './burnDescription';
import { MintDescription } from './mintDescription';
import { NoteEncrypted } from './noteEncrypted';
import { Spend } from './spend';
export declare class UnsignedTransaction {
private readonly unsignedTransactionSerialized;
private referenceCount;
private nativeUnsignedTransaction;
readonly notes: NoteEncrypted[];
readonly spends: Spend[];
readonly mints: MintDescription[];
readonly burns: BurnDescription[];
private readonly _version;
private readonly _fee;
private readonly _expiration;
constructor(unsignedTransactionSerialized: Buffer);
serialize(): Buffer;
/**
* Preallocate any resources necessary for using the transaction.
*/
takeReference(): NativeUnsignedTransaction;
/**
* Return any resources necessary for using the transaction.
*/
returnReference(): void;
/**
* Wraps the given callback in takeReference and returnReference.
*/
withReference(callback: (transaction: NativeUnsignedTransaction) => R): R;
hash(): Buffer;
publicKeyRandomness(): string;
fee(): bigint;
expiration(): number;
}
//# sourceMappingURL=unsignedTransaction.d.ts.map