import _m0 from "protobufjs/minimal"; import { AccountID, TransactionID } from "./basic_types"; import { ConsensusCreateTopicTransactionBody } from "./consensus_create_topic"; import { ConsensusDeleteTopicTransactionBody } from "./consensus_delete_topic"; import { ConsensusSubmitMessageTransactionBody } from "./consensus_submit_message"; import { ConsensusUpdateTopicTransactionBody } from "./consensus_update_topic"; import { ContractCallTransactionBody } from "./contract_call"; import { ContractCreateTransactionBody } from "./contract_create"; import { ContractDeleteTransactionBody } from "./contract_delete"; import { ContractUpdateTransactionBody } from "./contract_update"; import { CryptoAddLiveHashTransactionBody } from "./crypto_add_live_hash"; import { CryptoApproveAllowanceTransactionBody } from "./crypto_approve_allowance"; import { CryptoCreateTransactionBody } from "./crypto_create"; import { CryptoDeleteTransactionBody } from "./crypto_delete"; import { CryptoDeleteAllowanceTransactionBody } from "./crypto_delete_allowance"; import { CryptoDeleteLiveHashTransactionBody } from "./crypto_delete_live_hash"; import { CryptoTransferTransactionBody } from "./crypto_transfer"; import { CryptoUpdateTransactionBody } from "./crypto_update"; import { Duration } from "./duration"; import { EthereumTransactionBody } from "./ethereum_transaction"; import { FileAppendTransactionBody } from "./file_append"; import { FileCreateTransactionBody } from "./file_create"; import { FileDeleteTransactionBody } from "./file_delete"; import { FileUpdateTransactionBody } from "./file_update"; import { FreezeTransactionBody } from "./freeze"; import { NodeStakeUpdateTransactionBody } from "./node_stake_update"; import { ScheduleCreateTransactionBody } from "./schedule_create"; import { ScheduleDeleteTransactionBody } from "./schedule_delete"; import { ScheduleSignTransactionBody } from "./schedule_sign"; import { SystemDeleteTransactionBody } from "./system_delete"; import { SystemUndeleteTransactionBody } from "./system_undelete"; import { TokenAssociateTransactionBody } from "./token_associate"; import { TokenBurnTransactionBody } from "./token_burn"; import { TokenCreateTransactionBody } from "./token_create"; import { TokenDeleteTransactionBody } from "./token_delete"; import { TokenDissociateTransactionBody } from "./token_dissociate"; import { TokenFeeScheduleUpdateTransactionBody } from "./token_fee_schedule_update"; import { TokenFreezeAccountTransactionBody } from "./token_freeze_account"; import { TokenGrantKycTransactionBody } from "./token_grant_kyc"; import { TokenMintTransactionBody } from "./token_mint"; import { TokenPauseTransactionBody } from "./token_pause"; import { TokenRevokeKycTransactionBody } from "./token_revoke_kyc"; import { TokenUnfreezeAccountTransactionBody } from "./token_unfreeze_account"; import { TokenUnpauseTransactionBody } from "./token_unpause"; import { TokenUpdateTransactionBody } from "./token_update"; import { TokenWipeAccountTransactionBody } from "./token_wipe_account"; import { UncheckedSubmitBody } from "./unchecked_submit"; import { UtilPrngTransactionBody } from "./util_prng"; export declare const protobufPackage = "proto"; /** A single transaction. All transaction types are possible here. */ export interface TransactionBody { /** * The ID for this transaction, which includes the payer's account (the account paying the * transaction fee). If two transactions have the same transactionID, they won't both have an * effect */ transactionID: TransactionID | undefined; /** The account of the node that submits the client's transaction to the network */ nodeAccountID: AccountID | undefined; /** The maximum transaction fee the client is willing to pay */ transactionFee: number; /** * The transaction is invalid if consensusTimestamp > transactionID.transactionValidStart + * transactionValidDuration */ transactionValidDuration: Duration | undefined; /** * Should a record of this transaction be generated? (A receipt is always generated, but the * record is optional) * * @deprecated */ generateRecord: boolean; /** Any notes or descriptions that should be put into the record (max length 100) */ memo: string; data?: { $case: "contractCall"; contractCall: ContractCallTransactionBody; } | { $case: "contractCreateInstance"; contractCreateInstance: ContractCreateTransactionBody; } | { $case: "contractUpdateInstance"; contractUpdateInstance: ContractUpdateTransactionBody; } | { $case: "contractDeleteInstance"; contractDeleteInstance: ContractDeleteTransactionBody; } | { $case: "ethereumTransaction"; ethereumTransaction: EthereumTransactionBody; } | { $case: "cryptoAddLiveHash"; cryptoAddLiveHash: CryptoAddLiveHashTransactionBody; } | { $case: "cryptoApproveAllowance"; cryptoApproveAllowance: CryptoApproveAllowanceTransactionBody; } | { $case: "cryptoDeleteAllowance"; cryptoDeleteAllowance: CryptoDeleteAllowanceTransactionBody; } | { $case: "cryptoCreateAccount"; cryptoCreateAccount: CryptoCreateTransactionBody; } | { $case: "cryptoDelete"; cryptoDelete: CryptoDeleteTransactionBody; } | { $case: "cryptoDeleteLiveHash"; cryptoDeleteLiveHash: CryptoDeleteLiveHashTransactionBody; } | { $case: "cryptoTransfer"; cryptoTransfer: CryptoTransferTransactionBody; } | { $case: "cryptoUpdateAccount"; cryptoUpdateAccount: CryptoUpdateTransactionBody; } | { $case: "fileAppend"; fileAppend: FileAppendTransactionBody; } | { $case: "fileCreate"; fileCreate: FileCreateTransactionBody; } | { $case: "fileDelete"; fileDelete: FileDeleteTransactionBody; } | { $case: "fileUpdate"; fileUpdate: FileUpdateTransactionBody; } | { $case: "systemDelete"; systemDelete: SystemDeleteTransactionBody; } | { $case: "systemUndelete"; systemUndelete: SystemUndeleteTransactionBody; } | { $case: "freeze"; freeze: FreezeTransactionBody; } | { $case: "consensusCreateTopic"; consensusCreateTopic: ConsensusCreateTopicTransactionBody; } | { $case: "consensusUpdateTopic"; consensusUpdateTopic: ConsensusUpdateTopicTransactionBody; } | { $case: "consensusDeleteTopic"; consensusDeleteTopic: ConsensusDeleteTopicTransactionBody; } | { $case: "consensusSubmitMessage"; consensusSubmitMessage: ConsensusSubmitMessageTransactionBody; } | { $case: "uncheckedSubmit"; uncheckedSubmit: UncheckedSubmitBody; } | { $case: "tokenCreation"; tokenCreation: TokenCreateTransactionBody; } | { $case: "tokenFreeze"; tokenFreeze: TokenFreezeAccountTransactionBody; } | { $case: "tokenUnfreeze"; tokenUnfreeze: TokenUnfreezeAccountTransactionBody; } | { $case: "tokenGrantKyc"; tokenGrantKyc: TokenGrantKycTransactionBody; } | { $case: "tokenRevokeKyc"; tokenRevokeKyc: TokenRevokeKycTransactionBody; } | { $case: "tokenDeletion"; tokenDeletion: TokenDeleteTransactionBody; } | { $case: "tokenUpdate"; tokenUpdate: TokenUpdateTransactionBody; } | { $case: "tokenMint"; tokenMint: TokenMintTransactionBody; } | { $case: "tokenBurn"; tokenBurn: TokenBurnTransactionBody; } | { $case: "tokenWipe"; tokenWipe: TokenWipeAccountTransactionBody; } | { $case: "tokenAssociate"; tokenAssociate: TokenAssociateTransactionBody; } | { $case: "tokenDissociate"; tokenDissociate: TokenDissociateTransactionBody; } | { $case: "tokenFeeScheduleUpdate"; tokenFeeScheduleUpdate: TokenFeeScheduleUpdateTransactionBody; } | { $case: "tokenPause"; tokenPause: TokenPauseTransactionBody; } | { $case: "tokenUnpause"; tokenUnpause: TokenUnpauseTransactionBody; } | { $case: "scheduleCreate"; scheduleCreate: ScheduleCreateTransactionBody; } | { $case: "scheduleDelete"; scheduleDelete: ScheduleDeleteTransactionBody; } | { $case: "scheduleSign"; scheduleSign: ScheduleSignTransactionBody; } | { $case: "nodeStakeUpdate"; nodeStakeUpdate: NodeStakeUpdateTransactionBody; } | { $case: "utilPrng"; utilPrng: UtilPrngTransactionBody; } | undefined; } export declare const TransactionBody: { encode(message: TransactionBody, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): TransactionBody; fromJSON(object: any): TransactionBody; toJSON(message: TransactionBody): unknown; create(base?: DeepPartial): TransactionBody; fromPartial(object: DeepPartial): TransactionBody; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends { $case: string; } ? { [K in keyof Omit]?: DeepPartial; } & { $case: T["$case"]; } : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; export {}; //# sourceMappingURL=transaction_body.d.ts.map