import { AuthorizedKeyUserInput, TransactionData, UserTypeTransaction, TransactionRPC } from "./types.js"; import { Contract } from "./contract.js"; export declare const VERSION = 4; export default class TransactionBuilder { version: number; type: UserTypeTransaction; address: Uint8Array; data: TransactionData; previousPublicKey: Uint8Array; previousSignature: Uint8Array; originSignature: Uint8Array; generateEncryptedSeedSC: boolean; constructor(type?: UserTypeTransaction | string); setType(type: UserTypeTransaction | string): this; setContract(contract: Contract): this; setContent(content: string): this; addOwnership(secret: string | Uint8Array, authorizedKeys: AuthorizedKeyUserInput[]): this; addUCOTransfer(to: string | Uint8Array, amount: bigint): this; addTokenTransfer(to: string | Uint8Array, amount: bigint, tokenAddress: string | Uint8Array, tokenId?: number): this; addRecipient(to: string | Uint8Array, action: string, args?: object): this; setPreviousSignatureAndPreviousPublicKey(prevSign: string | Uint8Array, prevPubKey: string | Uint8Array): this; setAddress(addr: string | Uint8Array): this; setGenerateEncryptedSeedSC(generateEncryptedSeedSC: boolean): this; build(seed: string | Uint8Array, index?: number, curve?: string, hashAlgo?: string): this; originSign(privateKey: string | Uint8Array): this; setOriginSign(signature: string | Uint8Array): this; originSignaturePayload(): Uint8Array; previousSignaturePayload(): Uint8Array; toNodeRPC(): Promise; toWalletRPC(): object; }