@algorandfoundation/algokit-utils 10.0.0-alpha.9 → 10.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_virtual/_rolldown/runtime.js +23 -0
- package/abi/index.d.ts +2 -1
- package/abi/index.js +8 -5
- package/abi/index.mjs +2 -2
- package/account-manager.d.ts +447 -0
- package/account-manager.js +617 -0
- package/account-manager.js.map +1 -0
- package/account-manager.mjs +613 -0
- package/account-manager.mjs.map +1 -0
- package/account.d.ts +151 -0
- package/account.js +10 -0
- package/account.js.map +1 -0
- package/account.mjs +9 -0
- package/account.mjs.map +1 -0
- package/algo25/index.js +3 -3
- package/algo25/index.mjs +1 -2
- package/algod-client/index.d.ts +2 -3
- package/algod-client/index.js +10 -12
- package/algod-client/index.mjs +2 -3
- package/algorand-client-transaction-creator.d.ts +891 -0
- package/algorand-client-transaction-creator.js +735 -0
- package/algorand-client-transaction-creator.js.map +1 -0
- package/algorand-client-transaction-creator.mjs +734 -0
- package/algorand-client-transaction-creator.mjs.map +1 -0
- package/algorand-client-transaction-sender.d.ts +1098 -0
- package/algorand-client-transaction-sender.js +927 -0
- package/algorand-client-transaction-sender.js.map +1 -0
- package/algorand-client-transaction-sender.mjs +925 -0
- package/algorand-client-transaction-sender.mjs.map +1 -0
- package/algorand-client.d.ts +266 -0
- package/algorand-client.js +349 -0
- package/algorand-client.js.map +1 -0
- package/algorand-client.mjs +348 -0
- package/algorand-client.mjs.map +1 -0
- package/amount.d.ts +58 -3
- package/amount.js +110 -19
- package/amount.js.map +1 -1
- package/amount.mjs +101 -12
- package/amount.mjs.map +1 -1
- package/app-client.d.ts +1042 -0
- package/app-client.js +911 -0
- package/app-client.js.map +1 -0
- package/app-client.mjs +909 -0
- package/app-client.mjs.map +1 -0
- package/app-deployer.d.ts +159 -0
- package/app-deployer.js +353 -0
- package/app-deployer.js.map +1 -0
- package/app-deployer.mjs +352 -0
- package/app-deployer.mjs.map +1 -0
- package/app-factory.d.ts +791 -0
- package/app-factory.js +448 -0
- package/app-factory.js.map +1 -0
- package/app-factory.mjs +447 -0
- package/app-factory.mjs.map +1 -0
- package/app-manager.d.ts +323 -0
- package/app-manager.js +466 -0
- package/app-manager.js.map +1 -0
- package/app-manager.mjs +465 -0
- package/app-manager.mjs.map +1 -0
- package/app-spec.d.ts +200 -0
- package/app-spec.js +137 -0
- package/app-spec.js.map +1 -0
- package/app-spec.mjs +136 -0
- package/app-spec.mjs.map +1 -0
- package/app.d.ts +251 -0
- package/app.js +49 -0
- package/app.js.map +1 -0
- package/app.mjs +42 -0
- package/app.mjs.map +1 -0
- package/asset-manager.d.ts +215 -0
- package/asset-manager.js +169 -0
- package/asset-manager.js.map +1 -0
- package/asset-manager.mjs +168 -0
- package/asset-manager.mjs.map +1 -0
- package/async-event-emitter.d.ts +16 -0
- package/async-event-emitter.js +38 -0
- package/async-event-emitter.js.map +1 -0
- package/async-event-emitter.mjs +37 -0
- package/async-event-emitter.mjs.map +1 -0
- package/client-manager.d.ts +475 -0
- package/client-manager.js +616 -0
- package/client-manager.js.map +1 -0
- package/client-manager.mjs +615 -0
- package/client-manager.mjs.map +1 -0
- package/common/index.d.ts +28 -0
- package/common/index.js +109 -0
- package/common/index.mjs +25 -0
- package/composer.d.ts +942 -0
- package/composer.js +1583 -0
- package/composer.js.map +1 -0
- package/composer.mjs +1581 -0
- package/composer.mjs.map +1 -0
- package/config.d.ts +1 -1
- package/config.js +3 -4
- package/config.js.map +1 -1
- package/config.mjs +2 -3
- package/config.mjs.map +1 -1
- package/crypto/index.d.ts +5 -0
- package/crypto/index.js +13 -0
- package/crypto/index.mjs +5 -0
- package/debugging.d.ts +41 -0
- package/debugging.js +20 -0
- package/debugging.js.map +1 -0
- package/debugging.mjs +15 -0
- package/debugging.mjs.map +1 -0
- package/dispenser-client.d.ts +91 -0
- package/dispenser-client.js +128 -0
- package/dispenser-client.js.map +1 -0
- package/dispenser-client.mjs +127 -0
- package/dispenser-client.mjs.map +1 -0
- package/expand.d.ts +2 -0
- package/expand.js +0 -0
- package/expand.mjs +0 -0
- package/index.d.ts +28 -7
- package/index.js +45 -17
- package/index.mjs +21 -7
- package/indexer-client/index.d.ts +2 -2
- package/indexer-client/index.js +12 -12
- package/indexer-client/index.mjs +2 -3
- package/{indexer-lookup.d.ts → indexer-client/indexer-lookup.d.ts} +8 -11
- package/{indexer-lookup.js → indexer-client/indexer-lookup.js} +4 -16
- package/indexer-client/indexer-lookup.js.map +1 -0
- package/{indexer-lookup.mjs → indexer-client/indexer-lookup.mjs} +3 -11
- package/indexer-client/indexer-lookup.mjs.map +1 -0
- package/indexer.d.ts +40 -0
- package/indexer.js +38 -0
- package/indexer.js.map +1 -0
- package/indexer.mjs +35 -0
- package/indexer.mjs.map +1 -0
- package/instance-of.d.ts +8 -0
- package/kmd-account-manager.d.ts +74 -0
- package/kmd-account-manager.js +167 -0
- package/kmd-account-manager.js.map +1 -0
- package/kmd-account-manager.mjs +164 -0
- package/kmd-account-manager.mjs.map +1 -0
- package/kmd-client/index.d.ts +1 -2
- package/kmd-client/index.js +7 -12
- package/kmd-client/index.mjs +1 -3
- package/lifecycle-events.d.ts +14 -0
- package/lifecycle-events.js +11 -0
- package/lifecycle-events.js.map +1 -0
- package/lifecycle-events.mjs +10 -0
- package/lifecycle-events.mjs.map +1 -0
- package/logging.d.ts +13 -0
- package/logging.js +47 -0
- package/logging.js.map +1 -0
- package/logging.mjs +42 -0
- package/logging.mjs.map +1 -0
- package/logic-error.d.ts +39 -0
- package/logic-error.js +54 -0
- package/logic-error.js.map +1 -0
- package/logic-error.mjs +53 -0
- package/logic-error.mjs.map +1 -0
- package/network-client.d.ts +43 -0
- package/network-client.js +14 -0
- package/network-client.js.map +1 -0
- package/network-client.mjs +13 -0
- package/network-client.mjs.map +1 -0
- package/network-manager.d.ts +143 -0
- package/network-manager.js +190 -0
- package/network-manager.js.map +1 -0
- package/network-manager.mjs +189 -0
- package/network-manager.mjs.map +1 -0
- package/package.json +34 -8
- package/packages/abi/src/abi-method.d.ts +7 -12
- package/packages/abi/src/abi-method.js +20 -22
- package/packages/abi/src/abi-method.js.map +1 -1
- package/packages/abi/src/abi-method.mjs +18 -19
- package/packages/abi/src/abi-method.mjs.map +1 -1
- package/packages/abi/src/abi-type.d.ts +1 -6
- package/packages/abi/src/abi-type.js +26 -59
- package/packages/abi/src/abi-type.js.map +1 -1
- package/packages/abi/src/abi-type.mjs +23 -56
- package/packages/abi/src/abi-type.mjs.map +1 -1
- package/packages/abi/src/arc28-event.d.ts +4 -10
- package/packages/abi/src/arc56-contract.d.ts +66 -155
- package/packages/abi/src/arc56-contract.js +2 -3
- package/packages/abi/src/arc56-contract.js.map +1 -1
- package/packages/abi/src/arc56-contract.mjs +1 -2
- package/packages/abi/src/arc56-contract.mjs.map +1 -1
- package/packages/abi/src/bigint.js +1 -2
- package/packages/abi/src/bigint.js.map +1 -1
- package/packages/abi/src/bigint.mjs +1 -1
- package/packages/abi/src/utils.d.ts +21 -0
- package/packages/abi/src/utils.js +56 -0
- package/packages/abi/src/utils.js.map +1 -0
- package/packages/abi/src/utils.mjs +55 -0
- package/packages/abi/src/utils.mjs.map +1 -0
- package/packages/algo25/src/english.js +2 -4
- package/packages/algo25/src/english.js.map +1 -1
- package/packages/algo25/src/english.mjs +2 -3
- package/packages/algo25/src/english.mjs.map +1 -1
- package/packages/algo25/src/index.d.ts +2 -2
- package/packages/algo25/src/index.js +4 -5
- package/packages/algo25/src/index.js.map +1 -1
- package/packages/algo25/src/index.mjs +6 -7
- package/packages/algo25/src/index.mjs.map +1 -1
- package/packages/algod_client/src/apis/api-service.js +33 -34
- package/packages/algod_client/src/apis/api-service.js.map +1 -1
- package/packages/algod_client/src/apis/api-service.mjs +3 -4
- package/packages/algod_client/src/apis/api-service.mjs.map +1 -1
- package/packages/algod_client/src/client.js +3 -4
- package/packages/algod_client/src/client.js.map +1 -1
- package/packages/algod_client/src/client.mjs +1 -2
- package/packages/algod_client/src/client.mjs.map +1 -1
- package/packages/algod_client/src/core/api-error.js +1 -2
- package/packages/algod_client/src/core/api-error.js.map +1 -1
- package/packages/algod_client/src/core/api-error.mjs +1 -1
- package/packages/algod_client/src/core/api-error.mjs.map +1 -1
- package/packages/algod_client/src/core/base-http-request.js +1 -2
- package/packages/algod_client/src/core/base-http-request.js.map +1 -1
- package/packages/algod_client/src/core/base-http-request.mjs +1 -1
- package/packages/algod_client/src/core/base-http-request.mjs.map +1 -1
- package/packages/algod_client/src/core/fetch-http-request.js +3 -4
- package/packages/algod_client/src/core/fetch-http-request.js.map +1 -1
- package/packages/algod_client/src/core/fetch-http-request.mjs +1 -2
- package/packages/algod_client/src/core/fetch-http-request.mjs.map +1 -1
- package/packages/algod_client/src/core/model-runtime.js +6 -7
- package/packages/algod_client/src/core/model-runtime.js.map +1 -1
- package/packages/algod_client/src/core/model-runtime.mjs +3 -4
- package/packages/algod_client/src/core/model-runtime.mjs.map +1 -1
- package/packages/algod_client/src/core/request.js +5 -6
- package/packages/algod_client/src/core/request.js.map +1 -1
- package/packages/algod_client/src/core/request.mjs +1 -2
- package/packages/algod_client/src/core/request.mjs.map +1 -1
- package/packages/algod_client/src/models/account-application-response.js +5 -6
- package/packages/algod_client/src/models/account-application-response.js.map +1 -1
- package/packages/algod_client/src/models/account-application-response.mjs +1 -2
- package/packages/algod_client/src/models/account-application-response.mjs.map +1 -1
- package/packages/algod_client/src/models/account-asset-response.js +5 -6
- package/packages/algod_client/src/models/account-asset-response.js.map +1 -1
- package/packages/algod_client/src/models/account-asset-response.mjs +1 -2
- package/packages/algod_client/src/models/account-asset-response.mjs.map +1 -1
- package/packages/algod_client/src/models/account-participation.js +3 -4
- package/packages/algod_client/src/models/account-participation.js.map +1 -1
- package/packages/algod_client/src/models/account-participation.mjs +1 -2
- package/packages/algod_client/src/models/account-participation.mjs.map +1 -1
- package/packages/algod_client/src/models/account-state-delta.d.ts +0 -1
- package/packages/algod_client/src/models/account-state-delta.js +4 -5
- package/packages/algod_client/src/models/account-state-delta.js.map +1 -1
- package/packages/algod_client/src/models/account-state-delta.mjs +1 -2
- package/packages/algod_client/src/models/account-state-delta.mjs.map +1 -1
- package/packages/algod_client/src/models/account.d.ts +0 -1
- package/packages/algod_client/src/models/account.js +14 -15
- package/packages/algod_client/src/models/account.js.map +1 -1
- package/packages/algod_client/src/models/account.mjs +1 -2
- package/packages/algod_client/src/models/account.mjs.map +1 -1
- package/packages/algod_client/src/models/application-initial-states.d.ts +0 -1
- package/packages/algod_client/src/models/application-initial-states.js +5 -6
- package/packages/algod_client/src/models/application-initial-states.js.map +1 -1
- package/packages/algod_client/src/models/application-initial-states.mjs +1 -2
- package/packages/algod_client/src/models/application-initial-states.mjs.map +1 -1
- package/packages/algod_client/src/models/application-kv-storage.d.ts +0 -1
- package/packages/algod_client/src/models/application-kv-storage.js +5 -6
- package/packages/algod_client/src/models/application-kv-storage.js.map +1 -1
- package/packages/algod_client/src/models/application-kv-storage.mjs +1 -2
- package/packages/algod_client/src/models/application-kv-storage.mjs.map +1 -1
- package/packages/algod_client/src/models/application-local-state.d.ts +0 -1
- package/packages/algod_client/src/models/application-local-state.js +6 -7
- package/packages/algod_client/src/models/application-local-state.js.map +1 -1
- package/packages/algod_client/src/models/application-local-state.mjs +1 -2
- package/packages/algod_client/src/models/application-local-state.mjs.map +1 -1
- package/packages/algod_client/src/models/application-params.d.ts +0 -1
- package/packages/algod_client/src/models/application-params.js +8 -9
- package/packages/algod_client/src/models/application-params.js.map +1 -1
- package/packages/algod_client/src/models/application-params.mjs +1 -2
- package/packages/algod_client/src/models/application-params.mjs.map +1 -1
- package/packages/algod_client/src/models/application-state-operation.d.ts +0 -1
- package/packages/algod_client/src/models/application-state-operation.js +6 -7
- package/packages/algod_client/src/models/application-state-operation.js.map +1 -1
- package/packages/algod_client/src/models/application-state-operation.mjs +1 -2
- package/packages/algod_client/src/models/application-state-operation.mjs.map +1 -1
- package/packages/algod_client/src/models/application-state-schema.js +2 -3
- package/packages/algod_client/src/models/application-state-schema.js.map +1 -1
- package/packages/algod_client/src/models/application-state-schema.mjs +1 -2
- package/packages/algod_client/src/models/application-state-schema.mjs.map +1 -1
- package/packages/algod_client/src/models/application.d.ts +0 -1
- package/packages/algod_client/src/models/application.js +4 -5
- package/packages/algod_client/src/models/application.js.map +1 -1
- package/packages/algod_client/src/models/application.mjs +1 -2
- package/packages/algod_client/src/models/application.mjs.map +1 -1
- package/packages/algod_client/src/models/asset-holding.js +3 -4
- package/packages/algod_client/src/models/asset-holding.js.map +1 -1
- package/packages/algod_client/src/models/asset-holding.mjs +1 -2
- package/packages/algod_client/src/models/asset-holding.mjs.map +1 -1
- package/packages/algod_client/src/models/asset-params.js +7 -8
- package/packages/algod_client/src/models/asset-params.js.map +1 -1
- package/packages/algod_client/src/models/asset-params.mjs +1 -2
- package/packages/algod_client/src/models/asset-params.mjs.map +1 -1
- package/packages/algod_client/src/models/asset.d.ts +0 -1
- package/packages/algod_client/src/models/asset.js +4 -5
- package/packages/algod_client/src/models/asset.js.map +1 -1
- package/packages/algod_client/src/models/asset.mjs +1 -2
- package/packages/algod_client/src/models/asset.mjs.map +1 -1
- package/packages/algod_client/src/models/avm-key-value.d.ts +0 -1
- package/packages/algod_client/src/models/avm-key-value.js +4 -5
- package/packages/algod_client/src/models/avm-key-value.js.map +1 -1
- package/packages/algod_client/src/models/avm-key-value.mjs +1 -2
- package/packages/algod_client/src/models/avm-key-value.mjs.map +1 -1
- package/packages/algod_client/src/models/avm-value.js +4 -6
- package/packages/algod_client/src/models/avm-value.js.map +1 -1
- package/packages/algod_client/src/models/avm-value.mjs +1 -2
- package/packages/algod_client/src/models/avm-value.mjs.map +1 -1
- package/packages/algod_client/src/models/block-hash-response.js +2 -4
- package/packages/algod_client/src/models/block-hash-response.js.map +1 -1
- package/packages/algod_client/src/models/block-hash-response.mjs +1 -2
- package/packages/algod_client/src/models/block-hash-response.mjs.map +1 -1
- package/packages/algod_client/src/models/block-response.d.ts +1 -3
- package/packages/algod_client/src/models/block-response.js +4 -6
- package/packages/algod_client/src/models/block-response.js.map +1 -1
- package/packages/algod_client/src/models/block-response.mjs +1 -2
- package/packages/algod_client/src/models/block-response.mjs.map +1 -1
- package/packages/algod_client/src/models/block-txids-response.js +2 -4
- package/packages/algod_client/src/models/block-txids-response.js.map +1 -1
- package/packages/algod_client/src/models/block-txids-response.mjs +1 -2
- package/packages/algod_client/src/models/block-txids-response.mjs.map +1 -1
- package/packages/algod_client/src/models/block.d.ts +45 -97
- package/packages/algod_client/src/models/block.js +30 -31
- package/packages/algod_client/src/models/block.js.map +1 -1
- package/packages/algod_client/src/models/block.mjs +19 -20
- package/packages/algod_client/src/models/block.mjs.map +1 -1
- package/packages/algod_client/src/models/box-descriptor.js +2 -4
- package/packages/algod_client/src/models/box-descriptor.js.map +1 -1
- package/packages/algod_client/src/models/box-descriptor.mjs +1 -2
- package/packages/algod_client/src/models/box-descriptor.mjs.map +1 -1
- package/packages/algod_client/src/models/box.js +3 -4
- package/packages/algod_client/src/models/box.js.map +1 -1
- package/packages/algod_client/src/models/box.mjs +1 -2
- package/packages/algod_client/src/models/box.mjs.map +1 -1
- package/packages/algod_client/src/models/boxes-response.js +4 -5
- package/packages/algod_client/src/models/boxes-response.js.map +1 -1
- package/packages/algod_client/src/models/boxes-response.mjs +1 -2
- package/packages/algod_client/src/models/boxes-response.mjs.map +1 -1
- package/packages/algod_client/src/models/build-version.js +3 -4
- package/packages/algod_client/src/models/build-version.js.map +1 -1
- package/packages/algod_client/src/models/build-version.mjs +1 -2
- package/packages/algod_client/src/models/build-version.mjs.map +1 -1
- package/packages/algod_client/src/models/compile-response.js +4 -5
- package/packages/algod_client/src/models/compile-response.js.map +1 -1
- package/packages/algod_client/src/models/compile-response.mjs +1 -2
- package/packages/algod_client/src/models/compile-response.mjs.map +1 -1
- package/packages/algod_client/src/models/disassemble-response.js +2 -4
- package/packages/algod_client/src/models/disassemble-response.js.map +1 -1
- package/packages/algod_client/src/models/disassemble-response.mjs +1 -2
- package/packages/algod_client/src/models/disassemble-response.mjs.map +1 -1
- package/packages/algod_client/src/models/eval-delta-key-value.d.ts +0 -1
- package/packages/algod_client/src/models/eval-delta-key-value.js +5 -6
- package/packages/algod_client/src/models/eval-delta-key-value.js.map +1 -1
- package/packages/algod_client/src/models/eval-delta-key-value.mjs +3 -4
- package/packages/algod_client/src/models/eval-delta-key-value.mjs.map +1 -1
- package/packages/algod_client/src/models/eval-delta.js +5 -7
- package/packages/algod_client/src/models/eval-delta.js.map +1 -1
- package/packages/algod_client/src/models/eval-delta.mjs +3 -4
- package/packages/algod_client/src/models/eval-delta.mjs.map +1 -1
- package/packages/algod_client/src/models/genesis-allocation.js +59 -62
- package/packages/algod_client/src/models/genesis-allocation.js.map +1 -1
- package/packages/algod_client/src/models/genesis-allocation.mjs +55 -58
- package/packages/algod_client/src/models/genesis-allocation.mjs.map +1 -1
- package/packages/algod_client/src/models/genesis.js +7 -8
- package/packages/algod_client/src/models/genesis.js.map +1 -1
- package/packages/algod_client/src/models/genesis.mjs +1 -2
- package/packages/algod_client/src/models/genesis.mjs.map +1 -1
- package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js +2 -4
- package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js.map +1 -1
- package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs +1 -2
- package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs.map +1 -1
- package/packages/algod_client/src/models/get-sync-round-response.js +2 -4
- package/packages/algod_client/src/models/get-sync-round-response.js.map +1 -1
- package/packages/algod_client/src/models/get-sync-round-response.mjs +1 -2
- package/packages/algod_client/src/models/get-sync-round-response.mjs.map +1 -1
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.d.ts +0 -1
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js +4 -5
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js.map +1 -1
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs +1 -2
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs.map +1 -1
- package/packages/algod_client/src/models/ledger-state-delta.d.ts +3 -8
- package/packages/algod_client/src/models/ledger-state-delta.js +98 -101
- package/packages/algod_client/src/models/ledger-state-delta.js.map +1 -1
- package/packages/algod_client/src/models/ledger-state-delta.mjs +205 -210
- package/packages/algod_client/src/models/ledger-state-delta.mjs.map +1 -1
- package/packages/algod_client/src/models/light-block-header-proof.js +3 -4
- package/packages/algod_client/src/models/light-block-header-proof.js.map +1 -1
- package/packages/algod_client/src/models/light-block-header-proof.mjs +1 -2
- package/packages/algod_client/src/models/light-block-header-proof.mjs.map +1 -1
- package/packages/algod_client/src/models/node-status-response.js +5 -6
- package/packages/algod_client/src/models/node-status-response.js.map +1 -1
- package/packages/algod_client/src/models/node-status-response.mjs +1 -2
- package/packages/algod_client/src/models/node-status-response.mjs.map +1 -1
- package/packages/algod_client/src/models/pending-transaction-response.d.ts +0 -1
- package/packages/algod_client/src/models/pending-transaction-response.js +9 -10
- package/packages/algod_client/src/models/pending-transaction-response.js.map +1 -1
- package/packages/algod_client/src/models/pending-transaction-response.mjs +1 -2
- package/packages/algod_client/src/models/pending-transaction-response.mjs.map +1 -1
- package/packages/algod_client/src/models/pending-transactions-response.d.ts +0 -1
- package/packages/algod_client/src/models/pending-transactions-response.js +5 -6
- package/packages/algod_client/src/models/pending-transactions-response.js.map +1 -1
- package/packages/algod_client/src/models/pending-transactions-response.mjs +1 -2
- package/packages/algod_client/src/models/pending-transactions-response.mjs.map +1 -1
- package/packages/algod_client/src/models/post-transactions-response.js +2 -4
- package/packages/algod_client/src/models/post-transactions-response.js.map +1 -1
- package/packages/algod_client/src/models/post-transactions-response.mjs +1 -2
- package/packages/algod_client/src/models/post-transactions-response.mjs.map +1 -1
- package/packages/algod_client/src/models/scratch-change.d.ts +0 -1
- package/packages/algod_client/src/models/scratch-change.js +4 -5
- package/packages/algod_client/src/models/scratch-change.js.map +1 -1
- package/packages/algod_client/src/models/scratch-change.mjs +1 -2
- package/packages/algod_client/src/models/scratch-change.mjs.map +1 -1
- package/packages/algod_client/src/models/simulate-initial-states.d.ts +0 -1
- package/packages/algod_client/src/models/simulate-initial-states.js +4 -5
- package/packages/algod_client/src/models/simulate-initial-states.js.map +1 -1
- package/packages/algod_client/src/models/simulate-initial-states.mjs +1 -2
- package/packages/algod_client/src/models/simulate-initial-states.mjs.map +1 -1
- package/packages/algod_client/src/models/simulate-request-transaction-group.d.ts +0 -1
- package/packages/algod_client/src/models/simulate-request-transaction-group.js +4 -5
- package/packages/algod_client/src/models/simulate-request-transaction-group.js.map +1 -1
- package/packages/algod_client/src/models/simulate-request-transaction-group.mjs +1 -2
- package/packages/algod_client/src/models/simulate-request-transaction-group.mjs.map +1 -1
- package/packages/algod_client/src/models/simulate-request.d.ts +0 -1
- package/packages/algod_client/src/models/simulate-request.js +8 -9
- package/packages/algod_client/src/models/simulate-request.js.map +1 -1
- package/packages/algod_client/src/models/simulate-request.mjs +2 -3
- package/packages/algod_client/src/models/simulate-request.mjs.map +1 -1
- package/packages/algod_client/src/models/simulate-response.d.ts +3 -1
- package/packages/algod_client/src/models/simulate-response.js +18 -10
- package/packages/algod_client/src/models/simulate-response.js.map +1 -1
- package/packages/algod_client/src/models/simulate-response.mjs +10 -4
- package/packages/algod_client/src/models/simulate-response.mjs.map +1 -1
- package/packages/algod_client/src/models/simulate-trace-config.js +2 -3
- package/packages/algod_client/src/models/simulate-trace-config.js.map +1 -1
- package/packages/algod_client/src/models/simulate-trace-config.mjs +1 -2
- package/packages/algod_client/src/models/simulate-trace-config.mjs.map +1 -1
- package/packages/algod_client/src/models/simulate-transaction-group-result.d.ts +0 -1
- package/packages/algod_client/src/models/simulate-transaction-group-result.js +7 -8
- package/packages/algod_client/src/models/simulate-transaction-group-result.js.map +1 -1
- package/packages/algod_client/src/models/simulate-transaction-group-result.mjs +1 -2
- package/packages/algod_client/src/models/simulate-transaction-group-result.mjs.map +1 -1
- package/packages/algod_client/src/models/simulate-transaction-result.d.ts +0 -1
- package/packages/algod_client/src/models/simulate-transaction-result.js +7 -8
- package/packages/algod_client/src/models/simulate-transaction-result.js.map +1 -1
- package/packages/algod_client/src/models/simulate-transaction-result.mjs +1 -2
- package/packages/algod_client/src/models/simulate-transaction-result.mjs.map +1 -1
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.d.ts +0 -1
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js +5 -6
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js.map +1 -1
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs +1 -2
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs.map +1 -1
- package/packages/algod_client/src/models/simulation-eval-overrides.js +3 -4
- package/packages/algod_client/src/models/simulation-eval-overrides.js.map +1 -1
- package/packages/algod_client/src/models/simulation-eval-overrides.mjs +1 -2
- package/packages/algod_client/src/models/simulation-eval-overrides.mjs.map +1 -1
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.d.ts +0 -1
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.js +7 -8
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.js.map +1 -1
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs +1 -2
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs.map +1 -1
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.d.ts +0 -1
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.js +7 -8
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.js.map +1 -1
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs +1 -2
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs.map +1 -1
- package/packages/algod_client/src/models/source-map.js +4 -5
- package/packages/algod_client/src/models/source-map.js.map +1 -1
- package/packages/algod_client/src/models/source-map.mjs +1 -2
- package/packages/algod_client/src/models/source-map.mjs.map +1 -1
- package/packages/algod_client/src/models/state-delta.d.ts +0 -1
- package/packages/algod_client/src/models/state-delta.js +4 -5
- package/packages/algod_client/src/models/state-delta.js.map +1 -1
- package/packages/algod_client/src/models/state-delta.mjs +1 -2
- package/packages/algod_client/src/models/state-delta.mjs.map +1 -1
- package/packages/algod_client/src/models/state-proof-message.js +3 -4
- package/packages/algod_client/src/models/state-proof-message.js.map +1 -1
- package/packages/algod_client/src/models/state-proof-message.mjs +1 -2
- package/packages/algod_client/src/models/state-proof-message.mjs.map +1 -1
- package/packages/algod_client/src/models/state-proof.d.ts +0 -1
- package/packages/algod_client/src/models/state-proof.js +4 -5
- package/packages/algod_client/src/models/state-proof.js.map +1 -1
- package/packages/algod_client/src/models/state-proof.mjs +1 -2
- package/packages/algod_client/src/models/state-proof.mjs.map +1 -1
- package/packages/algod_client/src/models/supply-response.js +2 -3
- package/packages/algod_client/src/models/supply-response.js.map +1 -1
- package/packages/algod_client/src/models/supply-response.mjs +1 -2
- package/packages/algod_client/src/models/supply-response.mjs.map +1 -1
- package/packages/algod_client/src/models/teal-key-value-store.d.ts +0 -1
- package/packages/algod_client/src/models/teal-key-value-store.js +4 -5
- package/packages/algod_client/src/models/teal-key-value-store.js.map +1 -1
- package/packages/algod_client/src/models/teal-key-value-store.mjs +1 -2
- package/packages/algod_client/src/models/teal-key-value-store.mjs.map +1 -1
- package/packages/algod_client/src/models/teal-key-value.d.ts +0 -1
- package/packages/algod_client/src/models/teal-key-value.js +4 -5
- package/packages/algod_client/src/models/teal-key-value.js.map +1 -1
- package/packages/algod_client/src/models/teal-key-value.mjs +1 -2
- package/packages/algod_client/src/models/teal-key-value.mjs.map +1 -1
- package/packages/algod_client/src/models/teal-value.js +4 -6
- package/packages/algod_client/src/models/teal-value.js.map +1 -1
- package/packages/algod_client/src/models/teal-value.mjs +1 -2
- package/packages/algod_client/src/models/teal-value.mjs.map +1 -1
- package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js +4 -5
- package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js.map +1 -1
- package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs +1 -2
- package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs.map +1 -1
- package/packages/algod_client/src/models/transaction-parameters-response.js +4 -5
- package/packages/algod_client/src/models/transaction-parameters-response.js.map +1 -1
- package/packages/algod_client/src/models/transaction-parameters-response.mjs +1 -2
- package/packages/algod_client/src/models/transaction-parameters-response.mjs.map +1 -1
- package/packages/algod_client/src/models/transaction-proof.js +4 -5
- package/packages/algod_client/src/models/transaction-proof.js.map +1 -1
- package/packages/algod_client/src/models/transaction-proof.mjs +1 -2
- package/packages/algod_client/src/models/transaction-proof.mjs.map +1 -1
- package/packages/algod_client/src/models/version.d.ts +0 -1
- package/packages/algod_client/src/models/version.js +6 -7
- package/packages/algod_client/src/models/version.js.map +1 -1
- package/packages/algod_client/src/models/version.mjs +1 -2
- package/packages/algod_client/src/models/version.mjs.map +1 -1
- package/packages/common/src/address.d.ts +14 -3
- package/packages/common/src/address.js +24 -24
- package/packages/common/src/address.js.map +1 -1
- package/packages/common/src/address.mjs +17 -21
- package/packages/common/src/address.mjs.map +1 -1
- package/packages/common/src/array.d.ts +6 -0
- package/packages/common/src/array.js +1 -2
- package/packages/common/src/array.js.map +1 -1
- package/packages/common/src/array.mjs +1 -1
- package/packages/common/src/codecs/codec.d.ts +0 -1
- package/packages/common/src/codecs/codec.js +1 -2
- package/packages/common/src/codecs/codec.js.map +1 -1
- package/packages/common/src/codecs/codec.mjs +1 -1
- package/packages/common/src/codecs/codec.mjs.map +1 -1
- package/packages/common/src/codecs/composite/array.d.ts +25 -0
- package/packages/common/src/codecs/composite/array.js +9 -9
- package/packages/common/src/codecs/composite/array.js.map +1 -1
- package/packages/common/src/codecs/composite/array.mjs +2 -3
- package/packages/common/src/codecs/composite/array.mjs.map +1 -1
- package/packages/common/src/codecs/composite/map.d.ts +26 -0
- package/packages/common/src/codecs/composite/map.js +2 -3
- package/packages/common/src/codecs/composite/map.js.map +1 -1
- package/packages/common/src/codecs/composite/map.mjs +1 -2
- package/packages/common/src/codecs/composite/map.mjs.map +1 -1
- package/packages/common/src/codecs/composite/record.d.ts +19 -0
- package/packages/common/src/codecs/composite/record.js +3 -4
- package/packages/common/src/codecs/composite/record.js.map +1 -1
- package/packages/common/src/codecs/composite/record.mjs +1 -2
- package/packages/common/src/codecs/composite/record.mjs.map +1 -1
- package/packages/common/src/codecs/models/array-model.d.ts +19 -0
- package/packages/common/src/codecs/models/array-model.js +2 -3
- package/packages/common/src/codecs/models/array-model.js.map +1 -1
- package/packages/common/src/codecs/models/array-model.mjs +1 -2
- package/packages/common/src/codecs/models/array-model.mjs.map +1 -1
- package/packages/common/src/codecs/models/object-model.js +6 -8
- package/packages/common/src/codecs/models/object-model.js.map +1 -1
- package/packages/common/src/codecs/models/object-model.mjs +4 -6
- package/packages/common/src/codecs/models/object-model.mjs.map +1 -1
- package/packages/common/src/codecs/models/primitive-model.d.ts +19 -0
- package/packages/common/src/codecs/models/primitive-model.js +2 -3
- package/packages/common/src/codecs/models/primitive-model.js.map +1 -1
- package/packages/common/src/codecs/models/primitive-model.mjs +1 -2
- package/packages/common/src/codecs/models/primitive-model.mjs.map +1 -1
- package/packages/common/src/codecs/primitives/address.d.ts +16 -0
- package/packages/common/src/codecs/primitives/address.js +7 -8
- package/packages/common/src/codecs/primitives/address.js.map +1 -1
- package/packages/common/src/codecs/primitives/address.mjs +4 -5
- package/packages/common/src/codecs/primitives/address.mjs.map +1 -1
- package/packages/common/src/codecs/primitives/bigint.d.ts +13 -0
- package/packages/common/src/codecs/primitives/bigint.js +2 -3
- package/packages/common/src/codecs/primitives/bigint.js.map +1 -1
- package/packages/common/src/codecs/primitives/bigint.mjs +1 -2
- package/packages/common/src/codecs/primitives/bigint.mjs.map +1 -1
- package/packages/common/src/codecs/primitives/boolean.d.ts +10 -0
- package/packages/common/src/codecs/primitives/boolean.js +2 -3
- package/packages/common/src/codecs/primitives/boolean.js.map +1 -1
- package/packages/common/src/codecs/primitives/boolean.mjs +1 -2
- package/packages/common/src/codecs/primitives/boolean.mjs.map +1 -1
- package/packages/common/src/codecs/primitives/bytes-base64.d.ts +15 -0
- package/packages/common/src/codecs/primitives/bytes-base64.js +25 -0
- package/packages/common/src/codecs/primitives/bytes-base64.js.map +1 -0
- package/packages/common/src/codecs/primitives/bytes-base64.mjs +24 -0
- package/packages/common/src/codecs/primitives/bytes-base64.mjs.map +1 -0
- package/packages/common/src/codecs/primitives/bytes.d.ts +15 -0
- package/packages/common/src/codecs/primitives/bytes.js +3 -4
- package/packages/common/src/codecs/primitives/bytes.js.map +1 -1
- package/packages/common/src/codecs/primitives/bytes.mjs +1 -2
- package/packages/common/src/codecs/primitives/bytes.mjs.map +1 -1
- package/packages/common/src/codecs/primitives/fixed-bytes.d.ts +19 -0
- package/packages/common/src/codecs/primitives/fixed-bytes.js +3 -4
- package/packages/common/src/codecs/primitives/fixed-bytes.js.map +1 -1
- package/packages/common/src/codecs/primitives/fixed-bytes.mjs +1 -2
- package/packages/common/src/codecs/primitives/fixed-bytes.mjs.map +1 -1
- package/packages/common/src/codecs/primitives/number.d.ts +11 -0
- package/packages/common/src/codecs/primitives/number.js +2 -3
- package/packages/common/src/codecs/primitives/number.js.map +1 -1
- package/packages/common/src/codecs/primitives/number.mjs +1 -2
- package/packages/common/src/codecs/primitives/number.mjs.map +1 -1
- package/packages/common/src/codecs/primitives/string.d.ts +13 -0
- package/packages/common/src/codecs/primitives/string.js +3 -4
- package/packages/common/src/codecs/primitives/string.js.map +1 -1
- package/packages/common/src/codecs/primitives/string.mjs +1 -2
- package/packages/common/src/codecs/primitives/string.mjs.map +1 -1
- package/packages/common/src/codecs/primitives/unknown.d.ts +26 -0
- package/packages/common/src/codecs/primitives/unknown.js +10 -11
- package/packages/common/src/codecs/primitives/unknown.js.map +1 -1
- package/packages/common/src/codecs/primitives/unknown.mjs +3 -4
- package/packages/common/src/codecs/primitives/unknown.mjs.map +1 -1
- package/packages/common/src/codecs/types.d.ts +12 -2
- package/packages/common/src/codecs/wire.d.ts +17 -1
- package/packages/common/src/codecs/wire.js +2 -3
- package/packages/common/src/codecs/wire.js.map +1 -1
- package/packages/common/src/codecs/wire.mjs +1 -2
- package/packages/common/src/codecs/wire.mjs.map +1 -1
- package/packages/common/src/constants.d.ts +34 -0
- package/packages/common/src/constants.js +4 -3
- package/packages/common/src/constants.js.map +1 -1
- package/packages/common/src/constants.mjs +4 -3
- package/packages/common/src/constants.mjs.map +1 -1
- package/packages/common/src/encoding.d.ts +10 -0
- package/packages/common/src/encoding.js +30 -0
- package/packages/common/src/encoding.js.map +1 -0
- package/packages/common/src/encoding.mjs +24 -0
- package/packages/common/src/encoding.mjs.map +1 -0
- package/packages/common/src/json.d.ts +17 -0
- package/packages/common/src/json.js +3 -4
- package/packages/common/src/json.js.map +1 -1
- package/packages/common/src/json.mjs +3 -4
- package/packages/common/src/json.mjs.map +1 -1
- package/packages/common/src/msgpack.d.ts +11 -0
- package/packages/common/src/msgpack.js +2 -3
- package/packages/common/src/msgpack.js.map +1 -1
- package/packages/common/src/msgpack.mjs +1 -2
- package/packages/common/src/msgpack.mjs.map +1 -1
- package/packages/{sdk/src/logic → common/src}/sourcemap.d.ts +1 -1
- package/packages/{sdk/src/logic → common/src}/sourcemap.js +4 -5
- package/packages/common/src/sourcemap.js.map +1 -0
- package/packages/{sdk/src/logic → common/src}/sourcemap.mjs +2 -3
- package/packages/common/src/sourcemap.mjs.map +1 -0
- package/packages/crypto/src/ed25519.d.ts +60 -0
- package/packages/crypto/src/ed25519.js +58 -0
- package/packages/crypto/src/ed25519.js.map +1 -0
- package/packages/crypto/src/ed25519.mjs +53 -0
- package/packages/crypto/src/ed25519.mjs.map +1 -0
- package/packages/crypto/src/hash.d.ts +8 -0
- package/packages/crypto/src/hash.js +14 -0
- package/packages/crypto/src/hash.js.map +1 -0
- package/packages/crypto/src/hash.mjs +13 -0
- package/packages/crypto/src/hash.mjs.map +1 -0
- package/packages/crypto/src/hd.d.ts +36 -0
- package/packages/crypto/src/hd.js +36 -0
- package/packages/crypto/src/hd.js.map +1 -0
- package/packages/crypto/src/hd.mjs +35 -0
- package/packages/crypto/src/hd.mjs.map +1 -0
- package/packages/crypto/src/index.d.ts +28 -0
- package/packages/crypto/src/index.js +142 -0
- package/packages/crypto/src/index.js.map +1 -0
- package/packages/crypto/src/index.mjs +139 -0
- package/packages/crypto/src/index.mjs.map +1 -0
- package/packages/indexer_client/src/apis/api-service.js +19 -20
- package/packages/indexer_client/src/apis/api-service.js.map +1 -1
- package/packages/indexer_client/src/apis/api-service.mjs +1 -2
- package/packages/indexer_client/src/apis/api-service.mjs.map +1 -1
- package/packages/indexer_client/src/client.js +3 -4
- package/packages/indexer_client/src/client.js.map +1 -1
- package/packages/indexer_client/src/client.mjs +1 -2
- package/packages/indexer_client/src/client.mjs.map +1 -1
- package/packages/indexer_client/src/core/api-error.js +1 -2
- package/packages/indexer_client/src/core/api-error.js.map +1 -1
- package/packages/indexer_client/src/core/api-error.mjs +1 -1
- package/packages/indexer_client/src/core/api-error.mjs.map +1 -1
- package/packages/indexer_client/src/core/base-http-request.js +1 -2
- package/packages/indexer_client/src/core/base-http-request.js.map +1 -1
- package/packages/indexer_client/src/core/base-http-request.mjs +1 -1
- package/packages/indexer_client/src/core/base-http-request.mjs.map +1 -1
- package/packages/indexer_client/src/core/fetch-http-request.js +3 -4
- package/packages/indexer_client/src/core/fetch-http-request.js.map +1 -1
- package/packages/indexer_client/src/core/fetch-http-request.mjs +1 -2
- package/packages/indexer_client/src/core/fetch-http-request.mjs.map +1 -1
- package/packages/indexer_client/src/core/model-runtime.js +2 -18
- package/packages/indexer_client/src/core/model-runtime.js.map +1 -1
- package/packages/indexer_client/src/core/model-runtime.mjs +2 -15
- package/packages/indexer_client/src/core/model-runtime.mjs.map +1 -1
- package/packages/indexer_client/src/core/request.js +5 -6
- package/packages/indexer_client/src/core/request.js.map +1 -1
- package/packages/indexer_client/src/core/request.mjs +1 -2
- package/packages/indexer_client/src/core/request.mjs.map +1 -1
- package/packages/indexer_client/src/models/account-participation.js +3 -4
- package/packages/indexer_client/src/models/account-participation.js.map +1 -1
- package/packages/indexer_client/src/models/account-participation.mjs +1 -2
- package/packages/indexer_client/src/models/account-participation.mjs.map +1 -1
- package/packages/indexer_client/src/models/account-response.js +4 -5
- package/packages/indexer_client/src/models/account-response.js.map +1 -1
- package/packages/indexer_client/src/models/account-response.mjs +1 -2
- package/packages/indexer_client/src/models/account-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/account-state-delta.d.ts +0 -1
- package/packages/indexer_client/src/models/account-state-delta.js +4 -5
- package/packages/indexer_client/src/models/account-state-delta.js.map +1 -1
- package/packages/indexer_client/src/models/account-state-delta.mjs +1 -2
- package/packages/indexer_client/src/models/account-state-delta.mjs.map +1 -1
- package/packages/indexer_client/src/models/account.d.ts +0 -1
- package/packages/indexer_client/src/models/account.js +14 -15
- package/packages/indexer_client/src/models/account.js.map +1 -1
- package/packages/indexer_client/src/models/account.mjs +1 -2
- package/packages/indexer_client/src/models/account.mjs.map +1 -1
- package/packages/indexer_client/src/models/accounts-response.js +6 -7
- package/packages/indexer_client/src/models/accounts-response.js.map +1 -1
- package/packages/indexer_client/src/models/accounts-response.mjs +1 -2
- package/packages/indexer_client/src/models/accounts-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/application-local-state.d.ts +0 -1
- package/packages/indexer_client/src/models/application-local-state.js +7 -8
- package/packages/indexer_client/src/models/application-local-state.js.map +1 -1
- package/packages/indexer_client/src/models/application-local-state.mjs +1 -2
- package/packages/indexer_client/src/models/application-local-state.mjs.map +1 -1
- package/packages/indexer_client/src/models/application-local-states-response.js +6 -7
- package/packages/indexer_client/src/models/application-local-states-response.js.map +1 -1
- package/packages/indexer_client/src/models/application-local-states-response.mjs +1 -2
- package/packages/indexer_client/src/models/application-local-states-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/application-log-data.js +3 -4
- package/packages/indexer_client/src/models/application-log-data.js.map +1 -1
- package/packages/indexer_client/src/models/application-log-data.mjs +1 -2
- package/packages/indexer_client/src/models/application-log-data.mjs.map +1 -1
- package/packages/indexer_client/src/models/application-logs-response.js +6 -7
- package/packages/indexer_client/src/models/application-logs-response.js.map +1 -1
- package/packages/indexer_client/src/models/application-logs-response.mjs +1 -2
- package/packages/indexer_client/src/models/application-logs-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/application-params.d.ts +0 -1
- package/packages/indexer_client/src/models/application-params.js +8 -9
- package/packages/indexer_client/src/models/application-params.js.map +1 -1
- package/packages/indexer_client/src/models/application-params.mjs +1 -2
- package/packages/indexer_client/src/models/application-params.mjs.map +1 -1
- package/packages/indexer_client/src/models/application-response.js +4 -5
- package/packages/indexer_client/src/models/application-response.js.map +1 -1
- package/packages/indexer_client/src/models/application-response.mjs +1 -2
- package/packages/indexer_client/src/models/application-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/application-state-schema.js +2 -3
- package/packages/indexer_client/src/models/application-state-schema.js.map +1 -1
- package/packages/indexer_client/src/models/application-state-schema.mjs +1 -2
- package/packages/indexer_client/src/models/application-state-schema.mjs.map +1 -1
- package/packages/indexer_client/src/models/application.d.ts +0 -1
- package/packages/indexer_client/src/models/application.js +5 -6
- package/packages/indexer_client/src/models/application.js.map +1 -1
- package/packages/indexer_client/src/models/application.mjs +1 -2
- package/packages/indexer_client/src/models/application.mjs.map +1 -1
- package/packages/indexer_client/src/models/applications-response.js +6 -7
- package/packages/indexer_client/src/models/applications-response.js.map +1 -1
- package/packages/indexer_client/src/models/applications-response.mjs +1 -2
- package/packages/indexer_client/src/models/applications-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/asset-balances-response.js +6 -7
- package/packages/indexer_client/src/models/asset-balances-response.js.map +1 -1
- package/packages/indexer_client/src/models/asset-balances-response.mjs +1 -2
- package/packages/indexer_client/src/models/asset-balances-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/asset-holding.js +3 -4
- package/packages/indexer_client/src/models/asset-holding.js.map +1 -1
- package/packages/indexer_client/src/models/asset-holding.mjs +1 -2
- package/packages/indexer_client/src/models/asset-holding.mjs.map +1 -1
- package/packages/indexer_client/src/models/asset-holdings-response.js +6 -7
- package/packages/indexer_client/src/models/asset-holdings-response.js.map +1 -1
- package/packages/indexer_client/src/models/asset-holdings-response.mjs +1 -2
- package/packages/indexer_client/src/models/asset-holdings-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/asset-params.js +7 -8
- package/packages/indexer_client/src/models/asset-params.js.map +1 -1
- package/packages/indexer_client/src/models/asset-params.mjs +1 -2
- package/packages/indexer_client/src/models/asset-params.mjs.map +1 -1
- package/packages/indexer_client/src/models/asset-response.js +4 -5
- package/packages/indexer_client/src/models/asset-response.js.map +1 -1
- package/packages/indexer_client/src/models/asset-response.mjs +1 -2
- package/packages/indexer_client/src/models/asset-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/asset.d.ts +0 -1
- package/packages/indexer_client/src/models/asset.js +5 -6
- package/packages/indexer_client/src/models/asset.js.map +1 -1
- package/packages/indexer_client/src/models/asset.mjs +1 -2
- package/packages/indexer_client/src/models/asset.mjs.map +1 -1
- package/packages/indexer_client/src/models/assets-response.js +6 -7
- package/packages/indexer_client/src/models/assets-response.js.map +1 -1
- package/packages/indexer_client/src/models/assets-response.mjs +1 -2
- package/packages/indexer_client/src/models/assets-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/block-headers-response.js +6 -7
- package/packages/indexer_client/src/models/block-headers-response.js.map +1 -1
- package/packages/indexer_client/src/models/block-headers-response.mjs +1 -2
- package/packages/indexer_client/src/models/block-headers-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/block-rewards.js +3 -4
- package/packages/indexer_client/src/models/block-rewards.js.map +1 -1
- package/packages/indexer_client/src/models/block-rewards.mjs +1 -2
- package/packages/indexer_client/src/models/block-rewards.mjs.map +1 -1
- package/packages/indexer_client/src/models/block-upgrade-state.js +4 -5
- package/packages/indexer_client/src/models/block-upgrade-state.js.map +1 -1
- package/packages/indexer_client/src/models/block-upgrade-state.mjs +1 -2
- package/packages/indexer_client/src/models/block-upgrade-state.mjs.map +1 -1
- package/packages/indexer_client/src/models/block-upgrade-vote.js +4 -5
- package/packages/indexer_client/src/models/block-upgrade-vote.js.map +1 -1
- package/packages/indexer_client/src/models/block-upgrade-vote.mjs +1 -2
- package/packages/indexer_client/src/models/block-upgrade-vote.mjs.map +1 -1
- package/packages/indexer_client/src/models/block.d.ts +5 -6
- package/packages/indexer_client/src/models/block.js +19 -20
- package/packages/indexer_client/src/models/block.js.map +1 -1
- package/packages/indexer_client/src/models/block.mjs +6 -7
- package/packages/indexer_client/src/models/block.mjs.map +1 -1
- package/packages/indexer_client/src/models/box-descriptor.js +2 -4
- package/packages/indexer_client/src/models/box-descriptor.js.map +1 -1
- package/packages/indexer_client/src/models/box-descriptor.mjs +1 -2
- package/packages/indexer_client/src/models/box-descriptor.mjs.map +1 -1
- package/packages/indexer_client/src/models/box-reference.js +3 -4
- package/packages/indexer_client/src/models/box-reference.js.map +1 -1
- package/packages/indexer_client/src/models/box-reference.mjs +1 -2
- package/packages/indexer_client/src/models/box-reference.mjs.map +1 -1
- package/packages/indexer_client/src/models/box.js +3 -4
- package/packages/indexer_client/src/models/box.js.map +1 -1
- package/packages/indexer_client/src/models/box.mjs +1 -2
- package/packages/indexer_client/src/models/box.mjs.map +1 -1
- package/packages/indexer_client/src/models/boxes-response.js +6 -7
- package/packages/indexer_client/src/models/boxes-response.js.map +1 -1
- package/packages/indexer_client/src/models/boxes-response.mjs +1 -2
- package/packages/indexer_client/src/models/boxes-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/eval-delta-key-value.d.ts +0 -1
- package/packages/indexer_client/src/models/eval-delta-key-value.js +4 -5
- package/packages/indexer_client/src/models/eval-delta-key-value.js.map +1 -1
- package/packages/indexer_client/src/models/eval-delta-key-value.mjs +1 -2
- package/packages/indexer_client/src/models/eval-delta-key-value.mjs.map +1 -1
- package/packages/indexer_client/src/models/eval-delta.js +4 -6
- package/packages/indexer_client/src/models/eval-delta.js.map +1 -1
- package/packages/indexer_client/src/models/eval-delta.mjs +1 -2
- package/packages/indexer_client/src/models/eval-delta.mjs.map +1 -1
- package/packages/indexer_client/src/models/hash-factory.js +2 -4
- package/packages/indexer_client/src/models/hash-factory.js.map +1 -1
- package/packages/indexer_client/src/models/hash-factory.mjs +1 -2
- package/packages/indexer_client/src/models/hash-factory.mjs.map +1 -1
- package/packages/indexer_client/src/models/hb-proof-fields.js +2 -3
- package/packages/indexer_client/src/models/hb-proof-fields.js.map +1 -1
- package/packages/indexer_client/src/models/hb-proof-fields.mjs +1 -2
- package/packages/indexer_client/src/models/hb-proof-fields.mjs.map +1 -1
- package/packages/indexer_client/src/models/health-check.js +7 -8
- package/packages/indexer_client/src/models/health-check.js.map +1 -1
- package/packages/indexer_client/src/models/health-check.mjs +1 -2
- package/packages/indexer_client/src/models/health-check.mjs.map +1 -1
- package/packages/indexer_client/src/models/holding-ref.d.ts +0 -1
- package/packages/indexer_client/src/models/holding-ref.js +3 -4
- package/packages/indexer_client/src/models/holding-ref.js.map +1 -1
- package/packages/indexer_client/src/models/holding-ref.mjs +1 -2
- package/packages/indexer_client/src/models/holding-ref.mjs.map +1 -1
- package/packages/indexer_client/src/models/indexer-state-proof-message.js +3 -4
- package/packages/indexer_client/src/models/indexer-state-proof-message.js.map +1 -1
- package/packages/indexer_client/src/models/indexer-state-proof-message.mjs +1 -2
- package/packages/indexer_client/src/models/indexer-state-proof-message.mjs.map +1 -1
- package/packages/indexer_client/src/models/locals-ref.d.ts +0 -1
- package/packages/indexer_client/src/models/locals-ref.js +3 -4
- package/packages/indexer_client/src/models/locals-ref.js.map +1 -1
- package/packages/indexer_client/src/models/locals-ref.mjs +1 -2
- package/packages/indexer_client/src/models/locals-ref.mjs.map +1 -1
- package/packages/indexer_client/src/models/merkle-array-proof.js +5 -6
- package/packages/indexer_client/src/models/merkle-array-proof.js.map +1 -1
- package/packages/indexer_client/src/models/merkle-array-proof.mjs +1 -2
- package/packages/indexer_client/src/models/merkle-array-proof.mjs.map +1 -1
- package/packages/indexer_client/src/models/mini-asset-holding.js +4 -6
- package/packages/indexer_client/src/models/mini-asset-holding.js.map +1 -1
- package/packages/indexer_client/src/models/mini-asset-holding.mjs +1 -2
- package/packages/indexer_client/src/models/mini-asset-holding.mjs.map +1 -1
- package/packages/indexer_client/src/models/on-completion.js +2 -4
- package/packages/indexer_client/src/models/on-completion.js.map +1 -1
- package/packages/indexer_client/src/models/on-completion.mjs +1 -2
- package/packages/indexer_client/src/models/on-completion.mjs.map +1 -1
- package/packages/indexer_client/src/models/participation-updates.d.ts +2 -2
- package/packages/indexer_client/src/models/participation-updates.js +4 -5
- package/packages/indexer_client/src/models/participation-updates.js.map +1 -1
- package/packages/indexer_client/src/models/participation-updates.mjs +3 -4
- package/packages/indexer_client/src/models/participation-updates.mjs.map +1 -1
- package/packages/indexer_client/src/models/resource-ref.d.ts +0 -1
- package/packages/indexer_client/src/models/resource-ref.js +7 -8
- package/packages/indexer_client/src/models/resource-ref.js.map +1 -1
- package/packages/indexer_client/src/models/resource-ref.mjs +1 -2
- package/packages/indexer_client/src/models/resource-ref.mjs.map +1 -1
- package/packages/indexer_client/src/models/state-delta.d.ts +0 -1
- package/packages/indexer_client/src/models/state-delta.js +4 -5
- package/packages/indexer_client/src/models/state-delta.js.map +1 -1
- package/packages/indexer_client/src/models/state-delta.mjs +1 -2
- package/packages/indexer_client/src/models/state-delta.mjs.map +1 -1
- package/packages/indexer_client/src/models/state-proof-fields.d.ts +0 -1
- package/packages/indexer_client/src/models/state-proof-fields.js +8 -9
- package/packages/indexer_client/src/models/state-proof-fields.js.map +1 -1
- package/packages/indexer_client/src/models/state-proof-fields.mjs +1 -2
- package/packages/indexer_client/src/models/state-proof-fields.mjs.map +1 -1
- package/packages/indexer_client/src/models/state-proof-participant.js +4 -5
- package/packages/indexer_client/src/models/state-proof-participant.js.map +1 -1
- package/packages/indexer_client/src/models/state-proof-participant.mjs +1 -2
- package/packages/indexer_client/src/models/state-proof-participant.mjs.map +1 -1
- package/packages/indexer_client/src/models/state-proof-reveal.js +5 -6
- package/packages/indexer_client/src/models/state-proof-reveal.js.map +1 -1
- package/packages/indexer_client/src/models/state-proof-reveal.mjs +1 -2
- package/packages/indexer_client/src/models/state-proof-reveal.mjs.map +1 -1
- package/packages/indexer_client/src/models/state-proof-sig-slot.js +4 -5
- package/packages/indexer_client/src/models/state-proof-sig-slot.js.map +1 -1
- package/packages/indexer_client/src/models/state-proof-sig-slot.mjs +1 -2
- package/packages/indexer_client/src/models/state-proof-sig-slot.mjs.map +1 -1
- package/packages/indexer_client/src/models/state-proof-signature.js +5 -6
- package/packages/indexer_client/src/models/state-proof-signature.js.map +1 -1
- package/packages/indexer_client/src/models/state-proof-signature.mjs +1 -2
- package/packages/indexer_client/src/models/state-proof-signature.mjs.map +1 -1
- package/packages/indexer_client/src/models/state-proof-tracking.js +4 -5
- package/packages/indexer_client/src/models/state-proof-tracking.js.map +1 -1
- package/packages/indexer_client/src/models/state-proof-tracking.mjs +1 -2
- package/packages/indexer_client/src/models/state-proof-tracking.mjs.map +1 -1
- package/packages/indexer_client/src/models/state-proof-verifier.js +3 -5
- package/packages/indexer_client/src/models/state-proof-verifier.js.map +1 -1
- package/packages/indexer_client/src/models/state-proof-verifier.mjs +1 -2
- package/packages/indexer_client/src/models/state-proof-verifier.mjs.map +1 -1
- package/packages/indexer_client/src/models/state-schema.js +2 -3
- package/packages/indexer_client/src/models/state-schema.js.map +1 -1
- package/packages/indexer_client/src/models/state-schema.mjs +1 -2
- package/packages/indexer_client/src/models/state-schema.mjs.map +1 -1
- package/packages/indexer_client/src/models/teal-key-value-store.d.ts +0 -1
- package/packages/indexer_client/src/models/teal-key-value-store.js +4 -5
- package/packages/indexer_client/src/models/teal-key-value-store.js.map +1 -1
- package/packages/indexer_client/src/models/teal-key-value-store.mjs +1 -2
- package/packages/indexer_client/src/models/teal-key-value-store.mjs.map +1 -1
- package/packages/indexer_client/src/models/teal-key-value.d.ts +0 -1
- package/packages/indexer_client/src/models/teal-key-value.js +4 -5
- package/packages/indexer_client/src/models/teal-key-value.js.map +1 -1
- package/packages/indexer_client/src/models/teal-key-value.mjs +1 -2
- package/packages/indexer_client/src/models/teal-key-value.mjs.map +1 -1
- package/packages/indexer_client/src/models/teal-value.js +4 -6
- package/packages/indexer_client/src/models/teal-value.js.map +1 -1
- package/packages/indexer_client/src/models/teal-value.mjs +1 -2
- package/packages/indexer_client/src/models/teal-value.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-application.d.ts +0 -1
- package/packages/indexer_client/src/models/transaction-application.js +11 -12
- package/packages/indexer_client/src/models/transaction-application.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-application.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-application.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-asset-config.d.ts +0 -1
- package/packages/indexer_client/src/models/transaction-asset-config.js +4 -5
- package/packages/indexer_client/src/models/transaction-asset-config.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-asset-config.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-asset-config.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-asset-freeze.js +4 -6
- package/packages/indexer_client/src/models/transaction-asset-freeze.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-asset-freeze.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-asset-freeze.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-asset-transfer.js +3 -4
- package/packages/indexer_client/src/models/transaction-asset-transfer.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-asset-transfer.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-asset-transfer.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-heartbeat.d.ts +0 -1
- package/packages/indexer_client/src/models/transaction-heartbeat.js +7 -8
- package/packages/indexer_client/src/models/transaction-heartbeat.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-heartbeat.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-heartbeat.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-keyreg.js +4 -5
- package/packages/indexer_client/src/models/transaction-keyreg.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-keyreg.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-keyreg.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-payment.js +3 -4
- package/packages/indexer_client/src/models/transaction-payment.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-payment.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-payment.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-response.js +4 -5
- package/packages/indexer_client/src/models/transaction-response.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-response.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-response.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-signature-logicsig.d.ts +0 -1
- package/packages/indexer_client/src/models/transaction-signature-logicsig.js +6 -7
- package/packages/indexer_client/src/models/transaction-signature-logicsig.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js +2 -3
- package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-signature-multisig.d.ts +0 -1
- package/packages/indexer_client/src/models/transaction-signature-multisig.js +5 -6
- package/packages/indexer_client/src/models/transaction-signature-multisig.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-signature-multisig.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-signature-multisig.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-signature.d.ts +0 -1
- package/packages/indexer_client/src/models/transaction-signature.js +5 -6
- package/packages/indexer_client/src/models/transaction-signature.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-signature.mjs +1 -2
- package/packages/indexer_client/src/models/transaction-signature.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction-state-proof.d.ts +1 -2
- package/packages/indexer_client/src/models/transaction-state-proof.js +6 -7
- package/packages/indexer_client/src/models/transaction-state-proof.js.map +1 -1
- package/packages/indexer_client/src/models/transaction-state-proof.mjs +3 -4
- package/packages/indexer_client/src/models/transaction-state-proof.mjs.map +1 -1
- package/packages/indexer_client/src/models/transaction.d.ts +0 -1
- package/packages/indexer_client/src/models/transaction.js +21 -22
- package/packages/indexer_client/src/models/transaction.js.map +1 -1
- package/packages/indexer_client/src/models/transaction.mjs +1 -2
- package/packages/indexer_client/src/models/transaction.mjs.map +1 -1
- package/packages/indexer_client/src/models/transactions-response.js +6 -7
- package/packages/indexer_client/src/models/transactions-response.js.map +1 -1
- package/packages/indexer_client/src/models/transactions-response.mjs +1 -2
- package/packages/indexer_client/src/models/transactions-response.mjs.map +1 -1
- package/packages/kmd_client/src/apis/api-service.js +44 -46
- package/packages/kmd_client/src/apis/api-service.js.map +1 -1
- package/packages/kmd_client/src/apis/api-service.mjs +3 -5
- package/packages/kmd_client/src/apis/api-service.mjs.map +1 -1
- package/packages/kmd_client/src/client.js +3 -4
- package/packages/kmd_client/src/client.js.map +1 -1
- package/packages/kmd_client/src/client.mjs +1 -2
- package/packages/kmd_client/src/client.mjs.map +1 -1
- package/packages/kmd_client/src/core/api-error.js +1 -2
- package/packages/kmd_client/src/core/api-error.js.map +1 -1
- package/packages/kmd_client/src/core/api-error.mjs +1 -1
- package/packages/kmd_client/src/core/api-error.mjs.map +1 -1
- package/packages/kmd_client/src/core/base-http-request.js +1 -2
- package/packages/kmd_client/src/core/base-http-request.js.map +1 -1
- package/packages/kmd_client/src/core/base-http-request.mjs +1 -1
- package/packages/kmd_client/src/core/base-http-request.mjs.map +1 -1
- package/packages/kmd_client/src/core/fetch-http-request.js +3 -4
- package/packages/kmd_client/src/core/fetch-http-request.js.map +1 -1
- package/packages/kmd_client/src/core/fetch-http-request.mjs +1 -2
- package/packages/kmd_client/src/core/fetch-http-request.mjs.map +1 -1
- package/packages/kmd_client/src/core/model-runtime.js +5 -16
- package/packages/kmd_client/src/core/model-runtime.js.map +1 -1
- package/packages/kmd_client/src/core/model-runtime.mjs +4 -13
- package/packages/kmd_client/src/core/model-runtime.mjs.map +1 -1
- package/packages/kmd_client/src/core/request.js +5 -6
- package/packages/kmd_client/src/core/request.js.map +1 -1
- package/packages/kmd_client/src/core/request.mjs +1 -2
- package/packages/kmd_client/src/core/request.mjs.map +1 -1
- package/packages/kmd_client/src/models/create-wallet-request.js +3 -4
- package/packages/kmd_client/src/models/create-wallet-request.js.map +1 -1
- package/packages/kmd_client/src/models/create-wallet-request.mjs +1 -2
- package/packages/kmd_client/src/models/create-wallet-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/create-wallet-response.d.ts +0 -1
- package/packages/kmd_client/src/models/create-wallet-response.js +3 -4
- package/packages/kmd_client/src/models/create-wallet-response.js.map +1 -1
- package/packages/kmd_client/src/models/create-wallet-response.mjs +1 -2
- package/packages/kmd_client/src/models/create-wallet-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/delete-key-request.d.ts +0 -1
- package/packages/kmd_client/src/models/delete-key-request.js +3 -4
- package/packages/kmd_client/src/models/delete-key-request.js.map +1 -1
- package/packages/kmd_client/src/models/delete-key-request.mjs +1 -2
- package/packages/kmd_client/src/models/delete-key-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/delete-multisig-request.d.ts +0 -1
- package/packages/kmd_client/src/models/delete-multisig-request.js +3 -4
- package/packages/kmd_client/src/models/delete-multisig-request.js.map +1 -1
- package/packages/kmd_client/src/models/delete-multisig-request.mjs +1 -2
- package/packages/kmd_client/src/models/delete-multisig-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/export-key-request.d.ts +0 -1
- package/packages/kmd_client/src/models/export-key-request.js +3 -4
- package/packages/kmd_client/src/models/export-key-request.js.map +1 -1
- package/packages/kmd_client/src/models/export-key-request.mjs +1 -2
- package/packages/kmd_client/src/models/export-key-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/export-key-response.js +2 -4
- package/packages/kmd_client/src/models/export-key-response.js.map +1 -1
- package/packages/kmd_client/src/models/export-key-response.mjs +1 -2
- package/packages/kmd_client/src/models/export-key-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/export-master-key-request.js +2 -3
- package/packages/kmd_client/src/models/export-master-key-request.js.map +1 -1
- package/packages/kmd_client/src/models/export-master-key-request.mjs +1 -2
- package/packages/kmd_client/src/models/export-master-key-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/export-master-key-response.js +2 -4
- package/packages/kmd_client/src/models/export-master-key-response.js.map +1 -1
- package/packages/kmd_client/src/models/export-master-key-response.mjs +1 -2
- package/packages/kmd_client/src/models/export-master-key-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/export-multisig-request.d.ts +0 -1
- package/packages/kmd_client/src/models/export-multisig-request.js +3 -4
- package/packages/kmd_client/src/models/export-multisig-request.js.map +1 -1
- package/packages/kmd_client/src/models/export-multisig-request.mjs +1 -2
- package/packages/kmd_client/src/models/export-multisig-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/export-multisig-response.js +3 -4
- package/packages/kmd_client/src/models/export-multisig-response.js.map +1 -1
- package/packages/kmd_client/src/models/export-multisig-response.mjs +1 -2
- package/packages/kmd_client/src/models/export-multisig-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/generate-key-request.js +2 -4
- package/packages/kmd_client/src/models/generate-key-request.js.map +1 -1
- package/packages/kmd_client/src/models/generate-key-request.mjs +1 -2
- package/packages/kmd_client/src/models/generate-key-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/generate-key-response.d.ts +0 -1
- package/packages/kmd_client/src/models/generate-key-response.js +2 -4
- package/packages/kmd_client/src/models/generate-key-response.js.map +1 -1
- package/packages/kmd_client/src/models/generate-key-response.mjs +1 -2
- package/packages/kmd_client/src/models/generate-key-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/import-key-request.js +3 -4
- package/packages/kmd_client/src/models/import-key-request.js.map +1 -1
- package/packages/kmd_client/src/models/import-key-request.mjs +1 -2
- package/packages/kmd_client/src/models/import-key-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/import-key-response.d.ts +0 -1
- package/packages/kmd_client/src/models/import-key-response.js +2 -4
- package/packages/kmd_client/src/models/import-key-response.js.map +1 -1
- package/packages/kmd_client/src/models/import-key-response.mjs +1 -2
- package/packages/kmd_client/src/models/import-key-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/import-multisig-request.js +4 -5
- package/packages/kmd_client/src/models/import-multisig-request.js.map +1 -1
- package/packages/kmd_client/src/models/import-multisig-request.mjs +1 -2
- package/packages/kmd_client/src/models/import-multisig-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/import-multisig-response.d.ts +0 -1
- package/packages/kmd_client/src/models/import-multisig-response.js +2 -4
- package/packages/kmd_client/src/models/import-multisig-response.js.map +1 -1
- package/packages/kmd_client/src/models/import-multisig-response.mjs +1 -2
- package/packages/kmd_client/src/models/import-multisig-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/init-wallet-handle-token-request.js +2 -3
- package/packages/kmd_client/src/models/init-wallet-handle-token-request.js.map +1 -1
- package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs +1 -2
- package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/init-wallet-handle-token-response.js +2 -4
- package/packages/kmd_client/src/models/init-wallet-handle-token-response.js.map +1 -1
- package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs +1 -2
- package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/list-keys-request.js +2 -4
- package/packages/kmd_client/src/models/list-keys-request.js.map +1 -1
- package/packages/kmd_client/src/models/list-keys-request.mjs +1 -2
- package/packages/kmd_client/src/models/list-keys-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/list-keys-response.d.ts +0 -1
- package/packages/kmd_client/src/models/list-keys-response.js +2 -4
- package/packages/kmd_client/src/models/list-keys-response.js.map +1 -1
- package/packages/kmd_client/src/models/list-keys-response.mjs +1 -2
- package/packages/kmd_client/src/models/list-keys-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/list-multisig-request.js +2 -4
- package/packages/kmd_client/src/models/list-multisig-request.js.map +1 -1
- package/packages/kmd_client/src/models/list-multisig-request.mjs +1 -2
- package/packages/kmd_client/src/models/list-multisig-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/list-multisig-response.d.ts +0 -1
- package/packages/kmd_client/src/models/list-multisig-response.js +2 -4
- package/packages/kmd_client/src/models/list-multisig-response.js.map +1 -1
- package/packages/kmd_client/src/models/list-multisig-response.mjs +1 -2
- package/packages/kmd_client/src/models/list-multisig-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/list-wallets-response.d.ts +0 -1
- package/packages/kmd_client/src/models/list-wallets-response.js +4 -5
- package/packages/kmd_client/src/models/list-wallets-response.js.map +1 -1
- package/packages/kmd_client/src/models/list-wallets-response.mjs +1 -2
- package/packages/kmd_client/src/models/list-wallets-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/multisig-sig.d.ts +0 -1
- package/packages/kmd_client/src/models/multisig-sig.js +5 -6
- package/packages/kmd_client/src/models/multisig-sig.js.map +1 -1
- package/packages/kmd_client/src/models/multisig-sig.mjs +1 -2
- package/packages/kmd_client/src/models/multisig-sig.mjs.map +1 -1
- package/packages/kmd_client/src/models/multisig-subsig.js +2 -3
- package/packages/kmd_client/src/models/multisig-subsig.js.map +1 -1
- package/packages/kmd_client/src/models/multisig-subsig.mjs +1 -2
- package/packages/kmd_client/src/models/multisig-subsig.mjs.map +1 -1
- package/packages/kmd_client/src/models/release-wallet-handle-token-request.js +2 -4
- package/packages/kmd_client/src/models/release-wallet-handle-token-request.js.map +1 -1
- package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs +1 -2
- package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/rename-wallet-request.js +2 -3
- package/packages/kmd_client/src/models/rename-wallet-request.js.map +1 -1
- package/packages/kmd_client/src/models/rename-wallet-request.mjs +1 -2
- package/packages/kmd_client/src/models/rename-wallet-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/rename-wallet-response.d.ts +0 -1
- package/packages/kmd_client/src/models/rename-wallet-response.js +3 -4
- package/packages/kmd_client/src/models/rename-wallet-response.js.map +1 -1
- package/packages/kmd_client/src/models/rename-wallet-response.mjs +1 -2
- package/packages/kmd_client/src/models/rename-wallet-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js +2 -4
- package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js.map +1 -1
- package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs +1 -2
- package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.d.ts +0 -1
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js +3 -4
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js.map +1 -1
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs +1 -2
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/sign-multisig-response.js +2 -4
- package/packages/kmd_client/src/models/sign-multisig-response.js.map +1 -1
- package/packages/kmd_client/src/models/sign-multisig-response.mjs +1 -2
- package/packages/kmd_client/src/models/sign-multisig-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/sign-multisig-txn-request.d.ts +0 -1
- package/packages/kmd_client/src/models/sign-multisig-txn-request.js +5 -6
- package/packages/kmd_client/src/models/sign-multisig-txn-request.js.map +1 -1
- package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs +1 -2
- package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/sign-program-multisig-request.d.ts +0 -1
- package/packages/kmd_client/src/models/sign-program-multisig-request.js +7 -8
- package/packages/kmd_client/src/models/sign-program-multisig-request.js.map +1 -1
- package/packages/kmd_client/src/models/sign-program-multisig-request.mjs +1 -2
- package/packages/kmd_client/src/models/sign-program-multisig-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/sign-program-multisig-response.js +2 -4
- package/packages/kmd_client/src/models/sign-program-multisig-response.js.map +1 -1
- package/packages/kmd_client/src/models/sign-program-multisig-response.mjs +1 -2
- package/packages/kmd_client/src/models/sign-program-multisig-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/sign-program-request.d.ts +0 -1
- package/packages/kmd_client/src/models/sign-program-request.js +4 -5
- package/packages/kmd_client/src/models/sign-program-request.js.map +1 -1
- package/packages/kmd_client/src/models/sign-program-request.mjs +1 -2
- package/packages/kmd_client/src/models/sign-program-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/sign-program-response.js +2 -4
- package/packages/kmd_client/src/models/sign-program-response.js.map +1 -1
- package/packages/kmd_client/src/models/sign-program-response.mjs +1 -2
- package/packages/kmd_client/src/models/sign-program-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/sign-transaction-response.js +2 -4
- package/packages/kmd_client/src/models/sign-transaction-response.js.map +1 -1
- package/packages/kmd_client/src/models/sign-transaction-response.mjs +1 -2
- package/packages/kmd_client/src/models/sign-transaction-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/sign-txn-request.js +3 -4
- package/packages/kmd_client/src/models/sign-txn-request.js.map +1 -1
- package/packages/kmd_client/src/models/sign-txn-request.mjs +1 -2
- package/packages/kmd_client/src/models/sign-txn-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/tx-type.js +2 -4
- package/packages/kmd_client/src/models/tx-type.js.map +1 -1
- package/packages/kmd_client/src/models/tx-type.mjs +1 -2
- package/packages/kmd_client/src/models/tx-type.mjs.map +1 -1
- package/packages/kmd_client/src/models/versions-response.js +2 -4
- package/packages/kmd_client/src/models/versions-response.js.map +1 -1
- package/packages/kmd_client/src/models/versions-response.mjs +1 -2
- package/packages/kmd_client/src/models/versions-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/wallet-handle.d.ts +0 -1
- package/packages/kmd_client/src/models/wallet-handle.js +4 -5
- package/packages/kmd_client/src/models/wallet-handle.js.map +1 -1
- package/packages/kmd_client/src/models/wallet-handle.mjs +1 -2
- package/packages/kmd_client/src/models/wallet-handle.mjs.map +1 -1
- package/packages/kmd_client/src/models/wallet-info-request.js +2 -4
- package/packages/kmd_client/src/models/wallet-info-request.js.map +1 -1
- package/packages/kmd_client/src/models/wallet-info-request.mjs +1 -2
- package/packages/kmd_client/src/models/wallet-info-request.mjs.map +1 -1
- package/packages/kmd_client/src/models/wallet-info-response.d.ts +0 -1
- package/packages/kmd_client/src/models/wallet-info-response.js +3 -4
- package/packages/kmd_client/src/models/wallet-info-response.js.map +1 -1
- package/packages/kmd_client/src/models/wallet-info-response.mjs +1 -2
- package/packages/kmd_client/src/models/wallet-info-response.mjs.map +1 -1
- package/packages/kmd_client/src/models/wallet.d.ts +0 -1
- package/packages/kmd_client/src/models/wallet.js +7 -8
- package/packages/kmd_client/src/models/wallet.js.map +1 -1
- package/packages/kmd_client/src/models/wallet.mjs +1 -2
- package/packages/kmd_client/src/models/wallet.mjs.map +1 -1
- package/packages/testing/src/globalSetup.js +39 -0
- package/packages/testing/src/globalSetup.js.map +1 -0
- package/packages/testing/src/globalSetup.mjs +35 -0
- package/packages/testing/src/globalSetup.mjs.map +1 -0
- package/packages/testing/src/mockServer.js +94 -0
- package/packages/testing/src/mockServer.js.map +1 -0
- package/packages/testing/src/mockServer.mjs +83 -0
- package/packages/testing/src/mockServer.mjs.map +1 -0
- package/packages/transact/src/logicsig.d.ts +35 -34
- package/packages/transact/src/logicsig.js +81 -84
- package/packages/transact/src/logicsig.js.map +1 -1
- package/packages/transact/src/logicsig.mjs +79 -81
- package/packages/transact/src/logicsig.mjs.map +1 -1
- package/packages/transact/src/multisig.d.ts +11 -116
- package/packages/transact/src/multisig.js +87 -118
- package/packages/transact/src/multisig.js.map +1 -1
- package/packages/transact/src/multisig.mjs +86 -97
- package/packages/transact/src/multisig.mjs.map +1 -1
- package/packages/transact/src/signer.d.ts +11 -3
- package/packages/transact/src/signer.js +29 -8
- package/packages/transact/src/signer.js.map +1 -1
- package/packages/transact/src/signer.mjs +26 -6
- package/packages/transact/src/signer.mjs.map +1 -1
- package/packages/transact/src/transactions/app-call.d.ts +9 -25
- package/packages/transact/src/transactions/app-call.js +30 -31
- package/packages/transact/src/transactions/app-call.js.map +1 -1
- package/packages/transact/src/transactions/app-call.mjs +29 -30
- package/packages/transact/src/transactions/app-call.mjs.map +1 -1
- package/packages/transact/src/transactions/asset-config.d.ts +1 -7
- package/packages/transact/src/transactions/asset-config.js +11 -12
- package/packages/transact/src/transactions/asset-config.js.map +1 -1
- package/packages/transact/src/transactions/asset-config.mjs +10 -11
- package/packages/transact/src/transactions/asset-config.mjs.map +1 -1
- package/packages/transact/src/transactions/asset-freeze.d.ts +1 -7
- package/packages/transact/src/transactions/asset-freeze.js +2 -3
- package/packages/transact/src/transactions/asset-freeze.js.map +1 -1
- package/packages/transact/src/transactions/asset-freeze.mjs +1 -2
- package/packages/transact/src/transactions/asset-freeze.mjs.map +1 -1
- package/packages/transact/src/transactions/asset-transfer.d.ts +1 -7
- package/packages/transact/src/transactions/asset-transfer.js +2 -3
- package/packages/transact/src/transactions/asset-transfer.js.map +1 -1
- package/packages/transact/src/transactions/asset-transfer.mjs +1 -2
- package/packages/transact/src/transactions/asset-transfer.mjs.map +1 -1
- package/packages/transact/src/transactions/common.js +8 -9
- package/packages/transact/src/transactions/common.js.map +1 -1
- package/packages/transact/src/transactions/common.mjs +8 -8
- package/packages/transact/src/transactions/common.mjs.map +1 -1
- package/packages/transact/src/transactions/heartbeat.d.ts +8 -19
- package/packages/transact/src/transactions/key-registration.d.ts +1 -8
- package/packages/transact/src/transactions/key-registration.js +2 -3
- package/packages/transact/src/transactions/key-registration.js.map +1 -1
- package/packages/transact/src/transactions/key-registration.mjs +1 -2
- package/packages/transact/src/transactions/key-registration.mjs.map +1 -1
- package/packages/transact/src/transactions/payment.d.ts +0 -1
- package/packages/transact/src/transactions/reference-types-meta.d.ts +0 -1
- package/packages/transact/src/transactions/reference-types-meta.js +4 -5
- package/packages/transact/src/transactions/reference-types-meta.js.map +1 -1
- package/packages/transact/src/transactions/reference-types-meta.mjs +1 -2
- package/packages/transact/src/transactions/reference-types-meta.mjs.map +1 -1
- package/packages/transact/src/transactions/signed-transaction-meta.d.ts +0 -1
- package/packages/transact/src/transactions/signed-transaction-meta.js +14 -16
- package/packages/transact/src/transactions/signed-transaction-meta.js.map +1 -1
- package/packages/transact/src/transactions/signed-transaction-meta.mjs +7 -8
- package/packages/transact/src/transactions/signed-transaction-meta.mjs.map +1 -1
- package/packages/transact/src/transactions/signed-transaction.d.ts +20 -5
- package/packages/transact/src/transactions/signed-transaction.js +21 -6
- package/packages/transact/src/transactions/signed-transaction.js.map +1 -1
- package/packages/transact/src/transactions/signed-transaction.mjs +17 -4
- package/packages/transact/src/transactions/signed-transaction.mjs.map +1 -1
- package/packages/transact/src/transactions/state-proof.d.ts +2 -5
- package/packages/transact/src/transactions/transaction-meta.d.ts +0 -1
- package/packages/transact/src/transactions/transaction-meta.js +15 -16
- package/packages/transact/src/transactions/transaction-meta.js.map +1 -1
- package/packages/transact/src/transactions/transaction-meta.mjs +1 -2
- package/packages/transact/src/transactions/transaction-meta.mjs.map +1 -1
- package/packages/transact/src/transactions/transaction-type.d.ts +1 -1
- package/packages/transact/src/transactions/transaction-type.js +12 -13
- package/packages/transact/src/transactions/transaction-type.js.map +1 -1
- package/packages/transact/src/transactions/transaction-type.mjs +12 -12
- package/packages/transact/src/transactions/transaction-type.mjs.map +1 -1
- package/packages/transact/src/transactions/transaction.d.ts +5 -2
- package/packages/transact/src/transactions/transaction.js +29 -30
- package/packages/transact/src/transactions/transaction.js.map +1 -1
- package/packages/transact/src/transactions/transaction.mjs +13 -14
- package/packages/transact/src/transactions/transaction.mjs.map +1 -1
- package/testing/account.d.ts +2 -3
- package/testing/account.js +5 -7
- package/testing/account.js.map +1 -1
- package/testing/account.mjs +3 -5
- package/testing/account.mjs.map +1 -1
- package/testing/fixtures/algokit-log-capture-fixture.d.ts +1 -2
- package/testing/fixtures/algokit-log-capture-fixture.js +3 -4
- package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -1
- package/testing/fixtures/algokit-log-capture-fixture.mjs +1 -2
- package/testing/fixtures/algokit-log-capture-fixture.mjs.map +1 -1
- package/testing/fixtures/algorand-fixture.d.ts +2 -3
- package/testing/fixtures/algorand-fixture.js +8 -9
- package/testing/fixtures/algorand-fixture.js.map +1 -1
- package/testing/fixtures/algorand-fixture.mjs +3 -4
- package/testing/fixtures/algorand-fixture.mjs.map +1 -1
- package/testing/index.d.ts +2 -1
- package/testing/index.js +26 -8
- package/testing/index.mjs +3 -2
- package/testing/indexer.js +1 -2
- package/testing/indexer.js.map +1 -1
- package/testing/indexer.mjs +1 -1
- package/testing/indexer.mjs.map +1 -1
- package/testing/test-logger.d.ts +1 -2
- package/testing/test-logger.js +2 -3
- package/testing/test-logger.js.map +1 -1
- package/testing/test-logger.mjs +1 -2
- package/testing/test-logger.mjs.map +1 -1
- package/testing/transaction-logger.d.ts +0 -1
- package/testing/transaction-logger.js +4 -5
- package/testing/transaction-logger.js.map +1 -1
- package/testing/transaction-logger.mjs +1 -2
- package/testing/transaction-logger.mjs.map +1 -1
- package/testing/types.d.ts +156 -0
- package/transact/index.d.ts +12 -12
- package/transact/index.js +16 -42
- package/transact/index.mjs +7 -12
- package/transaction/index.d.ts +4 -0
- package/transaction/index.js +9 -0
- package/transaction/index.mjs +3 -0
- package/transaction/perform-transaction-composer-simulate.d.ts +1 -2
- package/transaction/perform-transaction-composer-simulate.js +3 -5
- package/transaction/perform-transaction-composer-simulate.js.map +1 -1
- package/transaction/perform-transaction-composer-simulate.mjs +3 -4
- package/transaction/perform-transaction-composer-simulate.mjs.map +1 -1
- package/transaction/transaction.d.ts +2 -4
- package/transaction/transaction.js +2 -5
- package/transaction/transaction.js.map +1 -1
- package/transaction/transaction.mjs +1 -4
- package/transaction/transaction.mjs.map +1 -1
- package/transaction/types.d.ts +133 -0
- package/transactions/app-call.d.ts +17 -34
- package/transactions/app-call.js +53 -54
- package/transactions/app-call.js.map +1 -1
- package/transactions/app-call.mjs +47 -48
- package/transactions/app-call.mjs.map +1 -1
- package/transactions/asset-config.d.ts +4 -10
- package/transactions/asset-config.js +5 -6
- package/transactions/asset-config.js.map +1 -1
- package/transactions/asset-config.mjs +1 -2
- package/transactions/asset-config.mjs.map +1 -1
- package/transactions/asset-transfer.d.ts +4 -10
- package/transactions/asset-transfer.js +5 -6
- package/transactions/asset-transfer.js.map +1 -1
- package/transactions/asset-transfer.mjs +1 -2
- package/transactions/asset-transfer.mjs.map +1 -1
- package/transactions/common.d.ts +8 -15
- package/transactions/common.js +3 -4
- package/transactions/common.js.map +1 -1
- package/transactions/common.mjs +1 -2
- package/transactions/common.mjs.map +1 -1
- package/transactions/fee-coverage.js +7 -8
- package/transactions/fee-coverage.js.map +1 -1
- package/transactions/fee-coverage.mjs +7 -7
- package/transactions/fee-coverage.mjs.map +1 -1
- package/transactions/key-registration.d.ts +7 -15
- package/transactions/key-registration.js +4 -5
- package/transactions/key-registration.js.map +1 -1
- package/transactions/key-registration.mjs +1 -2
- package/transactions/key-registration.mjs.map +1 -1
- package/transactions/method-call.d.ts +3 -5
- package/transactions/method-call.js +84 -94
- package/transactions/method-call.js.map +1 -1
- package/transactions/method-call.mjs +76 -86
- package/transactions/method-call.mjs.map +1 -1
- package/transactions/payment.d.ts +2 -5
- package/transactions/payment.js +5 -6
- package/transactions/payment.js.map +1 -1
- package/transactions/payment.mjs +1 -2
- package/transactions/payment.mjs.map +1 -1
- package/types/account-manager.d.ts +11 -444
- package/types/account-manager.js +7 -608
- package/types/account-manager.js.map +1 -1
- package/types/account-manager.mjs +6 -606
- package/types/account-manager.mjs.map +1 -1
- package/types/account.d.ts +8 -150
- package/types/account.js +4 -6
- package/types/account.js.map +1 -1
- package/types/account.mjs +4 -5
- package/types/account.mjs.map +1 -1
- package/types/algorand-client-transaction-creator.d.ts +5 -1098
- package/types/algorand-client-transaction-creator.js +4 -731
- package/types/algorand-client-transaction-creator.js.map +1 -1
- package/types/algorand-client-transaction-creator.mjs +4 -730
- package/types/algorand-client-transaction-creator.mjs.map +1 -1
- package/types/algorand-client-transaction-sender.d.ts +5 -1312
- package/types/algorand-client-transaction-sender.js +4 -929
- package/types/algorand-client-transaction-sender.js.map +1 -1
- package/types/algorand-client-transaction-sender.mjs +4 -928
- package/types/algorand-client-transaction-sender.mjs.map +1 -1
- package/types/algorand-client.d.ts +5 -241
- package/types/algorand-client.js +4 -321
- package/types/algorand-client.js.map +1 -1
- package/types/algorand-client.mjs +4 -321
- package/types/algorand-client.mjs.map +1 -1
- package/types/amount.d.ts +6 -45
- package/types/amount.js +4 -62
- package/types/amount.js.map +1 -1
- package/types/amount.mjs +4 -62
- package/types/amount.mjs.map +1 -1
- package/types/app-client.d.ts +75 -2125
- package/types/app-client.js +4 -905
- package/types/app-client.js.map +1 -1
- package/types/app-client.mjs +4 -904
- package/types/app-client.mjs.map +1 -1
- package/types/app-deployer.d.ts +21 -161
- package/types/app-deployer.js +4 -349
- package/types/app-deployer.js.map +1 -1
- package/types/app-deployer.mjs +4 -349
- package/types/app-deployer.mjs.map +1 -1
- package/types/app-factory.d.ts +21 -960
- package/types/app-factory.js +4 -444
- package/types/app-factory.js.map +1 -1
- package/types/app-factory.mjs +4 -444
- package/types/app-factory.mjs.map +1 -1
- package/types/app-manager.d.ts +15 -318
- package/types/app-manager.js +4 -464
- package/types/app-manager.js.map +1 -1
- package/types/app-manager.mjs +4 -464
- package/types/app-manager.mjs.map +1 -1
- package/types/app-spec.d.ts +39 -198
- package/types/app-spec.js +4 -133
- package/types/app-spec.js.map +1 -1
- package/types/app-spec.mjs +4 -133
- package/types/app-spec.mjs.map +1 -1
- package/types/app.d.ts +63 -248
- package/types/app.js +17 -39
- package/types/app.js.map +1 -1
- package/types/app.mjs +16 -38
- package/types/app.mjs.map +1 -1
- package/types/asset-manager.d.ts +9 -207
- package/types/asset-manager.js +4 -162
- package/types/asset-manager.js.map +1 -1
- package/types/asset-manager.mjs +4 -162
- package/types/asset-manager.mjs.map +1 -1
- package/types/async-event-emitter.d.ts +7 -14
- package/types/async-event-emitter.js +4 -34
- package/types/async-event-emitter.js.map +1 -1
- package/types/async-event-emitter.mjs +4 -33
- package/types/async-event-emitter.mjs.map +1 -1
- package/types/client-manager.d.ts +27 -470
- package/types/client-manager.js +4 -612
- package/types/client-manager.js.map +1 -1
- package/types/client-manager.mjs +4 -612
- package/types/client-manager.mjs.map +1 -1
- package/types/composer.d.ts +79 -943
- package/types/composer.js +4 -1575
- package/types/composer.js.map +1 -1
- package/types/composer.mjs +4 -1574
- package/types/composer.mjs.map +1 -1
- package/types/config.d.ts +7 -52
- package/types/config.js +4 -76
- package/types/config.js.map +1 -1
- package/types/config.mjs +4 -76
- package/types/config.mjs.map +1 -1
- package/types/debugging.d.ts +12 -33
- package/types/debugging.js +12 -11
- package/types/debugging.js.map +1 -1
- package/types/debugging.mjs +11 -10
- package/types/debugging.mjs.map +1 -1
- package/types/dispenser-client.d.ts +11 -85
- package/types/dispenser-client.js +4 -123
- package/types/dispenser-client.js.map +1 -1
- package/types/dispenser-client.mjs +4 -123
- package/types/dispenser-client.mjs.map +1 -1
- package/types/expand.d.ts +4 -5
- package/types/indexer.d.ts +16 -36
- package/types/indexer.js +9 -32
- package/types/indexer.js.map +1 -1
- package/types/indexer.mjs +8 -31
- package/types/indexer.mjs.map +1 -1
- package/types/instance-of.d.ts +4 -4
- package/types/kmd-account-manager.d.ts +5 -69
- package/types/kmd-account-manager.js +4 -163
- package/types/kmd-account-manager.js.map +1 -1
- package/types/kmd-account-manager.mjs +4 -161
- package/types/kmd-account-manager.mjs.map +1 -1
- package/types/lifecycle-events.d.ts +7 -10
- package/types/lifecycle-events.js +4 -7
- package/types/lifecycle-events.js.map +1 -1
- package/types/lifecycle-events.mjs +4 -6
- package/types/lifecycle-events.mjs.map +1 -1
- package/types/logging.d.ts +14 -9
- package/types/logging.js +13 -39
- package/types/logging.js.map +1 -1
- package/types/logging.mjs +12 -38
- package/types/logging.mjs.map +1 -1
- package/types/logic-error.d.ts +8 -35
- package/types/logic-error.js +4 -50
- package/types/logic-error.js.map +1 -1
- package/types/logic-error.mjs +4 -49
- package/types/logic-error.mjs.map +1 -1
- package/types/network-client.d.ts +10 -39
- package/types/network-client.js +4 -10
- package/types/network-client.js.map +1 -1
- package/types/network-client.mjs +4 -9
- package/types/network-client.mjs.map +1 -1
- package/types/testing.d.ts +13 -151
- package/types/transaction.d.ts +33 -128
- package/updatable-config.d.ts +57 -0
- package/updatable-config.js +79 -0
- package/updatable-config.js.map +1 -0
- package/updatable-config.mjs +79 -0
- package/updatable-config.mjs.map +1 -0
- package/util.js +2 -3
- package/util.js.map +1 -1
- package/util.mjs +2 -3
- package/util.mjs.map +1 -1
- package/_virtual/rolldown_runtime.js +0 -43
- package/_virtual/rolldown_runtime.mjs +0 -18
- package/indexer-lookup.js.map +0 -1
- package/indexer-lookup.mjs.map +0 -1
- package/packages/algod_client/src/core/model-runtime.d.ts +0 -10
- package/packages/common/src/crypto.js +0 -13
- package/packages/common/src/crypto.js.map +0 -1
- package/packages/common/src/crypto.mjs +0 -11
- package/packages/common/src/crypto.mjs.map +0 -1
- package/packages/indexer_client/src/core/model-runtime.d.ts +0 -10
- package/packages/kmd_client/src/core/model-runtime.d.ts +0 -10
- package/packages/sdk/src/convert.d.ts +0 -17
- package/packages/sdk/src/convert.js +0 -28
- package/packages/sdk/src/convert.js.map +0 -1
- package/packages/sdk/src/convert.mjs +0 -25
- package/packages/sdk/src/convert.mjs.map +0 -1
- package/packages/sdk/src/encoding/binarydata.d.ts +0 -34
- package/packages/sdk/src/encoding/binarydata.js +0 -65
- package/packages/sdk/src/encoding/binarydata.js.map +0 -1
- package/packages/sdk/src/encoding/binarydata.mjs +0 -60
- package/packages/sdk/src/encoding/binarydata.mjs.map +0 -1
- package/packages/sdk/src/encoding/encoding.d.ts +0 -237
- package/packages/sdk/src/encoding/encoding.js +0 -312
- package/packages/sdk/src/encoding/encoding.js.map +0 -1
- package/packages/sdk/src/encoding/encoding.mjs +0 -298
- package/packages/sdk/src/encoding/encoding.mjs.map +0 -1
- package/packages/sdk/src/encoding/schema/array.js +0 -35
- package/packages/sdk/src/encoding/schema/array.js.map +0 -1
- package/packages/sdk/src/encoding/schema/array.mjs +0 -35
- package/packages/sdk/src/encoding/schema/array.mjs.map +0 -1
- package/packages/sdk/src/encoding/schema/bytearray.js +0 -49
- package/packages/sdk/src/encoding/schema/bytearray.js.map +0 -1
- package/packages/sdk/src/encoding/schema/bytearray.mjs +0 -49
- package/packages/sdk/src/encoding/schema/bytearray.mjs.map +0 -1
- package/packages/sdk/src/encoding/schema/map.d.ts +0 -58
- package/packages/sdk/src/encoding/schema/map.js +0 -108
- package/packages/sdk/src/encoding/schema/map.js.map +0 -1
- package/packages/sdk/src/encoding/schema/map.mjs +0 -107
- package/packages/sdk/src/encoding/schema/map.mjs.map +0 -1
- package/packages/sdk/src/encoding/schema/optional.js +0 -46
- package/packages/sdk/src/encoding/schema/optional.js.map +0 -1
- package/packages/sdk/src/encoding/schema/optional.mjs +0 -46
- package/packages/sdk/src/encoding/schema/optional.mjs.map +0 -1
- package/packages/sdk/src/encoding/schema/uint64.js +0 -30
- package/packages/sdk/src/encoding/schema/uint64.js.map +0 -1
- package/packages/sdk/src/encoding/schema/uint64.mjs +0 -30
- package/packages/sdk/src/encoding/schema/uint64.mjs.map +0 -1
- package/packages/sdk/src/encoding/uint64.d.ts +0 -34
- package/packages/sdk/src/encoding/uint64.js +0 -34
- package/packages/sdk/src/encoding/uint64.js.map +0 -1
- package/packages/sdk/src/encoding/uint64.mjs +0 -33
- package/packages/sdk/src/encoding/uint64.mjs.map +0 -1
- package/packages/sdk/src/index.d.ts +0 -44
- package/packages/sdk/src/index.js +0 -62
- package/packages/sdk/src/index.js.map +0 -1
- package/packages/sdk/src/index.mjs +0 -58
- package/packages/sdk/src/index.mjs.map +0 -1
- package/packages/sdk/src/logic/sourcemap.js.map +0 -1
- package/packages/sdk/src/logic/sourcemap.mjs.map +0 -1
- package/packages/sdk/src/nacl/naclWrappers.js +0 -14
- package/packages/sdk/src/nacl/naclWrappers.js.map +0 -1
- package/packages/sdk/src/nacl/naclWrappers.mjs +0 -11
- package/packages/sdk/src/nacl/naclWrappers.mjs.map +0 -1
- package/packages/sdk/src/types/intDecoding.d.ts +0 -28
- package/packages/sdk/src/types/intDecoding.js +0 -32
- package/packages/sdk/src/types/intDecoding.js.map +0 -1
- package/packages/sdk/src/types/intDecoding.mjs +0 -31
- package/packages/sdk/src/types/intDecoding.mjs.map +0 -1
- package/packages/sdk/src/types/transactions/encoded.d.ts +0 -40
- package/packages/sdk/src/types/transactions/encoded.js +0 -64
- package/packages/sdk/src/types/transactions/encoded.js.map +0 -1
- package/packages/sdk/src/types/transactions/encoded.mjs +0 -59
- package/packages/sdk/src/types/transactions/encoded.mjs.map +0 -1
- package/packages/sdk/src/utils/utils.d.ts +0 -64
- package/packages/sdk/src/utils/utils.js +0 -140
- package/packages/sdk/src/utils/utils.js.map +0 -1
- package/packages/sdk/src/utils/utils.mjs +0 -128
- package/packages/sdk/src/utils/utils.mjs.map +0 -1
- package/packages/transact/src/transactions/common.d.ts +0 -37
- package/sdk/index.d.ts +0 -10
- package/sdk/index.js +0 -59
- package/sdk/index.mjs +0 -11
|
@@ -11,12 +11,12 @@ declare enum ABITransactionType {
|
|
|
11
11
|
AssetConfig = "acfg",
|
|
12
12
|
AssetTransfer = "axfer",
|
|
13
13
|
AssetFreeze = "afrz",
|
|
14
|
-
AppCall = "appl"
|
|
14
|
+
AppCall = "appl"
|
|
15
15
|
}
|
|
16
16
|
declare enum ABIReferenceType {
|
|
17
17
|
Account = "account",
|
|
18
18
|
Application = "application",
|
|
19
|
-
Asset = "asset"
|
|
19
|
+
Asset = "asset"
|
|
20
20
|
}
|
|
21
21
|
type ABIMethodArgType = ABIType | ABITransactionType | ABIReferenceType;
|
|
22
22
|
type ABIMethodReturnType = ABIType | 'void';
|
|
@@ -31,11 +31,8 @@ type ABIMethodReturn = {
|
|
|
31
31
|
description?: string;
|
|
32
32
|
};
|
|
33
33
|
type ABIDefaultValue = {
|
|
34
|
-
/** Base64 encoded bytes, base64 ARC4 encoded uint64, or UTF-8 method selector */
|
|
35
|
-
|
|
36
|
-
/** Where the default value is coming from */
|
|
37
|
-
source: DefaultValueSource;
|
|
38
|
-
/** How the data is encoded. This is the encoding for the data provided here, not the arg type */
|
|
34
|
+
/** Base64 encoded bytes, base64 ARC4 encoded uint64, or UTF-8 method selector */data: string; /** Where the default value is coming from */
|
|
35
|
+
source: DefaultValueSource; /** How the data is encoded. This is the encoding for the data provided here, not the arg type */
|
|
39
36
|
type?: ABIType | AVMType;
|
|
40
37
|
};
|
|
41
38
|
declare enum DefaultValueSource {
|
|
@@ -43,18 +40,16 @@ declare enum DefaultValueSource {
|
|
|
43
40
|
Global = "global",
|
|
44
41
|
Local = "local",
|
|
45
42
|
Literal = "literal",
|
|
46
|
-
Method = "method"
|
|
43
|
+
Method = "method"
|
|
47
44
|
}
|
|
48
45
|
/** Represents an ABI method return value with parsed data. */
|
|
49
46
|
type ABIReturn = {
|
|
50
|
-
/** The method that was called. */
|
|
51
|
-
method: ABIMethod;
|
|
47
|
+
/** The method that was called. */method: ABIMethod;
|
|
52
48
|
/** The raw return value as bytes.
|
|
53
49
|
*
|
|
54
50
|
* This is the value from the last app call log with the first 4 bytes (the ABI return prefix) omitted.
|
|
55
51
|
*/
|
|
56
|
-
rawReturnValue: Uint8Array;
|
|
57
|
-
/** The parsed ABI return value. */
|
|
52
|
+
rawReturnValue: Uint8Array; /** The parsed ABI return value. */
|
|
58
53
|
returnValue: ABIValue;
|
|
59
54
|
decodeError: undefined;
|
|
60
55
|
} | {
|
|
@@ -1,24 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
const require_abi_type = require(
|
|
3
|
-
let
|
|
4
|
-
js_sha512 = require_rolldown_runtime.__toESM(js_sha512);
|
|
5
|
-
|
|
1
|
+
require("../../../_virtual/_rolldown/runtime.js");
|
|
2
|
+
const require_abi_type = require("./abi-type.js");
|
|
3
|
+
let _noble_hashes_sha2_js = require("@noble/hashes/sha2.js");
|
|
6
4
|
//#region packages/abi/src/abi-method.ts
|
|
7
|
-
let ABITransactionType = /* @__PURE__ */ function(ABITransactionType
|
|
8
|
-
ABITransactionType
|
|
9
|
-
ABITransactionType
|
|
10
|
-
ABITransactionType
|
|
11
|
-
ABITransactionType
|
|
12
|
-
ABITransactionType
|
|
13
|
-
ABITransactionType
|
|
14
|
-
ABITransactionType
|
|
15
|
-
return ABITransactionType
|
|
5
|
+
let ABITransactionType = /* @__PURE__ */ function(ABITransactionType) {
|
|
6
|
+
ABITransactionType["Txn"] = "txn";
|
|
7
|
+
ABITransactionType["Payment"] = "pay";
|
|
8
|
+
ABITransactionType["KeyRegistration"] = "keyreg";
|
|
9
|
+
ABITransactionType["AssetConfig"] = "acfg";
|
|
10
|
+
ABITransactionType["AssetTransfer"] = "axfer";
|
|
11
|
+
ABITransactionType["AssetFreeze"] = "afrz";
|
|
12
|
+
ABITransactionType["AppCall"] = "appl";
|
|
13
|
+
return ABITransactionType;
|
|
16
14
|
}({});
|
|
17
|
-
let ABIReferenceType = /* @__PURE__ */ function(ABIReferenceType
|
|
18
|
-
ABIReferenceType
|
|
19
|
-
ABIReferenceType
|
|
20
|
-
ABIReferenceType
|
|
21
|
-
return ABIReferenceType
|
|
15
|
+
let ABIReferenceType = /* @__PURE__ */ function(ABIReferenceType) {
|
|
16
|
+
ABIReferenceType["Account"] = "account";
|
|
17
|
+
ABIReferenceType["Application"] = "application";
|
|
18
|
+
ABIReferenceType["Asset"] = "asset";
|
|
19
|
+
return ABIReferenceType;
|
|
22
20
|
}({});
|
|
23
21
|
var ABIMethod = class ABIMethod {
|
|
24
22
|
name;
|
|
@@ -51,7 +49,7 @@ var ABIMethod = class ABIMethod {
|
|
|
51
49
|
* @returns The 4-byte method selector
|
|
52
50
|
*/
|
|
53
51
|
getSelector() {
|
|
54
|
-
const hash =
|
|
52
|
+
const hash = (0, _noble_hashes_sha2_js.sha512_256)(new TextEncoder().encode(this.getSignature()));
|
|
55
53
|
return new Uint8Array(hash.slice(0, 4));
|
|
56
54
|
}
|
|
57
55
|
/**
|
|
@@ -139,7 +137,7 @@ function arc56MethodToABIMethod(method, appSpec) {
|
|
|
139
137
|
});
|
|
140
138
|
const returns = {
|
|
141
139
|
type: method.returns.type === "void" ? "void" : method.returns.struct ? require_abi_type.ABIStructType.fromStruct(method.returns.struct, appSpec.structs) : require_abi_type.ABIType.from(method.returns.type),
|
|
142
|
-
|
|
140
|
+
description: method.returns.desc
|
|
143
141
|
};
|
|
144
142
|
return new ABIMethod({
|
|
145
143
|
name: method.name,
|
|
@@ -192,7 +190,6 @@ function getABIDecodedValue(type, bytes) {
|
|
|
192
190
|
function getABIEncodedValue(type, value) {
|
|
193
191
|
return isAVMType(type) ? encodeAVMValue(type, value) : type.encode(value);
|
|
194
192
|
}
|
|
195
|
-
|
|
196
193
|
//#endregion
|
|
197
194
|
exports.ABIMethod = ABIMethod;
|
|
198
195
|
exports.ABIReferenceType = ABIReferenceType;
|
|
@@ -206,4 +203,5 @@ exports.getABIDecodedValue = getABIDecodedValue;
|
|
|
206
203
|
exports.getABIEncodedValue = getABIEncodedValue;
|
|
207
204
|
exports.getABIMethod = getABIMethod;
|
|
208
205
|
exports.isAVMType = isAVMType;
|
|
206
|
+
|
|
209
207
|
//# sourceMappingURL=abi-method.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abi-method.js","names":["sha512","parseTupleContent","ABIType","convertedDefaultValue: ABIDefaultValue | undefined","ABIStructType","ABIUintType","ABIAddressType"],"sources":["../../../../packages/abi/src/abi-method.ts"],"sourcesContent":["import sha512 from 'js-sha512'\nimport { ABIAddressType, ABIStructType, ABIType, ABIUintType, parseTupleContent } from './abi-type'\nimport { ABIValue } from './abi-value'\nimport { ARC28Event } from './arc28-event'\nimport { AVMType, Arc56Contract, Arc56Method } from './arc56-contract'\n\nexport enum ABITransactionType {\n Txn = 'txn',\n Payment = 'pay',\n KeyRegistration = 'keyreg',\n AssetConfig = 'acfg',\n AssetTransfer = 'axfer',\n AssetFreeze = 'afrz',\n AppCall = 'appl',\n}\nexport enum ABIReferenceType {\n Account = 'account',\n Application = 'application',\n Asset = 'asset',\n}\nexport type ABIMethodArgType = ABIType | ABITransactionType | ABIReferenceType\nexport type ABIMethodReturnType = ABIType | 'void'\n\nexport type ABIMethodArg = {\n type: ABIMethodArgType\n name?: string\n description?: string\n defaultValue?: ABIDefaultValue\n}\n\nexport type ABIMethodReturn = {\n type: ABIMethodReturnType\n description?: string\n}\n\nexport type ABIDefaultValue = {\n /** Base64 encoded bytes, base64 ARC4 encoded uint64, or UTF-8 method selector */\n data: string\n /** Where the default value is coming from */\n source: DefaultValueSource\n /** How the data is encoded. This is the encoding for the data provided here, not the arg type */\n type?: ABIType | AVMType\n}\n\nexport enum DefaultValueSource {\n Box = 'box',\n Global = 'global',\n Local = 'local',\n Literal = 'literal',\n Method = 'method',\n}\n\n/** Represents an ABI method return value with parsed data. */\nexport type ABIReturn =\n | {\n /** The method that was called. */\n method: ABIMethod\n /** The raw return value as bytes.\n *\n * This is the value from the last app call log with the first 4 bytes (the ABI return prefix) omitted.\n */\n rawReturnValue: Uint8Array\n /** The parsed ABI return value. */\n returnValue: ABIValue\n decodeError: undefined\n }\n | { rawReturnValue?: undefined; returnValue?: undefined; method: ABIMethod; decodeError?: Error }\n\n/** Decoded ARC-56 struct as a struct rather than a tuple. */\nexport type ABIStruct = {\n [key: string]: ABIStruct | ABIValue\n}\n\nexport class ABIMethod {\n readonly name: string\n readonly description?: string\n readonly args: ABIMethodArg[]\n readonly returns: ABIMethodReturn\n readonly events?: ARC28Event[]\n readonly readonly?: boolean\n\n constructor(params: {\n name: string\n description?: string\n args: ABIMethodArg[]\n returns: ABIMethodReturn\n events?: ARC28Event[]\n readonly?: boolean\n }) {\n this.name = params.name\n this.description = params.description\n this.args = params.args\n this.returns = params.returns\n this.events = params.events\n this.readonly = params.readonly\n }\n\n /**\n * Returns the signature of this ABI method.\n * @returns The signature, e.g. `my_method(unit64,string)bytes`\n */\n getSignature(): string {\n const args = this.args\n .map((arg) => {\n if (argTypeIsTransaction(arg.type) || argTypeIsReference(arg.type)) return arg.type\n return arg.type.name\n })\n .join(',')\n const returns = this.returns.type === 'void' ? 'void' : this.returns.type.name\n return `${this.name}(${args})${returns}`\n }\n\n /**\n * Returns the method selector of this ABI method.\n * @returns The 4-byte method selector\n */\n getSelector(): Uint8Array {\n const hash = sha512.sha512_256.array(this.getSignature())\n return new Uint8Array(hash.slice(0, 4))\n }\n\n /**\n * Returns the ABI method object for a given method signature.\n * @param signature The method signature\n * e.g. `my_method(unit64,string)bytes`\n * @returns The `ABIMethod`\n */\n static fromSignature(signature: string): ABIMethod {\n const argsStart = signature.indexOf('(')\n if (argsStart === -1) {\n throw new Error(`Invalid method signature: ${signature}`)\n }\n\n let argsEnd = -1\n let depth = 0\n for (let i = argsStart; i < signature.length; i++) {\n const char = signature[i]\n\n if (char === '(') {\n depth += 1\n } else if (char === ')') {\n if (depth === 0) {\n // unpaired parenthesis\n break\n }\n\n depth -= 1\n if (depth === 0) {\n argsEnd = i\n break\n }\n }\n }\n\n if (argsEnd === -1) {\n throw new Error(`Invalid method signature: ${signature}`)\n }\n\n const name = signature.slice(0, argsStart)\n const args = parseTupleContent(signature.slice(argsStart + 1, argsEnd)).map((n: string) => {\n if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) {\n return { type: n as ABIMethodArgType } satisfies ABIMethodArg\n }\n return { type: ABIType.from(n) } satisfies ABIMethodArg\n })\n const returnType = signature.slice(argsEnd + 1)\n const returns = { type: returnType === 'void' ? ('void' as const) : ABIType.from(returnType) } satisfies ABIMethodReturn\n\n return new ABIMethod({\n name,\n args,\n returns,\n })\n }\n}\n\n/**\n * Returns the ABI method object for a given method name or signature and ARC-56 app spec.\n * @param methodNameOrSignature The method name or method signature to call if an ABI call is being emitted.\n * e.g. `my_method` or `my_method(unit64,string)bytes`\n * @param appSpec The app spec for the app\n * @returns The `ABIMethod`\n */\nexport function getABIMethod(methodNameOrSignature: string, appSpec: Arc56Contract): ABIMethod {\n if (!methodNameOrSignature.includes('(')) {\n const methods = appSpec.methods.filter((m) => m.name === methodNameOrSignature)\n if (methods.length === 0) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`)\n if (methods.length > 1) {\n throw new Error(\n `Received a call to method ${methodNameOrSignature} in contract ${\n appSpec.name\n }, but this resolved to multiple methods; please pass in an ABI signature instead: ${appSpec.methods\n .map((m) => getArc56MethodSignature(m))\n .join(', ')}`,\n )\n }\n return arc56MethodToABIMethod(methods[0], appSpec)\n } else {\n const method = appSpec.methods.find((m) => getArc56MethodSignature(m) === methodNameOrSignature)\n if (!method) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`)\n return arc56MethodToABIMethod(method, appSpec)\n }\n}\n\nexport function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): ABIMethod {\n if (typeof method.name !== 'string' || typeof method.returns !== 'object' || !Array.isArray(method.args)) {\n throw new Error('Invalid ABIMethod parameters')\n }\n\n const args = method.args.map(({ type, name, desc, struct, defaultValue }) => {\n const convertedDefaultValue: ABIDefaultValue | undefined = defaultValue\n ? {\n data: defaultValue.data,\n source: defaultValue.source as DefaultValueSource,\n type: defaultValue.type ? (isAVMType(defaultValue.type) ? defaultValue.type : ABIType.from(defaultValue.type)) : undefined,\n }\n : undefined\n\n if (argTypeIsTransaction(type as ABIMethodArgType) || argTypeIsReference(type as ABIMethodArgType)) {\n return {\n type: type as ABIMethodArgType,\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n }\n\n if (struct) {\n return {\n type: ABIStructType.fromStruct(struct, appSpec.structs),\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n }\n\n return {\n type: ABIType.from(type),\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n })\n\n const returns = {\n type:\n method.returns.type === ('void' as const)\n ? ('void' as const)\n : method.returns.struct\n ? ABIStructType.fromStruct(method.returns.struct, appSpec.structs)\n : ABIType.from(method.returns.type),\n desc: method.returns.desc,\n }\n\n return new ABIMethod({\n name: method.name,\n description: method.desc,\n args,\n returns,\n events: method.events,\n readonly: method.readonly,\n })\n}\n\nexport function argTypeIsTransaction(type: ABIMethodArgType): type is ABITransactionType {\n return (\n typeof type === 'string' &&\n (type === ABITransactionType.Txn ||\n type === ABITransactionType.Payment ||\n type === ABITransactionType.KeyRegistration ||\n type === ABITransactionType.AssetConfig ||\n type === ABITransactionType.AssetTransfer ||\n type === ABITransactionType.AssetFreeze ||\n type === ABITransactionType.AppCall)\n )\n}\n\nexport function argTypeIsReference(type: ABIMethodArgType): type is ABIReferenceType {\n return (\n typeof type === 'string' &&\n (type === ABIReferenceType.Account || type === ABIReferenceType.Application || type === ABIReferenceType.Asset)\n )\n}\n\nexport function argTypeIsAbiType(type: ABIMethodArgType): type is ABIType {\n return !argTypeIsTransaction(type) && !argTypeIsReference(type)\n}\n\nfunction getArc56MethodSignature(method: Arc56Method): string {\n const args = method.args.map((arg) => arg.type).join(',')\n const returns = method.returns.type\n return `${method.name}(${args})${returns}`\n}\n\nexport function decodeAVMValue(avmType: AVMType, bytes: Uint8Array): ABIValue {\n switch (avmType) {\n case 'AVMString':\n return Buffer.from(bytes).toString('utf-8')\n case 'AVMBytes':\n return bytes\n case 'AVMUint64':\n return ABIType.from('uint64').decode(bytes)\n }\n}\n\nexport function encodeAVMValue(avmType: AVMType, value: ABIValue): Uint8Array {\n switch (avmType) {\n case 'AVMString':\n return ABIType.from('string').encode(value)\n case 'AVMBytes':\n if (typeof value === 'string') return Buffer.from(value, 'utf-8')\n if (typeof value !== 'object' || !(value instanceof Uint8Array))\n throw new Error(`Expected bytes value for AVMBytes, but got ${value}`)\n return value\n case 'AVMUint64':\n return ABIType.from('uint64').encode(value)\n }\n}\n\nexport function isAVMType(type: unknown): type is AVMType {\n return typeof type === 'string' && (type === 'AVMString' || type === 'AVMBytes' || type === 'AVMUint64')\n}\n\nexport function getABIDecodedValue(type: AVMType | ABIType | ABIReferenceType, bytes: Uint8Array): ABIValue {\n if (type === ABIReferenceType.Asset || type === ABIReferenceType.Application) {\n return new ABIUintType(64).decode(bytes)\n } else if (type === ABIReferenceType.Account) {\n return new ABIAddressType().decode(bytes)\n } else if (isAVMType(type)) {\n return decodeAVMValue(type, bytes)\n }\n return type.decode(bytes)\n}\n\nexport function getABIEncodedValue(type: AVMType | ABIType, value: ABIValue): Uint8Array {\n return isAVMType(type) ? encodeAVMValue(type, value) : type.encode(value)\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"abi-method.js","names":["parseTupleContent","ABIType","ABIStructType","ABIUintType","ABIAddressType"],"sources":["../../../../packages/abi/src/abi-method.ts"],"sourcesContent":["import { sha512_256 } from '@noble/hashes/sha2.js'\nimport { ABIAddressType, ABIStructType, ABIType, ABIUintType, parseTupleContent } from './abi-type'\nimport { ABIValue } from './abi-value'\nimport { ARC28Event } from './arc28-event'\nimport { AVMType, Arc56Contract, Arc56Method } from './arc56-contract'\n\nexport enum ABITransactionType {\n Txn = 'txn',\n Payment = 'pay',\n KeyRegistration = 'keyreg',\n AssetConfig = 'acfg',\n AssetTransfer = 'axfer',\n AssetFreeze = 'afrz',\n AppCall = 'appl',\n}\nexport enum ABIReferenceType {\n Account = 'account',\n Application = 'application',\n Asset = 'asset',\n}\nexport type ABIMethodArgType = ABIType | ABITransactionType | ABIReferenceType\nexport type ABIMethodReturnType = ABIType | 'void'\n\nexport type ABIMethodArg = {\n type: ABIMethodArgType\n name?: string\n description?: string\n defaultValue?: ABIDefaultValue\n}\n\nexport type ABIMethodReturn = {\n type: ABIMethodReturnType\n description?: string\n}\n\nexport type ABIDefaultValue = {\n /** Base64 encoded bytes, base64 ARC4 encoded uint64, or UTF-8 method selector */\n data: string\n /** Where the default value is coming from */\n source: DefaultValueSource\n /** How the data is encoded. This is the encoding for the data provided here, not the arg type */\n type?: ABIType | AVMType\n}\n\nexport enum DefaultValueSource {\n Box = 'box',\n Global = 'global',\n Local = 'local',\n Literal = 'literal',\n Method = 'method',\n}\n\n/** Represents an ABI method return value with parsed data. */\nexport type ABIReturn =\n | {\n /** The method that was called. */\n method: ABIMethod\n /** The raw return value as bytes.\n *\n * This is the value from the last app call log with the first 4 bytes (the ABI return prefix) omitted.\n */\n rawReturnValue: Uint8Array\n /** The parsed ABI return value. */\n returnValue: ABIValue\n decodeError: undefined\n }\n | { rawReturnValue?: undefined; returnValue?: undefined; method: ABIMethod; decodeError?: Error }\n\n/** Decoded ARC-56 struct as a struct rather than a tuple. */\nexport type ABIStruct = {\n [key: string]: ABIStruct | ABIValue\n}\n\nexport class ABIMethod {\n readonly name: string\n readonly description?: string\n readonly args: ABIMethodArg[]\n readonly returns: ABIMethodReturn\n readonly events?: ARC28Event[]\n readonly readonly?: boolean\n\n constructor(params: {\n name: string\n description?: string\n args: ABIMethodArg[]\n returns: ABIMethodReturn\n events?: ARC28Event[]\n readonly?: boolean\n }) {\n this.name = params.name\n this.description = params.description\n this.args = params.args\n this.returns = params.returns\n this.events = params.events\n this.readonly = params.readonly\n }\n\n /**\n * Returns the signature of this ABI method.\n * @returns The signature, e.g. `my_method(unit64,string)bytes`\n */\n getSignature(): string {\n const args = this.args\n .map((arg) => {\n if (argTypeIsTransaction(arg.type) || argTypeIsReference(arg.type)) return arg.type\n return arg.type.name\n })\n .join(',')\n const returns = this.returns.type === 'void' ? 'void' : this.returns.type.name\n return `${this.name}(${args})${returns}`\n }\n\n /**\n * Returns the method selector of this ABI method.\n * @returns The 4-byte method selector\n */\n getSelector(): Uint8Array {\n const hash = sha512_256(new TextEncoder().encode(this.getSignature()))\n return new Uint8Array(hash.slice(0, 4))\n }\n\n /**\n * Returns the ABI method object for a given method signature.\n * @param signature The method signature\n * e.g. `my_method(unit64,string)bytes`\n * @returns The `ABIMethod`\n */\n static fromSignature(signature: string): ABIMethod {\n const argsStart = signature.indexOf('(')\n if (argsStart === -1) {\n throw new Error(`Invalid method signature: ${signature}`)\n }\n\n let argsEnd = -1\n let depth = 0\n for (let i = argsStart; i < signature.length; i++) {\n const char = signature[i]\n\n if (char === '(') {\n depth += 1\n } else if (char === ')') {\n if (depth === 0) {\n // unpaired parenthesis\n break\n }\n\n depth -= 1\n if (depth === 0) {\n argsEnd = i\n break\n }\n }\n }\n\n if (argsEnd === -1) {\n throw new Error(`Invalid method signature: ${signature}`)\n }\n\n const name = signature.slice(0, argsStart)\n const args = parseTupleContent(signature.slice(argsStart + 1, argsEnd)).map((n: string) => {\n if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) {\n return { type: n as ABIMethodArgType } satisfies ABIMethodArg\n }\n return { type: ABIType.from(n) } satisfies ABIMethodArg\n })\n const returnType = signature.slice(argsEnd + 1)\n const returns = { type: returnType === 'void' ? ('void' as const) : ABIType.from(returnType) } satisfies ABIMethodReturn\n\n return new ABIMethod({\n name,\n args,\n returns,\n })\n }\n}\n\n/**\n * Returns the ABI method object for a given method name or signature and ARC-56 app spec.\n * @param methodNameOrSignature The method name or method signature to call if an ABI call is being emitted.\n * e.g. `my_method` or `my_method(unit64,string)bytes`\n * @param appSpec The app spec for the app\n * @returns The `ABIMethod`\n */\nexport function getABIMethod(methodNameOrSignature: string, appSpec: Arc56Contract): ABIMethod {\n if (!methodNameOrSignature.includes('(')) {\n const methods = appSpec.methods.filter((m) => m.name === methodNameOrSignature)\n if (methods.length === 0) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`)\n if (methods.length > 1) {\n throw new Error(\n `Received a call to method ${methodNameOrSignature} in contract ${\n appSpec.name\n }, but this resolved to multiple methods; please pass in an ABI signature instead: ${appSpec.methods\n .map((m) => getArc56MethodSignature(m))\n .join(', ')}`,\n )\n }\n return arc56MethodToABIMethod(methods[0], appSpec)\n } else {\n const method = appSpec.methods.find((m) => getArc56MethodSignature(m) === methodNameOrSignature)\n if (!method) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`)\n return arc56MethodToABIMethod(method, appSpec)\n }\n}\n\nexport function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): ABIMethod {\n if (typeof method.name !== 'string' || typeof method.returns !== 'object' || !Array.isArray(method.args)) {\n throw new Error('Invalid ABIMethod parameters')\n }\n\n const args = method.args.map(({ type, name, desc, struct, defaultValue }) => {\n const convertedDefaultValue: ABIDefaultValue | undefined = defaultValue\n ? {\n data: defaultValue.data,\n source: defaultValue.source as DefaultValueSource,\n type: defaultValue.type ? (isAVMType(defaultValue.type) ? defaultValue.type : ABIType.from(defaultValue.type)) : undefined,\n }\n : undefined\n\n if (argTypeIsTransaction(type as ABIMethodArgType) || argTypeIsReference(type as ABIMethodArgType)) {\n return {\n type: type as ABIMethodArgType,\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n }\n\n if (struct) {\n return {\n type: ABIStructType.fromStruct(struct, appSpec.structs),\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n }\n\n return {\n type: ABIType.from(type),\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n })\n\n const returns = {\n type:\n method.returns.type === ('void' as const)\n ? ('void' as const)\n : method.returns.struct\n ? ABIStructType.fromStruct(method.returns.struct, appSpec.structs)\n : ABIType.from(method.returns.type),\n description: method.returns.desc,\n } satisfies ABIMethodReturn\n\n return new ABIMethod({\n name: method.name,\n description: method.desc,\n args,\n returns,\n events: method.events,\n readonly: method.readonly,\n })\n}\n\nexport function argTypeIsTransaction(type: ABIMethodArgType): type is ABITransactionType {\n return (\n typeof type === 'string' &&\n (type === ABITransactionType.Txn ||\n type === ABITransactionType.Payment ||\n type === ABITransactionType.KeyRegistration ||\n type === ABITransactionType.AssetConfig ||\n type === ABITransactionType.AssetTransfer ||\n type === ABITransactionType.AssetFreeze ||\n type === ABITransactionType.AppCall)\n )\n}\n\nexport function argTypeIsReference(type: ABIMethodArgType): type is ABIReferenceType {\n return (\n typeof type === 'string' &&\n (type === ABIReferenceType.Account || type === ABIReferenceType.Application || type === ABIReferenceType.Asset)\n )\n}\n\nexport function argTypeIsAbiType(type: ABIMethodArgType): type is ABIType {\n return !argTypeIsTransaction(type) && !argTypeIsReference(type)\n}\n\nfunction getArc56MethodSignature(method: Arc56Method): string {\n const args = method.args.map((arg) => arg.type).join(',')\n const returns = method.returns.type\n return `${method.name}(${args})${returns}`\n}\n\nexport function decodeAVMValue(avmType: AVMType, bytes: Uint8Array): ABIValue {\n switch (avmType) {\n case 'AVMString':\n return Buffer.from(bytes).toString('utf-8')\n case 'AVMBytes':\n return bytes\n case 'AVMUint64':\n return ABIType.from('uint64').decode(bytes)\n }\n}\n\nexport function encodeAVMValue(avmType: AVMType, value: ABIValue): Uint8Array {\n switch (avmType) {\n case 'AVMString':\n return ABIType.from('string').encode(value)\n case 'AVMBytes':\n if (typeof value === 'string') return Buffer.from(value, 'utf-8')\n if (typeof value !== 'object' || !(value instanceof Uint8Array))\n throw new Error(`Expected bytes value for AVMBytes, but got ${value}`)\n return value\n case 'AVMUint64':\n return ABIType.from('uint64').encode(value)\n }\n}\n\nexport function isAVMType(type: unknown): type is AVMType {\n return typeof type === 'string' && (type === 'AVMString' || type === 'AVMBytes' || type === 'AVMUint64')\n}\n\nexport function getABIDecodedValue(type: AVMType | ABIType | ABIReferenceType, bytes: Uint8Array): ABIValue {\n if (type === ABIReferenceType.Asset || type === ABIReferenceType.Application) {\n return new ABIUintType(64).decode(bytes)\n } else if (type === ABIReferenceType.Account) {\n return new ABIAddressType().decode(bytes)\n } else if (isAVMType(type)) {\n return decodeAVMValue(type, bytes)\n }\n return type.decode(bytes)\n}\n\nexport function getABIEncodedValue(type: AVMType | ABIType, value: ABIValue): Uint8Array {\n return isAVMType(type) ? encodeAVMValue(type, value) : type.encode(value)\n}\n"],"mappings":"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"}
|
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
import { ABIAddressType, ABIStructType, ABIType, ABIUintType, parseTupleContent } from "./abi-type.mjs";
|
|
2
|
-
import
|
|
3
|
-
|
|
2
|
+
import { sha512_256 } from "@noble/hashes/sha2.js";
|
|
4
3
|
//#region packages/abi/src/abi-method.ts
|
|
5
|
-
let ABITransactionType = /* @__PURE__ */ function(ABITransactionType
|
|
6
|
-
ABITransactionType
|
|
7
|
-
ABITransactionType
|
|
8
|
-
ABITransactionType
|
|
9
|
-
ABITransactionType
|
|
10
|
-
ABITransactionType
|
|
11
|
-
ABITransactionType
|
|
12
|
-
ABITransactionType
|
|
13
|
-
return ABITransactionType
|
|
4
|
+
let ABITransactionType = /* @__PURE__ */ function(ABITransactionType) {
|
|
5
|
+
ABITransactionType["Txn"] = "txn";
|
|
6
|
+
ABITransactionType["Payment"] = "pay";
|
|
7
|
+
ABITransactionType["KeyRegistration"] = "keyreg";
|
|
8
|
+
ABITransactionType["AssetConfig"] = "acfg";
|
|
9
|
+
ABITransactionType["AssetTransfer"] = "axfer";
|
|
10
|
+
ABITransactionType["AssetFreeze"] = "afrz";
|
|
11
|
+
ABITransactionType["AppCall"] = "appl";
|
|
12
|
+
return ABITransactionType;
|
|
14
13
|
}({});
|
|
15
|
-
let ABIReferenceType = /* @__PURE__ */ function(ABIReferenceType
|
|
16
|
-
ABIReferenceType
|
|
17
|
-
ABIReferenceType
|
|
18
|
-
ABIReferenceType
|
|
19
|
-
return ABIReferenceType
|
|
14
|
+
let ABIReferenceType = /* @__PURE__ */ function(ABIReferenceType) {
|
|
15
|
+
ABIReferenceType["Account"] = "account";
|
|
16
|
+
ABIReferenceType["Application"] = "application";
|
|
17
|
+
ABIReferenceType["Asset"] = "asset";
|
|
18
|
+
return ABIReferenceType;
|
|
20
19
|
}({});
|
|
21
20
|
var ABIMethod = class ABIMethod {
|
|
22
21
|
name;
|
|
@@ -49,7 +48,7 @@ var ABIMethod = class ABIMethod {
|
|
|
49
48
|
* @returns The 4-byte method selector
|
|
50
49
|
*/
|
|
51
50
|
getSelector() {
|
|
52
|
-
const hash =
|
|
51
|
+
const hash = sha512_256(new TextEncoder().encode(this.getSignature()));
|
|
53
52
|
return new Uint8Array(hash.slice(0, 4));
|
|
54
53
|
}
|
|
55
54
|
/**
|
|
@@ -137,7 +136,7 @@ function arc56MethodToABIMethod(method, appSpec) {
|
|
|
137
136
|
});
|
|
138
137
|
const returns = {
|
|
139
138
|
type: method.returns.type === "void" ? "void" : method.returns.struct ? ABIStructType.fromStruct(method.returns.struct, appSpec.structs) : ABIType.from(method.returns.type),
|
|
140
|
-
|
|
139
|
+
description: method.returns.desc
|
|
141
140
|
};
|
|
142
141
|
return new ABIMethod({
|
|
143
142
|
name: method.name,
|
|
@@ -190,7 +189,7 @@ function getABIDecodedValue(type, bytes) {
|
|
|
190
189
|
function getABIEncodedValue(type, value) {
|
|
191
190
|
return isAVMType(type) ? encodeAVMValue(type, value) : type.encode(value);
|
|
192
191
|
}
|
|
193
|
-
|
|
194
192
|
//#endregion
|
|
195
193
|
export { ABIMethod, ABIReferenceType, ABITransactionType, arc56MethodToABIMethod, argTypeIsAbiType, argTypeIsReference, argTypeIsTransaction, decodeAVMValue, getABIDecodedValue, getABIEncodedValue, getABIMethod, isAVMType };
|
|
194
|
+
|
|
196
195
|
//# sourceMappingURL=abi-method.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abi-method.mjs","names":["convertedDefaultValue: ABIDefaultValue | undefined"],"sources":["../../../../packages/abi/src/abi-method.ts"],"sourcesContent":["import sha512 from 'js-sha512'\nimport { ABIAddressType, ABIStructType, ABIType, ABIUintType, parseTupleContent } from './abi-type'\nimport { ABIValue } from './abi-value'\nimport { ARC28Event } from './arc28-event'\nimport { AVMType, Arc56Contract, Arc56Method } from './arc56-contract'\n\nexport enum ABITransactionType {\n Txn = 'txn',\n Payment = 'pay',\n KeyRegistration = 'keyreg',\n AssetConfig = 'acfg',\n AssetTransfer = 'axfer',\n AssetFreeze = 'afrz',\n AppCall = 'appl',\n}\nexport enum ABIReferenceType {\n Account = 'account',\n Application = 'application',\n Asset = 'asset',\n}\nexport type ABIMethodArgType = ABIType | ABITransactionType | ABIReferenceType\nexport type ABIMethodReturnType = ABIType | 'void'\n\nexport type ABIMethodArg = {\n type: ABIMethodArgType\n name?: string\n description?: string\n defaultValue?: ABIDefaultValue\n}\n\nexport type ABIMethodReturn = {\n type: ABIMethodReturnType\n description?: string\n}\n\nexport type ABIDefaultValue = {\n /** Base64 encoded bytes, base64 ARC4 encoded uint64, or UTF-8 method selector */\n data: string\n /** Where the default value is coming from */\n source: DefaultValueSource\n /** How the data is encoded. This is the encoding for the data provided here, not the arg type */\n type?: ABIType | AVMType\n}\n\nexport enum DefaultValueSource {\n Box = 'box',\n Global = 'global',\n Local = 'local',\n Literal = 'literal',\n Method = 'method',\n}\n\n/** Represents an ABI method return value with parsed data. */\nexport type ABIReturn =\n | {\n /** The method that was called. */\n method: ABIMethod\n /** The raw return value as bytes.\n *\n * This is the value from the last app call log with the first 4 bytes (the ABI return prefix) omitted.\n */\n rawReturnValue: Uint8Array\n /** The parsed ABI return value. */\n returnValue: ABIValue\n decodeError: undefined\n }\n | { rawReturnValue?: undefined; returnValue?: undefined; method: ABIMethod; decodeError?: Error }\n\n/** Decoded ARC-56 struct as a struct rather than a tuple. */\nexport type ABIStruct = {\n [key: string]: ABIStruct | ABIValue\n}\n\nexport class ABIMethod {\n readonly name: string\n readonly description?: string\n readonly args: ABIMethodArg[]\n readonly returns: ABIMethodReturn\n readonly events?: ARC28Event[]\n readonly readonly?: boolean\n\n constructor(params: {\n name: string\n description?: string\n args: ABIMethodArg[]\n returns: ABIMethodReturn\n events?: ARC28Event[]\n readonly?: boolean\n }) {\n this.name = params.name\n this.description = params.description\n this.args = params.args\n this.returns = params.returns\n this.events = params.events\n this.readonly = params.readonly\n }\n\n /**\n * Returns the signature of this ABI method.\n * @returns The signature, e.g. `my_method(unit64,string)bytes`\n */\n getSignature(): string {\n const args = this.args\n .map((arg) => {\n if (argTypeIsTransaction(arg.type) || argTypeIsReference(arg.type)) return arg.type\n return arg.type.name\n })\n .join(',')\n const returns = this.returns.type === 'void' ? 'void' : this.returns.type.name\n return `${this.name}(${args})${returns}`\n }\n\n /**\n * Returns the method selector of this ABI method.\n * @returns The 4-byte method selector\n */\n getSelector(): Uint8Array {\n const hash = sha512.sha512_256.array(this.getSignature())\n return new Uint8Array(hash.slice(0, 4))\n }\n\n /**\n * Returns the ABI method object for a given method signature.\n * @param signature The method signature\n * e.g. `my_method(unit64,string)bytes`\n * @returns The `ABIMethod`\n */\n static fromSignature(signature: string): ABIMethod {\n const argsStart = signature.indexOf('(')\n if (argsStart === -1) {\n throw new Error(`Invalid method signature: ${signature}`)\n }\n\n let argsEnd = -1\n let depth = 0\n for (let i = argsStart; i < signature.length; i++) {\n const char = signature[i]\n\n if (char === '(') {\n depth += 1\n } else if (char === ')') {\n if (depth === 0) {\n // unpaired parenthesis\n break\n }\n\n depth -= 1\n if (depth === 0) {\n argsEnd = i\n break\n }\n }\n }\n\n if (argsEnd === -1) {\n throw new Error(`Invalid method signature: ${signature}`)\n }\n\n const name = signature.slice(0, argsStart)\n const args = parseTupleContent(signature.slice(argsStart + 1, argsEnd)).map((n: string) => {\n if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) {\n return { type: n as ABIMethodArgType } satisfies ABIMethodArg\n }\n return { type: ABIType.from(n) } satisfies ABIMethodArg\n })\n const returnType = signature.slice(argsEnd + 1)\n const returns = { type: returnType === 'void' ? ('void' as const) : ABIType.from(returnType) } satisfies ABIMethodReturn\n\n return new ABIMethod({\n name,\n args,\n returns,\n })\n }\n}\n\n/**\n * Returns the ABI method object for a given method name or signature and ARC-56 app spec.\n * @param methodNameOrSignature The method name or method signature to call if an ABI call is being emitted.\n * e.g. `my_method` or `my_method(unit64,string)bytes`\n * @param appSpec The app spec for the app\n * @returns The `ABIMethod`\n */\nexport function getABIMethod(methodNameOrSignature: string, appSpec: Arc56Contract): ABIMethod {\n if (!methodNameOrSignature.includes('(')) {\n const methods = appSpec.methods.filter((m) => m.name === methodNameOrSignature)\n if (methods.length === 0) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`)\n if (methods.length > 1) {\n throw new Error(\n `Received a call to method ${methodNameOrSignature} in contract ${\n appSpec.name\n }, but this resolved to multiple methods; please pass in an ABI signature instead: ${appSpec.methods\n .map((m) => getArc56MethodSignature(m))\n .join(', ')}`,\n )\n }\n return arc56MethodToABIMethod(methods[0], appSpec)\n } else {\n const method = appSpec.methods.find((m) => getArc56MethodSignature(m) === methodNameOrSignature)\n if (!method) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`)\n return arc56MethodToABIMethod(method, appSpec)\n }\n}\n\nexport function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): ABIMethod {\n if (typeof method.name !== 'string' || typeof method.returns !== 'object' || !Array.isArray(method.args)) {\n throw new Error('Invalid ABIMethod parameters')\n }\n\n const args = method.args.map(({ type, name, desc, struct, defaultValue }) => {\n const convertedDefaultValue: ABIDefaultValue | undefined = defaultValue\n ? {\n data: defaultValue.data,\n source: defaultValue.source as DefaultValueSource,\n type: defaultValue.type ? (isAVMType(defaultValue.type) ? defaultValue.type : ABIType.from(defaultValue.type)) : undefined,\n }\n : undefined\n\n if (argTypeIsTransaction(type as ABIMethodArgType) || argTypeIsReference(type as ABIMethodArgType)) {\n return {\n type: type as ABIMethodArgType,\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n }\n\n if (struct) {\n return {\n type: ABIStructType.fromStruct(struct, appSpec.structs),\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n }\n\n return {\n type: ABIType.from(type),\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n })\n\n const returns = {\n type:\n method.returns.type === ('void' as const)\n ? ('void' as const)\n : method.returns.struct\n ? ABIStructType.fromStruct(method.returns.struct, appSpec.structs)\n : ABIType.from(method.returns.type),\n desc: method.returns.desc,\n }\n\n return new ABIMethod({\n name: method.name,\n description: method.desc,\n args,\n returns,\n events: method.events,\n readonly: method.readonly,\n })\n}\n\nexport function argTypeIsTransaction(type: ABIMethodArgType): type is ABITransactionType {\n return (\n typeof type === 'string' &&\n (type === ABITransactionType.Txn ||\n type === ABITransactionType.Payment ||\n type === ABITransactionType.KeyRegistration ||\n type === ABITransactionType.AssetConfig ||\n type === ABITransactionType.AssetTransfer ||\n type === ABITransactionType.AssetFreeze ||\n type === ABITransactionType.AppCall)\n )\n}\n\nexport function argTypeIsReference(type: ABIMethodArgType): type is ABIReferenceType {\n return (\n typeof type === 'string' &&\n (type === ABIReferenceType.Account || type === ABIReferenceType.Application || type === ABIReferenceType.Asset)\n )\n}\n\nexport function argTypeIsAbiType(type: ABIMethodArgType): type is ABIType {\n return !argTypeIsTransaction(type) && !argTypeIsReference(type)\n}\n\nfunction getArc56MethodSignature(method: Arc56Method): string {\n const args = method.args.map((arg) => arg.type).join(',')\n const returns = method.returns.type\n return `${method.name}(${args})${returns}`\n}\n\nexport function decodeAVMValue(avmType: AVMType, bytes: Uint8Array): ABIValue {\n switch (avmType) {\n case 'AVMString':\n return Buffer.from(bytes).toString('utf-8')\n case 'AVMBytes':\n return bytes\n case 'AVMUint64':\n return ABIType.from('uint64').decode(bytes)\n }\n}\n\nexport function encodeAVMValue(avmType: AVMType, value: ABIValue): Uint8Array {\n switch (avmType) {\n case 'AVMString':\n return ABIType.from('string').encode(value)\n case 'AVMBytes':\n if (typeof value === 'string') return Buffer.from(value, 'utf-8')\n if (typeof value !== 'object' || !(value instanceof Uint8Array))\n throw new Error(`Expected bytes value for AVMBytes, but got ${value}`)\n return value\n case 'AVMUint64':\n return ABIType.from('uint64').encode(value)\n }\n}\n\nexport function isAVMType(type: unknown): type is AVMType {\n return typeof type === 'string' && (type === 'AVMString' || type === 'AVMBytes' || type === 'AVMUint64')\n}\n\nexport function getABIDecodedValue(type: AVMType | ABIType | ABIReferenceType, bytes: Uint8Array): ABIValue {\n if (type === ABIReferenceType.Asset || type === ABIReferenceType.Application) {\n return new ABIUintType(64).decode(bytes)\n } else if (type === ABIReferenceType.Account) {\n return new ABIAddressType().decode(bytes)\n } else if (isAVMType(type)) {\n return decodeAVMValue(type, bytes)\n }\n return type.decode(bytes)\n}\n\nexport function getABIEncodedValue(type: AVMType | ABIType, value: ABIValue): Uint8Array {\n return isAVMType(type) ? encodeAVMValue(type, value) : type.encode(value)\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"abi-method.mjs","names":[],"sources":["../../../../packages/abi/src/abi-method.ts"],"sourcesContent":["import { sha512_256 } from '@noble/hashes/sha2.js'\nimport { ABIAddressType, ABIStructType, ABIType, ABIUintType, parseTupleContent } from './abi-type'\nimport { ABIValue } from './abi-value'\nimport { ARC28Event } from './arc28-event'\nimport { AVMType, Arc56Contract, Arc56Method } from './arc56-contract'\n\nexport enum ABITransactionType {\n Txn = 'txn',\n Payment = 'pay',\n KeyRegistration = 'keyreg',\n AssetConfig = 'acfg',\n AssetTransfer = 'axfer',\n AssetFreeze = 'afrz',\n AppCall = 'appl',\n}\nexport enum ABIReferenceType {\n Account = 'account',\n Application = 'application',\n Asset = 'asset',\n}\nexport type ABIMethodArgType = ABIType | ABITransactionType | ABIReferenceType\nexport type ABIMethodReturnType = ABIType | 'void'\n\nexport type ABIMethodArg = {\n type: ABIMethodArgType\n name?: string\n description?: string\n defaultValue?: ABIDefaultValue\n}\n\nexport type ABIMethodReturn = {\n type: ABIMethodReturnType\n description?: string\n}\n\nexport type ABIDefaultValue = {\n /** Base64 encoded bytes, base64 ARC4 encoded uint64, or UTF-8 method selector */\n data: string\n /** Where the default value is coming from */\n source: DefaultValueSource\n /** How the data is encoded. This is the encoding for the data provided here, not the arg type */\n type?: ABIType | AVMType\n}\n\nexport enum DefaultValueSource {\n Box = 'box',\n Global = 'global',\n Local = 'local',\n Literal = 'literal',\n Method = 'method',\n}\n\n/** Represents an ABI method return value with parsed data. */\nexport type ABIReturn =\n | {\n /** The method that was called. */\n method: ABIMethod\n /** The raw return value as bytes.\n *\n * This is the value from the last app call log with the first 4 bytes (the ABI return prefix) omitted.\n */\n rawReturnValue: Uint8Array\n /** The parsed ABI return value. */\n returnValue: ABIValue\n decodeError: undefined\n }\n | { rawReturnValue?: undefined; returnValue?: undefined; method: ABIMethod; decodeError?: Error }\n\n/** Decoded ARC-56 struct as a struct rather than a tuple. */\nexport type ABIStruct = {\n [key: string]: ABIStruct | ABIValue\n}\n\nexport class ABIMethod {\n readonly name: string\n readonly description?: string\n readonly args: ABIMethodArg[]\n readonly returns: ABIMethodReturn\n readonly events?: ARC28Event[]\n readonly readonly?: boolean\n\n constructor(params: {\n name: string\n description?: string\n args: ABIMethodArg[]\n returns: ABIMethodReturn\n events?: ARC28Event[]\n readonly?: boolean\n }) {\n this.name = params.name\n this.description = params.description\n this.args = params.args\n this.returns = params.returns\n this.events = params.events\n this.readonly = params.readonly\n }\n\n /**\n * Returns the signature of this ABI method.\n * @returns The signature, e.g. `my_method(unit64,string)bytes`\n */\n getSignature(): string {\n const args = this.args\n .map((arg) => {\n if (argTypeIsTransaction(arg.type) || argTypeIsReference(arg.type)) return arg.type\n return arg.type.name\n })\n .join(',')\n const returns = this.returns.type === 'void' ? 'void' : this.returns.type.name\n return `${this.name}(${args})${returns}`\n }\n\n /**\n * Returns the method selector of this ABI method.\n * @returns The 4-byte method selector\n */\n getSelector(): Uint8Array {\n const hash = sha512_256(new TextEncoder().encode(this.getSignature()))\n return new Uint8Array(hash.slice(0, 4))\n }\n\n /**\n * Returns the ABI method object for a given method signature.\n * @param signature The method signature\n * e.g. `my_method(unit64,string)bytes`\n * @returns The `ABIMethod`\n */\n static fromSignature(signature: string): ABIMethod {\n const argsStart = signature.indexOf('(')\n if (argsStart === -1) {\n throw new Error(`Invalid method signature: ${signature}`)\n }\n\n let argsEnd = -1\n let depth = 0\n for (let i = argsStart; i < signature.length; i++) {\n const char = signature[i]\n\n if (char === '(') {\n depth += 1\n } else if (char === ')') {\n if (depth === 0) {\n // unpaired parenthesis\n break\n }\n\n depth -= 1\n if (depth === 0) {\n argsEnd = i\n break\n }\n }\n }\n\n if (argsEnd === -1) {\n throw new Error(`Invalid method signature: ${signature}`)\n }\n\n const name = signature.slice(0, argsStart)\n const args = parseTupleContent(signature.slice(argsStart + 1, argsEnd)).map((n: string) => {\n if (argTypeIsTransaction(n as ABIMethodArgType) || argTypeIsReference(n as ABIMethodArgType)) {\n return { type: n as ABIMethodArgType } satisfies ABIMethodArg\n }\n return { type: ABIType.from(n) } satisfies ABIMethodArg\n })\n const returnType = signature.slice(argsEnd + 1)\n const returns = { type: returnType === 'void' ? ('void' as const) : ABIType.from(returnType) } satisfies ABIMethodReturn\n\n return new ABIMethod({\n name,\n args,\n returns,\n })\n }\n}\n\n/**\n * Returns the ABI method object for a given method name or signature and ARC-56 app spec.\n * @param methodNameOrSignature The method name or method signature to call if an ABI call is being emitted.\n * e.g. `my_method` or `my_method(unit64,string)bytes`\n * @param appSpec The app spec for the app\n * @returns The `ABIMethod`\n */\nexport function getABIMethod(methodNameOrSignature: string, appSpec: Arc56Contract): ABIMethod {\n if (!methodNameOrSignature.includes('(')) {\n const methods = appSpec.methods.filter((m) => m.name === methodNameOrSignature)\n if (methods.length === 0) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`)\n if (methods.length > 1) {\n throw new Error(\n `Received a call to method ${methodNameOrSignature} in contract ${\n appSpec.name\n }, but this resolved to multiple methods; please pass in an ABI signature instead: ${appSpec.methods\n .map((m) => getArc56MethodSignature(m))\n .join(', ')}`,\n )\n }\n return arc56MethodToABIMethod(methods[0], appSpec)\n } else {\n const method = appSpec.methods.find((m) => getArc56MethodSignature(m) === methodNameOrSignature)\n if (!method) throw new Error(`Unable to find method ${methodNameOrSignature} in ${appSpec.name} app.`)\n return arc56MethodToABIMethod(method, appSpec)\n }\n}\n\nexport function arc56MethodToABIMethod(method: Arc56Method, appSpec: Arc56Contract): ABIMethod {\n if (typeof method.name !== 'string' || typeof method.returns !== 'object' || !Array.isArray(method.args)) {\n throw new Error('Invalid ABIMethod parameters')\n }\n\n const args = method.args.map(({ type, name, desc, struct, defaultValue }) => {\n const convertedDefaultValue: ABIDefaultValue | undefined = defaultValue\n ? {\n data: defaultValue.data,\n source: defaultValue.source as DefaultValueSource,\n type: defaultValue.type ? (isAVMType(defaultValue.type) ? defaultValue.type : ABIType.from(defaultValue.type)) : undefined,\n }\n : undefined\n\n if (argTypeIsTransaction(type as ABIMethodArgType) || argTypeIsReference(type as ABIMethodArgType)) {\n return {\n type: type as ABIMethodArgType,\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n }\n\n if (struct) {\n return {\n type: ABIStructType.fromStruct(struct, appSpec.structs),\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n }\n\n return {\n type: ABIType.from(type),\n name,\n description: desc,\n defaultValue: convertedDefaultValue,\n } satisfies ABIMethodArg\n })\n\n const returns = {\n type:\n method.returns.type === ('void' as const)\n ? ('void' as const)\n : method.returns.struct\n ? ABIStructType.fromStruct(method.returns.struct, appSpec.structs)\n : ABIType.from(method.returns.type),\n description: method.returns.desc,\n } satisfies ABIMethodReturn\n\n return new ABIMethod({\n name: method.name,\n description: method.desc,\n args,\n returns,\n events: method.events,\n readonly: method.readonly,\n })\n}\n\nexport function argTypeIsTransaction(type: ABIMethodArgType): type is ABITransactionType {\n return (\n typeof type === 'string' &&\n (type === ABITransactionType.Txn ||\n type === ABITransactionType.Payment ||\n type === ABITransactionType.KeyRegistration ||\n type === ABITransactionType.AssetConfig ||\n type === ABITransactionType.AssetTransfer ||\n type === ABITransactionType.AssetFreeze ||\n type === ABITransactionType.AppCall)\n )\n}\n\nexport function argTypeIsReference(type: ABIMethodArgType): type is ABIReferenceType {\n return (\n typeof type === 'string' &&\n (type === ABIReferenceType.Account || type === ABIReferenceType.Application || type === ABIReferenceType.Asset)\n )\n}\n\nexport function argTypeIsAbiType(type: ABIMethodArgType): type is ABIType {\n return !argTypeIsTransaction(type) && !argTypeIsReference(type)\n}\n\nfunction getArc56MethodSignature(method: Arc56Method): string {\n const args = method.args.map((arg) => arg.type).join(',')\n const returns = method.returns.type\n return `${method.name}(${args})${returns}`\n}\n\nexport function decodeAVMValue(avmType: AVMType, bytes: Uint8Array): ABIValue {\n switch (avmType) {\n case 'AVMString':\n return Buffer.from(bytes).toString('utf-8')\n case 'AVMBytes':\n return bytes\n case 'AVMUint64':\n return ABIType.from('uint64').decode(bytes)\n }\n}\n\nexport function encodeAVMValue(avmType: AVMType, value: ABIValue): Uint8Array {\n switch (avmType) {\n case 'AVMString':\n return ABIType.from('string').encode(value)\n case 'AVMBytes':\n if (typeof value === 'string') return Buffer.from(value, 'utf-8')\n if (typeof value !== 'object' || !(value instanceof Uint8Array))\n throw new Error(`Expected bytes value for AVMBytes, but got ${value}`)\n return value\n case 'AVMUint64':\n return ABIType.from('uint64').encode(value)\n }\n}\n\nexport function isAVMType(type: unknown): type is AVMType {\n return typeof type === 'string' && (type === 'AVMString' || type === 'AVMBytes' || type === 'AVMUint64')\n}\n\nexport function getABIDecodedValue(type: AVMType | ABIType | ABIReferenceType, bytes: Uint8Array): ABIValue {\n if (type === ABIReferenceType.Asset || type === ABIReferenceType.Application) {\n return new ABIUintType(64).decode(bytes)\n } else if (type === ABIReferenceType.Account) {\n return new ABIAddressType().decode(bytes)\n } else if (isAVMType(type)) {\n return decodeAVMValue(type, bytes)\n }\n return type.decode(bytes)\n}\n\nexport function getABIEncodedValue(type: AVMType | ABIType, value: ABIValue): Uint8Array {\n return isAVMType(type) ? encodeAVMValue(type, value) : type.encode(value)\n}\n"],"mappings":"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"}
|
|
@@ -2,14 +2,11 @@ import { ABIStructValue, ABIValue } from "./abi-value.js";
|
|
|
2
2
|
import { StructField } from "./arc56-contract.js";
|
|
3
3
|
|
|
4
4
|
//#region packages/abi/src/abi-type.d.ts
|
|
5
|
-
|
|
6
5
|
/**
|
|
7
6
|
* Information about a single field in a struct
|
|
8
7
|
*/
|
|
9
8
|
type ABIStructField = {
|
|
10
|
-
/** The name of the struct field */
|
|
11
|
-
name: string;
|
|
12
|
-
/** The type of the struct field's value */
|
|
9
|
+
/** The name of the struct field */name: string; /** The type of the struct field's value */
|
|
13
10
|
type: ABIType | ABIStructField[];
|
|
14
11
|
};
|
|
15
12
|
/**
|
|
@@ -244,8 +241,6 @@ declare class ABIStructType extends ABIType {
|
|
|
244
241
|
static fromStruct(structName: string, structs: Record<string, StructField[]>): ABIStructType;
|
|
245
242
|
encode(value: ABIValue): Uint8Array;
|
|
246
243
|
decode(bytes: Uint8Array): ABIStructValue;
|
|
247
|
-
private getTupleValueFromStructValue;
|
|
248
|
-
private getStructValueFromTupleValue;
|
|
249
244
|
}
|
|
250
245
|
declare function parseTupleContent(content: string): string[];
|
|
251
246
|
//#endregion
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
const require_array = require(
|
|
2
|
-
|
|
3
|
-
const require_address = require(
|
|
4
|
-
const require_bigint = require(
|
|
5
|
-
|
|
1
|
+
const require_array = require("../../common/src/array.js");
|
|
2
|
+
require("../../common/src/constants.js");
|
|
3
|
+
const require_address = require("../../common/src/address.js");
|
|
4
|
+
const require_bigint = require("./bigint.js");
|
|
5
|
+
const require_utils = require("./utils.js");
|
|
6
6
|
//#region packages/abi/src/abi-type.ts
|
|
7
7
|
const STATIC_ARRAY_REGEX = /^([a-z\d[\](),]+)\[(0|[1-9][\d]*)]$/;
|
|
8
8
|
const UFIXED_REGEX = /^ufixed([1-9][\d]*)x([1-9][\d]*)$/;
|
|
@@ -162,7 +162,7 @@ var ABIAddressType = class ABIAddressType extends ABIType {
|
|
|
162
162
|
return false;
|
|
163
163
|
}
|
|
164
164
|
byteLen() {
|
|
165
|
-
return
|
|
165
|
+
return 32;
|
|
166
166
|
}
|
|
167
167
|
encode(value) {
|
|
168
168
|
if (typeof value === "string") return require_address.Address.fromString(value).publicKey;
|
|
@@ -247,16 +247,16 @@ var ABIStringType = class ABIStringType extends ABIType {
|
|
|
247
247
|
let encodedBytes;
|
|
248
248
|
if (typeof value === "string") encodedBytes = new TextEncoder().encode(value);
|
|
249
249
|
else encodedBytes = value;
|
|
250
|
-
const encodedLength = require_bigint.bigIntToBytes(encodedBytes.length,
|
|
251
|
-
const mergedBytes = new Uint8Array(encodedBytes.length +
|
|
250
|
+
const encodedLength = require_bigint.bigIntToBytes(encodedBytes.length, 2);
|
|
251
|
+
const mergedBytes = new Uint8Array(encodedBytes.length + 2);
|
|
252
252
|
mergedBytes.set(encodedLength);
|
|
253
|
-
mergedBytes.set(encodedBytes,
|
|
253
|
+
mergedBytes.set(encodedBytes, 2);
|
|
254
254
|
return mergedBytes;
|
|
255
255
|
}
|
|
256
256
|
decode(bytes) {
|
|
257
|
-
if (bytes.length <
|
|
258
|
-
const byteLength = new DataView(bytes.buffer, bytes.byteOffset,
|
|
259
|
-
const byteValue = bytes.slice(
|
|
257
|
+
if (bytes.length < 2) throw new Error(`Byte string is too short to be decoded. Actual length is ${bytes.length}, but expected at least 2`);
|
|
258
|
+
const byteLength = new DataView(bytes.buffer, bytes.byteOffset, 2).getUint16(0);
|
|
259
|
+
const byteValue = bytes.slice(2, bytes.length);
|
|
260
260
|
if (byteLength !== byteValue.length) throw new Error(`String length bytes do not match the actual length of string. Expected ${byteLength}, got ${byteValue.length}`);
|
|
261
261
|
return new TextDecoder("utf-8").decode(byteValue);
|
|
262
262
|
}
|
|
@@ -357,9 +357,7 @@ var ABITupleType = class ABITupleType extends ABIType {
|
|
|
357
357
|
const valuePartitions = extractValues(this.childTypes, bytes);
|
|
358
358
|
const values = [];
|
|
359
359
|
for (let i = 0; i < this.childTypes.length; i++) {
|
|
360
|
-
const
|
|
361
|
-
const valuePartition = valuePartitions[i];
|
|
362
|
-
const childValue = childType.decode(valuePartition);
|
|
360
|
+
const childValue = this.childTypes[i].decode(valuePartitions[i]);
|
|
363
361
|
values.push(childValue);
|
|
364
362
|
}
|
|
365
363
|
return values;
|
|
@@ -447,11 +445,11 @@ var ABIArrayDynamicType = class ABIArrayDynamicType extends ABIType {
|
|
|
447
445
|
if (!Array.isArray(value) && !(value instanceof Uint8Array)) throw new Error(`Cannot encode value as ${this.name}: ${value}`);
|
|
448
446
|
const convertedTuple = this.toABITupleType(value.length);
|
|
449
447
|
const encodedTuple = convertedTuple.encode(value);
|
|
450
|
-
return require_array.concatArrays(require_bigint.bigIntToBytes(convertedTuple.childTypes.length,
|
|
448
|
+
return require_array.concatArrays(require_bigint.bigIntToBytes(convertedTuple.childTypes.length, 2), encodedTuple);
|
|
451
449
|
}
|
|
452
450
|
decode(bytes) {
|
|
453
|
-
const byteLength = new DataView(bytes.buffer, 0,
|
|
454
|
-
const decoded = this.toABITupleType(byteLength).decode(bytes.slice(
|
|
451
|
+
const byteLength = new DataView(bytes.buffer, 0, 2).getUint16(0);
|
|
452
|
+
const decoded = this.toABITupleType(byteLength).decode(bytes.slice(2, bytes.length));
|
|
455
453
|
if (this.childType instanceof ABIByteType && Array.isArray(decoded)) return new Uint8Array(decoded);
|
|
456
454
|
return decoded;
|
|
457
455
|
}
|
|
@@ -527,46 +525,15 @@ var ABIStructType = class ABIStructType extends ABIType {
|
|
|
527
525
|
})));
|
|
528
526
|
}
|
|
529
527
|
encode(value) {
|
|
530
|
-
if (
|
|
528
|
+
if (value instanceof Uint8Array || value instanceof require_address.Address || typeof value !== "object") throw new Error(`Cannot encode value as ${this.name}: ${value}`);
|
|
531
529
|
const tupleType = this.toABITupleType();
|
|
532
|
-
|
|
530
|
+
if (Array.isArray(value)) return tupleType.encode(value);
|
|
531
|
+
const tupleValue = require_utils.getTupleValueFromStructValue(this, value);
|
|
533
532
|
return tupleType.encode(tupleValue);
|
|
534
533
|
}
|
|
535
534
|
decode(bytes) {
|
|
536
535
|
const tupleValue = this.toABITupleType().decode(bytes);
|
|
537
|
-
return
|
|
538
|
-
}
|
|
539
|
-
getTupleValueFromStructValue(structValue) {
|
|
540
|
-
const getTupleValueFromStructFields = (structFields, values) => {
|
|
541
|
-
return structFields.map(({ type }, index) => {
|
|
542
|
-
if (Array.isArray(type)) {
|
|
543
|
-
const value = values[index];
|
|
544
|
-
return getTupleValueFromStructFields(type, Object.values(value));
|
|
545
|
-
}
|
|
546
|
-
if (type instanceof ABIStructType) {
|
|
547
|
-
const value = values[index];
|
|
548
|
-
return getTupleValueFromStructFields(type.structFields, Object.values(value));
|
|
549
|
-
}
|
|
550
|
-
return values[index];
|
|
551
|
-
});
|
|
552
|
-
};
|
|
553
|
-
return getTupleValueFromStructFields(this.structFields, Object.values(structValue));
|
|
554
|
-
}
|
|
555
|
-
getStructValueFromTupleValue(tupleValue) {
|
|
556
|
-
const getStructFieldValues = (structFields, values) => {
|
|
557
|
-
return Object.fromEntries(structFields.map(({ name, type }, index) => {
|
|
558
|
-
if (Array.isArray(type)) {
|
|
559
|
-
const value = values[index];
|
|
560
|
-
return [name, getStructFieldValues(type, value)];
|
|
561
|
-
}
|
|
562
|
-
if (type instanceof ABIStructType) {
|
|
563
|
-
const value = values[index];
|
|
564
|
-
return [name, getStructFieldValues(type.structFields, value)];
|
|
565
|
-
}
|
|
566
|
-
return [name, values[index]];
|
|
567
|
-
}));
|
|
568
|
-
};
|
|
569
|
-
return getStructFieldValues(this.structFields, tupleValue);
|
|
536
|
+
return require_utils.getStructValueFromTupleValue(this, tupleValue);
|
|
570
537
|
}
|
|
571
538
|
};
|
|
572
539
|
function compressBools(values) {
|
|
@@ -594,7 +561,7 @@ function extractValues(abiTypes, bytes) {
|
|
|
594
561
|
while (abiTypesCursor < abiTypes.length) {
|
|
595
562
|
const childType = abiTypes[abiTypesCursor];
|
|
596
563
|
if (childType.isDynamic()) {
|
|
597
|
-
if (bytes.length - bytesCursor <
|
|
564
|
+
if (bytes.length - bytesCursor < 2) throw new Error("Byte array is too short to be decoded");
|
|
598
565
|
const dynamicIndex = bytes[bytesCursor] << 8 | bytes[bytesCursor + 1];
|
|
599
566
|
if (dynamicSegments.length > 0) {
|
|
600
567
|
const lastSegment = dynamicSegments[dynamicSegments.length - 1];
|
|
@@ -606,13 +573,13 @@ function extractValues(abiTypes, bytes) {
|
|
|
606
573
|
right: 0
|
|
607
574
|
});
|
|
608
575
|
valuePartitions.push(null);
|
|
609
|
-
bytesCursor +=
|
|
576
|
+
bytesCursor += 2;
|
|
610
577
|
} else if (childType instanceof ABIBoolType) {
|
|
611
578
|
const boolSequenceEndIndex = findBoolSequenceEnd(abiTypes, abiTypesCursor);
|
|
612
579
|
for (let j = 0; j <= boolSequenceEndIndex - abiTypesCursor; j++) {
|
|
613
|
-
const boolMask =
|
|
614
|
-
if ((bytes[bytesCursor] & boolMask) > 0) valuePartitions.push(new Uint8Array([
|
|
615
|
-
else valuePartitions.push(new Uint8Array([
|
|
580
|
+
const boolMask = 128 >> j;
|
|
581
|
+
if ((bytes[bytesCursor] & boolMask) > 0) valuePartitions.push(new Uint8Array([128]));
|
|
582
|
+
else valuePartitions.push(new Uint8Array([0]));
|
|
616
583
|
}
|
|
617
584
|
abiTypesCursor = boolSequenceEndIndex;
|
|
618
585
|
bytesCursor += 1;
|
|
@@ -669,7 +636,6 @@ function parseTupleContent(content) {
|
|
|
669
636
|
if (depth !== 0) throw new Error("The content has mismatched parentheses");
|
|
670
637
|
return tupleStrings;
|
|
671
638
|
}
|
|
672
|
-
|
|
673
639
|
//#endregion
|
|
674
640
|
exports.ABIAddressType = ABIAddressType;
|
|
675
641
|
exports.ABIArrayDynamicType = ABIArrayDynamicType;
|
|
@@ -683,4 +649,5 @@ exports.ABIType = ABIType;
|
|
|
683
649
|
exports.ABIUfixedType = ABIUfixedType;
|
|
684
650
|
exports.ABIUintType = ABIUintType;
|
|
685
651
|
exports.parseTupleContent = parseTupleContent;
|
|
652
|
+
|
|
686
653
|
//# sourceMappingURL=abi-type.js.map
|