@algorandfoundation/algokit-utils 9.2.0 → 10.0.0-alpha.10
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/README.md +60 -1
- package/_virtual/rolldown_runtime.js +43 -0
- package/_virtual/rolldown_runtime.mjs +18 -0
- package/abi/index.d.ts +6 -0
- package/abi/index.js +40 -0
- package/abi/index.mjs +5 -0
- package/algo25/index.d.ts +2 -0
- package/algo25/index.js +9 -0
- package/algo25/index.mjs +3 -0
- package/algod-client/index.d.ts +73 -0
- package/algod-client/index.js +17 -0
- package/algod-client/index.mjs +8 -0
- package/amount.d.ts +40 -35
- package/amount.js +36 -36
- package/amount.js.map +1 -1
- package/amount.mjs +36 -34
- package/amount.mjs.map +1 -1
- package/config.d.ts +7 -2
- package/config.js +5 -5
- package/config.js.map +1 -1
- package/config.mjs +4 -2
- package/config.mjs.map +1 -1
- package/index.d.ts +10 -18
- package/index.js +41 -143
- package/index.mjs +11 -29
- package/indexer-client/index.d.ts +78 -0
- package/indexer-client/index.js +17 -0
- package/indexer-client/index.mjs +8 -0
- package/indexer-lookup.d.ts +20 -27
- package/indexer-lookup.js +98 -128
- package/indexer-lookup.js.map +1 -1
- package/indexer-lookup.mjs +93 -123
- package/indexer-lookup.mjs.map +1 -1
- package/kmd-client/index.d.ts +54 -0
- package/kmd-client/index.js +17 -0
- package/kmd-client/index.mjs +8 -0
- package/package.json +43 -5
- package/packages/abi/src/abi-method.d.ts +117 -0
- package/packages/abi/src/abi-method.js +209 -0
- package/packages/abi/src/abi-method.js.map +1 -0
- package/packages/abi/src/abi-method.mjs +196 -0
- package/packages/abi/src/abi-method.mjs.map +1 -0
- package/packages/abi/src/abi-type.d.ts +253 -0
- package/packages/abi/src/abi-type.js +686 -0
- package/packages/abi/src/abi-type.js.map +1 -0
- package/packages/abi/src/abi-type.mjs +675 -0
- package/packages/abi/src/abi-type.mjs.map +1 -0
- package/packages/abi/src/abi-value.d.ts +11 -0
- package/packages/abi/src/arc28-event.d.ts +20 -0
- package/packages/abi/src/arc56-contract.d.ts +389 -0
- package/packages/abi/src/arc56-contract.js +197 -0
- package/packages/abi/src/arc56-contract.js.map +1 -0
- package/packages/abi/src/arc56-contract.mjs +186 -0
- package/packages/abi/src/arc56-contract.mjs.map +1 -0
- package/packages/abi/src/bigint.js +32 -0
- package/packages/abi/src/bigint.js.map +1 -0
- package/packages/abi/src/bigint.mjs +30 -0
- package/packages/abi/src/bigint.mjs.map +1 -0
- package/packages/algo25/src/english.js +2057 -0
- package/packages/algo25/src/english.js.map +1 -0
- package/packages/algo25/src/english.mjs +2056 -0
- package/packages/algo25/src/english.mjs.map +1 -0
- package/packages/algo25/src/index.d.ts +40 -0
- package/packages/algo25/src/index.js +119 -0
- package/packages/algo25/src/index.js.map +1 -0
- package/packages/algo25/src/index.mjs +113 -0
- package/packages/algo25/src/index.mjs.map +1 -0
- package/packages/algod_client/src/apis/api-service.d.ts +184 -0
- package/packages/algod_client/src/apis/api-service.js +627 -0
- package/packages/algod_client/src/apis/api-service.js.map +1 -0
- package/packages/algod_client/src/apis/api-service.mjs +627 -0
- package/packages/algod_client/src/apis/api-service.mjs.map +1 -0
- package/packages/algod_client/src/client.d.ts +10 -0
- package/packages/algod_client/src/client.js +13 -0
- package/packages/algod_client/src/client.js.map +1 -0
- package/packages/algod_client/src/client.mjs +13 -0
- package/packages/algod_client/src/client.mjs.map +1 -0
- package/packages/algod_client/src/core/api-error.d.ts +10 -0
- package/packages/algod_client/src/core/api-error.js +19 -0
- package/packages/algod_client/src/core/api-error.js.map +1 -0
- package/packages/algod_client/src/core/api-error.mjs +18 -0
- package/packages/algod_client/src/core/api-error.mjs.map +1 -0
- package/packages/algod_client/src/core/base-http-request.d.ts +25 -0
- package/packages/algod_client/src/core/base-http-request.js +16 -0
- package/packages/algod_client/src/core/base-http-request.js.map +1 -0
- package/packages/algod_client/src/core/base-http-request.mjs +14 -0
- package/packages/algod_client/src/core/base-http-request.mjs.map +1 -0
- package/packages/algod_client/src/core/client-config.d.ts +17 -0
- package/packages/algod_client/src/core/fetch-http-request.d.ts +10 -0
- package/packages/algod_client/src/core/fetch-http-request.js +85 -0
- package/packages/algod_client/src/core/fetch-http-request.js.map +1 -0
- package/packages/algod_client/src/core/fetch-http-request.mjs +85 -0
- package/packages/algod_client/src/core/fetch-http-request.mjs.map +1 -0
- package/packages/algod_client/src/core/model-runtime.d.ts +10 -0
- package/packages/algod_client/src/core/model-runtime.js +25 -0
- package/packages/algod_client/src/core/model-runtime.js.map +1 -0
- package/packages/algod_client/src/core/model-runtime.mjs +22 -0
- package/packages/algod_client/src/core/model-runtime.mjs.map +1 -0
- package/packages/algod_client/src/core/request.js +62 -0
- package/packages/algod_client/src/core/request.js.map +1 -0
- package/packages/algod_client/src/core/request.mjs +62 -0
- package/packages/algod_client/src/core/request.mjs.map +1 -0
- package/packages/algod_client/src/models/account-application-response.d.ts +15 -0
- package/packages/algod_client/src/models/account-application-response.js +34 -0
- package/packages/algod_client/src/models/account-application-response.js.map +1 -0
- package/packages/algod_client/src/models/account-application-response.mjs +34 -0
- package/packages/algod_client/src/models/account-application-response.mjs.map +1 -0
- package/packages/algod_client/src/models/account-asset-response.d.ts +15 -0
- package/packages/algod_client/src/models/account-asset-response.js +34 -0
- package/packages/algod_client/src/models/account-asset-response.js.map +1 -0
- package/packages/algod_client/src/models/account-asset-response.mjs +34 -0
- package/packages/algod_client/src/models/account-asset-response.mjs.map +1 -0
- package/packages/algod_client/src/models/account-participation.d.ts +33 -0
- package/packages/algod_client/src/models/account-participation.js +50 -0
- package/packages/algod_client/src/models/account-participation.js.map +1 -0
- package/packages/algod_client/src/models/account-participation.mjs +50 -0
- package/packages/algod_client/src/models/account-participation.mjs.map +1 -0
- package/packages/algod_client/src/models/account-state-delta.d.ts +15 -0
- package/packages/algod_client/src/models/account-state-delta.js +24 -0
- package/packages/algod_client/src/models/account-state-delta.js.map +1 -0
- package/packages/algod_client/src/models/account-state-delta.mjs +24 -0
- package/packages/algod_client/src/models/account-state-delta.mjs.map +1 -0
- package/packages/algod_client/src/models/account.d.ts +139 -0
- package/packages/algod_client/src/models/account.js +187 -0
- package/packages/algod_client/src/models/account.js.map +1 -0
- package/packages/algod_client/src/models/account.mjs +187 -0
- package/packages/algod_client/src/models/account.mjs.map +1 -0
- package/packages/algod_client/src/models/application-initial-states.d.ts +22 -0
- package/packages/algod_client/src/models/application-initial-states.js +40 -0
- package/packages/algod_client/src/models/application-initial-states.js.map +1 -0
- package/packages/algod_client/src/models/application-initial-states.mjs +40 -0
- package/packages/algod_client/src/models/application-initial-states.mjs.map +1 -0
- package/packages/algod_client/src/models/application-kv-storage.d.ts +21 -0
- package/packages/algod_client/src/models/application-kv-storage.js +25 -0
- package/packages/algod_client/src/models/application-kv-storage.js.map +1 -0
- package/packages/algod_client/src/models/application-kv-storage.mjs +25 -0
- package/packages/algod_client/src/models/application-kv-storage.mjs.map +1 -0
- package/packages/algod_client/src/models/application-local-state.d.ts +19 -0
- package/packages/algod_client/src/models/application-local-state.js +35 -0
- package/packages/algod_client/src/models/application-local-state.js.map +1 -0
- package/packages/algod_client/src/models/application-local-state.mjs +35 -0
- package/packages/algod_client/src/models/application-local-state.mjs.map +1 -0
- package/packages/algod_client/src/models/application-params.d.ts +37 -0
- package/packages/algod_client/src/models/application-params.js +67 -0
- package/packages/algod_client/src/models/application-params.js.map +1 -0
- package/packages/algod_client/src/models/application-params.mjs +67 -0
- package/packages/algod_client/src/models/application-params.mjs.map +1 -0
- package/packages/algod_client/src/models/application-state-operation.d.ts +30 -0
- package/packages/algod_client/src/models/application-state-operation.js +47 -0
- package/packages/algod_client/src/models/application-state-operation.js.map +1 -0
- package/packages/algod_client/src/models/application-state-operation.mjs +47 -0
- package/packages/algod_client/src/models/application-state-operation.mjs.map +1 -0
- package/packages/algod_client/src/models/application-state-schema.d.ts +17 -0
- package/packages/algod_client/src/models/application-state-schema.js +22 -0
- package/packages/algod_client/src/models/application-state-schema.js.map +1 -0
- package/packages/algod_client/src/models/application-state-schema.mjs +22 -0
- package/packages/algod_client/src/models/application-state-schema.mjs.map +1 -0
- package/packages/algod_client/src/models/application.d.ts +17 -0
- package/packages/algod_client/src/models/application.js +24 -0
- package/packages/algod_client/src/models/application.js.map +1 -0
- package/packages/algod_client/src/models/application.mjs +24 -0
- package/packages/algod_client/src/models/application.mjs.map +1 -0
- package/packages/algod_client/src/models/asset-holding.d.ts +24 -0
- package/packages/algod_client/src/models/asset-holding.js +32 -0
- package/packages/algod_client/src/models/asset-holding.js.map +1 -0
- package/packages/algod_client/src/models/asset-holding.mjs +32 -0
- package/packages/algod_client/src/models/asset-holding.mjs.map +1 -0
- package/packages/algod_client/src/models/asset-params.d.ts +74 -0
- package/packages/algod_client/src/models/asset-params.js +108 -0
- package/packages/algod_client/src/models/asset-params.js.map +1 -0
- package/packages/algod_client/src/models/asset-params.mjs +108 -0
- package/packages/algod_client/src/models/asset-params.mjs.map +1 -0
- package/packages/algod_client/src/models/asset.d.ts +17 -0
- package/packages/algod_client/src/models/asset.js +24 -0
- package/packages/algod_client/src/models/asset.js.map +1 -0
- package/packages/algod_client/src/models/asset.mjs +24 -0
- package/packages/algod_client/src/models/asset.mjs.map +1 -0
- package/packages/algod_client/src/models/avm-key-value.d.ts +14 -0
- package/packages/algod_client/src/models/avm-key-value.js +24 -0
- package/packages/algod_client/src/models/avm-key-value.js.map +1 -0
- package/packages/algod_client/src/models/avm-key-value.mjs +24 -0
- package/packages/algod_client/src/models/avm-key-value.mjs.map +1 -0
- package/packages/algod_client/src/models/avm-value.d.ts +21 -0
- package/packages/algod_client/src/models/avm-value.js +33 -0
- package/packages/algod_client/src/models/avm-value.js.map +1 -0
- package/packages/algod_client/src/models/avm-value.mjs +33 -0
- package/packages/algod_client/src/models/avm-value.mjs.map +1 -0
- package/packages/algod_client/src/models/block-hash-response.d.ts +10 -0
- package/packages/algod_client/src/models/block-hash-response.js +17 -0
- package/packages/algod_client/src/models/block-hash-response.js.map +1 -0
- package/packages/algod_client/src/models/block-hash-response.mjs +17 -0
- package/packages/algod_client/src/models/block-hash-response.mjs.map +1 -0
- package/packages/algod_client/src/models/block-response.d.ts +12 -0
- package/packages/algod_client/src/models/block-response.js +24 -0
- package/packages/algod_client/src/models/block-response.js.map +1 -0
- package/packages/algod_client/src/models/block-response.mjs +24 -0
- package/packages/algod_client/src/models/block-response.mjs.map +1 -0
- package/packages/algod_client/src/models/block-txids-response.d.ts +10 -0
- package/packages/algod_client/src/models/block-txids-response.js +17 -0
- package/packages/algod_client/src/models/block-txids-response.js.map +1 -0
- package/packages/algod_client/src/models/block-txids-response.mjs +17 -0
- package/packages/algod_client/src/models/block-txids-response.mjs.map +1 -0
- package/packages/algod_client/src/models/block.d.ts +166 -0
- package/packages/algod_client/src/models/block.js +491 -0
- package/packages/algod_client/src/models/block.js.map +1 -0
- package/packages/algod_client/src/models/block.mjs +491 -0
- package/packages/algod_client/src/models/block.mjs.map +1 -0
- package/packages/algod_client/src/models/box-descriptor.d.ts +13 -0
- package/packages/algod_client/src/models/box-descriptor.js +17 -0
- package/packages/algod_client/src/models/box-descriptor.js.map +1 -0
- package/packages/algod_client/src/models/box-descriptor.mjs +17 -0
- package/packages/algod_client/src/models/box-descriptor.mjs.map +1 -0
- package/packages/algod_client/src/models/box.d.ts +21 -0
- package/packages/algod_client/src/models/box.js +32 -0
- package/packages/algod_client/src/models/box.js.map +1 -0
- package/packages/algod_client/src/models/box.mjs +32 -0
- package/packages/algod_client/src/models/box.mjs.map +1 -0
- package/packages/algod_client/src/models/boxes-response.d.ts +9 -0
- package/packages/algod_client/src/models/boxes-response.js +19 -0
- package/packages/algod_client/src/models/boxes-response.js.map +1 -0
- package/packages/algod_client/src/models/boxes-response.mjs +19 -0
- package/packages/algod_client/src/models/boxes-response.mjs.map +1 -0
- package/packages/algod_client/src/models/build-version.d.ts +12 -0
- package/packages/algod_client/src/models/build-version.js +50 -0
- package/packages/algod_client/src/models/build-version.js.map +1 -0
- package/packages/algod_client/src/models/build-version.mjs +50 -0
- package/packages/algod_client/src/models/build-version.mjs.map +1 -0
- package/packages/algod_client/src/models/compile-response.d.ts +17 -0
- package/packages/algod_client/src/models/compile-response.js +33 -0
- package/packages/algod_client/src/models/compile-response.js.map +1 -0
- package/packages/algod_client/src/models/compile-response.mjs +33 -0
- package/packages/algod_client/src/models/compile-response.mjs.map +1 -0
- package/packages/algod_client/src/models/disassemble-response.d.ts +10 -0
- package/packages/algod_client/src/models/disassemble-response.js +17 -0
- package/packages/algod_client/src/models/disassemble-response.js.map +1 -0
- package/packages/algod_client/src/models/disassemble-response.mjs +17 -0
- package/packages/algod_client/src/models/disassemble-response.mjs.map +1 -0
- package/packages/algod_client/src/models/eval-delta-key-value.d.ts +14 -0
- package/packages/algod_client/src/models/eval-delta-key-value.js +24 -0
- package/packages/algod_client/src/models/eval-delta-key-value.js.map +1 -0
- package/packages/algod_client/src/models/eval-delta-key-value.mjs +24 -0
- package/packages/algod_client/src/models/eval-delta-key-value.mjs.map +1 -0
- package/packages/algod_client/src/models/eval-delta.d.ts +21 -0
- package/packages/algod_client/src/models/eval-delta.js +33 -0
- package/packages/algod_client/src/models/eval-delta.js.map +1 -0
- package/packages/algod_client/src/models/eval-delta.mjs +33 -0
- package/packages/algod_client/src/models/eval-delta.mjs.map +1 -0
- package/packages/algod_client/src/models/genesis-allocation.d.ts +18 -0
- package/packages/algod_client/src/models/genesis-allocation.js +88 -0
- package/packages/algod_client/src/models/genesis-allocation.js.map +1 -0
- package/packages/algod_client/src/models/genesis-allocation.mjs +88 -0
- package/packages/algod_client/src/models/genesis-allocation.mjs.map +1 -0
- package/packages/algod_client/src/models/genesis.d.ts +17 -0
- package/packages/algod_client/src/models/genesis.js +72 -0
- package/packages/algod_client/src/models/genesis.js.map +1 -0
- package/packages/algod_client/src/models/genesis.mjs +72 -0
- package/packages/algod_client/src/models/genesis.mjs.map +1 -0
- package/packages/algod_client/src/models/get-block-time-stamp-offset-response.d.ts +10 -0
- package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js +17 -0
- package/packages/algod_client/src/models/get-block-time-stamp-offset-response.js.map +1 -0
- package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs +17 -0
- package/packages/algod_client/src/models/get-block-time-stamp-offset-response.mjs.map +1 -0
- package/packages/algod_client/src/models/get-sync-round-response.d.ts +10 -0
- package/packages/algod_client/src/models/get-sync-round-response.js +17 -0
- package/packages/algod_client/src/models/get-sync-round-response.js.map +1 -0
- package/packages/algod_client/src/models/get-sync-round-response.mjs +17 -0
- package/packages/algod_client/src/models/get-sync-round-response.mjs.map +1 -0
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.d.ts +14 -0
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js +24 -0
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.js.map +1 -0
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs +24 -0
- package/packages/algod_client/src/models/ledger-state-delta-for-transaction-group.mjs.map +1 -0
- package/packages/algod_client/src/models/ledger-state-delta.d.ts +351 -0
- package/packages/algod_client/src/models/ledger-state-delta.js +688 -0
- package/packages/algod_client/src/models/ledger-state-delta.js.map +1 -0
- package/packages/algod_client/src/models/ledger-state-delta.mjs +688 -0
- package/packages/algod_client/src/models/ledger-state-delta.mjs.map +1 -0
- package/packages/algod_client/src/models/light-block-header-proof.d.ts +21 -0
- package/packages/algod_client/src/models/light-block-header-proof.js +32 -0
- package/packages/algod_client/src/models/light-block-header-proof.js.map +1 -0
- package/packages/algod_client/src/models/light-block-header-proof.mjs +32 -0
- package/packages/algod_client/src/models/light-block-header-proof.mjs.map +1 -0
- package/packages/algod_client/src/models/node-status-response.d.ts +113 -0
- package/packages/algod_client/src/models/node-status-response.js +172 -0
- package/packages/algod_client/src/models/node-status-response.js.map +1 -0
- package/packages/algod_client/src/models/node-status-response.mjs +172 -0
- package/packages/algod_client/src/models/node-status-response.mjs.map +1 -0
- package/packages/algod_client/src/models/pending-transaction-response.d.ts +67 -0
- package/packages/algod_client/src/models/pending-transaction-response.js +104 -0
- package/packages/algod_client/src/models/pending-transaction-response.js.map +1 -0
- package/packages/algod_client/src/models/pending-transaction-response.mjs +104 -0
- package/packages/algod_client/src/models/pending-transaction-response.mjs.map +1 -0
- package/packages/algod_client/src/models/pending-transactions-response.d.ts +20 -0
- package/packages/algod_client/src/models/pending-transactions-response.js +25 -0
- package/packages/algod_client/src/models/pending-transactions-response.js.map +1 -0
- package/packages/algod_client/src/models/pending-transactions-response.mjs +25 -0
- package/packages/algod_client/src/models/pending-transactions-response.mjs.map +1 -0
- package/packages/algod_client/src/models/post-transactions-response.d.ts +10 -0
- package/packages/algod_client/src/models/post-transactions-response.js +17 -0
- package/packages/algod_client/src/models/post-transactions-response.js.map +1 -0
- package/packages/algod_client/src/models/post-transactions-response.mjs +17 -0
- package/packages/algod_client/src/models/post-transactions-response.mjs.map +1 -0
- package/packages/algod_client/src/models/scratch-change.d.ts +17 -0
- package/packages/algod_client/src/models/scratch-change.js +24 -0
- package/packages/algod_client/src/models/scratch-change.js.map +1 -0
- package/packages/algod_client/src/models/scratch-change.mjs +24 -0
- package/packages/algod_client/src/models/scratch-change.mjs.map +1 -0
- package/packages/algod_client/src/models/simulate-initial-states.d.ts +16 -0
- package/packages/algod_client/src/models/simulate-initial-states.js +19 -0
- package/packages/algod_client/src/models/simulate-initial-states.js.map +1 -0
- package/packages/algod_client/src/models/simulate-initial-states.mjs +19 -0
- package/packages/algod_client/src/models/simulate-initial-states.mjs.map +1 -0
- package/packages/algod_client/src/models/simulate-request-transaction-group.d.ts +16 -0
- package/packages/algod_client/src/models/simulate-request-transaction-group.js +19 -0
- package/packages/algod_client/src/models/simulate-request-transaction-group.js.map +1 -0
- package/packages/algod_client/src/models/simulate-request-transaction-group.mjs +19 -0
- package/packages/algod_client/src/models/simulate-request-transaction-group.mjs.map +1 -0
- package/packages/algod_client/src/models/simulate-request.d.ts +42 -0
- package/packages/algod_client/src/models/simulate-request.js +67 -0
- package/packages/algod_client/src/models/simulate-request.js.map +1 -0
- package/packages/algod_client/src/models/simulate-request.mjs +67 -0
- package/packages/algod_client/src/models/simulate-request.mjs.map +1 -0
- package/packages/algod_client/src/models/simulate-response.d.ts +26 -0
- package/packages/algod_client/src/models/simulate-response.js +56 -0
- package/packages/algod_client/src/models/simulate-response.js.map +1 -0
- package/packages/algod_client/src/models/simulate-response.mjs +56 -0
- package/packages/algod_client/src/models/simulate-response.mjs.map +1 -0
- package/packages/algod_client/src/models/simulate-trace-config.d.ts +25 -0
- package/packages/algod_client/src/models/simulate-trace-config.js +37 -0
- package/packages/algod_client/src/models/simulate-trace-config.js.map +1 -0
- package/packages/algod_client/src/models/simulate-trace-config.mjs +37 -0
- package/packages/algod_client/src/models/simulate-trace-config.mjs.map +1 -0
- package/packages/algod_client/src/models/simulate-transaction-group-result.d.ts +34 -0
- package/packages/algod_client/src/models/simulate-transaction-group-result.js +54 -0
- package/packages/algod_client/src/models/simulate-transaction-group-result.js.map +1 -0
- package/packages/algod_client/src/models/simulate-transaction-group-result.mjs +54 -0
- package/packages/algod_client/src/models/simulate-transaction-group-result.mjs.map +1 -0
- package/packages/algod_client/src/models/simulate-transaction-result.d.ts +30 -0
- package/packages/algod_client/src/models/simulate-transaction-result.js +54 -0
- package/packages/algod_client/src/models/simulate-transaction-result.js.map +1 -0
- package/packages/algod_client/src/models/simulate-transaction-result.mjs +54 -0
- package/packages/algod_client/src/models/simulate-transaction-result.mjs.map +1 -0
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.d.ts +41 -0
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js +58 -0
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.js.map +1 -0
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs +58 -0
- package/packages/algod_client/src/models/simulate-unnamed-resources-accessed.mjs.map +1 -0
- package/packages/algod_client/src/models/simulation-eval-overrides.d.ts +33 -0
- package/packages/algod_client/src/models/simulation-eval-overrides.js +50 -0
- package/packages/algod_client/src/models/simulation-eval-overrides.js.map +1 -0
- package/packages/algod_client/src/models/simulation-eval-overrides.mjs +50 -0
- package/packages/algod_client/src/models/simulation-eval-overrides.mjs.map +1 -0
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.d.ts +38 -0
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.js +54 -0
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.js.map +1 -0
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs +54 -0
- package/packages/algod_client/src/models/simulation-opcode-trace-unit.mjs.map +1 -0
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.d.ts +48 -0
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.js +72 -0
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.js.map +1 -0
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs +72 -0
- package/packages/algod_client/src/models/simulation-transaction-exec-trace.mjs.map +1 -0
- package/packages/algod_client/src/models/source-map.d.ts +22 -0
- package/packages/algod_client/src/models/source-map.js +39 -0
- package/packages/algod_client/src/models/source-map.js.map +1 -0
- package/packages/algod_client/src/models/source-map.mjs +39 -0
- package/packages/algod_client/src/models/source-map.mjs.map +1 -0
- package/packages/algod_client/src/models/state-delta.d.ts +11 -0
- package/packages/algod_client/src/models/state-delta.js +14 -0
- package/packages/algod_client/src/models/state-delta.js.map +1 -0
- package/packages/algod_client/src/models/state-delta.mjs +14 -0
- package/packages/algod_client/src/models/state-delta.mjs.map +1 -0
- package/packages/algod_client/src/models/state-proof-message.d.ts +29 -0
- package/packages/algod_client/src/models/state-proof-message.js +44 -0
- package/packages/algod_client/src/models/state-proof-message.js.map +1 -0
- package/packages/algod_client/src/models/state-proof-message.mjs +44 -0
- package/packages/algod_client/src/models/state-proof-message.mjs.map +1 -0
- package/packages/algod_client/src/models/state-proof.d.ts +17 -0
- package/packages/algod_client/src/models/state-proof.js +24 -0
- package/packages/algod_client/src/models/state-proof.js.map +1 -0
- package/packages/algod_client/src/models/state-proof.mjs +24 -0
- package/packages/algod_client/src/models/state-proof.mjs.map +1 -0
- package/packages/algod_client/src/models/suggested-params.d.ts +14 -0
- package/packages/algod_client/src/models/supply-response.d.ts +21 -0
- package/packages/algod_client/src/models/supply-response.js +31 -0
- package/packages/algod_client/src/models/supply-response.js.map +1 -0
- package/packages/algod_client/src/models/supply-response.mjs +31 -0
- package/packages/algod_client/src/models/supply-response.mjs.map +1 -0
- package/packages/algod_client/src/models/teal-key-value-store.d.ts +11 -0
- package/packages/algod_client/src/models/teal-key-value-store.js +14 -0
- package/packages/algod_client/src/models/teal-key-value-store.js.map +1 -0
- package/packages/algod_client/src/models/teal-key-value-store.mjs +14 -0
- package/packages/algod_client/src/models/teal-key-value-store.mjs.map +1 -0
- package/packages/algod_client/src/models/teal-key-value.d.ts +14 -0
- package/packages/algod_client/src/models/teal-key-value.js +24 -0
- package/packages/algod_client/src/models/teal-key-value.js.map +1 -0
- package/packages/algod_client/src/models/teal-key-value.mjs +24 -0
- package/packages/algod_client/src/models/teal-key-value.mjs.map +1 -0
- package/packages/algod_client/src/models/teal-value.d.ts +21 -0
- package/packages/algod_client/src/models/teal-value.js +33 -0
- package/packages/algod_client/src/models/teal-value.js.map +1 -0
- package/packages/algod_client/src/models/teal-value.mjs +33 -0
- package/packages/algod_client/src/models/teal-value.mjs.map +1 -0
- package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.d.ts +9 -0
- package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js +19 -0
- package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.js.map +1 -0
- package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs +19 -0
- package/packages/algod_client/src/models/transaction-group-ledger-state-deltas-for-round-response.mjs.map +1 -0
- package/packages/algod_client/src/models/transaction-parameters-response.d.ts +39 -0
- package/packages/algod_client/src/models/transaction-parameters-response.js +51 -0
- package/packages/algod_client/src/models/transaction-parameters-response.js.map +1 -0
- package/packages/algod_client/src/models/transaction-parameters-response.mjs +51 -0
- package/packages/algod_client/src/models/transaction-parameters-response.mjs.map +1 -0
- package/packages/algod_client/src/models/transaction-proof.d.ts +31 -0
- package/packages/algod_client/src/models/transaction-proof.js +45 -0
- package/packages/algod_client/src/models/transaction-proof.js.map +1 -0
- package/packages/algod_client/src/models/transaction-proof.mjs +45 -0
- package/packages/algod_client/src/models/transaction-proof.mjs.map +1 -0
- package/packages/algod_client/src/models/version.d.ts +16 -0
- package/packages/algod_client/src/models/version.js +41 -0
- package/packages/algod_client/src/models/version.js.map +1 -0
- package/packages/algod_client/src/models/version.mjs +41 -0
- package/packages/algod_client/src/models/version.mjs.map +1 -0
- package/packages/common/src/address.d.ts +71 -0
- package/packages/common/src/address.js +142 -0
- package/packages/common/src/address.js.map +1 -0
- package/packages/common/src/address.mjs +131 -0
- package/packages/common/src/address.mjs.map +1 -0
- package/packages/common/src/array.js +21 -0
- package/packages/common/src/array.js.map +1 -0
- package/packages/common/src/array.mjs +19 -0
- package/packages/common/src/array.mjs.map +1 -0
- package/packages/common/src/codecs/codec.d.ts +71 -0
- package/packages/common/src/codecs/codec.js +87 -0
- package/packages/common/src/codecs/codec.js.map +1 -0
- package/packages/common/src/codecs/codec.mjs +86 -0
- package/packages/common/src/codecs/codec.mjs.map +1 -0
- package/packages/common/src/codecs/composite/array.js +45 -0
- package/packages/common/src/codecs/composite/array.js.map +1 -0
- package/packages/common/src/codecs/composite/array.mjs +40 -0
- package/packages/common/src/codecs/composite/array.mjs.map +1 -0
- package/packages/common/src/codecs/composite/map.js +68 -0
- package/packages/common/src/codecs/composite/map.js.map +1 -0
- package/packages/common/src/codecs/composite/map.mjs +68 -0
- package/packages/common/src/codecs/composite/map.mjs.map +1 -0
- package/packages/common/src/codecs/composite/record.js +40 -0
- package/packages/common/src/codecs/composite/record.js.map +1 -0
- package/packages/common/src/codecs/composite/record.mjs +39 -0
- package/packages/common/src/codecs/composite/record.mjs.map +1 -0
- package/packages/common/src/codecs/models/array-model.js +36 -0
- package/packages/common/src/codecs/models/array-model.js.map +1 -0
- package/packages/common/src/codecs/models/array-model.mjs +36 -0
- package/packages/common/src/codecs/models/array-model.mjs.map +1 -0
- package/packages/common/src/codecs/models/object-model.d.ts +22 -0
- package/packages/common/src/codecs/models/object-model.js +87 -0
- package/packages/common/src/codecs/models/object-model.js.map +1 -0
- package/packages/common/src/codecs/models/object-model.mjs +87 -0
- package/packages/common/src/codecs/models/object-model.mjs.map +1 -0
- package/packages/common/src/codecs/models/primitive-model.js +36 -0
- package/packages/common/src/codecs/models/primitive-model.js.map +1 -0
- package/packages/common/src/codecs/models/primitive-model.mjs +36 -0
- package/packages/common/src/codecs/models/primitive-model.mjs.map +1 -0
- package/packages/common/src/codecs/primitives/address.js +32 -0
- package/packages/common/src/codecs/primitives/address.js.map +1 -0
- package/packages/common/src/codecs/primitives/address.mjs +31 -0
- package/packages/common/src/codecs/primitives/address.mjs.map +1 -0
- package/packages/common/src/codecs/primitives/bigint.js +18 -0
- package/packages/common/src/codecs/primitives/bigint.js.map +1 -0
- package/packages/common/src/codecs/primitives/bigint.mjs +18 -0
- package/packages/common/src/codecs/primitives/bigint.mjs.map +1 -0
- package/packages/common/src/codecs/primitives/boolean.js +13 -0
- package/packages/common/src/codecs/primitives/boolean.js.map +1 -0
- package/packages/common/src/codecs/primitives/boolean.mjs +13 -0
- package/packages/common/src/codecs/primitives/boolean.mjs.map +1 -0
- package/packages/common/src/codecs/primitives/bytes.js +27 -0
- package/packages/common/src/codecs/primitives/bytes.js.map +1 -0
- package/packages/common/src/codecs/primitives/bytes.mjs +26 -0
- package/packages/common/src/codecs/primitives/bytes.mjs.map +1 -0
- package/packages/common/src/codecs/primitives/fixed-bytes.js +36 -0
- package/packages/common/src/codecs/primitives/fixed-bytes.js.map +1 -0
- package/packages/common/src/codecs/primitives/fixed-bytes.mjs +33 -0
- package/packages/common/src/codecs/primitives/fixed-bytes.mjs.map +1 -0
- package/packages/common/src/codecs/primitives/number.js +16 -0
- package/packages/common/src/codecs/primitives/number.js.map +1 -0
- package/packages/common/src/codecs/primitives/number.mjs +16 -0
- package/packages/common/src/codecs/primitives/number.mjs.map +1 -0
- package/packages/common/src/codecs/primitives/string.js +17 -0
- package/packages/common/src/codecs/primitives/string.js.map +1 -0
- package/packages/common/src/codecs/primitives/string.mjs +17 -0
- package/packages/common/src/codecs/primitives/string.mjs.map +1 -0
- package/packages/common/src/codecs/primitives/unknown.js +58 -0
- package/packages/common/src/codecs/primitives/unknown.js.map +1 -0
- package/packages/common/src/codecs/primitives/unknown.mjs +58 -0
- package/packages/common/src/codecs/primitives/unknown.mjs.map +1 -0
- package/packages/common/src/codecs/types.d.ts +27 -0
- package/packages/common/src/codecs/wire.d.ts +15 -0
- package/packages/common/src/codecs/wire.js +23 -0
- package/packages/common/src/codecs/wire.js.map +1 -0
- package/packages/common/src/codecs/wire.mjs +21 -0
- package/packages/common/src/codecs/wire.mjs.map +1 -0
- package/packages/common/src/constants.js +63 -0
- package/packages/common/src/constants.js.map +1 -0
- package/packages/common/src/constants.mjs +34 -0
- package/packages/common/src/constants.mjs.map +1 -0
- package/packages/common/src/crypto.js +13 -0
- package/packages/common/src/crypto.js.map +1 -0
- package/packages/common/src/crypto.mjs +11 -0
- package/packages/common/src/crypto.mjs.map +1 -0
- package/packages/common/src/expand.d.ts +9 -0
- package/packages/common/src/json.js +38 -0
- package/packages/common/src/json.js.map +1 -0
- package/packages/common/src/json.mjs +35 -0
- package/packages/common/src/json.mjs.map +1 -0
- package/packages/common/src/logger.d.ts +12 -0
- package/packages/common/src/msgpack.js +25 -0
- package/packages/common/src/msgpack.js.map +1 -0
- package/packages/common/src/msgpack.mjs +23 -0
- package/packages/common/src/msgpack.mjs.map +1 -0
- package/packages/indexer_client/src/apis/api-service.d.ts +251 -0
- package/packages/indexer_client/src/apis/api-service.js +482 -0
- package/packages/indexer_client/src/apis/api-service.js.map +1 -0
- package/packages/indexer_client/src/apis/api-service.mjs +482 -0
- package/packages/indexer_client/src/apis/api-service.mjs.map +1 -0
- package/packages/indexer_client/src/client.d.ts +10 -0
- package/packages/indexer_client/src/client.js +13 -0
- package/packages/indexer_client/src/client.js.map +1 -0
- package/packages/indexer_client/src/client.mjs +13 -0
- package/packages/indexer_client/src/client.mjs.map +1 -0
- package/packages/indexer_client/src/core/api-error.d.ts +10 -0
- package/packages/indexer_client/src/core/api-error.js +19 -0
- package/packages/indexer_client/src/core/api-error.js.map +1 -0
- package/packages/indexer_client/src/core/api-error.mjs +18 -0
- package/packages/indexer_client/src/core/api-error.mjs.map +1 -0
- package/packages/indexer_client/src/core/base-http-request.d.ts +25 -0
- package/packages/indexer_client/src/core/base-http-request.js +16 -0
- package/packages/indexer_client/src/core/base-http-request.js.map +1 -0
- package/packages/indexer_client/src/core/base-http-request.mjs +14 -0
- package/packages/indexer_client/src/core/base-http-request.mjs.map +1 -0
- package/packages/indexer_client/src/core/client-config.d.ts +17 -0
- package/packages/indexer_client/src/core/fetch-http-request.d.ts +10 -0
- package/packages/indexer_client/src/core/fetch-http-request.js +85 -0
- package/packages/indexer_client/src/core/fetch-http-request.js.map +1 -0
- package/packages/indexer_client/src/core/fetch-http-request.mjs +85 -0
- package/packages/indexer_client/src/core/fetch-http-request.mjs.map +1 -0
- package/packages/indexer_client/src/core/model-runtime.d.ts +10 -0
- package/packages/indexer_client/src/core/model-runtime.js +25 -0
- package/packages/indexer_client/src/core/model-runtime.js.map +1 -0
- package/packages/indexer_client/src/core/model-runtime.mjs +22 -0
- package/packages/indexer_client/src/core/model-runtime.mjs.map +1 -0
- package/packages/indexer_client/src/core/request.js +62 -0
- package/packages/indexer_client/src/core/request.js.map +1 -0
- package/packages/indexer_client/src/core/request.mjs +62 -0
- package/packages/indexer_client/src/core/request.mjs.map +1 -0
- package/packages/indexer_client/src/models/account-participation.d.ts +33 -0
- package/packages/indexer_client/src/models/account-participation.js +50 -0
- package/packages/indexer_client/src/models/account-participation.js.map +1 -0
- package/packages/indexer_client/src/models/account-participation.mjs +50 -0
- package/packages/indexer_client/src/models/account-participation.mjs.map +1 -0
- package/packages/indexer_client/src/models/account-response.d.ts +13 -0
- package/packages/indexer_client/src/models/account-response.js +24 -0
- package/packages/indexer_client/src/models/account-response.js.map +1 -0
- package/packages/indexer_client/src/models/account-response.mjs +24 -0
- package/packages/indexer_client/src/models/account-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/account-state-delta.d.ts +14 -0
- package/packages/indexer_client/src/models/account-state-delta.js +24 -0
- package/packages/indexer_client/src/models/account-state-delta.js.map +1 -0
- package/packages/indexer_client/src/models/account-state-delta.mjs +24 -0
- package/packages/indexer_client/src/models/account-state-delta.mjs.map +1 -0
- package/packages/indexer_client/src/models/account.d.ts +152 -0
- package/packages/indexer_client/src/models/account.js +205 -0
- package/packages/indexer_client/src/models/account.js.map +1 -0
- package/packages/indexer_client/src/models/account.mjs +205 -0
- package/packages/indexer_client/src/models/account.mjs.map +1 -0
- package/packages/indexer_client/src/models/accounts-response.d.ts +17 -0
- package/packages/indexer_client/src/models/accounts-response.js +35 -0
- package/packages/indexer_client/src/models/accounts-response.js.map +1 -0
- package/packages/indexer_client/src/models/accounts-response.mjs +35 -0
- package/packages/indexer_client/src/models/accounts-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/application-local-state.d.ts +31 -0
- package/packages/indexer_client/src/models/application-local-state.js +54 -0
- package/packages/indexer_client/src/models/application-local-state.js.map +1 -0
- package/packages/indexer_client/src/models/application-local-state.mjs +54 -0
- package/packages/indexer_client/src/models/application-local-state.mjs.map +1 -0
- package/packages/indexer_client/src/models/application-local-states-response.d.ts +17 -0
- package/packages/indexer_client/src/models/application-local-states-response.js +35 -0
- package/packages/indexer_client/src/models/application-local-states-response.js.map +1 -0
- package/packages/indexer_client/src/models/application-local-states-response.mjs +35 -0
- package/packages/indexer_client/src/models/application-local-states-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/application-log-data.d.ts +17 -0
- package/packages/indexer_client/src/models/application-log-data.js +23 -0
- package/packages/indexer_client/src/models/application-log-data.js.map +1 -0
- package/packages/indexer_client/src/models/application-log-data.mjs +23 -0
- package/packages/indexer_client/src/models/application-log-data.mjs.map +1 -0
- package/packages/indexer_client/src/models/application-logs-response.d.ts +21 -0
- package/packages/indexer_client/src/models/application-logs-response.js +41 -0
- package/packages/indexer_client/src/models/application-logs-response.js.map +1 -0
- package/packages/indexer_client/src/models/application-logs-response.mjs +41 -0
- package/packages/indexer_client/src/models/application-logs-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/application-params.d.ts +37 -0
- package/packages/indexer_client/src/models/application-params.js +67 -0
- package/packages/indexer_client/src/models/application-params.js.map +1 -0
- package/packages/indexer_client/src/models/application-params.mjs +67 -0
- package/packages/indexer_client/src/models/application-params.mjs.map +1 -0
- package/packages/indexer_client/src/models/application-response.d.ts +13 -0
- package/packages/indexer_client/src/models/application-response.js +24 -0
- package/packages/indexer_client/src/models/application-response.js.map +1 -0
- package/packages/indexer_client/src/models/application-response.mjs +24 -0
- package/packages/indexer_client/src/models/application-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/application-state-schema.d.ts +17 -0
- package/packages/indexer_client/src/models/application-state-schema.js +22 -0
- package/packages/indexer_client/src/models/application-state-schema.js.map +1 -0
- package/packages/indexer_client/src/models/application-state-schema.mjs +22 -0
- package/packages/indexer_client/src/models/application-state-schema.mjs.map +1 -0
- package/packages/indexer_client/src/models/application.d.ts +29 -0
- package/packages/indexer_client/src/models/application.js +46 -0
- package/packages/indexer_client/src/models/application.js.map +1 -0
- package/packages/indexer_client/src/models/application.mjs +46 -0
- package/packages/indexer_client/src/models/application.mjs.map +1 -0
- package/packages/indexer_client/src/models/applications-response.d.ts +17 -0
- package/packages/indexer_client/src/models/applications-response.js +35 -0
- package/packages/indexer_client/src/models/applications-response.js.map +1 -0
- package/packages/indexer_client/src/models/applications-response.mjs +35 -0
- package/packages/indexer_client/src/models/applications-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/asset-balances-response.d.ts +17 -0
- package/packages/indexer_client/src/models/asset-balances-response.js +35 -0
- package/packages/indexer_client/src/models/asset-balances-response.js.map +1 -0
- package/packages/indexer_client/src/models/asset-balances-response.mjs +35 -0
- package/packages/indexer_client/src/models/asset-balances-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/asset-holding.d.ts +36 -0
- package/packages/indexer_client/src/models/asset-holding.js +50 -0
- package/packages/indexer_client/src/models/asset-holding.js.map +1 -0
- package/packages/indexer_client/src/models/asset-holding.mjs +50 -0
- package/packages/indexer_client/src/models/asset-holding.mjs.map +1 -0
- package/packages/indexer_client/src/models/asset-holdings-response.d.ts +17 -0
- package/packages/indexer_client/src/models/asset-holdings-response.js +35 -0
- package/packages/indexer_client/src/models/asset-holdings-response.js.map +1 -0
- package/packages/indexer_client/src/models/asset-holdings-response.mjs +35 -0
- package/packages/indexer_client/src/models/asset-holdings-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/asset-params.d.ts +74 -0
- package/packages/indexer_client/src/models/asset-params.js +108 -0
- package/packages/indexer_client/src/models/asset-params.js.map +1 -0
- package/packages/indexer_client/src/models/asset-params.mjs +108 -0
- package/packages/indexer_client/src/models/asset-params.mjs.map +1 -0
- package/packages/indexer_client/src/models/asset-response.d.ts +13 -0
- package/packages/indexer_client/src/models/asset-response.js +24 -0
- package/packages/indexer_client/src/models/asset-response.js.map +1 -0
- package/packages/indexer_client/src/models/asset-response.mjs +24 -0
- package/packages/indexer_client/src/models/asset-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/asset.d.ts +29 -0
- package/packages/indexer_client/src/models/asset.js +46 -0
- package/packages/indexer_client/src/models/asset.js.map +1 -0
- package/packages/indexer_client/src/models/asset.mjs +46 -0
- package/packages/indexer_client/src/models/asset.mjs.map +1 -0
- package/packages/indexer_client/src/models/assets-response.d.ts +17 -0
- package/packages/indexer_client/src/models/assets-response.js +35 -0
- package/packages/indexer_client/src/models/assets-response.js.map +1 -0
- package/packages/indexer_client/src/models/assets-response.mjs +35 -0
- package/packages/indexer_client/src/models/assets-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/block-headers-response.d.ts +17 -0
- package/packages/indexer_client/src/models/block-headers-response.js +35 -0
- package/packages/indexer_client/src/models/block-headers-response.js.map +1 -0
- package/packages/indexer_client/src/models/block-headers-response.mjs +35 -0
- package/packages/indexer_client/src/models/block-headers-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/block-rewards.d.ts +33 -0
- package/packages/indexer_client/src/models/block-rewards.js +50 -0
- package/packages/indexer_client/src/models/block-rewards.js.map +1 -0
- package/packages/indexer_client/src/models/block-rewards.mjs +50 -0
- package/packages/indexer_client/src/models/block-rewards.mjs.map +1 -0
- package/packages/indexer_client/src/models/block-upgrade-state.d.ts +29 -0
- package/packages/indexer_client/src/models/block-upgrade-state.js +45 -0
- package/packages/indexer_client/src/models/block-upgrade-state.js.map +1 -0
- package/packages/indexer_client/src/models/block-upgrade-state.mjs +45 -0
- package/packages/indexer_client/src/models/block-upgrade-state.mjs.map +1 -0
- package/packages/indexer_client/src/models/block-upgrade-vote.d.ts +21 -0
- package/packages/indexer_client/src/models/block-upgrade-vote.js +33 -0
- package/packages/indexer_client/src/models/block-upgrade-vote.js.map +1 -0
- package/packages/indexer_client/src/models/block-upgrade-vote.mjs +33 -0
- package/packages/indexer_client/src/models/block-upgrade-vote.mjs.map +1 -0
- package/packages/indexer_client/src/models/block.d.ts +95 -0
- package/packages/indexer_client/src/models/block.js +151 -0
- package/packages/indexer_client/src/models/block.js.map +1 -0
- package/packages/indexer_client/src/models/block.mjs +151 -0
- package/packages/indexer_client/src/models/block.mjs.map +1 -0
- package/packages/indexer_client/src/models/box-descriptor.d.ts +13 -0
- package/packages/indexer_client/src/models/box-descriptor.js +17 -0
- package/packages/indexer_client/src/models/box-descriptor.js.map +1 -0
- package/packages/indexer_client/src/models/box-descriptor.mjs +17 -0
- package/packages/indexer_client/src/models/box-descriptor.mjs.map +1 -0
- package/packages/indexer_client/src/models/box-reference.d.ts +17 -0
- package/packages/indexer_client/src/models/box-reference.js +23 -0
- package/packages/indexer_client/src/models/box-reference.js.map +1 -0
- package/packages/indexer_client/src/models/box-reference.mjs +23 -0
- package/packages/indexer_client/src/models/box-reference.mjs.map +1 -0
- package/packages/indexer_client/src/models/box.d.ts +21 -0
- package/packages/indexer_client/src/models/box.js +32 -0
- package/packages/indexer_client/src/models/box.js.map +1 -0
- package/packages/indexer_client/src/models/box.mjs +32 -0
- package/packages/indexer_client/src/models/box.mjs.map +1 -0
- package/packages/indexer_client/src/models/boxes-response.d.ts +17 -0
- package/packages/indexer_client/src/models/boxes-response.js +35 -0
- package/packages/indexer_client/src/models/boxes-response.js.map +1 -0
- package/packages/indexer_client/src/models/boxes-response.mjs +35 -0
- package/packages/indexer_client/src/models/boxes-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/eval-delta-key-value.d.ts +14 -0
- package/packages/indexer_client/src/models/eval-delta-key-value.js +24 -0
- package/packages/indexer_client/src/models/eval-delta-key-value.js.map +1 -0
- package/packages/indexer_client/src/models/eval-delta-key-value.mjs +24 -0
- package/packages/indexer_client/src/models/eval-delta-key-value.mjs.map +1 -0
- package/packages/indexer_client/src/models/eval-delta.d.ts +21 -0
- package/packages/indexer_client/src/models/eval-delta.js +33 -0
- package/packages/indexer_client/src/models/eval-delta.js.map +1 -0
- package/packages/indexer_client/src/models/eval-delta.mjs +33 -0
- package/packages/indexer_client/src/models/eval-delta.mjs.map +1 -0
- package/packages/indexer_client/src/models/hash-factory.d.ts +10 -0
- package/packages/indexer_client/src/models/hash-factory.js +17 -0
- package/packages/indexer_client/src/models/hash-factory.js.map +1 -0
- package/packages/indexer_client/src/models/hash-factory.mjs +17 -0
- package/packages/indexer_client/src/models/hash-factory.mjs.map +1 -0
- package/packages/indexer_client/src/models/hb-proof-fields.d.ts +29 -0
- package/packages/indexer_client/src/models/hb-proof-fields.js +43 -0
- package/packages/indexer_client/src/models/hb-proof-fields.js.map +1 -0
- package/packages/indexer_client/src/models/hb-proof-fields.mjs +43 -0
- package/packages/indexer_client/src/models/hb-proof-fields.mjs.map +1 -0
- package/packages/indexer_client/src/models/health-check.d.ts +19 -0
- package/packages/indexer_client/src/models/health-check.js +60 -0
- package/packages/indexer_client/src/models/health-check.js.map +1 -0
- package/packages/indexer_client/src/models/health-check.mjs +60 -0
- package/packages/indexer_client/src/models/health-check.mjs.map +1 -0
- package/packages/indexer_client/src/models/holding-ref.d.ts +20 -0
- package/packages/indexer_client/src/models/holding-ref.js +23 -0
- package/packages/indexer_client/src/models/holding-ref.js.map +1 -0
- package/packages/indexer_client/src/models/holding-ref.mjs +23 -0
- package/packages/indexer_client/src/models/holding-ref.mjs.map +1 -0
- package/packages/indexer_client/src/models/indexer-state-proof-message.d.ts +26 -0
- package/packages/indexer_client/src/models/indexer-state-proof-message.js +44 -0
- package/packages/indexer_client/src/models/indexer-state-proof-message.js.map +1 -0
- package/packages/indexer_client/src/models/indexer-state-proof-message.mjs +44 -0
- package/packages/indexer_client/src/models/indexer-state-proof-message.mjs.map +1 -0
- package/packages/indexer_client/src/models/locals-ref.d.ts +20 -0
- package/packages/indexer_client/src/models/locals-ref.js +23 -0
- package/packages/indexer_client/src/models/locals-ref.js.map +1 -0
- package/packages/indexer_client/src/models/locals-ref.mjs +23 -0
- package/packages/indexer_client/src/models/locals-ref.mjs.map +1 -0
- package/packages/indexer_client/src/models/merkle-array-proof.d.ts +17 -0
- package/packages/indexer_client/src/models/merkle-array-proof.js +34 -0
- package/packages/indexer_client/src/models/merkle-array-proof.js.map +1 -0
- package/packages/indexer_client/src/models/merkle-array-proof.mjs +34 -0
- package/packages/indexer_client/src/models/merkle-array-proof.mjs.map +1 -0
- package/packages/indexer_client/src/models/mini-asset-holding.d.ts +24 -0
- package/packages/indexer_client/src/models/mini-asset-holding.js +51 -0
- package/packages/indexer_client/src/models/mini-asset-holding.js.map +1 -0
- package/packages/indexer_client/src/models/mini-asset-holding.mjs +51 -0
- package/packages/indexer_client/src/models/mini-asset-holding.mjs.map +1 -0
- package/packages/indexer_client/src/models/on-completion.d.ts +16 -0
- package/packages/indexer_client/src/models/on-completion.js +12 -0
- package/packages/indexer_client/src/models/on-completion.js.map +1 -0
- package/packages/indexer_client/src/models/on-completion.mjs +12 -0
- package/packages/indexer_client/src/models/on-completion.mjs.map +1 -0
- package/packages/indexer_client/src/models/participation-updates.d.ts +17 -0
- package/packages/indexer_client/src/models/participation-updates.js +22 -0
- package/packages/indexer_client/src/models/participation-updates.js.map +1 -0
- package/packages/indexer_client/src/models/participation-updates.mjs +22 -0
- package/packages/indexer_client/src/models/participation-updates.mjs.map +1 -0
- package/packages/indexer_client/src/models/resource-ref.d.ts +32 -0
- package/packages/indexer_client/src/models/resource-ref.js +54 -0
- package/packages/indexer_client/src/models/resource-ref.js.map +1 -0
- package/packages/indexer_client/src/models/resource-ref.mjs +54 -0
- package/packages/indexer_client/src/models/resource-ref.mjs.map +1 -0
- package/packages/indexer_client/src/models/state-delta.d.ts +11 -0
- package/packages/indexer_client/src/models/state-delta.js +14 -0
- package/packages/indexer_client/src/models/state-delta.js.map +1 -0
- package/packages/indexer_client/src/models/state-delta.mjs +14 -0
- package/packages/indexer_client/src/models/state-delta.mjs.map +1 -0
- package/packages/indexer_client/src/models/state-proof-fields.d.ts +38 -0
- package/packages/indexer_client/src/models/state-proof-fields.js +61 -0
- package/packages/indexer_client/src/models/state-proof-fields.js.map +1 -0
- package/packages/indexer_client/src/models/state-proof-fields.mjs +61 -0
- package/packages/indexer_client/src/models/state-proof-fields.mjs.map +1 -0
- package/packages/indexer_client/src/models/state-proof-participant.d.ts +13 -0
- package/packages/indexer_client/src/models/state-proof-participant.js +24 -0
- package/packages/indexer_client/src/models/state-proof-participant.js.map +1 -0
- package/packages/indexer_client/src/models/state-proof-participant.mjs +24 -0
- package/packages/indexer_client/src/models/state-proof-participant.mjs.map +1 -0
- package/packages/indexer_client/src/models/state-proof-reveal.d.ts +15 -0
- package/packages/indexer_client/src/models/state-proof-reveal.js +34 -0
- package/packages/indexer_client/src/models/state-proof-reveal.js.map +1 -0
- package/packages/indexer_client/src/models/state-proof-reveal.mjs +34 -0
- package/packages/indexer_client/src/models/state-proof-reveal.mjs.map +1 -0
- package/packages/indexer_client/src/models/state-proof-sig-slot.d.ts +13 -0
- package/packages/indexer_client/src/models/state-proof-sig-slot.js +24 -0
- package/packages/indexer_client/src/models/state-proof-sig-slot.js.map +1 -0
- package/packages/indexer_client/src/models/state-proof-sig-slot.mjs +24 -0
- package/packages/indexer_client/src/models/state-proof-sig-slot.mjs.map +1 -0
- package/packages/indexer_client/src/models/state-proof-signature.d.ts +15 -0
- package/packages/indexer_client/src/models/state-proof-signature.js +40 -0
- package/packages/indexer_client/src/models/state-proof-signature.js.map +1 -0
- package/packages/indexer_client/src/models/state-proof-signature.mjs +40 -0
- package/packages/indexer_client/src/models/state-proof-signature.mjs.map +1 -0
- package/packages/indexer_client/src/models/state-proof-tracking.d.ts +22 -0
- package/packages/indexer_client/src/models/state-proof-tracking.js +39 -0
- package/packages/indexer_client/src/models/state-proof-tracking.js.map +1 -0
- package/packages/indexer_client/src/models/state-proof-tracking.mjs +39 -0
- package/packages/indexer_client/src/models/state-proof-tracking.mjs.map +1 -0
- package/packages/indexer_client/src/models/state-proof-verifier.d.ts +14 -0
- package/packages/indexer_client/src/models/state-proof-verifier.js +23 -0
- package/packages/indexer_client/src/models/state-proof-verifier.js.map +1 -0
- package/packages/indexer_client/src/models/state-proof-verifier.mjs +23 -0
- package/packages/indexer_client/src/models/state-proof-verifier.mjs.map +1 -0
- package/packages/indexer_client/src/models/state-schema.d.ts +17 -0
- package/packages/indexer_client/src/models/state-schema.js +22 -0
- package/packages/indexer_client/src/models/state-schema.js.map +1 -0
- package/packages/indexer_client/src/models/state-schema.mjs +22 -0
- package/packages/indexer_client/src/models/state-schema.mjs.map +1 -0
- package/packages/indexer_client/src/models/teal-key-value-store.d.ts +11 -0
- package/packages/indexer_client/src/models/teal-key-value-store.js +14 -0
- package/packages/indexer_client/src/models/teal-key-value-store.js.map +1 -0
- package/packages/indexer_client/src/models/teal-key-value-store.mjs +14 -0
- package/packages/indexer_client/src/models/teal-key-value-store.mjs.map +1 -0
- package/packages/indexer_client/src/models/teal-key-value.d.ts +14 -0
- package/packages/indexer_client/src/models/teal-key-value.js +24 -0
- package/packages/indexer_client/src/models/teal-key-value.js.map +1 -0
- package/packages/indexer_client/src/models/teal-key-value.mjs +24 -0
- package/packages/indexer_client/src/models/teal-key-value.mjs.map +1 -0
- package/packages/indexer_client/src/models/teal-value.d.ts +21 -0
- package/packages/indexer_client/src/models/teal-value.js +33 -0
- package/packages/indexer_client/src/models/teal-value.js.map +1 -0
- package/packages/indexer_client/src/models/teal-value.mjs +33 -0
- package/packages/indexer_client/src/models/teal-value.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-application.d.ts +66 -0
- package/packages/indexer_client/src/models/transaction-application.js +106 -0
- package/packages/indexer_client/src/models/transaction-application.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-application.mjs +106 -0
- package/packages/indexer_client/src/models/transaction-application.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-asset-config.d.ts +24 -0
- package/packages/indexer_client/src/models/transaction-asset-config.js +24 -0
- package/packages/indexer_client/src/models/transaction-asset-config.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-asset-config.mjs +24 -0
- package/packages/indexer_client/src/models/transaction-asset-config.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-asset-freeze.d.ts +24 -0
- package/packages/indexer_client/src/models/transaction-asset-freeze.js +33 -0
- package/packages/indexer_client/src/models/transaction-asset-freeze.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-asset-freeze.mjs +33 -0
- package/packages/indexer_client/src/models/transaction-asset-freeze.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-asset-transfer.d.ts +36 -0
- package/packages/indexer_client/src/models/transaction-asset-transfer.js +50 -0
- package/packages/indexer_client/src/models/transaction-asset-transfer.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-asset-transfer.mjs +50 -0
- package/packages/indexer_client/src/models/transaction-asset-transfer.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-heartbeat.d.ts +32 -0
- package/packages/indexer_client/src/models/transaction-heartbeat.js +48 -0
- package/packages/indexer_client/src/models/transaction-heartbeat.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-heartbeat.mjs +48 -0
- package/packages/indexer_client/src/models/transaction-heartbeat.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-keyreg.d.ts +40 -0
- package/packages/indexer_client/src/models/transaction-keyreg.js +57 -0
- package/packages/indexer_client/src/models/transaction-keyreg.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-keyreg.mjs +57 -0
- package/packages/indexer_client/src/models/transaction-keyreg.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-payment.d.ts +28 -0
- package/packages/indexer_client/src/models/transaction-payment.js +38 -0
- package/packages/indexer_client/src/models/transaction-payment.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-payment.mjs +38 -0
- package/packages/indexer_client/src/models/transaction-payment.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-response.d.ts +13 -0
- package/packages/indexer_client/src/models/transaction-response.js +24 -0
- package/packages/indexer_client/src/models/transaction-response.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-response.mjs +24 -0
- package/packages/indexer_client/src/models/transaction-response.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-signature-logicsig.d.ts +29 -0
- package/packages/indexer_client/src/models/transaction-signature-logicsig.js +47 -0
- package/packages/indexer_client/src/models/transaction-signature-logicsig.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs +47 -0
- package/packages/indexer_client/src/models/transaction-signature-logicsig.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.d.ts +14 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js +22 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs +22 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig-subsignature.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig.d.ts +27 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig.js +34 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig.mjs +34 -0
- package/packages/indexer_client/src/models/transaction-signature-multisig.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-signature.d.ts +19 -0
- package/packages/indexer_client/src/models/transaction-signature.js +34 -0
- package/packages/indexer_client/src/models/transaction-signature.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-signature.mjs +34 -0
- package/packages/indexer_client/src/models/transaction-signature.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction-state-proof.d.ts +22 -0
- package/packages/indexer_client/src/models/transaction-state-proof.js +34 -0
- package/packages/indexer_client/src/models/transaction-state-proof.js.map +1 -0
- package/packages/indexer_client/src/models/transaction-state-proof.mjs +34 -0
- package/packages/indexer_client/src/models/transaction-state-proof.mjs.map +1 -0
- package/packages/indexer_client/src/models/transaction.d.ts +147 -0
- package/packages/indexer_client/src/models/transaction.js +242 -0
- package/packages/indexer_client/src/models/transaction.js.map +1 -0
- package/packages/indexer_client/src/models/transaction.mjs +242 -0
- package/packages/indexer_client/src/models/transaction.mjs.map +1 -0
- package/packages/indexer_client/src/models/transactions-response.d.ts +17 -0
- package/packages/indexer_client/src/models/transactions-response.js +35 -0
- package/packages/indexer_client/src/models/transactions-response.js.map +1 -0
- package/packages/indexer_client/src/models/transactions-response.mjs +35 -0
- package/packages/indexer_client/src/models/transactions-response.mjs.map +1 -0
- package/packages/kmd_client/src/apis/api-service.d.ts +152 -0
- package/packages/kmd_client/src/apis/api-service.js +517 -0
- package/packages/kmd_client/src/apis/api-service.js.map +1 -0
- package/packages/kmd_client/src/apis/api-service.mjs +517 -0
- package/packages/kmd_client/src/apis/api-service.mjs.map +1 -0
- package/packages/kmd_client/src/client.d.ts +10 -0
- package/packages/kmd_client/src/client.js +13 -0
- package/packages/kmd_client/src/client.js.map +1 -0
- package/packages/kmd_client/src/client.mjs +13 -0
- package/packages/kmd_client/src/client.mjs.map +1 -0
- package/packages/kmd_client/src/core/api-error.d.ts +10 -0
- package/packages/kmd_client/src/core/api-error.js +19 -0
- package/packages/kmd_client/src/core/api-error.js.map +1 -0
- package/packages/kmd_client/src/core/api-error.mjs +18 -0
- package/packages/kmd_client/src/core/api-error.mjs.map +1 -0
- package/packages/kmd_client/src/core/base-http-request.d.ts +25 -0
- package/packages/kmd_client/src/core/base-http-request.js +16 -0
- package/packages/kmd_client/src/core/base-http-request.js.map +1 -0
- package/packages/kmd_client/src/core/base-http-request.mjs +14 -0
- package/packages/kmd_client/src/core/base-http-request.mjs.map +1 -0
- package/packages/kmd_client/src/core/client-config.d.ts +17 -0
- package/packages/kmd_client/src/core/fetch-http-request.d.ts +10 -0
- package/packages/kmd_client/src/core/fetch-http-request.js +85 -0
- package/packages/kmd_client/src/core/fetch-http-request.js.map +1 -0
- package/packages/kmd_client/src/core/fetch-http-request.mjs +85 -0
- package/packages/kmd_client/src/core/fetch-http-request.mjs.map +1 -0
- package/packages/kmd_client/src/core/model-runtime.d.ts +10 -0
- package/packages/kmd_client/src/core/model-runtime.js +25 -0
- package/packages/kmd_client/src/core/model-runtime.js.map +1 -0
- package/packages/kmd_client/src/core/model-runtime.mjs +22 -0
- package/packages/kmd_client/src/core/model-runtime.mjs.map +1 -0
- package/packages/kmd_client/src/core/request.js +62 -0
- package/packages/kmd_client/src/core/request.js.map +1 -0
- package/packages/kmd_client/src/core/request.mjs +62 -0
- package/packages/kmd_client/src/core/request.mjs.map +1 -0
- package/packages/kmd_client/src/models/create-wallet-request.d.ts +13 -0
- package/packages/kmd_client/src/models/create-wallet-request.js +38 -0
- package/packages/kmd_client/src/models/create-wallet-request.js.map +1 -0
- package/packages/kmd_client/src/models/create-wallet-request.mjs +38 -0
- package/packages/kmd_client/src/models/create-wallet-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/create-wallet-response.d.ts +13 -0
- package/packages/kmd_client/src/models/create-wallet-response.js +18 -0
- package/packages/kmd_client/src/models/create-wallet-response.js.map +1 -0
- package/packages/kmd_client/src/models/create-wallet-response.mjs +18 -0
- package/packages/kmd_client/src/models/create-wallet-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/delete-key-request.d.ts +15 -0
- package/packages/kmd_client/src/models/delete-key-request.js +32 -0
- package/packages/kmd_client/src/models/delete-key-request.js.map +1 -0
- package/packages/kmd_client/src/models/delete-key-request.mjs +32 -0
- package/packages/kmd_client/src/models/delete-key-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/delete-multisig-request.d.ts +15 -0
- package/packages/kmd_client/src/models/delete-multisig-request.js +32 -0
- package/packages/kmd_client/src/models/delete-multisig-request.js.map +1 -0
- package/packages/kmd_client/src/models/delete-multisig-request.mjs +32 -0
- package/packages/kmd_client/src/models/delete-multisig-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/export-key-request.d.ts +15 -0
- package/packages/kmd_client/src/models/export-key-request.js +32 -0
- package/packages/kmd_client/src/models/export-key-request.js.map +1 -0
- package/packages/kmd_client/src/models/export-key-request.mjs +32 -0
- package/packages/kmd_client/src/models/export-key-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/export-key-response.d.ts +10 -0
- package/packages/kmd_client/src/models/export-key-response.js +17 -0
- package/packages/kmd_client/src/models/export-key-response.js.map +1 -0
- package/packages/kmd_client/src/models/export-key-response.mjs +17 -0
- package/packages/kmd_client/src/models/export-key-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/export-master-key-request.d.ts +11 -0
- package/packages/kmd_client/src/models/export-master-key-request.js +22 -0
- package/packages/kmd_client/src/models/export-master-key-request.js.map +1 -0
- package/packages/kmd_client/src/models/export-master-key-request.mjs +22 -0
- package/packages/kmd_client/src/models/export-master-key-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/export-master-key-response.d.ts +10 -0
- package/packages/kmd_client/src/models/export-master-key-response.js +17 -0
- package/packages/kmd_client/src/models/export-master-key-response.js.map +1 -0
- package/packages/kmd_client/src/models/export-master-key-response.mjs +17 -0
- package/packages/kmd_client/src/models/export-master-key-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/export-multisig-request.d.ts +14 -0
- package/packages/kmd_client/src/models/export-multisig-request.js +23 -0
- package/packages/kmd_client/src/models/export-multisig-request.js.map +1 -0
- package/packages/kmd_client/src/models/export-multisig-request.mjs +23 -0
- package/packages/kmd_client/src/models/export-multisig-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/export-multisig-response.d.ts +12 -0
- package/packages/kmd_client/src/models/export-multisig-response.js +32 -0
- package/packages/kmd_client/src/models/export-multisig-response.js.map +1 -0
- package/packages/kmd_client/src/models/export-multisig-response.mjs +32 -0
- package/packages/kmd_client/src/models/export-multisig-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/generate-key-request.d.ts +10 -0
- package/packages/kmd_client/src/models/generate-key-request.js +17 -0
- package/packages/kmd_client/src/models/generate-key-request.js.map +1 -0
- package/packages/kmd_client/src/models/generate-key-request.mjs +17 -0
- package/packages/kmd_client/src/models/generate-key-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/generate-key-response.d.ts +13 -0
- package/packages/kmd_client/src/models/generate-key-response.js +17 -0
- package/packages/kmd_client/src/models/generate-key-response.js.map +1 -0
- package/packages/kmd_client/src/models/generate-key-response.mjs +17 -0
- package/packages/kmd_client/src/models/generate-key-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/import-key-request.d.ts +11 -0
- package/packages/kmd_client/src/models/import-key-request.js +23 -0
- package/packages/kmd_client/src/models/import-key-request.js.map +1 -0
- package/packages/kmd_client/src/models/import-key-request.mjs +23 -0
- package/packages/kmd_client/src/models/import-key-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/import-key-response.d.ts +13 -0
- package/packages/kmd_client/src/models/import-key-response.js +17 -0
- package/packages/kmd_client/src/models/import-key-response.js.map +1 -0
- package/packages/kmd_client/src/models/import-key-response.mjs +17 -0
- package/packages/kmd_client/src/models/import-key-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/import-multisig-request.d.ts +13 -0
- package/packages/kmd_client/src/models/import-multisig-request.js +39 -0
- package/packages/kmd_client/src/models/import-multisig-request.js.map +1 -0
- package/packages/kmd_client/src/models/import-multisig-request.mjs +39 -0
- package/packages/kmd_client/src/models/import-multisig-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/import-multisig-response.d.ts +13 -0
- package/packages/kmd_client/src/models/import-multisig-response.js +17 -0
- package/packages/kmd_client/src/models/import-multisig-response.js.map +1 -0
- package/packages/kmd_client/src/models/import-multisig-response.mjs +17 -0
- package/packages/kmd_client/src/models/import-multisig-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-request.d.ts +11 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-request.js +22 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-request.js.map +1 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs +22 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-response.d.ts +10 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-response.js +17 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-response.js.map +1 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs +17 -0
- package/packages/kmd_client/src/models/init-wallet-handle-token-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/list-keys-request.d.ts +10 -0
- package/packages/kmd_client/src/models/list-keys-request.js +17 -0
- package/packages/kmd_client/src/models/list-keys-request.js.map +1 -0
- package/packages/kmd_client/src/models/list-keys-request.mjs +17 -0
- package/packages/kmd_client/src/models/list-keys-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/list-keys-response.d.ts +13 -0
- package/packages/kmd_client/src/models/list-keys-response.js +17 -0
- package/packages/kmd_client/src/models/list-keys-response.js.map +1 -0
- package/packages/kmd_client/src/models/list-keys-response.mjs +17 -0
- package/packages/kmd_client/src/models/list-keys-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/list-multisig-request.d.ts +10 -0
- package/packages/kmd_client/src/models/list-multisig-request.js +17 -0
- package/packages/kmd_client/src/models/list-multisig-request.js.map +1 -0
- package/packages/kmd_client/src/models/list-multisig-request.mjs +17 -0
- package/packages/kmd_client/src/models/list-multisig-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/list-multisig-response.d.ts +13 -0
- package/packages/kmd_client/src/models/list-multisig-response.js +17 -0
- package/packages/kmd_client/src/models/list-multisig-response.js.map +1 -0
- package/packages/kmd_client/src/models/list-multisig-response.mjs +17 -0
- package/packages/kmd_client/src/models/list-multisig-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/list-wallets-response.d.ts +13 -0
- package/packages/kmd_client/src/models/list-wallets-response.js +19 -0
- package/packages/kmd_client/src/models/list-wallets-response.js.map +1 -0
- package/packages/kmd_client/src/models/list-wallets-response.mjs +19 -0
- package/packages/kmd_client/src/models/list-wallets-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/multisig-sig.d.ts +15 -0
- package/packages/kmd_client/src/models/multisig-sig.js +34 -0
- package/packages/kmd_client/src/models/multisig-sig.js.map +1 -0
- package/packages/kmd_client/src/models/multisig-sig.mjs +34 -0
- package/packages/kmd_client/src/models/multisig-sig.mjs.map +1 -0
- package/packages/kmd_client/src/models/multisig-subsig.d.ts +12 -0
- package/packages/kmd_client/src/models/multisig-subsig.js +22 -0
- package/packages/kmd_client/src/models/multisig-subsig.js.map +1 -0
- package/packages/kmd_client/src/models/multisig-subsig.mjs +22 -0
- package/packages/kmd_client/src/models/multisig-subsig.mjs.map +1 -0
- package/packages/kmd_client/src/models/release-wallet-handle-token-request.d.ts +10 -0
- package/packages/kmd_client/src/models/release-wallet-handle-token-request.js +17 -0
- package/packages/kmd_client/src/models/release-wallet-handle-token-request.js.map +1 -0
- package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs +17 -0
- package/packages/kmd_client/src/models/release-wallet-handle-token-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/rename-wallet-request.d.ts +12 -0
- package/packages/kmd_client/src/models/rename-wallet-request.js +31 -0
- package/packages/kmd_client/src/models/rename-wallet-request.js.map +1 -0
- package/packages/kmd_client/src/models/rename-wallet-request.mjs +31 -0
- package/packages/kmd_client/src/models/rename-wallet-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/rename-wallet-response.d.ts +13 -0
- package/packages/kmd_client/src/models/rename-wallet-response.js +18 -0
- package/packages/kmd_client/src/models/rename-wallet-response.js.map +1 -0
- package/packages/kmd_client/src/models/rename-wallet-response.mjs +18 -0
- package/packages/kmd_client/src/models/rename-wallet-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-request.d.ts +10 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js +17 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-request.js.map +1 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs +17 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.d.ts +13 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js +18 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.js.map +1 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs +18 -0
- package/packages/kmd_client/src/models/renew-wallet-handle-token-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/sign-multisig-request.d.ts +11 -0
- package/packages/kmd_client/src/models/sign-multisig-response.d.ts +10 -0
- package/packages/kmd_client/src/models/sign-multisig-response.js +17 -0
- package/packages/kmd_client/src/models/sign-multisig-response.js.map +1 -0
- package/packages/kmd_client/src/models/sign-multisig-response.mjs +17 -0
- package/packages/kmd_client/src/models/sign-multisig-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/sign-multisig-txn-request.d.ts +18 -0
- package/packages/kmd_client/src/models/sign-multisig-txn-request.js +52 -0
- package/packages/kmd_client/src/models/sign-multisig-txn-request.js.map +1 -0
- package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs +52 -0
- package/packages/kmd_client/src/models/sign-multisig-txn-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/sign-program-multisig-request.d.ts +20 -0
- package/packages/kmd_client/src/models/sign-program-multisig-request.js +60 -0
- package/packages/kmd_client/src/models/sign-program-multisig-request.js.map +1 -0
- package/packages/kmd_client/src/models/sign-program-multisig-request.mjs +60 -0
- package/packages/kmd_client/src/models/sign-program-multisig-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/sign-program-multisig-response.d.ts +10 -0
- package/packages/kmd_client/src/models/sign-program-multisig-response.js +17 -0
- package/packages/kmd_client/src/models/sign-program-multisig-response.js.map +1 -0
- package/packages/kmd_client/src/models/sign-program-multisig-response.mjs +17 -0
- package/packages/kmd_client/src/models/sign-program-multisig-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/sign-program-request.d.ts +16 -0
- package/packages/kmd_client/src/models/sign-program-request.js +39 -0
- package/packages/kmd_client/src/models/sign-program-request.js.map +1 -0
- package/packages/kmd_client/src/models/sign-program-request.mjs +39 -0
- package/packages/kmd_client/src/models/sign-program-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/sign-program-response.d.ts +10 -0
- package/packages/kmd_client/src/models/sign-program-response.js +17 -0
- package/packages/kmd_client/src/models/sign-program-response.js.map +1 -0
- package/packages/kmd_client/src/models/sign-program-response.mjs +17 -0
- package/packages/kmd_client/src/models/sign-program-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/sign-transaction-request.d.ts +11 -0
- package/packages/kmd_client/src/models/sign-transaction-response.d.ts +10 -0
- package/packages/kmd_client/src/models/sign-transaction-response.js +17 -0
- package/packages/kmd_client/src/models/sign-transaction-response.js.map +1 -0
- package/packages/kmd_client/src/models/sign-transaction-response.mjs +17 -0
- package/packages/kmd_client/src/models/sign-transaction-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/sign-txn-request.d.ts +19 -0
- package/packages/kmd_client/src/models/sign-txn-request.js +38 -0
- package/packages/kmd_client/src/models/sign-txn-request.js.map +1 -0
- package/packages/kmd_client/src/models/sign-txn-request.mjs +38 -0
- package/packages/kmd_client/src/models/sign-txn-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/tx-type.d.ts +8 -0
- package/packages/kmd_client/src/models/tx-type.js +12 -0
- package/packages/kmd_client/src/models/tx-type.js.map +1 -0
- package/packages/kmd_client/src/models/tx-type.mjs +12 -0
- package/packages/kmd_client/src/models/tx-type.mjs.map +1 -0
- package/packages/kmd_client/src/models/versions-response.d.ts +11 -0
- package/packages/kmd_client/src/models/versions-response.js +17 -0
- package/packages/kmd_client/src/models/versions-response.js.map +1 -0
- package/packages/kmd_client/src/models/versions-response.mjs +17 -0
- package/packages/kmd_client/src/models/versions-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/wallet-handle.d.ts +15 -0
- package/packages/kmd_client/src/models/wallet-handle.js +24 -0
- package/packages/kmd_client/src/models/wallet-handle.js.map +1 -0
- package/packages/kmd_client/src/models/wallet-handle.mjs +24 -0
- package/packages/kmd_client/src/models/wallet-handle.mjs.map +1 -0
- package/packages/kmd_client/src/models/wallet-info-request.d.ts +10 -0
- package/packages/kmd_client/src/models/wallet-info-request.js +17 -0
- package/packages/kmd_client/src/models/wallet-info-request.js.map +1 -0
- package/packages/kmd_client/src/models/wallet-info-request.mjs +17 -0
- package/packages/kmd_client/src/models/wallet-info-request.mjs.map +1 -0
- package/packages/kmd_client/src/models/wallet-info-response.d.ts +13 -0
- package/packages/kmd_client/src/models/wallet-info-response.js +18 -0
- package/packages/kmd_client/src/models/wallet-info-response.js.map +1 -0
- package/packages/kmd_client/src/models/wallet-info-response.mjs +18 -0
- package/packages/kmd_client/src/models/wallet-info-response.mjs.map +1 -0
- package/packages/kmd_client/src/models/wallet.d.ts +18 -0
- package/packages/kmd_client/src/models/wallet.js +54 -0
- package/packages/kmd_client/src/models/wallet.js.map +1 -0
- package/packages/kmd_client/src/models/wallet.mjs +54 -0
- package/packages/kmd_client/src/models/wallet.mjs.map +1 -0
- package/packages/sdk/src/convert.d.ts +17 -0
- package/packages/sdk/src/convert.js +28 -0
- package/packages/sdk/src/convert.js.map +1 -0
- package/packages/sdk/src/convert.mjs +25 -0
- package/packages/sdk/src/convert.mjs.map +1 -0
- package/packages/sdk/src/encoding/binarydata.d.ts +34 -0
- package/packages/sdk/src/encoding/binarydata.js +65 -0
- package/packages/sdk/src/encoding/binarydata.js.map +1 -0
- package/packages/sdk/src/encoding/binarydata.mjs +60 -0
- package/packages/sdk/src/encoding/binarydata.mjs.map +1 -0
- package/packages/sdk/src/encoding/encoding.d.ts +237 -0
- package/packages/sdk/src/encoding/encoding.js +312 -0
- package/packages/sdk/src/encoding/encoding.js.map +1 -0
- package/packages/sdk/src/encoding/encoding.mjs +298 -0
- package/packages/sdk/src/encoding/encoding.mjs.map +1 -0
- package/packages/sdk/src/encoding/schema/array.js +35 -0
- package/packages/sdk/src/encoding/schema/array.js.map +1 -0
- package/packages/sdk/src/encoding/schema/array.mjs +35 -0
- package/packages/sdk/src/encoding/schema/array.mjs.map +1 -0
- package/packages/sdk/src/encoding/schema/bytearray.js +49 -0
- package/packages/sdk/src/encoding/schema/bytearray.js.map +1 -0
- package/packages/sdk/src/encoding/schema/bytearray.mjs +49 -0
- package/packages/sdk/src/encoding/schema/bytearray.mjs.map +1 -0
- package/packages/sdk/src/encoding/schema/map.d.ts +58 -0
- package/packages/sdk/src/encoding/schema/map.js +108 -0
- package/packages/sdk/src/encoding/schema/map.js.map +1 -0
- package/packages/sdk/src/encoding/schema/map.mjs +107 -0
- package/packages/sdk/src/encoding/schema/map.mjs.map +1 -0
- package/packages/sdk/src/encoding/schema/optional.js +46 -0
- package/packages/sdk/src/encoding/schema/optional.js.map +1 -0
- package/packages/sdk/src/encoding/schema/optional.mjs +46 -0
- package/packages/sdk/src/encoding/schema/optional.mjs.map +1 -0
- package/packages/sdk/src/encoding/schema/uint64.js +30 -0
- package/packages/sdk/src/encoding/schema/uint64.js.map +1 -0
- package/packages/sdk/src/encoding/schema/uint64.mjs +30 -0
- package/packages/sdk/src/encoding/schema/uint64.mjs.map +1 -0
- package/packages/sdk/src/encoding/uint64.d.ts +34 -0
- package/packages/sdk/src/encoding/uint64.js +34 -0
- package/packages/sdk/src/encoding/uint64.js.map +1 -0
- package/packages/sdk/src/encoding/uint64.mjs +33 -0
- package/packages/sdk/src/encoding/uint64.mjs.map +1 -0
- package/packages/sdk/src/index.d.ts +44 -0
- package/packages/sdk/src/index.js +62 -0
- package/packages/sdk/src/index.js.map +1 -0
- package/packages/sdk/src/index.mjs +58 -0
- package/packages/sdk/src/index.mjs.map +1 -0
- package/packages/sdk/src/logic/sourcemap.d.ts +55 -0
- package/packages/sdk/src/logic/sourcemap.js +88 -0
- package/packages/sdk/src/logic/sourcemap.js.map +1 -0
- package/packages/sdk/src/logic/sourcemap.mjs +86 -0
- package/packages/sdk/src/logic/sourcemap.mjs.map +1 -0
- package/packages/sdk/src/nacl/naclWrappers.js +14 -0
- package/packages/sdk/src/nacl/naclWrappers.js.map +1 -0
- package/packages/sdk/src/nacl/naclWrappers.mjs +11 -0
- package/packages/sdk/src/nacl/naclWrappers.mjs.map +1 -0
- package/packages/sdk/src/types/intDecoding.d.ts +28 -0
- package/packages/sdk/src/types/intDecoding.js +32 -0
- package/packages/sdk/src/types/intDecoding.js.map +1 -0
- package/packages/sdk/src/types/intDecoding.mjs +31 -0
- package/packages/sdk/src/types/intDecoding.mjs.map +1 -0
- package/packages/sdk/src/types/transactions/encoded.d.ts +40 -0
- package/packages/sdk/src/types/transactions/encoded.js +64 -0
- package/packages/sdk/src/types/transactions/encoded.js.map +1 -0
- package/packages/sdk/src/types/transactions/encoded.mjs +59 -0
- package/packages/sdk/src/types/transactions/encoded.mjs.map +1 -0
- package/packages/sdk/src/utils/utils.d.ts +64 -0
- package/packages/sdk/src/utils/utils.js +140 -0
- package/packages/sdk/src/utils/utils.js.map +1 -0
- package/packages/sdk/src/utils/utils.mjs +128 -0
- package/packages/sdk/src/utils/utils.mjs.map +1 -0
- package/packages/transact/src/logicsig.d.ts +35 -0
- package/packages/transact/src/logicsig.js +98 -0
- package/packages/transact/src/logicsig.js.map +1 -0
- package/packages/transact/src/logicsig.mjs +98 -0
- package/packages/transact/src/logicsig.mjs.map +1 -0
- package/packages/transact/src/multisig.d.ts +45 -0
- package/packages/transact/src/multisig.js +338 -0
- package/packages/transact/src/multisig.js.map +1 -0
- package/packages/transact/src/multisig.mjs +338 -0
- package/packages/transact/src/multisig.mjs.map +1 -0
- package/packages/transact/src/signer.d.ts +47 -0
- package/packages/transact/src/signer.js +71 -0
- package/packages/transact/src/signer.js.map +1 -0
- package/packages/transact/src/signer.mjs +70 -0
- package/packages/transact/src/signer.mjs.map +1 -0
- package/packages/transact/src/transactions/app-call.d.ts +209 -0
- package/packages/transact/src/transactions/app-call.js +251 -0
- package/packages/transact/src/transactions/app-call.js.map +1 -0
- package/packages/transact/src/transactions/app-call.mjs +250 -0
- package/packages/transact/src/transactions/app-call.mjs.map +1 -0
- package/packages/transact/src/transactions/asset-config.d.ts +131 -0
- package/packages/transact/src/transactions/asset-config.js +101 -0
- package/packages/transact/src/transactions/asset-config.js.map +1 -0
- package/packages/transact/src/transactions/asset-config.mjs +101 -0
- package/packages/transact/src/transactions/asset-config.mjs.map +1 -0
- package/packages/transact/src/transactions/asset-freeze.d.ts +35 -0
- package/packages/transact/src/transactions/asset-freeze.js +18 -0
- package/packages/transact/src/transactions/asset-freeze.js.map +1 -0
- package/packages/transact/src/transactions/asset-freeze.mjs +18 -0
- package/packages/transact/src/transactions/asset-freeze.mjs.map +1 -0
- package/packages/transact/src/transactions/asset-transfer.d.ts +56 -0
- package/packages/transact/src/transactions/asset-transfer.js +18 -0
- package/packages/transact/src/transactions/asset-transfer.js.map +1 -0
- package/packages/transact/src/transactions/asset-transfer.mjs +18 -0
- package/packages/transact/src/transactions/asset-transfer.mjs.map +1 -0
- package/packages/transact/src/transactions/common.d.ts +37 -0
- package/packages/transact/src/transactions/common.js +24 -0
- package/packages/transact/src/transactions/common.js.map +1 -0
- package/packages/transact/src/transactions/common.mjs +22 -0
- package/packages/transact/src/transactions/common.mjs.map +1 -0
- package/packages/transact/src/transactions/heartbeat.d.ts +37 -0
- package/packages/transact/src/transactions/key-registration.d.ts +45 -0
- package/packages/transact/src/transactions/key-registration.js +54 -0
- package/packages/transact/src/transactions/key-registration.js.map +1 -0
- package/packages/transact/src/transactions/key-registration.mjs +54 -0
- package/packages/transact/src/transactions/key-registration.mjs.map +1 -0
- package/packages/transact/src/transactions/payment.d.ts +32 -0
- package/packages/transact/src/transactions/reference-types-meta.d.ts +26 -0
- package/packages/transact/src/transactions/reference-types-meta.js +71 -0
- package/packages/transact/src/transactions/reference-types-meta.js.map +1 -0
- package/packages/transact/src/transactions/reference-types-meta.mjs +69 -0
- package/packages/transact/src/transactions/reference-types-meta.mjs.map +1 -0
- package/packages/transact/src/transactions/signed-transaction-meta.d.ts +12 -0
- package/packages/transact/src/transactions/signed-transaction-meta.js +131 -0
- package/packages/transact/src/transactions/signed-transaction-meta.js.map +1 -0
- package/packages/transact/src/transactions/signed-transaction-meta.mjs +129 -0
- package/packages/transact/src/transactions/signed-transaction-meta.mjs.map +1 -0
- package/packages/transact/src/transactions/signed-transaction.d.ts +126 -0
- package/packages/transact/src/transactions/signed-transaction.js +67 -0
- package/packages/transact/src/transactions/signed-transaction.js.map +1 -0
- package/packages/transact/src/transactions/signed-transaction.mjs +64 -0
- package/packages/transact/src/transactions/signed-transaction.mjs.map +1 -0
- package/packages/transact/src/transactions/state-proof.d.ts +64 -0
- package/packages/transact/src/transactions/transaction-meta.d.ts +14 -0
- package/packages/transact/src/transactions/transaction-meta.js +1013 -0
- package/packages/transact/src/transactions/transaction-meta.js.map +1 -0
- package/packages/transact/src/transactions/transaction-meta.mjs +1012 -0
- package/packages/transact/src/transactions/transaction-meta.mjs.map +1 -0
- package/packages/transact/src/transactions/transaction-type.d.ts +47 -0
- package/packages/transact/src/transactions/transaction-type.js +50 -0
- package/packages/transact/src/transactions/transaction-type.js.map +1 -0
- package/packages/transact/src/transactions/transaction-type.mjs +49 -0
- package/packages/transact/src/transactions/transaction-type.mjs.map +1 -0
- package/packages/transact/src/transactions/transaction.d.ts +312 -0
- package/packages/transact/src/transactions/transaction.js +352 -0
- package/packages/transact/src/transactions/transaction.js.map +1 -0
- package/packages/transact/src/transactions/transaction.mjs +338 -0
- package/packages/transact/src/transactions/transaction.mjs.map +1 -0
- package/sdk/index.d.ts +10 -0
- package/sdk/index.js +59 -0
- package/sdk/index.mjs +11 -0
- package/testing/account.d.ts +14 -9
- package/testing/account.js +27 -31
- package/testing/account.js.map +1 -1
- package/testing/account.mjs +27 -29
- package/testing/account.mjs.map +1 -1
- package/testing/fixtures/algokit-log-capture-fixture.d.ts +8 -2
- package/testing/fixtures/algokit-log-capture-fixture.js +35 -39
- package/testing/fixtures/algokit-log-capture-fixture.js.map +1 -1
- package/testing/fixtures/algokit-log-capture-fixture.mjs +35 -37
- package/testing/fixtures/algokit-log-capture-fixture.mjs.map +1 -1
- package/testing/fixtures/algorand-fixture.d.ts +11 -5
- package/testing/fixtures/algorand-fixture.js +66 -60
- package/testing/fixtures/algorand-fixture.js.map +1 -1
- package/testing/fixtures/algorand-fixture.mjs +65 -57
- package/testing/fixtures/algorand-fixture.mjs.map +1 -1
- package/testing/index.d.ts +7 -5
- package/testing/index.js +13 -18
- package/testing/index.mjs +8 -7
- package/testing/indexer.d.ts +5 -1
- package/testing/indexer.js +27 -35
- package/testing/indexer.js.map +1 -1
- package/testing/indexer.mjs +27 -34
- package/testing/indexer.mjs.map +1 -1
- package/testing/test-logger.d.ts +42 -36
- package/testing/test-logger.js +70 -74
- package/testing/test-logger.js.map +1 -1
- package/testing/test-logger.mjs +70 -72
- package/testing/test-logger.mjs.map +1 -1
- package/testing/transaction-logger.d.ts +33 -28
- package/testing/transaction-logger.js +73 -91
- package/testing/transaction-logger.js.map +1 -1
- package/testing/transaction-logger.mjs +73 -89
- package/testing/transaction-logger.mjs.map +1 -1
- package/transact/index.d.ts +18 -0
- package/transact/index.js +48 -0
- package/transact/index.mjs +16 -0
- package/transaction/perform-transaction-composer-simulate.d.ts +20 -0
- package/transaction/perform-transaction-composer-simulate.js +33 -0
- package/transaction/perform-transaction-composer-simulate.js.map +1 -0
- package/transaction/perform-transaction-composer-simulate.mjs +32 -0
- package/transaction/perform-transaction-composer-simulate.mjs.map +1 -0
- package/transaction/transaction.d.ts +37 -163
- package/transaction/transaction.js +115 -970
- package/transaction/transaction.js.map +1 -1
- package/transaction/transaction.mjs +115 -953
- package/transaction/transaction.mjs.map +1 -1
- package/transactions/app-call.d.ts +79 -0
- package/transactions/app-call.js +333 -0
- package/transactions/app-call.js.map +1 -0
- package/transactions/app-call.mjs +329 -0
- package/transactions/app-call.mjs.map +1 -0
- package/transactions/asset-config.d.ts +177 -0
- package/transactions/asset-config.js +64 -0
- package/transactions/asset-config.js.map +1 -0
- package/transactions/asset-config.mjs +61 -0
- package/transactions/asset-config.mjs.map +1 -0
- package/transactions/asset-transfer.d.ts +44 -0
- package/transactions/asset-transfer.js +50 -0
- package/transactions/asset-transfer.js.map +1 -0
- package/transactions/asset-transfer.mjs +48 -0
- package/transactions/asset-transfer.mjs.map +1 -0
- package/transactions/common.d.ts +48 -0
- package/transactions/common.js +31 -0
- package/transactions/common.js.map +1 -0
- package/transactions/common.mjs +30 -0
- package/transactions/common.mjs.map +1 -0
- package/transactions/fee-coverage.js +115 -0
- package/transactions/fee-coverage.js.map +1 -0
- package/transactions/fee-coverage.mjs +112 -0
- package/transactions/fee-coverage.mjs.map +1 -0
- package/transactions/key-registration.d.ts +27 -0
- package/transactions/key-registration.js +30 -0
- package/transactions/key-registration.js.map +1 -0
- package/transactions/key-registration.mjs +30 -0
- package/transactions/key-registration.mjs.map +1 -0
- package/transactions/method-call.d.ts +45 -0
- package/transactions/method-call.js +326 -0
- package/transactions/method-call.js.map +1 -0
- package/transactions/method-call.mjs +322 -0
- package/transactions/method-call.mjs.map +1 -0
- package/transactions/payment.d.ts +21 -0
- package/transactions/payment.js +21 -0
- package/transactions/payment.js.map +1 -0
- package/transactions/payment.mjs +21 -0
- package/transactions/payment.mjs.map +1 -0
- package/types/account-manager.d.ts +434 -428
- package/types/account-manager.js +606 -600
- package/types/account-manager.js.map +1 -1
- package/types/account-manager.mjs +604 -598
- package/types/account-manager.mjs.map +1 -1
- package/types/account.d.ts +149 -212
- package/types/account.js +6 -90
- package/types/account.js.map +1 -1
- package/types/account.mjs +7 -88
- package/types/account.mjs.map +1 -1
- package/types/algorand-client-transaction-creator.d.ts +1101 -771
- package/types/algorand-client-transaction-creator.js +731 -730
- package/types/algorand-client-transaction-creator.js.map +1 -1
- package/types/algorand-client-transaction-creator.mjs +731 -729
- package/types/algorand-client-transaction-creator.mjs.map +1 -1
- package/types/algorand-client-transaction-sender.d.ts +1312 -1360
- package/types/algorand-client-transaction-sender.js +927 -959
- package/types/algorand-client-transaction-sender.js.map +1 -1
- package/types/algorand-client-transaction-sender.mjs +926 -957
- package/types/algorand-client-transaction-sender.mjs.map +1 -1
- package/types/algorand-client.d.ts +242 -236
- package/types/algorand-client.js +321 -318
- package/types/algorand-client.js.map +1 -1
- package/types/algorand-client.mjs +321 -316
- package/types/algorand-client.mjs.map +1 -1
- package/types/amount.d.ts +47 -43
- package/types/amount.js +62 -68
- package/types/amount.js.map +1 -1
- package/types/amount.mjs +62 -66
- package/types/amount.mjs.map +1 -1
- package/types/app-client.d.ts +2023 -2009
- package/types/app-client.js +899 -1794
- package/types/app-client.js.map +1 -1
- package/types/app-client.mjs +899 -1792
- package/types/app-client.mjs.map +1 -1
- package/types/app-deployer.d.ts +149 -141
- package/types/app-deployer.js +349 -382
- package/types/app-deployer.js.map +1 -1
- package/types/app-deployer.mjs +349 -380
- package/types/app-deployer.mjs.map +1 -1
- package/types/app-factory.d.ts +934 -932
- package/types/app-factory.js +444 -486
- package/types/app-factory.js.map +1 -1
- package/types/app-factory.mjs +444 -484
- package/types/app-factory.mjs.map +1 -1
- package/types/app-manager.d.ts +301 -323
- package/types/app-manager.js +453 -473
- package/types/app-manager.js.map +1 -1
- package/types/app-manager.mjs +453 -471
- package/types/app-manager.mjs.map +1 -1
- package/types/app-spec.d.ts +154 -117
- package/types/app-spec.js +131 -133
- package/types/app-spec.js.map +1 -1
- package/types/app-spec.mjs +131 -131
- package/types/app-spec.mjs.map +1 -1
- package/types/app.d.ts +186 -291
- package/types/app.js +34 -26
- package/types/app.js.map +1 -1
- package/types/app.mjs +32 -25
- package/types/app.mjs.map +1 -1
- package/types/asset-manager.d.ts +206 -199
- package/types/asset-manager.js +162 -172
- package/types/asset-manager.js.map +1 -1
- package/types/asset-manager.mjs +162 -170
- package/types/asset-manager.mjs.map +1 -1
- package/types/async-event-emitter.d.ts +18 -13
- package/types/async-event-emitter.js +35 -47
- package/types/async-event-emitter.js.map +1 -1
- package/types/async-event-emitter.mjs +35 -46
- package/types/async-event-emitter.mjs.map +1 -1
- package/types/client-manager.d.ts +455 -451
- package/types/client-manager.js +612 -596
- package/types/client-manager.js.map +1 -1
- package/types/client-manager.mjs +612 -594
- package/types/client-manager.mjs.map +1 -1
- package/types/composer.d.ts +929 -1322
- package/types/composer.js +1573 -1505
- package/types/composer.js.map +1 -1
- package/types/composer.mjs +1573 -1503
- package/types/composer.mjs.map +1 -1
- package/types/config.d.ts +53 -48
- package/types/config.js +76 -75
- package/types/config.js.map +1 -1
- package/types/config.mjs +76 -73
- package/types/config.mjs.map +1 -1
- package/types/debugging.d.ts +26 -23
- package/types/debugging.js +7 -9
- package/types/debugging.js.map +1 -1
- package/types/debugging.mjs +7 -8
- package/types/debugging.mjs.map +1 -1
- package/types/dispenser-client.d.ts +57 -52
- package/types/dispenser-client.js +122 -139
- package/types/dispenser-client.js.map +1 -1
- package/types/dispenser-client.mjs +122 -137
- package/types/dispenser-client.mjs.map +1 -1
- package/types/expand.d.ts +5 -3
- package/types/expand.js +0 -3
- package/types/expand.mjs +0 -2
- package/types/indexer.d.ts +32 -160
- package/types/indexer.js +34 -29
- package/types/indexer.js.map +1 -1
- package/types/indexer.mjs +30 -28
- package/types/indexer.mjs.map +1 -1
- package/types/instance-of.d.ts +5 -3
- package/types/instance-of.js +0 -3
- package/types/instance-of.mjs +0 -2
- package/types/kmd-account-manager.d.ts +71 -70
- package/types/kmd-account-manager.js +163 -182
- package/types/kmd-account-manager.js.map +1 -1
- package/types/kmd-account-manager.mjs +161 -180
- package/types/kmd-account-manager.mjs.map +1 -1
- package/types/lifecycle-events.d.ts +13 -8
- package/types/lifecycle-events.js +10 -7
- package/types/lifecycle-events.js.map +1 -1
- package/types/lifecycle-events.mjs +8 -6
- package/types/lifecycle-events.mjs.map +1 -1
- package/types/logging.d.ts +11 -13
- package/types/logging.js +28 -29
- package/types/logging.js.map +1 -1
- package/types/logging.mjs +28 -28
- package/types/logging.mjs.map +1 -1
- package/types/logic-error.d.ts +33 -29
- package/types/logic-error.js +48 -47
- package/types/logic-error.js.map +1 -1
- package/types/logic-error.mjs +48 -46
- package/types/logic-error.mjs.map +1 -1
- package/types/network-client.d.ts +32 -27
- package/types/network-client.js +8 -7
- package/types/network-client.js.map +1 -1
- package/types/network-client.mjs +8 -6
- package/types/network-client.mjs.map +1 -1
- package/types/testing.d.ts +138 -132
- package/types/testing.js +0 -3
- package/types/testing.mjs +0 -2
- package/types/transaction.d.ts +108 -123
- package/types/transaction.js +0 -3
- package/types/transaction.mjs +0 -2
- package/util.js +51 -125
- package/util.js.map +1 -1
- package/util.mjs +52 -121
- package/util.mjs.map +1 -1
- package/account/account.d.ts +0 -144
- package/account/account.js +0 -182
- package/account/account.js.map +0 -1
- package/account/account.mjs +0 -172
- package/account/account.mjs.map +0 -1
- package/account/get-account-config-from-environment.d.ts +0 -12
- package/account/get-account-config-from-environment.js +0 -25
- package/account/get-account-config-from-environment.js.map +0 -1
- package/account/get-account-config-from-environment.mjs +0 -23
- package/account/get-account-config-from-environment.mjs.map +0 -1
- package/account/get-account.d.ts +0 -65
- package/account/get-account.js +0 -63
- package/account/get-account.js.map +0 -1
- package/account/get-account.mjs +0 -61
- package/account/get-account.mjs.map +0 -1
- package/account/get-dispenser-account.d.ts +0 -17
- package/account/get-dispenser-account.js +0 -22
- package/account/get-dispenser-account.js.map +0 -1
- package/account/get-dispenser-account.mjs +0 -20
- package/account/get-dispenser-account.mjs.map +0 -1
- package/account/index.d.ts +0 -5
- package/account/mnemonic-account.d.ts +0 -13
- package/account/mnemonic-account.js +0 -21
- package/account/mnemonic-account.js.map +0 -1
- package/account/mnemonic-account.mjs +0 -19
- package/account/mnemonic-account.mjs.map +0 -1
- package/app-client.d.ts +0 -86
- package/app-client.js +0 -98
- package/app-client.js.map +0 -1
- package/app-client.mjs +0 -94
- package/app-client.mjs.map +0 -1
- package/app-deploy.d.ts +0 -120
- package/app-deploy.js +0 -285
- package/app-deploy.js.map +0 -1
- package/app-deploy.mjs +0 -276
- package/app-deploy.mjs.map +0 -1
- package/app.d.ts +0 -205
- package/app.js +0 -349
- package/app.js.map +0 -1
- package/app.mjs +0 -329
- package/app.mjs.map +0 -1
- package/asset.d.ts +0 -74
- package/asset.js +0 -142
- package/asset.js.map +0 -1
- package/asset.mjs +0 -136
- package/asset.mjs.map +0 -1
- package/debugging/debugging.d.ts +0 -8
- package/debugging/debugging.js +0 -15
- package/debugging/debugging.js.map +0 -1
- package/debugging/debugging.mjs +0 -13
- package/debugging/debugging.mjs.map +0 -1
- package/debugging/index.d.ts +0 -1
- package/dispenser-client.d.ts +0 -20
- package/dispenser-client.js +0 -28
- package/dispenser-client.js.map +0 -1
- package/dispenser-client.mjs +0 -26
- package/dispenser-client.mjs.map +0 -1
- package/index.js.map +0 -1
- package/index.mjs.map +0 -1
- package/localnet/get-kmd-wallet-account.d.ts +0 -27
- package/localnet/get-kmd-wallet-account.js +0 -30
- package/localnet/get-kmd-wallet-account.js.map +0 -1
- package/localnet/get-kmd-wallet-account.mjs +0 -28
- package/localnet/get-kmd-wallet-account.mjs.map +0 -1
- package/localnet/get-localnet-dispenser-account.d.ts +0 -13
- package/localnet/get-localnet-dispenser-account.js +0 -19
- package/localnet/get-localnet-dispenser-account.js.map +0 -1
- package/localnet/get-localnet-dispenser-account.mjs +0 -17
- package/localnet/get-localnet-dispenser-account.mjs.map +0 -1
- package/localnet/get-or-create-kmd-wallet-account.d.ts +0 -28
- package/localnet/get-or-create-kmd-wallet-account.js +0 -30
- package/localnet/get-or-create-kmd-wallet-account.js.map +0 -1
- package/localnet/get-or-create-kmd-wallet-account.mjs +0 -28
- package/localnet/get-or-create-kmd-wallet-account.mjs.map +0 -1
- package/localnet/index.d.ts +0 -4
- package/localnet/is-localnet.d.ts +0 -7
- package/localnet/is-localnet.js +0 -14
- package/localnet/is-localnet.js.map +0 -1
- package/localnet/is-localnet.mjs +0 -12
- package/localnet/is-localnet.mjs.map +0 -1
- package/network-client.d.ts +0 -125
- package/network-client.js +0 -156
- package/network-client.js.map +0 -1
- package/network-client.mjs +0 -145
- package/network-client.mjs.map +0 -1
- package/testing/_asset.d.ts +0 -3
- package/testing/fixtures/index.d.ts +0 -2
- package/testing/index.js.map +0 -1
- package/testing/index.mjs.map +0 -1
- package/transaction/index.d.ts +0 -2
- package/transaction/legacy-bridge.d.ts +0 -35
- package/transaction/legacy-bridge.js +0 -129
- package/transaction/legacy-bridge.js.map +0 -1
- package/transaction/legacy-bridge.mjs +0 -124
- package/transaction/legacy-bridge.mjs.map +0 -1
- package/transaction/perform-atomic-transaction-composer-simulate.d.ts +0 -13
- package/transaction/perform-atomic-transaction-composer-simulate.js +0 -40
- package/transaction/perform-atomic-transaction-composer-simulate.js.map +0 -1
- package/transaction/perform-atomic-transaction-composer-simulate.mjs +0 -38
- package/transaction/perform-atomic-transaction-composer-simulate.mjs.map +0 -1
- package/transfer/index.d.ts +0 -2
- package/transfer/transfer-algos.d.ts +0 -18
- package/transfer/transfer-algos.js +0 -31
- package/transfer/transfer-algos.js.map +0 -1
- package/transfer/transfer-algos.mjs +0 -29
- package/transfer/transfer-algos.mjs.map +0 -1
- package/transfer/transfer.d.ts +0 -52
- package/transfer/transfer.js +0 -112
- package/transfer/transfer.js.map +0 -1
- package/transfer/transfer.mjs +0 -108
- package/transfer/transfer.mjs.map +0 -1
- package/types/algo-http-client-with-retry.d.ts +0 -12
- package/types/algo-http-client-with-retry.js +0 -94
- package/types/algo-http-client-with-retry.js.map +0 -1
- package/types/algo-http-client-with-retry.mjs +0 -92
- package/types/algo-http-client-with-retry.mjs.map +0 -1
- package/types/app-arc56.d.ts +0 -359
- package/types/app-arc56.js +0 -200
- package/types/app-arc56.js.map +0 -1
- package/types/app-arc56.mjs +0 -191
- package/types/app-arc56.mjs.map +0 -1
- package/types/asset.d.ts +0 -99
- package/types/asset.js +0 -3
- package/types/asset.js.map +0 -1
- package/types/asset.mjs +0 -2
- package/types/asset.mjs.map +0 -1
- package/types/expand.js.map +0 -1
- package/types/expand.mjs.map +0 -1
- package/types/instance-of.js.map +0 -1
- package/types/instance-of.mjs.map +0 -1
- package/types/testing.js.map +0 -1
- package/types/testing.mjs.map +0 -1
- package/types/transaction.js.map +0 -1
- package/types/transaction.mjs.map +0 -1
- package/types/transfer.d.ts +0 -76
- package/types/transfer.js +0 -3
- package/types/transfer.js.map +0 -1
- package/types/transfer.mjs +0 -2
- package/types/transfer.mjs.map +0 -1
- package/util.d.ts +0 -48
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
import { arrayEqual } from "../../common/src/array.mjs";
|
|
2
|
+
import { PUBLIC_KEY_BYTE_LENGTH, SIGNATURE_BYTE_LENGTH } from "../../common/src/constants.mjs";
|
|
3
|
+
import { ALGORAND_ADDRESS_BYTE_LENGTH, ALGORAND_CHECKSUM_BYTE_LENGTH, Address, getAddress } from "../../common/src/address.mjs";
|
|
4
|
+
import { hash } from "../../common/src/crypto.mjs";
|
|
5
|
+
import { decodeSignedTransaction, encodeSignedTransaction } from "./transactions/signed-transaction.mjs";
|
|
6
|
+
|
|
7
|
+
//#region packages/transact/src/multisig.ts
|
|
8
|
+
const toPublicKeys = (addrs) => addrs.map((addr) => getAddress(addr).publicKey);
|
|
9
|
+
/**
|
|
10
|
+
* Applies a subsignature for a participant to a multisignature signature, replacing any existing signature.
|
|
11
|
+
*
|
|
12
|
+
* This method applies the signature to ALL instances of the given public key (to support weighted multisig).
|
|
13
|
+
* Since ed25519 signatures are deterministic, there's only one valid signature for a given message and public key.
|
|
14
|
+
*/
|
|
15
|
+
function applyMultisigSubsignature(multisigSignature, participant, signature) {
|
|
16
|
+
let found = false;
|
|
17
|
+
const newSubsignatures = multisigSignature.subsigs.map((subsig) => {
|
|
18
|
+
if (arrayEqual(subsig.publicKey, participant)) {
|
|
19
|
+
found = true;
|
|
20
|
+
return {
|
|
21
|
+
...subsig,
|
|
22
|
+
sig: signature
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
return subsig;
|
|
26
|
+
});
|
|
27
|
+
if (!found) throw new Error("Public key not found in multisig signature");
|
|
28
|
+
return {
|
|
29
|
+
...multisigSignature,
|
|
30
|
+
subsigs: newSubsignatures
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
const MULTISIG_PREIMG2ADDR_PREFIX = new Uint8Array([
|
|
34
|
+
77,
|
|
35
|
+
117,
|
|
36
|
+
108,
|
|
37
|
+
116,
|
|
38
|
+
105,
|
|
39
|
+
115,
|
|
40
|
+
105,
|
|
41
|
+
103,
|
|
42
|
+
65,
|
|
43
|
+
100,
|
|
44
|
+
100,
|
|
45
|
+
114
|
|
46
|
+
]);
|
|
47
|
+
const INVALID_MSIG_VERSION_ERROR_MSG = "invalid multisig version";
|
|
48
|
+
const INVALID_MSIG_THRESHOLD_ERROR_MSG = "bad multisig threshold";
|
|
49
|
+
const INVALID_MSIG_PK_ERROR_MSG = "bad multisig public key - wrong length";
|
|
50
|
+
const UNEXPECTED_PK_LEN_ERROR_MSG = "nacl public key length is not 32 bytes";
|
|
51
|
+
const MULTISIG_MERGE_LESSTHANTWO_ERROR_MSG = "Not enough multisig transactions to merge. Need at least two";
|
|
52
|
+
const MULTISIG_MERGE_MISMATCH_ERROR_MSG = "Cannot merge txs. txIDs differ";
|
|
53
|
+
const MULTISIG_MERGE_MISMATCH_AUTH_ADDR_MSG = "Cannot merge txs. Auth addrs differ";
|
|
54
|
+
const MULTISIG_MERGE_WRONG_PREIMAGE_ERROR_MSG = "Cannot merge txs. Multisig preimages differ";
|
|
55
|
+
const MULTISIG_MERGE_SIG_MISMATCH_ERROR_MSG = "Cannot merge txs. subsigs are mismatched.";
|
|
56
|
+
const MULTISIG_SIGNATURE_LENGTH_ERROR_MSG = "Cannot add multisig signature. Signature is not of the correct length.";
|
|
57
|
+
const MULTISIG_KEY_NOT_EXIST_ERROR_MSG = "Key does not exist";
|
|
58
|
+
/**
|
|
59
|
+
* creates a raw, multisig transaction blob without any signatures.
|
|
60
|
+
* @param txn - the actual transaction.
|
|
61
|
+
* @param version - multisig version
|
|
62
|
+
* @param threshold - multisig threshold
|
|
63
|
+
* @param pks - ordered list of public keys in this multisig
|
|
64
|
+
* @returns encoded multisig blob
|
|
65
|
+
*/
|
|
66
|
+
function createMultisigTransaction(txn, { version, threshold, addrs }) {
|
|
67
|
+
const pks = toPublicKeys(addrs);
|
|
68
|
+
const msig = {
|
|
69
|
+
version,
|
|
70
|
+
threshold,
|
|
71
|
+
subsigs: pks.map((pk) => ({
|
|
72
|
+
publicKey: pk,
|
|
73
|
+
sig: void 0
|
|
74
|
+
}))
|
|
75
|
+
};
|
|
76
|
+
const msigAddr = addressFromMultisigPreImg({
|
|
77
|
+
version,
|
|
78
|
+
threshold,
|
|
79
|
+
publicKeys: pks
|
|
80
|
+
});
|
|
81
|
+
let authAddress;
|
|
82
|
+
if (!msigAddr.equals(txn.sender)) authAddress = msigAddr;
|
|
83
|
+
return {
|
|
84
|
+
txn,
|
|
85
|
+
msig,
|
|
86
|
+
authAddress
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* creates a multisig transaction blob with an included signature.
|
|
91
|
+
* @param txn - the actual transaction to sign.
|
|
92
|
+
* @param rawSig - a Uint8Array raw signature of that transaction
|
|
93
|
+
* @param myPk - a public key that corresponds with rawSig
|
|
94
|
+
* @param version - multisig version
|
|
95
|
+
* @param threshold - multisig threshold
|
|
96
|
+
* @param pks - ordered list of public keys in this multisig
|
|
97
|
+
* @returns encoded multisig blob
|
|
98
|
+
*/
|
|
99
|
+
function createMultisigTransactionWithSignature(txn, { rawSig, myPk }, { version, threshold, publicKeys }) {
|
|
100
|
+
const signedTxn = createMultisigTransaction(txn, {
|
|
101
|
+
version,
|
|
102
|
+
threshold,
|
|
103
|
+
addrs: publicKeys.map((pk) => new Address(pk))
|
|
104
|
+
});
|
|
105
|
+
let keyExist = false;
|
|
106
|
+
const updatedSubsigs = signedTxn.msig.subsigs.map((subsig) => {
|
|
107
|
+
if (arrayEqual(subsig.publicKey, myPk)) {
|
|
108
|
+
keyExist = true;
|
|
109
|
+
return {
|
|
110
|
+
...subsig,
|
|
111
|
+
sig: rawSig
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
return subsig;
|
|
115
|
+
});
|
|
116
|
+
if (!keyExist) throw new Error(MULTISIG_KEY_NOT_EXIST_ERROR_MSG);
|
|
117
|
+
return {
|
|
118
|
+
...signedTxn,
|
|
119
|
+
msig: {
|
|
120
|
+
...signedTxn.msig,
|
|
121
|
+
subsigs: updatedSubsigs
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* takes a list of multisig transaction blobs, and merges them.
|
|
127
|
+
* @param multisigTxnBlobs - a list of blobs representing encoded multisig txns
|
|
128
|
+
* @returns typed array msg-pack encoded multisig txn
|
|
129
|
+
*/
|
|
130
|
+
function mergeMultisigTransactions(multisigTxnBlobs) {
|
|
131
|
+
if (multisigTxnBlobs.length < 2) throw new Error(MULTISIG_MERGE_LESSTHANTWO_ERROR_MSG);
|
|
132
|
+
const refSigTx = multisigTxnBlobs[0];
|
|
133
|
+
if (!refSigTx.msig) throw new Error("Invalid multisig transaction, multisig structure missing at index 0");
|
|
134
|
+
const refTxID = refSigTx.txn.txId();
|
|
135
|
+
const refAuthAddr = refSigTx.authAddress;
|
|
136
|
+
const refMsigAddr = addressFromMultisigPreImg({
|
|
137
|
+
version: refSigTx.msig.version,
|
|
138
|
+
threshold: refSigTx.msig.threshold,
|
|
139
|
+
publicKeys: refSigTx.msig.subsigs.map((subsig) => subsig.publicKey)
|
|
140
|
+
});
|
|
141
|
+
const newSubsigs = refSigTx.msig.subsigs.map((sig) => ({ ...sig }));
|
|
142
|
+
for (let i = 1; i < multisigTxnBlobs.length; i++) {
|
|
143
|
+
const unisig = multisigTxnBlobs[i];
|
|
144
|
+
if (!unisig.msig) throw new Error(`Invalid multisig transaction, multisig structure missing at index ${i}`);
|
|
145
|
+
if (unisig.txn.txId() !== refTxID) throw new Error(MULTISIG_MERGE_MISMATCH_ERROR_MSG);
|
|
146
|
+
if (refAuthAddr !== unisig.authAddress) throw new Error(MULTISIG_MERGE_MISMATCH_AUTH_ADDR_MSG);
|
|
147
|
+
if (unisig.msig.subsigs.length !== refSigTx.msig.subsigs.length) throw new Error(MULTISIG_MERGE_WRONG_PREIMAGE_ERROR_MSG);
|
|
148
|
+
const msgigAddr = addressFromMultisigPreImg({
|
|
149
|
+
version: unisig.msig.version,
|
|
150
|
+
threshold: unisig.msig.threshold,
|
|
151
|
+
publicKeys: unisig.msig.subsigs.map((subsig) => subsig.publicKey)
|
|
152
|
+
});
|
|
153
|
+
if (refMsigAddr.toString() !== msgigAddr.toString()) throw new Error(MULTISIG_MERGE_WRONG_PREIMAGE_ERROR_MSG);
|
|
154
|
+
unisig.msig.subsigs.forEach((uniSubsig, index) => {
|
|
155
|
+
if (!uniSubsig.sig) return;
|
|
156
|
+
const current = newSubsigs[index];
|
|
157
|
+
if (current.sig && !arrayEqual(uniSubsig.sig, current.sig)) throw new Error(MULTISIG_MERGE_SIG_MISMATCH_ERROR_MSG);
|
|
158
|
+
current.sig = uniSubsig.sig;
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
return {
|
|
162
|
+
txn: refSigTx.txn,
|
|
163
|
+
msig: {
|
|
164
|
+
version: refSigTx.msig.version,
|
|
165
|
+
threshold: refSigTx.msig.threshold,
|
|
166
|
+
subsigs: newSubsigs
|
|
167
|
+
},
|
|
168
|
+
authAddress: refAuthAddr
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Partially signs this transaction with an external raw multisig signature and returns
|
|
173
|
+
* a partially-signed multisig transaction, encoded with msgpack as a typed array.
|
|
174
|
+
* @param transaction - The transaction to sign
|
|
175
|
+
* @param metadata - multisig metadata
|
|
176
|
+
* @param signerAddr - address of the signer
|
|
177
|
+
* @param signature - raw multisig signature
|
|
178
|
+
* @returns an encoded, partially signed multisig transaction.
|
|
179
|
+
*/
|
|
180
|
+
function partialSignWithMultisigSignature(transaction, metadata, signerAddr, signature) {
|
|
181
|
+
if (signature.length != SIGNATURE_BYTE_LENGTH) throw new Error(MULTISIG_SIGNATURE_LENGTH_ERROR_MSG);
|
|
182
|
+
return createMultisigTransactionWithSignature(transaction, {
|
|
183
|
+
rawSig: signature,
|
|
184
|
+
myPk: (typeof signerAddr === "string" ? Address.fromString(signerAddr) : signerAddr).publicKey
|
|
185
|
+
}, metadata);
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Takes a multisig transaction blob, and appends a given raw signature to it.
|
|
189
|
+
* This makes it possible to compile a multisig signature using only raw signatures from external methods.
|
|
190
|
+
* @param multisigTxnBlob - an encoded multisig txn. Supports non-payment txn types.
|
|
191
|
+
* @param version - multisig version
|
|
192
|
+
* @param threshold - multisig threshold
|
|
193
|
+
* @param addrs - a list of Algorand addresses representing possible signers for this multisig. Order is important.
|
|
194
|
+
* @param signerAddr - address of the signer
|
|
195
|
+
* @param signature - raw multisig signature
|
|
196
|
+
* @returns object containing txID, and blob representing encoded multisig txn
|
|
197
|
+
*/
|
|
198
|
+
function appendSignRawMultisigSignature(multisigTxn, { version, threshold, addrs }, signerAddr, signature) {
|
|
199
|
+
const publicKeys = toPublicKeys(addrs);
|
|
200
|
+
return mergeMultisigTransactions([multisigTxn, partialSignWithMultisigSignature(multisigTxn.txn, {
|
|
201
|
+
version,
|
|
202
|
+
threshold,
|
|
203
|
+
publicKeys
|
|
204
|
+
}, signerAddr, signature)]);
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Takes multisig parameters and returns a 32 byte typed array public key,
|
|
208
|
+
* representing an address that identifies the "exact group, version, and public keys" that are required for signing.
|
|
209
|
+
* Hash("MultisigAddr" || version uint8 || threshold uint8 || PK1 || PK2 || ...)
|
|
210
|
+
* Encoding this output yields a human readable address.
|
|
211
|
+
* @param version - multisig version
|
|
212
|
+
* @param threshold - multisig threshold
|
|
213
|
+
* @param pks - array of typed array public keys
|
|
214
|
+
*/
|
|
215
|
+
function addressFromMultisigPreImg({ version, threshold, publicKeys }) {
|
|
216
|
+
if (version > 255 || version < 0) throw new Error(`${INVALID_MSIG_VERSION_ERROR_MSG}: ${version}`);
|
|
217
|
+
if (threshold === 0 || publicKeys.length === 0 || threshold > publicKeys.length || threshold > 255) throw new Error(INVALID_MSIG_THRESHOLD_ERROR_MSG);
|
|
218
|
+
const pkLen = ALGORAND_ADDRESS_BYTE_LENGTH - ALGORAND_CHECKSUM_BYTE_LENGTH;
|
|
219
|
+
if (pkLen !== PUBLIC_KEY_BYTE_LENGTH) throw new Error(UNEXPECTED_PK_LEN_ERROR_MSG);
|
|
220
|
+
const merged = new Uint8Array(MULTISIG_PREIMG2ADDR_PREFIX.length + 2 + pkLen * publicKeys.length);
|
|
221
|
+
merged.set(MULTISIG_PREIMG2ADDR_PREFIX, 0);
|
|
222
|
+
merged.set([version], MULTISIG_PREIMG2ADDR_PREFIX.length);
|
|
223
|
+
merged.set([threshold], MULTISIG_PREIMG2ADDR_PREFIX.length + 1);
|
|
224
|
+
for (let i = 0; i < publicKeys.length; i++) {
|
|
225
|
+
if (publicKeys[i].length !== pkLen) throw new Error(INVALID_MSIG_PK_ERROR_MSG);
|
|
226
|
+
merged.set(publicKeys[i], MULTISIG_PREIMG2ADDR_PREFIX.length + 2 + i * pkLen);
|
|
227
|
+
}
|
|
228
|
+
return new Address(Uint8Array.from(hash(merged)));
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Takes multisig parameters and returns a human readable Algorand address.
|
|
232
|
+
* This is equivalent to fromMultisigPreImg, but interfaces with encoded addresses.
|
|
233
|
+
* @param version - multisig version
|
|
234
|
+
* @param threshold - multisig threshold
|
|
235
|
+
* @param addrs - array of encoded addresses
|
|
236
|
+
*/
|
|
237
|
+
function addressFromMultisigPreImgAddrs({ version, threshold, addrs }) {
|
|
238
|
+
return addressFromMultisigPreImg({
|
|
239
|
+
version,
|
|
240
|
+
threshold,
|
|
241
|
+
publicKeys: toPublicKeys(addrs)
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Takes multisig metadata (preimage) and returns the corresponding human readable Algorand address.
|
|
246
|
+
* @param version - multisig version
|
|
247
|
+
* @param threshold - multisig threshold
|
|
248
|
+
* @param addrs - list of Algorand addresses
|
|
249
|
+
*/
|
|
250
|
+
const multisigAddress = addressFromMultisigPreImgAddrs;
|
|
251
|
+
/** Account wrapper that supports partial or full multisig signing. */
|
|
252
|
+
var MultisigAccount = class MultisigAccount {
|
|
253
|
+
_params;
|
|
254
|
+
_subSigners;
|
|
255
|
+
_addr;
|
|
256
|
+
_signer;
|
|
257
|
+
/** The parameters for the multisig account */
|
|
258
|
+
get params() {
|
|
259
|
+
return this._params;
|
|
260
|
+
}
|
|
261
|
+
/** The list of accounts that are present to sign transactions or lsigs */
|
|
262
|
+
get subSigners() {
|
|
263
|
+
return this._subSigners;
|
|
264
|
+
}
|
|
265
|
+
/** The address of the multisig account */
|
|
266
|
+
get addr() {
|
|
267
|
+
return this._addr;
|
|
268
|
+
}
|
|
269
|
+
/** The transaction signer for the multisig account */
|
|
270
|
+
get signer() {
|
|
271
|
+
return this._signer;
|
|
272
|
+
}
|
|
273
|
+
static fromSignature(signature) {
|
|
274
|
+
return new MultisigAccount({
|
|
275
|
+
version: signature.version,
|
|
276
|
+
threshold: signature.threshold,
|
|
277
|
+
addrs: signature.subsigs.map((subsig) => new Address(subsig.publicKey))
|
|
278
|
+
}, []);
|
|
279
|
+
}
|
|
280
|
+
constructor(multisigParams, subSigners) {
|
|
281
|
+
this._params = multisigParams;
|
|
282
|
+
this._subSigners = subSigners;
|
|
283
|
+
this._addr = multisigAddress(multisigParams);
|
|
284
|
+
this._signer = async (txns, indexesToSign) => {
|
|
285
|
+
const txnsToSign = txns.filter((_, index) => indexesToSign.includes(index));
|
|
286
|
+
const signedMsigTxns = [];
|
|
287
|
+
for (const txn of txnsToSign) {
|
|
288
|
+
let signedMsigTxn = createMultisigTransaction(txn, this._params);
|
|
289
|
+
for (const subSigner of this.subSigners) {
|
|
290
|
+
const stxn = (await subSigner.signer([txn], [0]))[0];
|
|
291
|
+
const sig = decodeSignedTransaction(stxn).sig;
|
|
292
|
+
if (!sig) throw new Error(`Signer for address ${subSigner.addr.toString()} did not produce a valid signature when signing ${txn.txId()} for multisig account ${this._addr.toString()}`);
|
|
293
|
+
signedMsigTxn = appendSignRawMultisigSignature(signedMsigTxn, this._params, subSigner.addr, sig);
|
|
294
|
+
}
|
|
295
|
+
signedMsigTxns.push(signedMsigTxn);
|
|
296
|
+
}
|
|
297
|
+
return signedMsigTxns.map(encodeSignedTransaction);
|
|
298
|
+
};
|
|
299
|
+
}
|
|
300
|
+
createMultisigTransaction(txn) {
|
|
301
|
+
return createMultisigTransaction(txn, this._params);
|
|
302
|
+
}
|
|
303
|
+
createMultisigSignature() {
|
|
304
|
+
const subsignatures = toPublicKeys(this._params.addrs).map((pk) => ({
|
|
305
|
+
publicKey: pk,
|
|
306
|
+
signature: void 0
|
|
307
|
+
}));
|
|
308
|
+
return {
|
|
309
|
+
version: this._params.version,
|
|
310
|
+
threshold: this._params.threshold,
|
|
311
|
+
subsigs: subsignatures
|
|
312
|
+
};
|
|
313
|
+
}
|
|
314
|
+
applySignatureToTxn(txn, pubkey, signature) {
|
|
315
|
+
if (!txn.msig) txn.msig = this.createMultisigTransaction(txn.txn).msig;
|
|
316
|
+
txn.msig = applyMultisigSubsignature(txn.msig, pubkey, signature);
|
|
317
|
+
}
|
|
318
|
+
applySignature(msigSignature, pubkey, signature) {
|
|
319
|
+
if (msigSignature.version !== this._params.version || msigSignature.threshold !== this._params.threshold) {
|
|
320
|
+
const thisParams = {
|
|
321
|
+
version: this._params.version,
|
|
322
|
+
threshold: this._params.threshold,
|
|
323
|
+
participants: this._params.addrs.map((addr) => addr.toString())
|
|
324
|
+
};
|
|
325
|
+
const givenParams = {
|
|
326
|
+
version: msigSignature.version,
|
|
327
|
+
threshold: msigSignature.threshold,
|
|
328
|
+
participants: msigSignature.subsigs.map((subsig) => new Address(subsig.publicKey).toString())
|
|
329
|
+
};
|
|
330
|
+
throw new Error(`Multisig signature parameters do not match expected multisig parameters. Multisig params: ${JSON.stringify(thisParams)}, signature: ${JSON.stringify(givenParams)}`);
|
|
331
|
+
}
|
|
332
|
+
return applyMultisigSubsignature(msigSignature, pubkey, signature);
|
|
333
|
+
}
|
|
334
|
+
};
|
|
335
|
+
|
|
336
|
+
//#endregion
|
|
337
|
+
export { MultisigAccount };
|
|
338
|
+
//# sourceMappingURL=multisig.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multisig.mjs","names":["msig: MultisigSignature","authAddress: Address | undefined","newSubsigs: MultisigSubsignature[]","multisigAddress: typeof addressFromMultisigPreImgAddrs","signedMsigTxns: SignedTransaction[]","subsignatures: MultisigSubsignature[]"],"sources":["../../../../packages/transact/src/multisig.ts"],"sourcesContent":["import {\n Address,\n ALGORAND_ADDRESS_BYTE_LENGTH,\n ALGORAND_CHECKSUM_BYTE_LENGTH,\n arrayEqual,\n getAddress,\n hash,\n PUBLIC_KEY_BYTE_LENGTH,\n SIGNATURE_BYTE_LENGTH,\n} from '@algorandfoundation/algokit-common'\nimport { AddressWithDelegatedLsigSigner, AddressWithTransactionSigner, TransactionSigner } from './signer'\nimport {\n decodeSignedTransaction,\n encodeSignedTransaction,\n MultisigSignature,\n MultisigSubsignature,\n SignedTransaction,\n} from './transactions/signed-transaction'\nimport { Transaction } from './transactions/transaction'\n\nconst toPublicKeys = (addrs: Array<string | Address>): Uint8Array[] => addrs.map((addr) => getAddress(addr).publicKey)\n\n/**\n * Applies a subsignature for a participant to a multisignature signature, replacing any existing signature.\n *\n * This method applies the signature to ALL instances of the given public key (to support weighted multisig).\n * Since ed25519 signatures are deterministic, there's only one valid signature for a given message and public key.\n */\nfunction applyMultisigSubsignature(\n multisigSignature: MultisigSignature,\n participant: Uint8Array,\n signature: Uint8Array,\n): MultisigSignature {\n let found = false\n const newSubsignatures = multisigSignature.subsigs.map((subsig) => {\n if (arrayEqual(subsig.publicKey, participant)) {\n found = true\n return { ...subsig, sig: signature } satisfies MultisigSubsignature\n }\n return subsig\n })\n\n if (!found) {\n throw new Error('Public key not found in multisig signature')\n }\n\n return {\n ...multisigSignature,\n subsigs: newSubsignatures,\n }\n}\n\n// Convert \"MultisigAddr\" UTF-8 to byte array\nconst MULTISIG_PREIMG2ADDR_PREFIX = new Uint8Array([77, 117, 108, 116, 105, 115, 105, 103, 65, 100, 100, 114])\n\nconst INVALID_MSIG_VERSION_ERROR_MSG = 'invalid multisig version'\nconst INVALID_MSIG_THRESHOLD_ERROR_MSG = 'bad multisig threshold'\nconst INVALID_MSIG_PK_ERROR_MSG = 'bad multisig public key - wrong length'\nconst UNEXPECTED_PK_LEN_ERROR_MSG = 'nacl public key length is not 32 bytes'\n\nconst MULTISIG_MERGE_LESSTHANTWO_ERROR_MSG = 'Not enough multisig transactions to merge. Need at least two'\nconst MULTISIG_MERGE_MISMATCH_ERROR_MSG = 'Cannot merge txs. txIDs differ'\nconst MULTISIG_MERGE_MISMATCH_AUTH_ADDR_MSG = 'Cannot merge txs. Auth addrs differ'\nconst MULTISIG_MERGE_WRONG_PREIMAGE_ERROR_MSG = 'Cannot merge txs. Multisig preimages differ'\nconst MULTISIG_MERGE_SIG_MISMATCH_ERROR_MSG = 'Cannot merge txs. subsigs are mismatched.'\nconst MULTISIG_SIGNATURE_LENGTH_ERROR_MSG = 'Cannot add multisig signature. Signature is not of the correct length.'\nconst MULTISIG_KEY_NOT_EXIST_ERROR_MSG = 'Key does not exist'\n\n/**\n * creates a raw, multisig transaction blob without any signatures.\n * @param txn - the actual transaction.\n * @param version - multisig version\n * @param threshold - multisig threshold\n * @param pks - ordered list of public keys in this multisig\n * @returns encoded multisig blob\n */\nfunction createMultisigTransaction(txn: Transaction, { version, threshold, addrs }: MultisigMetadata) {\n // construct the appendable multisigned transaction format\n const pks = toPublicKeys(addrs)\n const subsignatures = pks.map(\n (pk) =>\n ({\n publicKey: pk,\n sig: undefined,\n }) satisfies MultisigSubsignature,\n )\n\n const msig: MultisigSignature = {\n version,\n threshold,\n subsigs: subsignatures,\n }\n\n // if the address of this multisig is different from the transaction sender,\n // we need to add the auth-addr field\n const msigAddr = addressFromMultisigPreImg({\n version,\n threshold,\n publicKeys: pks,\n })\n let authAddress: Address | undefined\n if (!msigAddr.equals(txn.sender)) {\n authAddress = msigAddr\n }\n\n const signedTxn: SignedTransaction = {\n txn: txn,\n msig: msig,\n authAddress,\n }\n\n return signedTxn\n}\n\ninterface MultisigOptions {\n rawSig: Uint8Array\n myPk: Uint8Array\n}\n\ninterface MultisigMetadataWithPublicKeys extends Omit<MultisigMetadata, 'addrs'> {\n publicKeys: Uint8Array[]\n}\n\n/**\n * creates a multisig transaction blob with an included signature.\n * @param txn - the actual transaction to sign.\n * @param rawSig - a Uint8Array raw signature of that transaction\n * @param myPk - a public key that corresponds with rawSig\n * @param version - multisig version\n * @param threshold - multisig threshold\n * @param pks - ordered list of public keys in this multisig\n * @returns encoded multisig blob\n */\nfunction createMultisigTransactionWithSignature(\n txn: Transaction,\n { rawSig, myPk }: MultisigOptions,\n { version, threshold, publicKeys }: MultisigMetadataWithPublicKeys,\n): SignedTransaction {\n // Create an empty encoded multisig transaction\n const signedTxn = createMultisigTransaction(txn, {\n version,\n threshold,\n addrs: publicKeys.map((pk) => new Address(pk)),\n })\n\n let keyExist = false\n\n // append the multisig signature to the corresponding public key in the multisig blob\n const updatedSubsigs = signedTxn.msig!.subsigs.map((subsig) => {\n if (arrayEqual(subsig.publicKey, myPk)) {\n keyExist = true\n return { ...subsig, sig: rawSig }\n }\n return subsig\n })\n\n if (!keyExist) {\n throw new Error(MULTISIG_KEY_NOT_EXIST_ERROR_MSG)\n }\n\n const updatedSignedTxn: SignedTransaction = {\n ...signedTxn,\n msig: {\n ...signedTxn.msig!,\n subsigs: updatedSubsigs,\n },\n }\n\n return updatedSignedTxn\n}\n\n/**\n * takes a list of multisig transaction blobs, and merges them.\n * @param multisigTxnBlobs - a list of blobs representing encoded multisig txns\n * @returns typed array msg-pack encoded multisig txn\n */\nfunction mergeMultisigTransactions(multisigTxnBlobs: SignedTransaction[]): SignedTransaction {\n if (multisigTxnBlobs.length < 2) {\n throw new Error(MULTISIG_MERGE_LESSTHANTWO_ERROR_MSG)\n }\n const refSigTx = multisigTxnBlobs[0]\n if (!refSigTx.msig) {\n throw new Error('Invalid multisig transaction, multisig structure missing at index 0')\n }\n const refTxID = refSigTx.txn.txId()\n const refAuthAddr = refSigTx.authAddress\n const refPreImage = {\n version: refSigTx.msig.version,\n threshold: refSigTx.msig.threshold,\n publicKeys: refSigTx.msig.subsigs.map((subsig) => subsig.publicKey),\n }\n const refMsigAddr = addressFromMultisigPreImg(refPreImage)\n\n const newSubsigs: MultisigSubsignature[] = refSigTx.msig.subsigs.map((sig) => ({ ...sig }))\n for (let i = 1; i < multisigTxnBlobs.length; i++) {\n const unisig = multisigTxnBlobs[i]\n if (!unisig.msig) {\n throw new Error(`Invalid multisig transaction, multisig structure missing at index ${i}`)\n }\n\n if (unisig.txn.txId() !== refTxID) {\n throw new Error(MULTISIG_MERGE_MISMATCH_ERROR_MSG)\n }\n\n const authAddr = unisig.authAddress\n if (refAuthAddr !== authAddr) {\n throw new Error(MULTISIG_MERGE_MISMATCH_AUTH_ADDR_MSG)\n }\n\n // check multisig has same preimage as reference\n if (unisig.msig.subsigs.length !== refSigTx.msig.subsigs.length) {\n throw new Error(MULTISIG_MERGE_WRONG_PREIMAGE_ERROR_MSG)\n }\n const preimg: MultisigMetadataWithPublicKeys = {\n version: unisig.msig.version,\n threshold: unisig.msig.threshold,\n publicKeys: unisig.msig.subsigs.map((subsig) => subsig.publicKey),\n }\n const msgigAddr = addressFromMultisigPreImg(preimg)\n if (refMsigAddr.toString() !== msgigAddr.toString()) {\n throw new Error(MULTISIG_MERGE_WRONG_PREIMAGE_ERROR_MSG)\n }\n\n // now, we can merge\n unisig.msig.subsigs.forEach((uniSubsig, index) => {\n if (!uniSubsig.sig) return\n const current = newSubsigs[index]\n if (current.sig && !arrayEqual(uniSubsig.sig, current.sig)) {\n // mismatch\n throw new Error(MULTISIG_MERGE_SIG_MISMATCH_ERROR_MSG)\n }\n current.sig = uniSubsig.sig\n })\n }\n\n const msig: MultisigSignature = {\n version: refSigTx.msig.version,\n threshold: refSigTx.msig.threshold,\n subsigs: newSubsigs,\n }\n\n const signedTxn: SignedTransaction = {\n txn: refSigTx.txn,\n msig: msig,\n authAddress: refAuthAddr,\n }\n\n return signedTxn\n}\n\n/**\n * Partially signs this transaction with an external raw multisig signature and returns\n * a partially-signed multisig transaction, encoded with msgpack as a typed array.\n * @param transaction - The transaction to sign\n * @param metadata - multisig metadata\n * @param signerAddr - address of the signer\n * @param signature - raw multisig signature\n * @returns an encoded, partially signed multisig transaction.\n */\nfunction partialSignWithMultisigSignature(\n transaction: Transaction,\n metadata: MultisigMetadataWithPublicKeys,\n signerAddr: string | Address,\n signature: Uint8Array,\n) {\n if (signature.length != SIGNATURE_BYTE_LENGTH) {\n throw new Error(MULTISIG_SIGNATURE_LENGTH_ERROR_MSG)\n }\n const signerAddressObj = typeof signerAddr === 'string' ? Address.fromString(signerAddr) : signerAddr\n return createMultisigTransactionWithSignature(\n transaction,\n {\n rawSig: signature,\n myPk: signerAddressObj.publicKey,\n },\n metadata,\n )\n}\n\n/**\n * Takes a multisig transaction blob, and appends a given raw signature to it.\n * This makes it possible to compile a multisig signature using only raw signatures from external methods.\n * @param multisigTxnBlob - an encoded multisig txn. Supports non-payment txn types.\n * @param version - multisig version\n * @param threshold - multisig threshold\n * @param addrs - a list of Algorand addresses representing possible signers for this multisig. Order is important.\n * @param signerAddr - address of the signer\n * @param signature - raw multisig signature\n * @returns object containing txID, and blob representing encoded multisig txn\n */\nfunction appendSignRawMultisigSignature(\n multisigTxn: SignedTransaction,\n { version, threshold, addrs }: MultisigMetadata,\n signerAddr: string | Address,\n signature: Uint8Array,\n): SignedTransaction {\n const publicKeys = toPublicKeys(addrs)\n // obtain underlying txn, sign it, and merge it\n const partialSigned = partialSignWithMultisigSignature(multisigTxn.txn, { version, threshold, publicKeys }, signerAddr, signature)\n return mergeMultisigTransactions([multisigTxn, partialSigned])\n}\n\n/**\n * Takes multisig parameters and returns a 32 byte typed array public key,\n * representing an address that identifies the \"exact group, version, and public keys\" that are required for signing.\n * Hash(\"MultisigAddr\" || version uint8 || threshold uint8 || PK1 || PK2 || ...)\n * Encoding this output yields a human readable address.\n * @param version - multisig version\n * @param threshold - multisig threshold\n * @param pks - array of typed array public keys\n */\nfunction addressFromMultisigPreImg({\n version,\n threshold,\n publicKeys,\n}: Omit<MultisigMetadata, 'addrs'> & {\n publicKeys: Uint8Array[]\n}): Address {\n if (version > 255 || version < 0) {\n // ^ a tad redundant, but in case in the future version != 1, still check for uint8\n throw new Error(`${INVALID_MSIG_VERSION_ERROR_MSG}: ${version}`)\n }\n if (threshold === 0 || publicKeys.length === 0 || threshold > publicKeys.length || threshold > 255) {\n throw new Error(INVALID_MSIG_THRESHOLD_ERROR_MSG)\n }\n const pkLen = ALGORAND_ADDRESS_BYTE_LENGTH - ALGORAND_CHECKSUM_BYTE_LENGTH\n if (pkLen !== PUBLIC_KEY_BYTE_LENGTH) {\n throw new Error(UNEXPECTED_PK_LEN_ERROR_MSG)\n }\n const merged = new Uint8Array(MULTISIG_PREIMG2ADDR_PREFIX.length + 2 + pkLen * publicKeys.length)\n merged.set(MULTISIG_PREIMG2ADDR_PREFIX, 0)\n merged.set([version], MULTISIG_PREIMG2ADDR_PREFIX.length)\n merged.set([threshold], MULTISIG_PREIMG2ADDR_PREFIX.length + 1)\n for (let i = 0; i < publicKeys.length; i++) {\n if (publicKeys[i].length !== pkLen) {\n throw new Error(INVALID_MSIG_PK_ERROR_MSG)\n }\n merged.set(publicKeys[i], MULTISIG_PREIMG2ADDR_PREFIX.length + 2 + i * pkLen)\n }\n return new Address(Uint8Array.from(hash(merged)))\n}\n\n/**\n * Takes multisig parameters and returns a human readable Algorand address.\n * This is equivalent to fromMultisigPreImg, but interfaces with encoded addresses.\n * @param version - multisig version\n * @param threshold - multisig threshold\n * @param addrs - array of encoded addresses\n */\nfunction addressFromMultisigPreImgAddrs({ version, threshold, addrs }: MultisigMetadata): Address {\n return addressFromMultisigPreImg({\n version,\n threshold,\n publicKeys: toPublicKeys(addrs),\n })\n}\n\n/**\n * Takes multisig metadata (preimage) and returns the corresponding human readable Algorand address.\n * @param version - multisig version\n * @param threshold - multisig threshold\n * @param addrs - list of Algorand addresses\n */\nconst multisigAddress: typeof addressFromMultisigPreImgAddrs = addressFromMultisigPreImgAddrs\n\nexport interface MultisigMetadata {\n /**\n * Multisig version\n */\n version: number\n\n /**\n * Multisig threshold value. Authorization requires a subset of signatures,\n * equal to or greater than the threshold value.\n */\n threshold: number\n\n /**\n * A list of Algorand addresses representing possible signers for this multisig. Order is important.\n */\n addrs: Array<Address>\n}\n\n/** Account wrapper that supports partial or full multisig signing. */\nexport class MultisigAccount implements AddressWithTransactionSigner {\n _params: MultisigMetadata\n _subSigners: (AddressWithTransactionSigner & AddressWithDelegatedLsigSigner)[]\n _addr: Address\n _signer: TransactionSigner\n\n /** The parameters for the multisig account */\n get params(): Readonly<MultisigMetadata> {\n return this._params\n }\n\n /** The list of accounts that are present to sign transactions or lsigs */\n get subSigners() {\n return this._subSigners\n }\n\n /** The address of the multisig account */\n get addr(): Readonly<Address> {\n return this._addr\n }\n\n /** The transaction signer for the multisig account */\n get signer(): TransactionSigner {\n return this._signer\n }\n\n static fromSignature(signature: MultisigSignature): MultisigAccount {\n const params: MultisigMetadata = {\n version: signature.version,\n threshold: signature.threshold,\n addrs: signature.subsigs.map((subsig) => new Address(subsig.publicKey)),\n }\n\n return new MultisigAccount(params, [])\n }\n\n constructor(multisigParams: MultisigMetadata, subSigners: (AddressWithTransactionSigner & AddressWithDelegatedLsigSigner)[]) {\n this._params = multisigParams\n this._subSigners = subSigners\n this._addr = multisigAddress(multisigParams)\n this._signer = async (txns: Transaction[], indexesToSign: number[]): Promise<Uint8Array[]> => {\n const txnsToSign = txns.filter((_, index) => indexesToSign.includes(index))\n const signedMsigTxns: SignedTransaction[] = []\n\n for (const txn of txnsToSign) {\n let signedMsigTxn = createMultisigTransaction(txn, this._params)\n\n for (const subSigner of this.subSigners) {\n const stxn = (await subSigner.signer([txn], [0]))[0]\n const sig = decodeSignedTransaction(stxn).sig\n\n if (!sig) {\n throw new Error(\n `Signer for address ${subSigner.addr.toString()} did not produce a valid signature when signing ${txn.txId()} for multisig account ${this._addr.toString()}`,\n )\n }\n\n signedMsigTxn = appendSignRawMultisigSignature(signedMsigTxn, this._params, subSigner.addr, sig)\n }\n\n signedMsigTxns.push(signedMsigTxn)\n }\n\n return signedMsigTxns.map(encodeSignedTransaction)\n }\n }\n\n createMultisigTransaction(txn: Transaction): SignedTransaction {\n return createMultisigTransaction(txn, this._params)\n }\n\n createMultisigSignature(): MultisigSignature {\n const pks = toPublicKeys(this._params.addrs)\n const subsignatures: MultisigSubsignature[] = pks.map((pk) => ({\n publicKey: pk,\n signature: undefined,\n }))\n\n return {\n version: this._params.version,\n threshold: this._params.threshold,\n subsigs: subsignatures,\n }\n }\n\n applySignatureToTxn(txn: SignedTransaction, pubkey: Uint8Array, signature: Uint8Array): void {\n if (!txn.msig) {\n const createdTxn = this.createMultisigTransaction(txn.txn)\n txn.msig = createdTxn.msig\n }\n\n txn.msig = applyMultisigSubsignature(txn.msig!, pubkey, signature)\n }\n\n applySignature(msigSignature: MultisigSignature, pubkey: Uint8Array, signature: Uint8Array): MultisigSignature {\n if (msigSignature.version !== this._params.version || msigSignature.threshold !== this._params.threshold) {\n const thisParams = {\n version: this._params.version,\n threshold: this._params.threshold,\n participants: this._params.addrs.map((addr) => addr.toString()),\n }\n\n const givenParams = {\n version: msigSignature.version,\n threshold: msigSignature.threshold,\n participants: msigSignature.subsigs.map((subsig) => new Address(subsig.publicKey).toString()),\n }\n\n throw new Error(\n `Multisig signature parameters do not match expected multisig parameters. Multisig params: ${JSON.stringify(thisParams)}, signature: ${JSON.stringify(givenParams)}`,\n )\n }\n\n return applyMultisigSubsignature(msigSignature, pubkey, signature)\n }\n}\n"],"mappings":";;;;;;;AAoBA,MAAM,gBAAgB,UAAiD,MAAM,KAAK,SAAS,WAAW,KAAK,CAAC,UAAU;;;;;;;AAQtH,SAAS,0BACP,mBACA,aACA,WACmB;CACnB,IAAI,QAAQ;CACZ,MAAM,mBAAmB,kBAAkB,QAAQ,KAAK,WAAW;AACjE,MAAI,WAAW,OAAO,WAAW,YAAY,EAAE;AAC7C,WAAQ;AACR,UAAO;IAAE,GAAG;IAAQ,KAAK;IAAW;;AAEtC,SAAO;GACP;AAEF,KAAI,CAAC,MACH,OAAM,IAAI,MAAM,6CAA6C;AAG/D,QAAO;EACL,GAAG;EACH,SAAS;EACV;;AAIH,MAAM,8BAA8B,IAAI,WAAW;CAAC;CAAI;CAAK;CAAK;CAAK;CAAK;CAAK;CAAK;CAAK;CAAI;CAAK;CAAK;CAAI,CAAC;AAE9G,MAAM,iCAAiC;AACvC,MAAM,mCAAmC;AACzC,MAAM,4BAA4B;AAClC,MAAM,8BAA8B;AAEpC,MAAM,uCAAuC;AAC7C,MAAM,oCAAoC;AAC1C,MAAM,wCAAwC;AAC9C,MAAM,0CAA0C;AAChD,MAAM,wCAAwC;AAC9C,MAAM,sCAAsC;AAC5C,MAAM,mCAAmC;;;;;;;;;AAUzC,SAAS,0BAA0B,KAAkB,EAAE,SAAS,WAAW,SAA2B;CAEpG,MAAM,MAAM,aAAa,MAAM;CAS/B,MAAMA,OAA0B;EAC9B;EACA;EACA,SAXoB,IAAI,KACvB,QACE;GACC,WAAW;GACX,KAAK;GACN,EACJ;EAMA;CAID,MAAM,WAAW,0BAA0B;EACzC;EACA;EACA,YAAY;EACb,CAAC;CACF,IAAIC;AACJ,KAAI,CAAC,SAAS,OAAO,IAAI,OAAO,CAC9B,eAAc;AAShB,QANqC;EAC9B;EACC;EACN;EACD;;;;;;;;;;;;AAwBH,SAAS,uCACP,KACA,EAAE,QAAQ,QACV,EAAE,SAAS,WAAW,cACH;CAEnB,MAAM,YAAY,0BAA0B,KAAK;EAC/C;EACA;EACA,OAAO,WAAW,KAAK,OAAO,IAAI,QAAQ,GAAG,CAAC;EAC/C,CAAC;CAEF,IAAI,WAAW;CAGf,MAAM,iBAAiB,UAAU,KAAM,QAAQ,KAAK,WAAW;AAC7D,MAAI,WAAW,OAAO,WAAW,KAAK,EAAE;AACtC,cAAW;AACX,UAAO;IAAE,GAAG;IAAQ,KAAK;IAAQ;;AAEnC,SAAO;GACP;AAEF,KAAI,CAAC,SACH,OAAM,IAAI,MAAM,iCAAiC;AAWnD,QAR4C;EAC1C,GAAG;EACH,MAAM;GACJ,GAAG,UAAU;GACb,SAAS;GACV;EACF;;;;;;;AAUH,SAAS,0BAA0B,kBAA0D;AAC3F,KAAI,iBAAiB,SAAS,EAC5B,OAAM,IAAI,MAAM,qCAAqC;CAEvD,MAAM,WAAW,iBAAiB;AAClC,KAAI,CAAC,SAAS,KACZ,OAAM,IAAI,MAAM,sEAAsE;CAExF,MAAM,UAAU,SAAS,IAAI,MAAM;CACnC,MAAM,cAAc,SAAS;CAM7B,MAAM,cAAc,0BALA;EAClB,SAAS,SAAS,KAAK;EACvB,WAAW,SAAS,KAAK;EACzB,YAAY,SAAS,KAAK,QAAQ,KAAK,WAAW,OAAO,UAAU;EACpE,CACyD;CAE1D,MAAMC,aAAqC,SAAS,KAAK,QAAQ,KAAK,SAAS,EAAE,GAAG,KAAK,EAAE;AAC3F,MAAK,IAAI,IAAI,GAAG,IAAI,iBAAiB,QAAQ,KAAK;EAChD,MAAM,SAAS,iBAAiB;AAChC,MAAI,CAAC,OAAO,KACV,OAAM,IAAI,MAAM,qEAAqE,IAAI;AAG3F,MAAI,OAAO,IAAI,MAAM,KAAK,QACxB,OAAM,IAAI,MAAM,kCAAkC;AAIpD,MAAI,gBADa,OAAO,YAEtB,OAAM,IAAI,MAAM,sCAAsC;AAIxD,MAAI,OAAO,KAAK,QAAQ,WAAW,SAAS,KAAK,QAAQ,OACvD,OAAM,IAAI,MAAM,wCAAwC;EAO1D,MAAM,YAAY,0BAL6B;GAC7C,SAAS,OAAO,KAAK;GACrB,WAAW,OAAO,KAAK;GACvB,YAAY,OAAO,KAAK,QAAQ,KAAK,WAAW,OAAO,UAAU;GAClE,CACkD;AACnD,MAAI,YAAY,UAAU,KAAK,UAAU,UAAU,CACjD,OAAM,IAAI,MAAM,wCAAwC;AAI1D,SAAO,KAAK,QAAQ,SAAS,WAAW,UAAU;AAChD,OAAI,CAAC,UAAU,IAAK;GACpB,MAAM,UAAU,WAAW;AAC3B,OAAI,QAAQ,OAAO,CAAC,WAAW,UAAU,KAAK,QAAQ,IAAI,CAExD,OAAM,IAAI,MAAM,sCAAsC;AAExD,WAAQ,MAAM,UAAU;IACxB;;AAeJ,QANqC;EACnC,KAAK,SAAS;EACd,MAR8B;GAC9B,SAAS,SAAS,KAAK;GACvB,WAAW,SAAS,KAAK;GACzB,SAAS;GACV;EAKC,aAAa;EACd;;;;;;;;;;;AAcH,SAAS,iCACP,aACA,UACA,YACA,WACA;AACA,KAAI,UAAU,UAAU,sBACtB,OAAM,IAAI,MAAM,oCAAoC;AAGtD,QAAO,uCACL,aACA;EACE,QAAQ;EACR,OALqB,OAAO,eAAe,WAAW,QAAQ,WAAW,WAAW,GAAG,YAKhE;EACxB,EACD,SACD;;;;;;;;;;;;;AAcH,SAAS,+BACP,aACA,EAAE,SAAS,WAAW,SACtB,YACA,WACmB;CACnB,MAAM,aAAa,aAAa,MAAM;AAGtC,QAAO,0BAA0B,CAAC,aADZ,iCAAiC,YAAY,KAAK;EAAE;EAAS;EAAW;EAAY,EAAE,YAAY,UAAU,CACrE,CAAC;;;;;;;;;;;AAYhE,SAAS,0BAA0B,EACjC,SACA,WACA,cAGU;AACV,KAAI,UAAU,OAAO,UAAU,EAE7B,OAAM,IAAI,MAAM,GAAG,+BAA+B,IAAI,UAAU;AAElE,KAAI,cAAc,KAAK,WAAW,WAAW,KAAK,YAAY,WAAW,UAAU,YAAY,IAC7F,OAAM,IAAI,MAAM,iCAAiC;CAEnD,MAAM,QAAQ,+BAA+B;AAC7C,KAAI,UAAU,uBACZ,OAAM,IAAI,MAAM,4BAA4B;CAE9C,MAAM,SAAS,IAAI,WAAW,4BAA4B,SAAS,IAAI,QAAQ,WAAW,OAAO;AACjG,QAAO,IAAI,6BAA6B,EAAE;AAC1C,QAAO,IAAI,CAAC,QAAQ,EAAE,4BAA4B,OAAO;AACzD,QAAO,IAAI,CAAC,UAAU,EAAE,4BAA4B,SAAS,EAAE;AAC/D,MAAK,IAAI,IAAI,GAAG,IAAI,WAAW,QAAQ,KAAK;AAC1C,MAAI,WAAW,GAAG,WAAW,MAC3B,OAAM,IAAI,MAAM,0BAA0B;AAE5C,SAAO,IAAI,WAAW,IAAI,4BAA4B,SAAS,IAAI,IAAI,MAAM;;AAE/E,QAAO,IAAI,QAAQ,WAAW,KAAK,KAAK,OAAO,CAAC,CAAC;;;;;;;;;AAUnD,SAAS,+BAA+B,EAAE,SAAS,WAAW,SAAoC;AAChG,QAAO,0BAA0B;EAC/B;EACA;EACA,YAAY,aAAa,MAAM;EAChC,CAAC;;;;;;;;AASJ,MAAMC,kBAAyD;;AAqB/D,IAAa,kBAAb,MAAa,gBAAwD;CACnE;CACA;CACA;CACA;;CAGA,IAAI,SAAqC;AACvC,SAAO,KAAK;;;CAId,IAAI,aAAa;AACf,SAAO,KAAK;;;CAId,IAAI,OAA0B;AAC5B,SAAO,KAAK;;;CAId,IAAI,SAA4B;AAC9B,SAAO,KAAK;;CAGd,OAAO,cAAc,WAA+C;AAOlE,SAAO,IAAI,gBANsB;GAC/B,SAAS,UAAU;GACnB,WAAW,UAAU;GACrB,OAAO,UAAU,QAAQ,KAAK,WAAW,IAAI,QAAQ,OAAO,UAAU,CAAC;GACxE,EAEkC,EAAE,CAAC;;CAGxC,YAAY,gBAAkC,YAA+E;AAC3H,OAAK,UAAU;AACf,OAAK,cAAc;AACnB,OAAK,QAAQ,gBAAgB,eAAe;AAC5C,OAAK,UAAU,OAAO,MAAqB,kBAAmD;GAC5F,MAAM,aAAa,KAAK,QAAQ,GAAG,UAAU,cAAc,SAAS,MAAM,CAAC;GAC3E,MAAMC,iBAAsC,EAAE;AAE9C,QAAK,MAAM,OAAO,YAAY;IAC5B,IAAI,gBAAgB,0BAA0B,KAAK,KAAK,QAAQ;AAEhE,SAAK,MAAM,aAAa,KAAK,YAAY;KACvC,MAAM,QAAQ,MAAM,UAAU,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE;KAClD,MAAM,MAAM,wBAAwB,KAAK,CAAC;AAE1C,SAAI,CAAC,IACH,OAAM,IAAI,MACR,sBAAsB,UAAU,KAAK,UAAU,CAAC,kDAAkD,IAAI,MAAM,CAAC,wBAAwB,KAAK,MAAM,UAAU,GAC3J;AAGH,qBAAgB,+BAA+B,eAAe,KAAK,SAAS,UAAU,MAAM,IAAI;;AAGlG,mBAAe,KAAK,cAAc;;AAGpC,UAAO,eAAe,IAAI,wBAAwB;;;CAItD,0BAA0B,KAAqC;AAC7D,SAAO,0BAA0B,KAAK,KAAK,QAAQ;;CAGrD,0BAA6C;EAE3C,MAAMC,gBADM,aAAa,KAAK,QAAQ,MAAM,CACM,KAAK,QAAQ;GAC7D,WAAW;GACX,WAAW;GACZ,EAAE;AAEH,SAAO;GACL,SAAS,KAAK,QAAQ;GACtB,WAAW,KAAK,QAAQ;GACxB,SAAS;GACV;;CAGH,oBAAoB,KAAwB,QAAoB,WAA6B;AAC3F,MAAI,CAAC,IAAI,KAEP,KAAI,OADe,KAAK,0BAA0B,IAAI,IAAI,CACpC;AAGxB,MAAI,OAAO,0BAA0B,IAAI,MAAO,QAAQ,UAAU;;CAGpE,eAAe,eAAkC,QAAoB,WAA0C;AAC7G,MAAI,cAAc,YAAY,KAAK,QAAQ,WAAW,cAAc,cAAc,KAAK,QAAQ,WAAW;GACxG,MAAM,aAAa;IACjB,SAAS,KAAK,QAAQ;IACtB,WAAW,KAAK,QAAQ;IACxB,cAAc,KAAK,QAAQ,MAAM,KAAK,SAAS,KAAK,UAAU,CAAC;IAChE;GAED,MAAM,cAAc;IAClB,SAAS,cAAc;IACvB,WAAW,cAAc;IACzB,cAAc,cAAc,QAAQ,KAAK,WAAW,IAAI,QAAQ,OAAO,UAAU,CAAC,UAAU,CAAC;IAC9F;AAED,SAAM,IAAI,MACR,6FAA6F,KAAK,UAAU,WAAW,CAAC,eAAe,KAAK,UAAU,YAAY,GACnK;;AAGH,SAAO,0BAA0B,eAAe,QAAQ,UAAU"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { Address, Addressable, ReadableAddress } from "../../common/src/address.js";
|
|
2
|
+
import { Expand } from "../../common/src/expand.js";
|
|
3
|
+
import { Transaction } from "./transactions/transaction.js";
|
|
4
|
+
import { DelegatedLsigSigner, ProgramDataSigner } from "./logicsig.js";
|
|
5
|
+
|
|
6
|
+
//#region packages/transact/src/signer.d.ts
|
|
7
|
+
/** Function for signing a group of transactions */
|
|
8
|
+
type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>;
|
|
9
|
+
/** A transaction signer attached to an address */
|
|
10
|
+
interface AddressWithTransactionSigner extends Addressable {
|
|
11
|
+
signer: TransactionSigner;
|
|
12
|
+
}
|
|
13
|
+
/** An address that can be used to send transactions that may or may not have a signer */
|
|
14
|
+
type SendingAddress = ReadableAddress | AddressWithTransactionSigner;
|
|
15
|
+
/** A delegated logic signature signer attached to an address */
|
|
16
|
+
interface AddressWithDelegatedLsigSigner extends Addressable {
|
|
17
|
+
lsigSigner: DelegatedLsigSigner;
|
|
18
|
+
}
|
|
19
|
+
interface AddressWithProgramDataSigner extends Addressable {
|
|
20
|
+
programDataSigner: ProgramDataSigner;
|
|
21
|
+
}
|
|
22
|
+
type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>;
|
|
23
|
+
interface AddressWithMxBytesSigner extends Addressable {
|
|
24
|
+
mxBytesSigner: MxBytesSigner;
|
|
25
|
+
}
|
|
26
|
+
type AddressWithSigners = Expand<Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner>;
|
|
27
|
+
/**
|
|
28
|
+
* Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback
|
|
29
|
+
* @param args - The arguments for generating signers
|
|
30
|
+
* @param args.ed25519Pubkey - The ed25519 public key used for signing
|
|
31
|
+
* @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.
|
|
32
|
+
* @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key
|
|
33
|
+
* @returns An object containing the sending address and various signer functions
|
|
34
|
+
*/
|
|
35
|
+
declare function generateAddressWithSigners(args: {
|
|
36
|
+
ed25519Pubkey: Uint8Array;
|
|
37
|
+
sendingAddress?: Address;
|
|
38
|
+
rawEd25519Signer: (bytesToSign: Uint8Array) => Promise<Uint8Array>;
|
|
39
|
+
}): AddressWithSigners;
|
|
40
|
+
/**
|
|
41
|
+
* Create a makeEmptyTransactionSigner that does not specify any signer or
|
|
42
|
+
* signing capabilities. This should only be used to simulate transactions.
|
|
43
|
+
*/
|
|
44
|
+
declare function makeEmptyTransactionSigner(): TransactionSigner;
|
|
45
|
+
//#endregion
|
|
46
|
+
export { AddressWithDelegatedLsigSigner, AddressWithMxBytesSigner, AddressWithProgramDataSigner, AddressWithSigners, AddressWithTransactionSigner, MxBytesSigner, SendingAddress, TransactionSigner, generateAddressWithSigners, makeEmptyTransactionSigner };
|
|
47
|
+
//# sourceMappingURL=signer.d.ts.map
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
const require_array = require('../../common/src/array.js');
|
|
2
|
+
const require_address = require('../../common/src/address.js');
|
|
3
|
+
const require_transaction = require('./transactions/transaction.js');
|
|
4
|
+
const require_signed_transaction = require('./transactions/signed-transaction.js');
|
|
5
|
+
|
|
6
|
+
//#region packages/transact/src/signer.ts
|
|
7
|
+
const SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]);
|
|
8
|
+
/**
|
|
9
|
+
* Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback
|
|
10
|
+
* @param args - The arguments for generating signers
|
|
11
|
+
* @param args.ed25519Pubkey - The ed25519 public key used for signing
|
|
12
|
+
* @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.
|
|
13
|
+
* @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key
|
|
14
|
+
* @returns An object containing the sending address and various signer functions
|
|
15
|
+
*/
|
|
16
|
+
function generateAddressWithSigners(args) {
|
|
17
|
+
const { ed25519Pubkey, rawEd25519Signer } = args;
|
|
18
|
+
const authAddr = new require_address.Address(ed25519Pubkey);
|
|
19
|
+
const sendingAddress = args.sendingAddress ?? authAddr;
|
|
20
|
+
const signer = async (txnGroup, indexesToSign) => {
|
|
21
|
+
const stxns = [];
|
|
22
|
+
for (const index of indexesToSign) {
|
|
23
|
+
const txn = txnGroup[index];
|
|
24
|
+
const stxn = {
|
|
25
|
+
txn,
|
|
26
|
+
sig: await rawEd25519Signer(require_transaction.encodeTransaction(txn))
|
|
27
|
+
};
|
|
28
|
+
if (!txn.sender.equals(sendingAddress)) stxn.authAddress = authAddr;
|
|
29
|
+
stxns.push(stxn);
|
|
30
|
+
}
|
|
31
|
+
return stxns.map(require_signed_transaction.encodeSignedTransaction);
|
|
32
|
+
};
|
|
33
|
+
const lsigSigner = async (lsig, msig) => {
|
|
34
|
+
return await rawEd25519Signer(lsig.bytesToSignForDelegation(msig));
|
|
35
|
+
};
|
|
36
|
+
const programDataSigner = async (data, lsig) => {
|
|
37
|
+
return await rawEd25519Signer(lsig.programDataToSign(data));
|
|
38
|
+
};
|
|
39
|
+
const mxBytesSigner = async (bytes) => {
|
|
40
|
+
return await rawEd25519Signer(require_array.concatArrays(SIGN_BYTES_PREFIX, bytes));
|
|
41
|
+
};
|
|
42
|
+
return {
|
|
43
|
+
addr: sendingAddress,
|
|
44
|
+
signer,
|
|
45
|
+
lsigSigner,
|
|
46
|
+
programDataSigner,
|
|
47
|
+
mxBytesSigner
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Create a makeEmptyTransactionSigner that does not specify any signer or
|
|
52
|
+
* signing capabilities. This should only be used to simulate transactions.
|
|
53
|
+
*/
|
|
54
|
+
function makeEmptyTransactionSigner() {
|
|
55
|
+
return (txnGroup, indexesToSign) => {
|
|
56
|
+
const unsigned = [];
|
|
57
|
+
for (const index of indexesToSign) {
|
|
58
|
+
const stxn = {
|
|
59
|
+
txn: txnGroup[index],
|
|
60
|
+
sig: new Uint8Array(64).fill(0)
|
|
61
|
+
};
|
|
62
|
+
unsigned.push(require_signed_transaction.encodeSignedTransaction(stxn));
|
|
63
|
+
}
|
|
64
|
+
return Promise.resolve(unsigned);
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
//#endregion
|
|
69
|
+
exports.generateAddressWithSigners = generateAddressWithSigners;
|
|
70
|
+
exports.makeEmptyTransactionSigner = makeEmptyTransactionSigner;
|
|
71
|
+
//# sourceMappingURL=signer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signer.js","names":["Address","signer: TransactionSigner","stxns: SignedTransaction[]","stxn: SignedTransaction","encodeTransaction","encodeSignedTransaction","lsigSigner: DelegatedLsigSigner","programDataSigner: ProgramDataSigner","mxBytesSigner: MxBytesSigner","concatArrays","unsigned: Uint8Array[]"],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport { DelegatedLsigSigner, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction } from './transactions/signed-transaction'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: (bytesToSign: Uint8Array) => Promise<Uint8Array>\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map(encodeSignedTransaction)\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n"],"mappings":";;;;;;AAmCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAIA,wBAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAMC,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAMC,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAMC,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJC,sCAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,IAAIC,mDAAwB;;CAG3C,MAAMC,aAAkC,OAAO,MAAM,SAAS;AAE5D,SAAO,MAAM,iBADO,KAAK,yBAAyB,KAAK,CACb;;CAG5C,MAAMC,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAMC,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADOC,2BAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAMC,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAMP,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,YAAS,KAAKE,mDAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { concatArrays } from "../../common/src/array.mjs";
|
|
2
|
+
import { Address } from "../../common/src/address.mjs";
|
|
3
|
+
import { encodeTransaction } from "./transactions/transaction.mjs";
|
|
4
|
+
import { encodeSignedTransaction } from "./transactions/signed-transaction.mjs";
|
|
5
|
+
|
|
6
|
+
//#region packages/transact/src/signer.ts
|
|
7
|
+
const SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]);
|
|
8
|
+
/**
|
|
9
|
+
* Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback
|
|
10
|
+
* @param args - The arguments for generating signers
|
|
11
|
+
* @param args.ed25519Pubkey - The ed25519 public key used for signing
|
|
12
|
+
* @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.
|
|
13
|
+
* @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key
|
|
14
|
+
* @returns An object containing the sending address and various signer functions
|
|
15
|
+
*/
|
|
16
|
+
function generateAddressWithSigners(args) {
|
|
17
|
+
const { ed25519Pubkey, rawEd25519Signer } = args;
|
|
18
|
+
const authAddr = new Address(ed25519Pubkey);
|
|
19
|
+
const sendingAddress = args.sendingAddress ?? authAddr;
|
|
20
|
+
const signer = async (txnGroup, indexesToSign) => {
|
|
21
|
+
const stxns = [];
|
|
22
|
+
for (const index of indexesToSign) {
|
|
23
|
+
const txn = txnGroup[index];
|
|
24
|
+
const stxn = {
|
|
25
|
+
txn,
|
|
26
|
+
sig: await rawEd25519Signer(encodeTransaction(txn))
|
|
27
|
+
};
|
|
28
|
+
if (!txn.sender.equals(sendingAddress)) stxn.authAddress = authAddr;
|
|
29
|
+
stxns.push(stxn);
|
|
30
|
+
}
|
|
31
|
+
return stxns.map(encodeSignedTransaction);
|
|
32
|
+
};
|
|
33
|
+
const lsigSigner = async (lsig, msig) => {
|
|
34
|
+
return await rawEd25519Signer(lsig.bytesToSignForDelegation(msig));
|
|
35
|
+
};
|
|
36
|
+
const programDataSigner = async (data, lsig) => {
|
|
37
|
+
return await rawEd25519Signer(lsig.programDataToSign(data));
|
|
38
|
+
};
|
|
39
|
+
const mxBytesSigner = async (bytes) => {
|
|
40
|
+
return await rawEd25519Signer(concatArrays(SIGN_BYTES_PREFIX, bytes));
|
|
41
|
+
};
|
|
42
|
+
return {
|
|
43
|
+
addr: sendingAddress,
|
|
44
|
+
signer,
|
|
45
|
+
lsigSigner,
|
|
46
|
+
programDataSigner,
|
|
47
|
+
mxBytesSigner
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Create a makeEmptyTransactionSigner that does not specify any signer or
|
|
52
|
+
* signing capabilities. This should only be used to simulate transactions.
|
|
53
|
+
*/
|
|
54
|
+
function makeEmptyTransactionSigner() {
|
|
55
|
+
return (txnGroup, indexesToSign) => {
|
|
56
|
+
const unsigned = [];
|
|
57
|
+
for (const index of indexesToSign) {
|
|
58
|
+
const stxn = {
|
|
59
|
+
txn: txnGroup[index],
|
|
60
|
+
sig: new Uint8Array(64).fill(0)
|
|
61
|
+
};
|
|
62
|
+
unsigned.push(encodeSignedTransaction(stxn));
|
|
63
|
+
}
|
|
64
|
+
return Promise.resolve(unsigned);
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
//#endregion
|
|
69
|
+
export { generateAddressWithSigners, makeEmptyTransactionSigner };
|
|
70
|
+
//# sourceMappingURL=signer.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signer.mjs","names":["signer: TransactionSigner","stxns: SignedTransaction[]","stxn: SignedTransaction","lsigSigner: DelegatedLsigSigner","programDataSigner: ProgramDataSigner","mxBytesSigner: MxBytesSigner","unsigned: Uint8Array[]"],"sources":["../../../../packages/transact/src/signer.ts"],"sourcesContent":["import { Address, Addressable, concatArrays, Expand, ReadableAddress } from '@algorandfoundation/algokit-common'\nimport { encodeTransaction, Transaction } from './transactions/transaction'\nimport { DelegatedLsigSigner, ProgramDataSigner } from './logicsig'\nimport { encodeSignedTransaction, SignedTransaction } from './transactions/signed-transaction'\n\n/** Function for signing a group of transactions */\nexport type TransactionSigner = (txnGroup: Transaction[], indexesToSign: number[]) => Promise<Uint8Array[]>\n\n/** A transaction signer attached to an address */\nexport interface AddressWithTransactionSigner extends Addressable {\n signer: TransactionSigner\n}\n\n/** An address that can be used to send transactions that may or may not have a signer */\nexport type SendingAddress = ReadableAddress | AddressWithTransactionSigner\n\n/** A delegated logic signature signer attached to an address */\nexport interface AddressWithDelegatedLsigSigner extends Addressable {\n lsigSigner: DelegatedLsigSigner\n}\n\nexport interface AddressWithProgramDataSigner extends Addressable {\n programDataSigner: ProgramDataSigner\n}\n\nexport type MxBytesSigner = (bytesToSign: Uint8Array) => Promise<Uint8Array>\n\nexport interface AddressWithMxBytesSigner extends Addressable {\n mxBytesSigner: MxBytesSigner\n}\n\nexport type AddressWithSigners = Expand<\n Addressable & AddressWithTransactionSigner & AddressWithDelegatedLsigSigner & AddressWithProgramDataSigner & AddressWithMxBytesSigner\n>\n\nconst SIGN_BYTES_PREFIX = Uint8Array.from([77, 88]) // \"MX\"\n\n/**\n * Generate type-safe domain-separated signer callbacks given an ed25519 pubkey and a signing callback\n * @param args - The arguments for generating signers\n * @param args.ed25519Pubkey - The ed25519 public key used for signing\n * @param args.sendingAddress - The address that will be used as the sender of transactions. If not provided, defaults to the address derived from the ed25519 public key. This is useful when signing for a rekeyed account where the sending address differs from the auth address.\n * @param args.rawEd25519Signer - A callback function that signs raw bytes using the ed25519 private key\n * @returns An object containing the sending address and various signer functions\n */\nexport function generateAddressWithSigners(args: {\n ed25519Pubkey: Uint8Array\n sendingAddress?: Address\n rawEd25519Signer: (bytesToSign: Uint8Array) => Promise<Uint8Array>\n}): AddressWithSigners {\n const { ed25519Pubkey, rawEd25519Signer } = args\n const authAddr = new Address(ed25519Pubkey)\n const sendingAddress = args.sendingAddress ?? authAddr\n\n const signer: TransactionSigner = async (txnGroup: Transaction[], indexesToSign: number[]) => {\n const stxns: SignedTransaction[] = []\n for (const index of indexesToSign) {\n const txn = txnGroup[index]\n const bytesToSign = encodeTransaction(txn)\n const signature = await rawEd25519Signer(bytesToSign)\n const stxn: SignedTransaction = {\n txn,\n sig: signature,\n }\n\n if (!txn.sender.equals(sendingAddress)) {\n stxn.authAddress = authAddr\n }\n\n stxns.push(stxn)\n }\n\n return stxns.map(encodeSignedTransaction)\n }\n\n const lsigSigner: DelegatedLsigSigner = async (lsig, msig) => {\n const bytesToSign = lsig.bytesToSignForDelegation(msig)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const programDataSigner: ProgramDataSigner = async (data, lsig) => {\n const bytesToSign = lsig.programDataToSign(data)\n return await rawEd25519Signer(bytesToSign)\n }\n\n const mxBytesSigner: MxBytesSigner = async (bytes: Uint8Array) => {\n const bytesToSign = concatArrays(SIGN_BYTES_PREFIX, bytes)\n return await rawEd25519Signer(bytesToSign)\n }\n\n return { addr: sendingAddress, signer, lsigSigner, programDataSigner, mxBytesSigner }\n}\n\n/**\n * Create a makeEmptyTransactionSigner that does not specify any signer or\n * signing capabilities. This should only be used to simulate transactions.\n */\nexport function makeEmptyTransactionSigner(): TransactionSigner {\n return (txnGroup: Transaction[], indexesToSign: number[]) => {\n const unsigned: Uint8Array[] = []\n\n for (const index of indexesToSign) {\n const stxn: SignedTransaction = {\n txn: txnGroup[index],\n sig: new Uint8Array(64).fill(0),\n }\n unsigned.push(encodeSignedTransaction(stxn))\n }\n\n return Promise.resolve(unsigned)\n }\n}\n"],"mappings":";;;;;;AAmCA,MAAM,oBAAoB,WAAW,KAAK,CAAC,IAAI,GAAG,CAAC;;;;;;;;;AAUnD,SAAgB,2BAA2B,MAIpB;CACrB,MAAM,EAAE,eAAe,qBAAqB;CAC5C,MAAM,WAAW,IAAI,QAAQ,cAAc;CAC3C,MAAM,iBAAiB,KAAK,kBAAkB;CAE9C,MAAMA,SAA4B,OAAO,UAAyB,kBAA4B;EAC5F,MAAMC,QAA6B,EAAE;AACrC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAM,MAAM,SAAS;GAGrB,MAAMC,OAA0B;IAC9B;IACA,KAHgB,MAAM,iBADJ,kBAAkB,IAAI,CACW;IAIpD;AAED,OAAI,CAAC,IAAI,OAAO,OAAO,eAAe,CACpC,MAAK,cAAc;AAGrB,SAAM,KAAK,KAAK;;AAGlB,SAAO,MAAM,IAAI,wBAAwB;;CAG3C,MAAMC,aAAkC,OAAO,MAAM,SAAS;AAE5D,SAAO,MAAM,iBADO,KAAK,yBAAyB,KAAK,CACb;;CAG5C,MAAMC,oBAAuC,OAAO,MAAM,SAAS;AAEjE,SAAO,MAAM,iBADO,KAAK,kBAAkB,KAAK,CACN;;CAG5C,MAAMC,gBAA+B,OAAO,UAAsB;AAEhE,SAAO,MAAM,iBADO,aAAa,mBAAmB,MAAM,CAChB;;AAG5C,QAAO;EAAE,MAAM;EAAgB;EAAQ;EAAY;EAAmB;EAAe;;;;;;AAOvF,SAAgB,6BAAgD;AAC9D,SAAQ,UAAyB,kBAA4B;EAC3D,MAAMC,WAAyB,EAAE;AAEjC,OAAK,MAAM,SAAS,eAAe;GACjC,MAAMJ,OAA0B;IAC9B,KAAK,SAAS;IACd,KAAK,IAAI,WAAW,GAAG,CAAC,KAAK,EAAE;IAChC;AACD,YAAS,KAAK,wBAAwB,KAAK,CAAC;;AAG9C,SAAO,QAAQ,QAAQ,SAAS"}
|