UNPKG

@aptos-labs/ts-sdk

Version:
464 lines 21.8 kB
// Copyright © Aptos Foundation // SPDX-License-Identifier: Apache-2.0 /** * Different MIME types used for data interchange in transactions and responses. */ export var MimeType; (function (MimeType) { /** * JSON representation, used for transaction submission and accept type JSON output */ MimeType["JSON"] = "application/json"; /** * BCS representation, used for accept type BCS output */ MimeType["BCS"] = "application/x-bcs"; /** * BCS representation, used for transaction submission in BCS input */ MimeType["BCS_SIGNED_TRANSACTION"] = "application/x.aptos.signed_transaction+bcs"; MimeType["BCS_VIEW_FUNCTION"] = "application/x.aptos.view_function+bcs"; })(MimeType || (MimeType = {})); /** * Variants of type tags used in the system, encompassing various data types and structures. * {@link https://github.com/aptos-labs/aptos-core/blob/main/third_party/move/move-core/types/src/language_storage.rs#L27} */ export var TypeTagVariants; (function (TypeTagVariants) { TypeTagVariants[TypeTagVariants["Bool"] = 0] = "Bool"; TypeTagVariants[TypeTagVariants["U8"] = 1] = "U8"; TypeTagVariants[TypeTagVariants["U64"] = 2] = "U64"; TypeTagVariants[TypeTagVariants["U128"] = 3] = "U128"; TypeTagVariants[TypeTagVariants["Address"] = 4] = "Address"; TypeTagVariants[TypeTagVariants["Signer"] = 5] = "Signer"; TypeTagVariants[TypeTagVariants["Vector"] = 6] = "Vector"; TypeTagVariants[TypeTagVariants["Struct"] = 7] = "Struct"; TypeTagVariants[TypeTagVariants["U16"] = 8] = "U16"; TypeTagVariants[TypeTagVariants["U32"] = 9] = "U32"; TypeTagVariants[TypeTagVariants["U256"] = 10] = "U256"; TypeTagVariants[TypeTagVariants["I8"] = 11] = "I8"; TypeTagVariants[TypeTagVariants["I16"] = 12] = "I16"; TypeTagVariants[TypeTagVariants["I32"] = 13] = "I32"; TypeTagVariants[TypeTagVariants["I64"] = 14] = "I64"; TypeTagVariants[TypeTagVariants["I128"] = 15] = "I128"; TypeTagVariants[TypeTagVariants["I256"] = 16] = "I256"; TypeTagVariants[TypeTagVariants["Reference"] = 254] = "Reference"; TypeTagVariants[TypeTagVariants["Generic"] = 255] = "Generic"; })(TypeTagVariants || (TypeTagVariants = {})); /** * Variants of script transaction arguments used in Rust, encompassing various data types for transaction processing. * {@link https://github.com/aptos-labs/aptos-core/blob/main/third_party/move/move-core/types/src/transaction_argument.rs#L11} */ export var ScriptTransactionArgumentVariants; (function (ScriptTransactionArgumentVariants) { ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["U8"] = 0] = "U8"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["U64"] = 1] = "U64"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["U128"] = 2] = "U128"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["Address"] = 3] = "Address"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["U8Vector"] = 4] = "U8Vector"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["Bool"] = 5] = "Bool"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["U16"] = 6] = "U16"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["U32"] = 7] = "U32"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["U256"] = 8] = "U256"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["Serialized"] = 9] = "Serialized"; // NOTE: Added in bytecode version v9, do not reorder! ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["I8"] = 10] = "I8"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["I16"] = 11] = "I16"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["I32"] = 12] = "I32"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["I64"] = 13] = "I64"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["I128"] = 14] = "I128"; ScriptTransactionArgumentVariants[ScriptTransactionArgumentVariants["I256"] = 15] = "I256"; })(ScriptTransactionArgumentVariants || (ScriptTransactionArgumentVariants = {})); /** * The payload for various transaction types in the system. * {@link https://github.com/aptos-labs/aptos-core/blob/main/types/src/transaction/mod.rs#L478} */ export var TransactionPayloadVariants; (function (TransactionPayloadVariants) { TransactionPayloadVariants[TransactionPayloadVariants["Script"] = 0] = "Script"; TransactionPayloadVariants[TransactionPayloadVariants["EntryFunction"] = 2] = "EntryFunction"; TransactionPayloadVariants[TransactionPayloadVariants["Multisig"] = 3] = "Multisig"; TransactionPayloadVariants[TransactionPayloadVariants["Payload"] = 4] = "Payload"; TransactionPayloadVariants[TransactionPayloadVariants["EncryptedPayload"] = 5] = "EncryptedPayload"; })(TransactionPayloadVariants || (TransactionPayloadVariants = {})); /** * Variants for the inner payload of a multisig account transaction. * {@link https://github.com/aptos-labs/aptos-core/blob/main/aptos-move/framework/aptos-framework/sources/multisig_account.move} */ export var MultiSigTransactionPayloadVariants; (function (MultiSigTransactionPayloadVariants) { MultiSigTransactionPayloadVariants[MultiSigTransactionPayloadVariants["EntryFunction"] = 0] = "EntryFunction"; MultiSigTransactionPayloadVariants[MultiSigTransactionPayloadVariants["Script"] = 1] = "Script"; })(MultiSigTransactionPayloadVariants || (MultiSigTransactionPayloadVariants = {})); /** * The inner payload type to support orderless transactions and all future transaction types. * {@link https://github.com/aptos-labs/aptos-core/blob/main/types/src/transaction/mod.rs#L478} */ export var TransactionInnerPayloadVariants; (function (TransactionInnerPayloadVariants) { TransactionInnerPayloadVariants[TransactionInnerPayloadVariants["V1"] = 0] = "V1"; })(TransactionInnerPayloadVariants || (TransactionInnerPayloadVariants = {})); /** * Executable types for transactions, which can be either a script or an entry function. * * Empty is reserved for Multisig voting transactions, which do not have an executable payload. * {@link https://github.com/aptos-labs/aptos-core/blob/main/types/src/transaction/mod.rs#L685} */ export var TransactionExecutableVariants; (function (TransactionExecutableVariants) { TransactionExecutableVariants[TransactionExecutableVariants["Script"] = 0] = "Script"; TransactionExecutableVariants[TransactionExecutableVariants["EntryFunction"] = 1] = "EntryFunction"; TransactionExecutableVariants[TransactionExecutableVariants["Empty"] = 2] = "Empty"; TransactionExecutableVariants[TransactionExecutableVariants["Encrypted"] = 3] = "Encrypted"; })(TransactionExecutableVariants || (TransactionExecutableVariants = {})); /** * Variants of transaction extra configurations, which can include additional settings or parameters. * {@link https://github.com/aptos-labs/aptos-core/blob/main/types/src/transaction/mod.rs#L737} */ export var TransactionExtraConfigVariants; (function (TransactionExtraConfigVariants) { TransactionExtraConfigVariants[TransactionExtraConfigVariants["V1"] = 0] = "V1"; })(TransactionExtraConfigVariants || (TransactionExtraConfigVariants = {})); /** * Variants of transactions used in the system. * {@link https://github.com/aptos-labs/aptos-core/blob/main/types/src/transaction/mod.rs#L440} */ export var TransactionVariants; (function (TransactionVariants) { TransactionVariants[TransactionVariants["MultiAgentTransaction"] = 0] = "MultiAgentTransaction"; TransactionVariants[TransactionVariants["FeePayerTransaction"] = 1] = "FeePayerTransaction"; })(TransactionVariants || (TransactionVariants = {})); /** * Variants of transaction authenticators used in the system. * {@link https://github.com/aptos-labs/aptos-core/blob/main/types/src/transaction/authenticator.rs#L44} */ export var TransactionAuthenticatorVariant; (function (TransactionAuthenticatorVariant) { TransactionAuthenticatorVariant[TransactionAuthenticatorVariant["Ed25519"] = 0] = "Ed25519"; TransactionAuthenticatorVariant[TransactionAuthenticatorVariant["MultiEd25519"] = 1] = "MultiEd25519"; TransactionAuthenticatorVariant[TransactionAuthenticatorVariant["MultiAgent"] = 2] = "MultiAgent"; TransactionAuthenticatorVariant[TransactionAuthenticatorVariant["FeePayer"] = 3] = "FeePayer"; TransactionAuthenticatorVariant[TransactionAuthenticatorVariant["SingleSender"] = 4] = "SingleSender"; })(TransactionAuthenticatorVariant || (TransactionAuthenticatorVariant = {})); /** * Variants of account authenticators used in transactions. * {@link https://github.com/aptos-labs/aptos-core/blob/main/types/src/transaction/authenticator.rs#L414} */ export var AccountAuthenticatorVariant; (function (AccountAuthenticatorVariant) { AccountAuthenticatorVariant[AccountAuthenticatorVariant["Ed25519"] = 0] = "Ed25519"; AccountAuthenticatorVariant[AccountAuthenticatorVariant["MultiEd25519"] = 1] = "MultiEd25519"; AccountAuthenticatorVariant[AccountAuthenticatorVariant["SingleKey"] = 2] = "SingleKey"; AccountAuthenticatorVariant[AccountAuthenticatorVariant["MultiKey"] = 3] = "MultiKey"; AccountAuthenticatorVariant[AccountAuthenticatorVariant["NoAccountAuthenticator"] = 4] = "NoAccountAuthenticator"; AccountAuthenticatorVariant[AccountAuthenticatorVariant["Abstraction"] = 5] = "Abstraction"; })(AccountAuthenticatorVariant || (AccountAuthenticatorVariant = {})); /** * Variants of private keys that can comply with the AIP-80 standard. * {@link https://github.com/aptos-foundation/AIPs/blob/main/aips/aip-80.md} */ export var PrivateKeyVariants; (function (PrivateKeyVariants) { PrivateKeyVariants["Ed25519"] = "ed25519"; PrivateKeyVariants["Secp256k1"] = "secp256k1"; PrivateKeyVariants["Secp256r1"] = "secp256r1"; })(PrivateKeyVariants || (PrivateKeyVariants = {})); /** * Variants of public keys used in cryptographic operations. */ export var AnyPublicKeyVariant; (function (AnyPublicKeyVariant) { AnyPublicKeyVariant[AnyPublicKeyVariant["Ed25519"] = 0] = "Ed25519"; AnyPublicKeyVariant[AnyPublicKeyVariant["Secp256k1"] = 1] = "Secp256k1"; AnyPublicKeyVariant[AnyPublicKeyVariant["Secp256r1"] = 2] = "Secp256r1"; AnyPublicKeyVariant[AnyPublicKeyVariant["Keyless"] = 3] = "Keyless"; AnyPublicKeyVariant[AnyPublicKeyVariant["FederatedKeyless"] = 4] = "FederatedKeyless"; /** * Post-quantum signature scheme (SLH-DSA-SHA2-128s). * Note: Full implementation not yet available in this SDK. */ AnyPublicKeyVariant[AnyPublicKeyVariant["SlhDsaSha2_128s"] = 5] = "SlhDsaSha2_128s"; })(AnyPublicKeyVariant || (AnyPublicKeyVariant = {})); export function anyPublicKeyVariantToString(variant) { switch (variant) { case AnyPublicKeyVariant.Ed25519: return "ed25519"; case AnyPublicKeyVariant.Secp256k1: return "secp256k1"; case AnyPublicKeyVariant.Secp256r1: return "secp256r1"; case AnyPublicKeyVariant.Keyless: return "keyless"; case AnyPublicKeyVariant.FederatedKeyless: return "federated_keyless"; case AnyPublicKeyVariant.SlhDsaSha2_128s: return "slh_dsa_sha2_128s"; default: throw new Error("Unknown public key variant"); } } /** * Variants of signature types used for cryptographic operations. */ export var AnySignatureVariant; (function (AnySignatureVariant) { AnySignatureVariant[AnySignatureVariant["Ed25519"] = 0] = "Ed25519"; AnySignatureVariant[AnySignatureVariant["Secp256k1"] = 1] = "Secp256k1"; AnySignatureVariant[AnySignatureVariant["WebAuthn"] = 2] = "WebAuthn"; AnySignatureVariant[AnySignatureVariant["Keyless"] = 3] = "Keyless"; /** * Post-quantum signature scheme (SLH-DSA-SHA2-128s). * Note: Full implementation not yet available in this SDK. */ AnySignatureVariant[AnySignatureVariant["SlhDsaSha2_128s"] = 4] = "SlhDsaSha2_128s"; })(AnySignatureVariant || (AnySignatureVariant = {})); /** * Variants of ephemeral public keys used in cryptographic operations. */ export var EphemeralPublicKeyVariant; (function (EphemeralPublicKeyVariant) { EphemeralPublicKeyVariant[EphemeralPublicKeyVariant["Ed25519"] = 0] = "Ed25519"; })(EphemeralPublicKeyVariant || (EphemeralPublicKeyVariant = {})); /** * Variants of ephemeral signatures used for secure communication. */ export var EphemeralSignatureVariant; (function (EphemeralSignatureVariant) { EphemeralSignatureVariant[EphemeralSignatureVariant["Ed25519"] = 0] = "Ed25519"; })(EphemeralSignatureVariant || (EphemeralSignatureVariant = {})); /** * Variants of ephemeral certificates used in secure transactions. */ export var EphemeralCertificateVariant; (function (EphemeralCertificateVariant) { EphemeralCertificateVariant[EphemeralCertificateVariant["ZkProof"] = 0] = "ZkProof"; })(EphemeralCertificateVariant || (EphemeralCertificateVariant = {})); /** * Variants of zero-knowledge proofs used in cryptographic operations. */ export var ZkpVariant; (function (ZkpVariant) { ZkpVariant[ZkpVariant["Groth16"] = 0] = "Groth16"; })(ZkpVariant || (ZkpVariant = {})); /** * TRANSACTION TYPES */ /** * Different types of transaction responses that can occur in the system. */ export var TransactionResponseType; (function (TransactionResponseType) { TransactionResponseType["Pending"] = "pending_transaction"; TransactionResponseType["User"] = "user_transaction"; TransactionResponseType["Genesis"] = "genesis_transaction"; TransactionResponseType["BlockMetadata"] = "block_metadata_transaction"; TransactionResponseType["StateCheckpoint"] = "state_checkpoint_transaction"; TransactionResponseType["Validator"] = "validator_transaction"; TransactionResponseType["BlockEpilogue"] = "block_epilogue_transaction"; })(TransactionResponseType || (TransactionResponseType = {})); /** * Determine if the given transaction response is currently pending. * * @param response - The transaction response to evaluate. * @returns A boolean indicating whether the transaction is pending. */ export function isPendingTransactionResponse(response) { return response.type === TransactionResponseType.Pending; } /** * Determines if the given transaction response is a user transaction. * * @param response - The transaction response to evaluate. * @returns A boolean indicating whether the transaction is of type User. */ export function isUserTransactionResponse(response) { return response.type === TransactionResponseType.User; } /** * Determines if the given transaction response is a Genesis transaction. * * @param response - The transaction response to evaluate. * @returns A boolean indicating whether the transaction is a Genesis transaction. */ export function isGenesisTransactionResponse(response) { return response.type === TransactionResponseType.Genesis; } /** * Determine if the given transaction response is of type BlockMetadata. * * @param response - The transaction response to evaluate. * @returns A boolean indicating whether the response is a BlockMetadata transaction. */ export function isBlockMetadataTransactionResponse(response) { return response.type === TransactionResponseType.BlockMetadata; } /** * Determines if the provided transaction response is a state checkpoint transaction. * * @param response - The transaction response to evaluate. * @returns A boolean indicating whether the transaction response is of type StateCheckpoint. */ export function isStateCheckpointTransactionResponse(response) { return response.type === TransactionResponseType.StateCheckpoint; } /** * Determine if the given transaction response is of type Validator. * * @param response - The transaction response to evaluate. * @returns A boolean indicating whether the transaction response is a Validator type. */ export function isValidatorTransactionResponse(response) { return response.type === TransactionResponseType.Validator; } /** * Determines if the given transaction response is of the type Block Epilogue. * * @param response - The transaction response to evaluate. * @returns A boolean indicating whether the response is a Block Epilogue transaction. */ export function isBlockEpilogueTransactionResponse(response) { return response.type === TransactionResponseType.BlockEpilogue; } /** * Determine if the provided signature is an Ed25519 signature. * This function checks for the presence of the "signature" property * and verifies that its value is "ed25519_signature". * * @param signature - The transaction signature to be checked. * @returns A boolean indicating whether the signature is an Ed25519 signature. */ export function isEd25519Signature(signature) { return "signature" in signature && signature.type === "ed25519_signature"; } /** * Determine if the provided signature is a valid secp256k1 ECDSA signature. * * @param signature - The transaction signature to validate. * @returns A boolean indicating whether the signature is a secp256k1 ECDSA signature. */ export function isSecp256k1Signature(signature) { return "signature" in signature && signature.signature === "secp256k1_ecdsa_signature"; } /** * Determine if the provided transaction signature is a multi-agent signature. * * @param signature - The transaction signature to evaluate. * @returns A boolean indicating whether the signature is a multi-agent signature. */ export function isMultiAgentSignature(signature) { return signature.type === "multi_agent_signature"; } /** * Determine if the provided signature is a fee payer signature. * * @param signature - The transaction signature to evaluate. * @returns A boolean indicating whether the signature is a fee payer signature. */ export function isFeePayerSignature(signature) { return signature.type === "fee_payer_signature"; } /** * Determine if the provided signature is of type "multi_ed25519_signature". * * @param signature - The transaction signature to check. * @returns A boolean indicating whether the signature is a multi-ed25519 signature. */ export function isMultiEd25519Signature(signature) { return signature.type === "multi_ed25519_signature"; } /** * Determine if the provided signature is of type "single_sender". * * @param signature - The transaction signature to check. * @returns A boolean indicating whether the signature is a single-sender signature. */ export function isSingleSenderSignature(signature) { return signature.type === "single_sender"; } /** * Specifies the visibility levels for move functions, controlling access permissions. */ export var MoveFunctionVisibility; (function (MoveFunctionVisibility) { MoveFunctionVisibility["PRIVATE"] = "private"; MoveFunctionVisibility["PUBLIC"] = "public"; MoveFunctionVisibility["FRIEND"] = "friend"; })(MoveFunctionVisibility || (MoveFunctionVisibility = {})); /** * Abilities related to moving items within the system. */ export var MoveAbility; (function (MoveAbility) { MoveAbility["STORE"] = "store"; MoveAbility["DROP"] = "drop"; MoveAbility["KEY"] = "key"; MoveAbility["COPY"] = "copy"; })(MoveAbility || (MoveAbility = {})); /** * Roles that can be assigned within the system, indicating different levels of access and functionality. */ export var RoleType; (function (RoleType) { RoleType["VALIDATOR"] = "validator"; RoleType["FULL_NODE"] = "full_node"; })(RoleType || (RoleType = {})); /** * Different schemes for signing keys used in cryptographic operations. */ export var SigningScheme; (function (SigningScheme) { /** * For Ed25519PublicKey */ SigningScheme[SigningScheme["Ed25519"] = 0] = "Ed25519"; /** * For MultiEd25519PublicKey */ SigningScheme[SigningScheme["MultiEd25519"] = 1] = "MultiEd25519"; /** * For SingleKey ecdsa */ SigningScheme[SigningScheme["SingleKey"] = 2] = "SingleKey"; SigningScheme[SigningScheme["MultiKey"] = 3] = "MultiKey"; })(SigningScheme || (SigningScheme = {})); /** * Specifies the signing schemes available for cryptographic operations. */ export var SigningSchemeInput; (function (SigningSchemeInput) { /** * For Ed25519PublicKey */ SigningSchemeInput[SigningSchemeInput["Ed25519"] = 0] = "Ed25519"; /** * For Secp256k1Ecdsa */ SigningSchemeInput[SigningSchemeInput["Secp256k1Ecdsa"] = 2] = "Secp256k1Ecdsa"; })(SigningSchemeInput || (SigningSchemeInput = {})); /** * Specifies the schemes for deriving account addresses from various data sources. */ export var DeriveScheme; (function (DeriveScheme) { /** * Derives an address using an AUID, used for objects */ DeriveScheme[DeriveScheme["DeriveAuid"] = 251] = "DeriveAuid"; /** * Derives an address from another object address */ DeriveScheme[DeriveScheme["DeriveObjectAddressFromObject"] = 252] = "DeriveObjectAddressFromObject"; /** * Derives an address from a GUID, used for objects */ DeriveScheme[DeriveScheme["DeriveObjectAddressFromGuid"] = 253] = "DeriveObjectAddressFromGuid"; /** * Derives an address from seed bytes, used for named objects */ DeriveScheme[DeriveScheme["DeriveObjectAddressFromSeed"] = 254] = "DeriveObjectAddressFromSeed"; /** * Derives an address from seed bytes, used for resource accounts */ DeriveScheme[DeriveScheme["DeriveResourceAccountAddress"] = 255] = "DeriveResourceAccountAddress"; })(DeriveScheme || (DeriveScheme = {})); //# sourceMappingURL=types.js.map