@hashgraph/sdk
    Preparing search index...

    Class AccountCreateTransaction

    Create a new Hedera™ crypto-currency account.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    Accessors

    Methods

    Constructors

    • Parameters

      • Optionalprops: {
            accountMemo?: string;
            alias?: EvmAddress;
            autoRenewPeriod?: number | Long | Duration;
            declineStakingReward?: boolean;
            initialBalance?: string | number | Long | BigNumber | Hbar;
            key?: Key;
            maxAutomaticTokenAssociations?: number | Long;
            proxyAccountId?: AccountId;
            receiverSignatureRequired?: boolean;
            stakedAccountId?: string | AccountId;
            stakedNodeId?: number | Long;
        } = {}

      Returns AccountCreateTransaction

    Properties

    _customFeeLimits: CustomFeeLimit[]

    The maximum custom fee that the user is willing to pay for the message. If left empty, the user is willing to pay any custom fee. If used with a transaction type that does not support custom fee limits, the transaction will fail.

    _operatorAccountId: undefined | null | AccountId

    Accessors

    • get alias(): null | EvmAddress

      The bytes to be used as the account's alias.

      The bytes must be formatted as the calcluated last 20 bytes of the keccak-256 of the ECDSA primitive key.

      All other types of keys, including but not limited to ED25519, ThresholdKey, KeyList, ContractID, and delegatable_contract_id, are not supported.

      At most only one account can ever have a given alias on the network.

      Returns null | EvmAddress

    • get batchKey(): undefined | null | Key

      Returns undefined | null | Key

      Get the key that will sign the batch of which this Transaction is a part of.

    • get bodySize(): number

      Get the transaction body size Protobuf encoding has specific rules about how data is serialized Different fields take different amounts of space depending on their values The actual wire format size can only be determined after encoding

      Returns number

    • get bodySizeAllChunks(): number[]

      Get the body sizes for all chunks in a Chunked transaction. For transactions with multiple chunks (like large topic message submissions), this returns an array containing the size of each chunk's transaction body. The size is calculated by encoding the transaction body to protobuf format.

      Returns number[]

      An array of body sizes, where each element represents the size in bytes of a chunk's transaction body

    • get grpcDeadline(): null | number

      Get the grpc deadline

      Returns null | number

    • get maxAttempts(): number

      Get the max attempts on the request

      Returns number

    • get maxBackoff(): number

      Get the max backoff

      Returns number

    • get maxRetries(): number

      Returns number

    • get minBackoff(): null | number

      Get the min backoff

      Returns null | number

    • get nodeAccountIds(): null | AccountId[]

      Get the list of node account IDs on the request. If no nodes are set, then null is returned. The reasoning for this is simply "legacy behavior".

      Returns null | AccountId[]

    • get regenerateTransactionId(): null | boolean

      Is transaction ID regeneration enabled

      Returns null | boolean

    • get signableNodeBodyBytesList(): SignableNodeTransactionBodyBytes[]

      Returns a List of SignableNodeTransactionBodyBytes for each node the transaction is intended for. These are the canonical bytes that must be signed externally (e.g., via HSM).

      Returns SignableNodeTransactionBodyBytes[]

    • get size(): Promise<number>

      Protobuf encoding has specific rules about how data is serialized Different fields take different amounts of space depending on their values The actual wire format size can only be determined after encoding

      Returns Promise<number>

    • get transactionValidDuration(): number

      Get the transaction valid duration

      Returns number

    Methods

    • Removes all signatures from a transaction and collects the removed signatures.

      Parameters

      • transaction: ISignedTransaction

        The transaction object to process.

      • publicKeyHex: string

        The hexadecimal representation of the public key.

      Returns Uint8Array<ArrayBufferLike>[]

      An array of removed signatures.

    • Determines whether a signature should be removed based on the provided public key.

      Parameters

      • sigPair: ISignaturePair

        The signature pair object that contains the public key prefix and signature to be evaluated.

      • publicKeyHex: string

        The hexadecimal representation of the public key to compare against.

      Returns boolean

      true if the public key prefix in the signature pair matches the provided public key, indicating that the signature should be removed; otherwise, false.

    • This method clears all signatures from the transaction and returns them in a specific format.

      It will call collectSignatures to get the removed signatures, then clear all signatures from the internal tracking.

      Returns Map<PublicKey, Uint8Array<ArrayBufferLike> | Uint8Array<ArrayBufferLike>[]>

      The removed signatures in the specified format.

    • Set the ID for this transaction.

      The transaction ID includes the operator's account ( the account paying the transaction fee). If two transactions have the same transaction ID, they won't both have an effect. One will complete normally and the other will fail with a duplicate transaction status.

      Normally, you should not use this method. Just before a transaction is executed, a transaction ID will be generated from the operator on the client.

      Parameters

      Returns AccountCreateTransaction

    • Sign the transaction with the public key and signer function

      If sign on demand is enabled no signing will be done immediately, instead the private key signing function and public key are saved to be used when a user calls an exit condition method (not sure what a better name for this is) such as toBytes[Async](), getTransactionHash[PerNode]() or execute().

      Parameters

      • publicKey: PublicKey
      • transactionSigner: (message: Uint8Array) => Promise<Uint8Array<ArrayBufferLike>>

      Returns Promise<AccountCreateTransaction>

    • Serialize the request into bytes. This will encode all the transactions into a proto.TransactionList and return the encoded protobuf.

      NOTE: Does not support sign on demand

      Returns Uint8Array<ArrayBufferLike>