@waterx/sdk 3.0.1 → 3.0.3
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/dist/cjs/package.json +3 -0
- package/dist/cjs/src/account/account-request.d.ts +9 -0
- package/dist/cjs/src/account/account-request.js +20 -0
- package/dist/cjs/src/account/account.d.ts +158 -0
- package/dist/cjs/src/account/account.js +238 -0
- package/dist/cjs/src/account/client.d.ts +42 -0
- package/dist/cjs/src/account/client.js +18 -0
- package/dist/cjs/src/account/config.d.ts +151 -0
- package/dist/cjs/src/account/config.js +9 -0
- package/dist/cjs/src/account/constants.d.ts +5 -0
- package/dist/cjs/src/account/constants.js +8 -0
- package/dist/cjs/src/account/fetch/referral.d.ts +15 -0
- package/dist/cjs/src/account/fetch/referral.js +56 -0
- package/dist/cjs/src/account/fetch/simulate.d.ts +34 -0
- package/dist/cjs/src/account/fetch/simulate.js +49 -0
- package/dist/cjs/src/account/funding/balance.d.ts +32 -0
- package/dist/cjs/src/account/funding/balance.js +100 -0
- package/dist/cjs/src/account/funding/consolidate.d.ts +46 -0
- package/dist/cjs/src/account/funding/consolidate.js +143 -0
- package/dist/cjs/src/account/funding/credit.d.ts +129 -0
- package/dist/cjs/src/account/funding/credit.js +252 -0
- package/dist/cjs/src/account/funding/custody.d.ts +57 -0
- package/dist/cjs/src/account/funding/custody.js +139 -0
- package/dist/cjs/src/account/funding/wormhole.d.ts +86 -0
- package/dist/cjs/src/account/funding/wormhole.js +166 -0
- package/dist/cjs/src/account/index.d.ts +29 -0
- package/dist/cjs/src/account/index.js +45 -0
- package/dist/cjs/src/account/referral.d.ts +21 -0
- package/dist/cjs/src/account/referral.js +78 -0
- package/dist/cjs/src/account/waterx-account.d.ts +31 -0
- package/dist/cjs/src/account/waterx-account.js +29 -0
- package/dist/cjs/src/base-client.d.ts +74 -0
- package/dist/cjs/src/base-client.js +101 -0
- package/dist/cjs/src/constants.d.ts +32 -0
- package/dist/cjs/src/constants.js +41 -0
- package/dist/cjs/src/generated/bucket_v2_framework/account.d.ts +107 -0
- package/dist/cjs/src/generated/bucket_v2_framework/account.js +141 -0
- package/dist/cjs/src/generated/bucket_v2_framework/deps/std/type_name.d.ts +17 -0
- package/dist/cjs/src/generated/bucket_v2_framework/deps/std/type_name.js +22 -0
- package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/balance.d.ts +12 -0
- package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/balance.js +17 -0
- package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/bucket_v2_framework/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/bucket_v2_framework/double.d.ts +384 -0
- package/dist/cjs/src/generated/bucket_v2_framework/double.js +504 -0
- package/dist/cjs/src/generated/bucket_v2_framework/float.d.ts +364 -0
- package/dist/cjs/src/generated/bucket_v2_framework/float.js +476 -0
- package/dist/cjs/src/generated/bucket_v2_framework/liability.d.ts +171 -0
- package/dist/cjs/src/generated/bucket_v2_framework/liability.js +192 -0
- package/dist/cjs/src/generated/bucket_v2_framework/linked_table.d.ts +384 -0
- package/dist/cjs/src/generated/bucket_v2_framework/linked_table.js +405 -0
- package/dist/cjs/src/generated/bucket_v2_framework/sheet.d.ts +424 -0
- package/dist/cjs/src/generated/bucket_v2_framework/sheet.js +395 -0
- package/dist/cjs/src/generated/native_custody/custody_vault.d.ts +586 -0
- package/dist/cjs/src/generated/native_custody/custody_vault.js +555 -0
- package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/float.d.ts +8 -0
- package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/float.js +13 -0
- package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/liability.d.ts +11 -0
- package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/liability.js +16 -0
- package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/sheet.d.ts +49 -0
- package/dist/cjs/src/generated/native_custody/deps/bucket_v2_framework/sheet.js +52 -0
- package/dist/cjs/src/generated/native_custody/deps/std/type_name.d.ts +17 -0
- package/dist/cjs/src/generated/native_custody/deps/std/type_name.js +22 -0
- package/dist/cjs/src/generated/native_custody/deps/sui/balance.d.ts +12 -0
- package/dist/cjs/src/generated/native_custody/deps/sui/balance.js +17 -0
- package/dist/cjs/src/generated/native_custody/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/native_custody/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/native_custody/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/native_custody/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/native_custody/events.d.ts +36 -0
- package/dist/cjs/src/generated/native_custody/events.js +71 -0
- package/dist/cjs/src/generated/pyth_sponsor_rule/deps/sui/balance.d.ts +12 -0
- package/dist/cjs/src/generated/pyth_sponsor_rule/deps/sui/balance.js +17 -0
- package/dist/cjs/src/generated/pyth_sponsor_rule/pyth_sponsor_rule.d.ts +68 -0
- package/dist/cjs/src/generated/pyth_sponsor_rule/pyth_sponsor_rule.js +113 -0
- package/dist/cjs/src/generated/utils/index.d.ts +30 -0
- package/dist/cjs/src/generated/utils/index.js +168 -0
- package/dist/cjs/src/generated/waterx_account/account.d.ts +1906 -0
- package/dist/cjs/src/generated/waterx_account/account.js +1929 -0
- package/dist/cjs/src/generated/waterx_account/deps/bucket_v2_framework/liability.d.ts +11 -0
- package/dist/cjs/src/generated/waterx_account/deps/bucket_v2_framework/liability.js +16 -0
- package/dist/cjs/src/generated/waterx_account/deps/bucket_v2_framework/sheet.d.ts +49 -0
- package/dist/cjs/src/generated/waterx_account/deps/bucket_v2_framework/sheet.js +52 -0
- package/dist/cjs/src/generated/waterx_account/deps/std/type_name.d.ts +17 -0
- package/dist/cjs/src/generated/waterx_account/deps/std/type_name.js +22 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/balance.d.ts +12 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/balance.js +17 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/object_table.d.ts +17 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/object_table.js +22 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/table.d.ts +29 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/table.js +34 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/waterx_account/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/waterx_account/direct_rule.d.ts +77 -0
- package/dist/cjs/src/generated/waterx_account/direct_rule.js +83 -0
- package/dist/cjs/src/generated/waterx_account/events.d.ts +190 -0
- package/dist/cjs/src/generated/waterx_account/events.js +173 -0
- package/dist/cjs/src/generated/waterx_account/version.d.ts +10 -0
- package/dist/cjs/src/generated/waterx_account/version.js +11 -0
- package/dist/cjs/src/generated/waterx_constant_rule/constant_rule.d.ts +68 -0
- package/dist/cjs/src/generated/waterx_constant_rule/constant_rule.js +97 -0
- package/dist/cjs/src/generated/waterx_constant_rule/deps/bucket_v2_framework/float.d.ts +8 -0
- package/dist/cjs/src/generated/waterx_constant_rule/deps/bucket_v2_framework/float.js +13 -0
- package/dist/cjs/src/generated/waterx_constant_rule/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/waterx_constant_rule/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/waterx_credit/credit_registry.d.ts +708 -0
- package/dist/cjs/src/generated/waterx_credit/credit_registry.js +728 -0
- package/dist/cjs/src/generated/waterx_credit/deps/std/type_name.d.ts +17 -0
- package/dist/cjs/src/generated/waterx_credit/deps/std/type_name.js +22 -0
- package/dist/cjs/src/generated/waterx_credit/deps/sui/table.d.ts +29 -0
- package/dist/cjs/src/generated/waterx_credit/deps/sui/table.js +34 -0
- package/dist/cjs/src/generated/waterx_credit/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/waterx_credit/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/waterx_credit/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/waterx_credit/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/waterx_credit/limited_supply.d.ts +107 -0
- package/dist/cjs/src/generated/waterx_credit/limited_supply.js +143 -0
- package/dist/cjs/src/generated/waterx_oracle/aggregator.d.ts +211 -0
- package/dist/cjs/src/generated/waterx_oracle/aggregator.js +258 -0
- package/dist/cjs/src/generated/waterx_oracle/collector.d.ts +119 -0
- package/dist/cjs/src/generated/waterx_oracle/collector.js +147 -0
- package/dist/cjs/src/generated/waterx_oracle/deps/bucket_v2_framework/float.d.ts +8 -0
- package/dist/cjs/src/generated/waterx_oracle/deps/bucket_v2_framework/float.js +13 -0
- package/dist/cjs/src/generated/waterx_oracle/deps/std/type_name.d.ts +17 -0
- package/dist/cjs/src/generated/waterx_oracle/deps/std/type_name.js +22 -0
- package/dist/cjs/src/generated/waterx_oracle/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/waterx_oracle/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/waterx_oracle/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/waterx_oracle/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/waterx_oracle/oracle.d.ts +304 -0
- package/dist/cjs/src/generated/waterx_oracle/oracle.js +381 -0
- package/dist/cjs/src/generated/waterx_oracle/version.d.ts +10 -0
- package/dist/cjs/src/generated/waterx_oracle/version.js +11 -0
- package/dist/cjs/src/generated/waterx_perp/account_data.d.ts +269 -0
- package/dist/cjs/src/generated/waterx_perp/account_data.js +340 -0
- package/dist/cjs/src/generated/waterx_perp/admin.d.ts +19 -0
- package/dist/cjs/src/generated/waterx_perp/admin.js +26 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/double.d.ts +8 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/double.js +13 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/float.d.ts +8 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/float.js +13 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/liability.d.ts +11 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/liability.js +16 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/linked_table.d.ts +8 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/linked_table.js +21 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/sheet.d.ts +49 -0
- package/dist/cjs/src/generated/waterx_perp/deps/bucket_v2_framework/sheet.js +52 -0
- package/dist/cjs/src/generated/waterx_perp/deps/std/type_name.d.ts +17 -0
- package/dist/cjs/src/generated/waterx_perp/deps/std/type_name.js +22 -0
- package/dist/cjs/src/generated/waterx_perp/deps/sui/balance.d.ts +15 -0
- package/dist/cjs/src/generated/waterx_perp/deps/sui/balance.js +20 -0
- package/dist/cjs/src/generated/waterx_perp/deps/sui/coin.d.ts +14 -0
- package/dist/cjs/src/generated/waterx_perp/deps/sui/coin.js +51 -0
- package/dist/cjs/src/generated/waterx_perp/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/waterx_perp/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/waterx_perp/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/waterx_perp/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/waterx_perp/events.d.ts +1283 -0
- package/dist/cjs/src/generated/waterx_perp/events.js +990 -0
- package/dist/cjs/src/generated/waterx_perp/global_config.d.ts +775 -0
- package/dist/cjs/src/generated/waterx_perp/global_config.js +918 -0
- package/dist/cjs/src/generated/waterx_perp/keyed_big_vector.d.ts +553 -0
- package/dist/cjs/src/generated/waterx_perp/keyed_big_vector.js +626 -0
- package/dist/cjs/src/generated/waterx_perp/lp_pool.d.ts +1648 -0
- package/dist/cjs/src/generated/waterx_perp/lp_pool.js +1630 -0
- package/dist/cjs/src/generated/waterx_perp/market_config.d.ts +733 -0
- package/dist/cjs/src/generated/waterx_perp/market_config.js +871 -0
- package/dist/cjs/src/generated/waterx_perp/math.d.ts +63 -0
- package/dist/cjs/src/generated/waterx_perp/math.js +70 -0
- package/dist/cjs/src/generated/waterx_perp/memo.d.ts +251 -0
- package/dist/cjs/src/generated/waterx_perp/memo.js +360 -0
- package/dist/cjs/src/generated/waterx_perp/order_book.d.ts +290 -0
- package/dist/cjs/src/generated/waterx_perp/order_book.js +388 -0
- package/dist/cjs/src/generated/waterx_perp/position.d.ts +1005 -0
- package/dist/cjs/src/generated/waterx_perp/position.js +1200 -0
- package/dist/cjs/src/generated/waterx_perp/request.d.ts +544 -0
- package/dist/cjs/src/generated/waterx_perp/request.js +609 -0
- package/dist/cjs/src/generated/waterx_perp/response.d.ts +247 -0
- package/dist/cjs/src/generated/waterx_perp/response.js +331 -0
- package/dist/cjs/src/generated/waterx_perp/trading.d.ts +2945 -0
- package/dist/cjs/src/generated/waterx_perp/trading.js +2616 -0
- package/dist/cjs/src/generated/waterx_perp/version.d.ts +10 -0
- package/dist/cjs/src/generated/waterx_perp/version.js +11 -0
- package/dist/cjs/src/generated/waterx_perp/witness.d.ts +18 -0
- package/dist/cjs/src/generated/waterx_perp/witness.js +25 -0
- package/dist/cjs/src/generated/waterx_perp_view/deps/std/type_name.d.ts +17 -0
- package/dist/cjs/src/generated/waterx_perp_view/deps/std/type_name.js +22 -0
- package/dist/cjs/src/generated/waterx_perp_view/view.d.ts +447 -0
- package/dist/cjs/src/generated/waterx_perp_view/view.js +459 -0
- package/dist/cjs/src/generated/waterx_prediction/account_data.d.ts +344 -0
- package/dist/cjs/src/generated/waterx_prediction/account_data.js +470 -0
- package/dist/cjs/src/generated/waterx_prediction/admin.d.ts +7 -0
- package/dist/cjs/src/generated/waterx_prediction/admin.js +12 -0
- package/dist/cjs/src/generated/waterx_prediction/deps/bucket_v2_framework/linked_table.d.ts +8 -0
- package/dist/cjs/src/generated/waterx_prediction/deps/bucket_v2_framework/linked_table.js +21 -0
- package/dist/cjs/src/generated/waterx_prediction/deps/sui/balance.d.ts +12 -0
- package/dist/cjs/src/generated/waterx_prediction/deps/sui/balance.js +17 -0
- package/dist/cjs/src/generated/waterx_prediction/deps/sui/table.d.ts +29 -0
- package/dist/cjs/src/generated/waterx_prediction/deps/sui/table.js +34 -0
- package/dist/cjs/src/generated/waterx_prediction/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/waterx_prediction/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/waterx_prediction/events.d.ts +288 -0
- package/dist/cjs/src/generated/waterx_prediction/events.js +254 -0
- package/dist/cjs/src/generated/waterx_prediction/global_config.d.ts +121 -0
- package/dist/cjs/src/generated/waterx_prediction/global_config.js +186 -0
- package/dist/cjs/src/generated/waterx_prediction/order.d.ts +233 -0
- package/dist/cjs/src/generated/waterx_prediction/order.js +339 -0
- package/dist/cjs/src/generated/waterx_prediction/outcome.d.ts +58 -0
- package/dist/cjs/src/generated/waterx_prediction/outcome.js +82 -0
- package/dist/cjs/src/generated/waterx_prediction/position.d.ts +175 -0
- package/dist/cjs/src/generated/waterx_prediction/position.js +232 -0
- package/dist/cjs/src/generated/waterx_prediction/version.d.ts +10 -0
- package/dist/cjs/src/generated/waterx_prediction/version.js +11 -0
- package/dist/cjs/src/generated/waterx_prediction/view.d.ts +418 -0
- package/dist/cjs/src/generated/waterx_prediction/view.js +492 -0
- package/dist/cjs/src/generated/waterx_prediction/waterx_prediction.d.ts +1858 -0
- package/dist/cjs/src/generated/waterx_prediction/waterx_prediction.js +1972 -0
- package/dist/cjs/src/generated/waterx_pyth_rule/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/waterx_pyth_rule/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/waterx_pyth_rule/pyth_rule.d.ts +192 -0
- package/dist/cjs/src/generated/waterx_pyth_rule/pyth_rule.js +214 -0
- package/dist/cjs/src/generated/waterx_referral/deps/sui/table.d.ts +29 -0
- package/dist/cjs/src/generated/waterx_referral/deps/sui/table.js +34 -0
- package/dist/cjs/src/generated/waterx_referral/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/waterx_referral/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/waterx_referral/referral_table.d.ts +171 -0
- package/dist/cjs/src/generated/waterx_referral/referral_table.js +239 -0
- package/dist/cjs/src/generated/waterx_staking/deps/bucket_v2_framework/double.d.ts +8 -0
- package/dist/cjs/src/generated/waterx_staking/deps/bucket_v2_framework/double.js +13 -0
- package/dist/cjs/src/generated/waterx_staking/deps/sui/balance.d.ts +12 -0
- package/dist/cjs/src/generated/waterx_staking/deps/sui/balance.js +17 -0
- package/dist/cjs/src/generated/waterx_staking/deps/sui/table.d.ts +29 -0
- package/dist/cjs/src/generated/waterx_staking/deps/sui/table.js +34 -0
- package/dist/cjs/src/generated/waterx_staking/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/waterx_staking/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/waterx_staking/waterx_staking.d.ts +746 -0
- package/dist/cjs/src/generated/waterx_staking/waterx_staking.js +797 -0
- package/dist/cjs/src/generated/waterx_staking/witness.d.ts +16 -0
- package/dist/cjs/src/generated/waterx_staking/witness.js +21 -0
- package/dist/cjs/src/generated/waterx_supra_rule/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/waterx_supra_rule/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/waterx_supra_rule/supra_rule.d.ts +158 -0
- package/dist/cjs/src/generated/waterx_supra_rule/supra_rule.js +189 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/bucket_v2_framework/float.d.ts +8 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/bucket_v2_framework/float.js +13 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/bucket_v2_framework/linked_table.d.ts +8 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/bucket_v2_framework/linked_table.js +21 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/std/type_name.d.ts +17 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/std/type_name.js +22 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/sui/balance.d.ts +12 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/sui/balance.js +17 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/withdrawal_queue/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/withdrawal_queue/withdrawal_queue.d.ts +923 -0
- package/dist/cjs/src/generated/withdrawal_queue/withdrawal_queue.js +965 -0
- package/dist/cjs/src/generated/wlp/wlp.d.ts +28 -0
- package/dist/cjs/src/generated/wlp/wlp.js +37 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/sui/table.d.ts +29 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/sui/table.js +34 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/sui/vec_map.d.ts +36 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/sui/vec_map.js +31 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/sui/vec_set.d.ts +16 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/sui/vec_set.js +22 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/consumed_vaas.d.ts +12 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/consumed_vaas.js +45 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/emitter.d.ts +14 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/emitter.js +19 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/set.d.ts +16 -0
- package/dist/cjs/src/generated/wormhole_bridge/deps/wormhole_sdk/set.js +51 -0
- package/dist/cjs/src/generated/wormhole_bridge/events.d.ts +32 -0
- package/dist/cjs/src/generated/wormhole_bridge/events.js +31 -0
- package/dist/cjs/src/generated/wormhole_bridge/wormhole_bridge.d.ts +638 -0
- package/dist/cjs/src/generated/wormhole_bridge/wormhole_bridge.js +692 -0
- package/dist/cjs/src/oracle/aggregate.d.ts +74 -0
- package/dist/cjs/src/oracle/aggregate.js +118 -0
- package/dist/cjs/src/oracle/config.d.ts +99 -0
- package/dist/cjs/src/oracle/config.js +26 -0
- package/dist/cjs/src/oracle/host.d.ts +32 -0
- package/dist/cjs/src/oracle/host.js +11 -0
- package/dist/cjs/src/oracle/index.d.ts +16 -0
- package/dist/cjs/src/oracle/index.js +31 -0
- package/dist/cjs/src/oracle/pyth.d.ts +52 -0
- package/dist/cjs/src/oracle/pyth.js +227 -0
- package/dist/cjs/src/oracle/rules/constant-rule.d.ts +9 -0
- package/dist/cjs/src/oracle/rules/constant-rule.js +17 -0
- package/dist/cjs/src/oracle/rules/pyth-rule.d.ts +11 -0
- package/dist/cjs/src/oracle/rules/pyth-rule.js +23 -0
- package/dist/cjs/src/oracle/rules/sponsor.d.ts +28 -0
- package/dist/cjs/src/oracle/rules/sponsor.js +52 -0
- package/dist/cjs/src/oracle/rules/supra-rule.d.ts +11 -0
- package/dist/cjs/src/oracle/rules/supra-rule.js +25 -0
- package/dist/cjs/src/perp/client.d.ts +78 -0
- package/dist/cjs/src/perp/client.js +112 -0
- package/dist/cjs/src/perp/config-view.d.ts +102 -0
- package/dist/cjs/src/perp/config-view.js +178 -0
- package/dist/cjs/src/perp/config.d.ts +126 -0
- package/dist/cjs/src/perp/config.js +119 -0
- package/dist/cjs/src/perp/constants.d.ts +49 -0
- package/dist/cjs/src/perp/constants.js +79 -0
- package/dist/cjs/src/perp/fetch/account.d.ts +43 -0
- package/dist/cjs/src/perp/fetch/account.js +69 -0
- package/dist/cjs/src/perp/fetch/bridge.d.ts +90 -0
- package/dist/cjs/src/perp/fetch/bridge.js +131 -0
- package/dist/cjs/src/perp/fetch/custody.d.ts +32 -0
- package/dist/cjs/src/perp/fetch/custody.js +66 -0
- package/dist/cjs/src/perp/fetch/market.d.ts +30 -0
- package/dist/cjs/src/perp/fetch/market.js +75 -0
- package/dist/cjs/src/perp/fetch/positions.d.ts +70 -0
- package/dist/cjs/src/perp/fetch/positions.js +195 -0
- package/dist/cjs/src/perp/fetch/simulate.d.ts +12 -0
- package/dist/cjs/src/perp/fetch/simulate.js +21 -0
- package/dist/cjs/src/perp/fetch.d.ts +23 -0
- package/dist/cjs/src/perp/fetch.js +39 -0
- package/dist/cjs/src/perp/index.d.ts +29 -0
- package/dist/cjs/src/perp/index.js +183 -0
- package/dist/cjs/src/perp/tx-builders/common.d.ts +83 -0
- package/dist/cjs/src/perp/tx-builders/common.js +76 -0
- package/dist/cjs/src/perp/tx-builders/credit.d.ts +65 -0
- package/dist/cjs/src/perp/tx-builders/credit.js +67 -0
- package/dist/cjs/src/perp/tx-builders/rewards.d.ts +30 -0
- package/dist/cjs/src/perp/tx-builders/rewards.js +37 -0
- package/dist/cjs/src/perp/tx-builders/trading.d.ts +51 -0
- package/dist/cjs/src/perp/tx-builders/trading.js +71 -0
- package/dist/cjs/src/perp/tx-builders/wlp.d.ts +90 -0
- package/dist/cjs/src/perp/tx-builders/wlp.js +126 -0
- package/dist/cjs/src/perp/tx-builders.d.ts +23 -0
- package/dist/cjs/src/perp/tx-builders.js +45 -0
- package/dist/cjs/src/perp/user/index.d.ts +8 -0
- package/dist/cjs/src/perp/user/index.js +24 -0
- package/dist/cjs/src/perp/user/order.d.ts +89 -0
- package/dist/cjs/src/perp/user/order.js +175 -0
- package/dist/cjs/src/perp/user/staking.d.ts +54 -0
- package/dist/cjs/src/perp/user/staking.js +147 -0
- package/dist/cjs/src/perp/user/trading.d.ts +119 -0
- package/dist/cjs/src/perp/user/trading.js +310 -0
- package/dist/cjs/src/perp/user/wlp.d.ts +58 -0
- package/dist/cjs/src/perp/user/wlp.js +139 -0
- package/dist/cjs/src/prediction/account.d.ts +96 -0
- package/dist/cjs/src/prediction/account.js +212 -0
- package/dist/cjs/src/prediction/admin.d.ts +47 -0
- package/dist/cjs/src/prediction/admin.js +116 -0
- package/dist/cjs/src/prediction/bcs.d.ts +28 -0
- package/dist/cjs/src/prediction/bcs.js +189 -0
- package/dist/cjs/src/prediction/client.d.ts +45 -0
- package/dist/cjs/src/prediction/client.js +112 -0
- package/dist/cjs/src/prediction/config.d.ts +74 -0
- package/dist/cjs/src/prediction/config.js +86 -0
- package/dist/cjs/src/prediction/constants.d.ts +44 -0
- package/dist/cjs/src/prediction/constants.js +49 -0
- package/dist/cjs/src/prediction/fetch.d.ts +82 -0
- package/dist/cjs/src/prediction/fetch.js +294 -0
- package/dist/cjs/src/prediction/gift-link.d.ts +6 -0
- package/dist/cjs/src/prediction/gift-link.js +16 -0
- package/dist/cjs/src/prediction/gift.d.ts +223 -0
- package/dist/cjs/src/prediction/gift.js +465 -0
- package/dist/cjs/src/prediction/index.d.ts +29 -0
- package/dist/cjs/src/prediction/index.js +154 -0
- package/dist/cjs/src/prediction/prediction.d.ts +149 -0
- package/dist/cjs/src/prediction/prediction.js +410 -0
- package/dist/cjs/src/prediction/tx-builders.d.ts +44 -0
- package/dist/cjs/src/prediction/tx-builders.js +56 -0
- package/dist/cjs/src/prediction/types.d.ts +95 -0
- package/dist/cjs/src/prediction/types.js +2 -0
- package/dist/cjs/src/prediction/user/account.d.ts +2 -0
- package/dist/cjs/src/prediction/user/account.js +17 -0
- package/dist/cjs/src/prediction/user/admin.d.ts +6 -0
- package/dist/cjs/src/prediction/user/admin.js +19 -0
- package/dist/cjs/src/prediction/user/gift.d.ts +2 -0
- package/dist/cjs/src/prediction/user/gift.js +24 -0
- package/dist/cjs/src/prediction/user/index.d.ts +5 -0
- package/dist/cjs/src/prediction/user/index.js +60 -0
- package/dist/cjs/src/prediction/user/keeper.d.ts +2 -0
- package/dist/cjs/src/prediction/user/keeper.js +13 -0
- package/dist/cjs/src/prediction/user/order.d.ts +2 -0
- package/dist/cjs/src/prediction/user/order.js +6 -0
- package/dist/cjs/src/prediction/user/position.d.ts +2 -0
- package/dist/cjs/src/prediction/user/position.js +11 -0
- package/dist/cjs/src/prediction/utils/bcs.d.ts +6 -0
- package/dist/cjs/src/prediction/utils/bcs.js +29 -0
- package/dist/cjs/src/prediction/utils/index.d.ts +8 -0
- package/dist/cjs/src/prediction/utils/index.js +31 -0
- package/dist/cjs/src/prediction/utils.d.ts +30 -0
- package/dist/cjs/src/prediction/utils.js +200 -0
- package/dist/cjs/src/sdk.d.ts +22 -0
- package/dist/cjs/src/sdk.js +62 -0
- package/dist/cjs/src/unified-client.d.ts +402 -0
- package/dist/cjs/src/unified-client.js +218 -0
- package/dist/cjs/src/utils/config.d.ts +11 -0
- package/dist/cjs/src/utils/config.js +19 -0
- package/dist/cjs/src/utils/math.d.ts +287 -0
- package/dist/cjs/src/utils/math.js +469 -0
- package/package.json +119 -31
|
@@ -0,0 +1,1929 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**************************************************************
|
|
3
|
+
* THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *
|
|
4
|
+
**************************************************************/
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
17
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
18
|
+
}) : function(o, v) {
|
|
19
|
+
o["default"] = v;
|
|
20
|
+
});
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.AccountKey = exports.PausedProtocolsKey = exports.WithdrawRequest = exports.DepositRequest = exports.Account = exports.Delegate = exports.ProtocolDataKey = exports.Vault = exports.VaultKey = exports.AccountRegistry = exports.WaterXAccount = exports.AdminCap = exports.ACCOUNT = void 0;
|
|
40
|
+
exports.permNone = permNone;
|
|
41
|
+
exports.permWithdraw = permWithdraw;
|
|
42
|
+
exports.permManageDelegates = permManageDelegates;
|
|
43
|
+
exports.permReceive = permReceive;
|
|
44
|
+
exports.permAll = permAll;
|
|
45
|
+
exports.aliasMaxLength = aliasMaxLength;
|
|
46
|
+
exports.maxAccountsPerOwner = maxAccountsPerOwner;
|
|
47
|
+
exports.maxDelegatesPerAccount = maxDelegatesPerAccount;
|
|
48
|
+
exports.maxProtocolPermsPerDelegate = maxProtocolPermsPerDelegate;
|
|
49
|
+
exports.assertVersion = assertVersion;
|
|
50
|
+
exports.isVersionAllowed = isVersionAllowed;
|
|
51
|
+
exports.allowVersion = allowVersion;
|
|
52
|
+
exports.disallowVersion = disallowVersion;
|
|
53
|
+
exports.isPaused = isPaused;
|
|
54
|
+
exports.assertNotPaused = assertNotPaused;
|
|
55
|
+
exports.pause = pause;
|
|
56
|
+
exports.unpause = unpause;
|
|
57
|
+
exports.isManager = isManager;
|
|
58
|
+
exports.managers = managers;
|
|
59
|
+
exports.addManager = addManager;
|
|
60
|
+
exports.removeManager = removeManager;
|
|
61
|
+
exports.isProtocolWhitelisted = isProtocolWhitelisted;
|
|
62
|
+
exports.isProtocolAssetAllowed = isProtocolAssetAllowed;
|
|
63
|
+
exports.protocolWhitelist = protocolWhitelist;
|
|
64
|
+
exports.whitelistProtocol = whitelistProtocol;
|
|
65
|
+
exports.delistProtocol = delistProtocol;
|
|
66
|
+
exports.pauseProtocol = pauseProtocol;
|
|
67
|
+
exports.unpauseProtocol = unpauseProtocol;
|
|
68
|
+
exports.isProtocolPaused = isProtocolPaused;
|
|
69
|
+
exports.allowProtocolAsset = allowProtocolAsset;
|
|
70
|
+
exports.disallowProtocolAsset = disallowProtocolAsset;
|
|
71
|
+
exports.isDepositPolicyRegistered = isDepositPolicyRegistered;
|
|
72
|
+
exports.isWithdrawPolicyRegistered = isWithdrawPolicyRegistered;
|
|
73
|
+
exports.isDepositPolicyRegisteredFor = isDepositPolicyRegisteredFor;
|
|
74
|
+
exports.isWithdrawPolicyRegisteredFor = isWithdrawPolicyRegisteredFor;
|
|
75
|
+
exports.depositPoliciesFor = depositPoliciesFor;
|
|
76
|
+
exports.withdrawPoliciesFor = withdrawPoliciesFor;
|
|
77
|
+
exports.depositPolicies = depositPolicies;
|
|
78
|
+
exports.withdrawPolicies = withdrawPolicies;
|
|
79
|
+
exports.registerDepositPolicy = registerDepositPolicy;
|
|
80
|
+
exports.registerWithdrawPolicy = registerWithdrawPolicy;
|
|
81
|
+
exports.unregisterDepositPolicy = unregisterDepositPolicy;
|
|
82
|
+
exports.unregisterWithdrawPolicy = unregisterWithdrawPolicy;
|
|
83
|
+
exports.createAccount = createAccount;
|
|
84
|
+
exports.deriveAccountAddress = deriveAccountAddress;
|
|
85
|
+
exports.setAlias = setAlias;
|
|
86
|
+
exports.addDelegate = addDelegate;
|
|
87
|
+
exports.removeDelegate = removeDelegate;
|
|
88
|
+
exports.updateDelegate = updateDelegate;
|
|
89
|
+
exports.setDelegateProtocolPermission = setDelegateProtocolPermission;
|
|
90
|
+
exports.unsetDelegateProtocolPermission = unsetDelegateProtocolPermission;
|
|
91
|
+
exports.requestDeposit = requestDeposit;
|
|
92
|
+
exports.requestDepositFromReceivings = requestDepositFromReceivings;
|
|
93
|
+
exports.requestDepositFromFunds = requestDepositFromFunds;
|
|
94
|
+
exports.consumeDeposit = consumeDeposit;
|
|
95
|
+
exports.requestWithdraw = requestWithdraw;
|
|
96
|
+
exports.consumeWithdraw = consumeWithdraw;
|
|
97
|
+
exports.transferCoin = transferCoin;
|
|
98
|
+
exports.receive = receive;
|
|
99
|
+
exports.withdrawFromFunds = withdrawFromFunds;
|
|
100
|
+
exports.take = take;
|
|
101
|
+
exports.put = put;
|
|
102
|
+
exports.hasAccount = hasAccount;
|
|
103
|
+
exports.isAccountAuthorized = isAccountAuthorized;
|
|
104
|
+
exports.isAccountOwner = isAccountOwner;
|
|
105
|
+
exports.accountCount = accountCount;
|
|
106
|
+
exports.accountIds = accountIds;
|
|
107
|
+
exports.effectivePermissions = effectivePermissions;
|
|
108
|
+
exports.hasPermission = hasPermission;
|
|
109
|
+
exports.effectiveProtocolPermissions = effectiveProtocolPermissions;
|
|
110
|
+
exports.hasProtocolPermission = hasProtocolPermission;
|
|
111
|
+
exports.accountBalance = accountBalance;
|
|
112
|
+
exports.accountBalances = accountBalances;
|
|
113
|
+
exports.balance = balance;
|
|
114
|
+
exports.accountOwner = accountOwner;
|
|
115
|
+
exports.accountAlias = accountAlias;
|
|
116
|
+
exports.accountId = accountId;
|
|
117
|
+
exports.accountAddress = accountAddress;
|
|
118
|
+
exports.accountDelegates = accountDelegates;
|
|
119
|
+
exports.accountBalancesField = accountBalancesField;
|
|
120
|
+
exports.delegateAddress = delegateAddress;
|
|
121
|
+
exports.delegateAlias = delegateAlias;
|
|
122
|
+
exports.delegatePermissions = delegatePermissions;
|
|
123
|
+
exports.delegateProtocolPermissions = delegateProtocolPermissions;
|
|
124
|
+
exports.delegateExpiresAtMs = delegateExpiresAtMs;
|
|
125
|
+
exports.depositRequestAccountId = depositRequestAccountId;
|
|
126
|
+
exports.depositRequestBalance = depositRequestBalance;
|
|
127
|
+
exports.depositRequestAmount = depositRequestAmount;
|
|
128
|
+
exports.depositRequestExtraData = depositRequestExtraData;
|
|
129
|
+
exports.withdrawRequestAccountId = withdrawRequestAccountId;
|
|
130
|
+
exports.withdrawRequestBalance = withdrawRequestBalance;
|
|
131
|
+
exports.withdrawRequestAmount = withdrawRequestAmount;
|
|
132
|
+
exports.withdrawRequestRecipient = withdrawRequestRecipient;
|
|
133
|
+
exports.withdrawRequestExtraData = withdrawRequestExtraData;
|
|
134
|
+
exports.newData = newData;
|
|
135
|
+
exports.borrowData = borrowData;
|
|
136
|
+
exports.borrowDataMut = borrowDataMut;
|
|
137
|
+
exports.hasData = hasData;
|
|
138
|
+
exports.removeData = removeData;
|
|
139
|
+
/**
|
|
140
|
+
* Generalized multi-account framework for the WaterX ecosystem.
|
|
141
|
+
*
|
|
142
|
+
* Pure custody layer. Accounts hold per-T `Balance<T>` as dynamic fields keyed by
|
|
143
|
+
* `BalanceKey<T>()`, with a `VecMap<TypeName, u64>` mirror on each `Account` for
|
|
144
|
+
* fast enumeration. External flow in/out is mediated by hot-potato
|
|
145
|
+
* `DepositRequest<T>` / `WithdrawRequest<T>` that the framework issues; a
|
|
146
|
+
* registered policy module destroys the potato with its own witness and decides
|
|
147
|
+
* what final asset to put back into the account (e.g. a PSM policy turns
|
|
148
|
+
* `Coin<USDC>` into `Balance<USD>` and credits the account via `put<USD, P>`).
|
|
149
|
+
*
|
|
150
|
+
* Internal protocol ↔ account flow stays witness-gated via `take<T, P>` /
|
|
151
|
+
* `put<T, P>` with no policy registration involved — the protocol module's witness
|
|
152
|
+
* is the only authority needed, since only that module can construct a value of
|
|
153
|
+
* its witness type.
|
|
154
|
+
*
|
|
155
|
+
* Types of T:
|
|
156
|
+
*
|
|
157
|
+
* - Has registered deposit policy → `request_deposit<T>` works.
|
|
158
|
+
* - Has registered withdraw policy → `request_withdraw<T>` works.
|
|
159
|
+
* - Neither → "Parkable". Coins can sit on the account address via
|
|
160
|
+
* `transfer_coin<T>` or external `transfer::public_transfer`, but nothing the
|
|
161
|
+
* framework does will fold them into the account until a policy is registered
|
|
162
|
+
* (or owner drains via `receive_coin`).
|
|
163
|
+
*/
|
|
164
|
+
const index_ts_1 = require("../utils/index.js");
|
|
165
|
+
const bcs_1 = require("@mysten/sui/bcs");
|
|
166
|
+
const object_table = __importStar(require("./deps/sui/object_table.js"));
|
|
167
|
+
const table = __importStar(require("./deps/sui/table.js"));
|
|
168
|
+
const vec_map = __importStar(require("./deps/sui/vec_map.js"));
|
|
169
|
+
const type_name = __importStar(require("./deps/std/type_name.js"));
|
|
170
|
+
const vec_set = __importStar(require("./deps/sui/vec_set.js"));
|
|
171
|
+
const balance_1 = __importStar(require("./deps/sui/balance.js"));
|
|
172
|
+
const sheet = __importStar(require("./deps/bucket_v2_framework/sheet.js"));
|
|
173
|
+
const $moduleName = '@waterx/account::account';
|
|
174
|
+
exports.ACCOUNT = new index_ts_1.MoveStruct({ name: `${$moduleName}::ACCOUNT`, fields: {
|
|
175
|
+
dummy_field: bcs_1.bcs.bool()
|
|
176
|
+
} });
|
|
177
|
+
exports.AdminCap = new index_ts_1.MoveStruct({ name: `${$moduleName}::AdminCap`, fields: {
|
|
178
|
+
id: bcs_1.bcs.Address
|
|
179
|
+
} });
|
|
180
|
+
exports.WaterXAccount = new index_ts_1.MoveStruct({ name: `${$moduleName}::WaterXAccount`, fields: {
|
|
181
|
+
dummy_field: bcs_1.bcs.bool()
|
|
182
|
+
} });
|
|
183
|
+
exports.AccountRegistry = new index_ts_1.MoveStruct({ name: `${$moduleName}::AccountRegistry`, fields: {
|
|
184
|
+
id: bcs_1.bcs.Address,
|
|
185
|
+
/**
|
|
186
|
+
* `ObjectTable` (not plain `Table`) so each `Account` retains a distinct on-chain
|
|
187
|
+
* address that off-chain callers can query directly via `getObject(account_id)`
|
|
188
|
+
* instead of walking dynamic-field handles on the registry UID.
|
|
189
|
+
*/
|
|
190
|
+
accounts: object_table.ObjectTable,
|
|
191
|
+
owner_index: table.Table,
|
|
192
|
+
/**
|
|
193
|
+
* Admin-managed whitelist of protocol witness types allowed to move funds
|
|
194
|
+
* (`take<T, P>` / `put<T, P>`) and mutate per-account protocol data
|
|
195
|
+
* (`new_data<P, D>` / `borrow_data_mut<P, D>` / `remove_data<P, D>`). For each
|
|
196
|
+
* whitelisted `P`, the value is the set of asset types `T` that protocol is
|
|
197
|
+
* allowed to draw via `take<T, P>` — admin opts each pair in via two phases:
|
|
198
|
+
* `whitelist_protocol<P>(registry, &AdminCap)` registers `P` with an empty asset
|
|
199
|
+
* set, then `allow_protocol_asset<P, T>(registry, &AdminCap)` adds each T.
|
|
200
|
+
*
|
|
201
|
+
* Gates:
|
|
202
|
+
*
|
|
203
|
+
* - `take<T, P>` requires both `P` whitelisted AND `T` in `protocol_whitelist[P]`
|
|
204
|
+
* (plus per-account auth on the caller).
|
|
205
|
+
* - `put<T, P>` requires only `P` whitelisted. The T-gate stays open even after
|
|
206
|
+
* `disallow_protocol_asset<P, T>`, so existing positions can always close.
|
|
207
|
+
* - `new_data<P, _>` / `borrow_data_mut<P, _>` / `remove_data<P, _>` require only
|
|
208
|
+
* `P` whitelisted.
|
|
209
|
+
*/
|
|
210
|
+
protocol_whitelist: vec_map.VecMap(type_name.TypeName, vec_set.VecSet(type_name.TypeName)),
|
|
211
|
+
/**
|
|
212
|
+
* `T → registered DepositPolicy witness TypeName`. Presence means
|
|
213
|
+
* `request_deposit<T>` / `request_deposit_from_receivings<T>` are permitted; only
|
|
214
|
+
* the module that defines the registered witness type can call
|
|
215
|
+
* `consume_deposit<T, P>` to unwrap the resulting `DepositRequest<T>`. Deposit
|
|
216
|
+
* policy registration is independent of `protocol_whitelist` — a policy can be the
|
|
217
|
+
* _consumer_ of a request without being allowed to `take`/`put`.
|
|
218
|
+
* `T → set of DepositPolicy witness TypeNames`. Multiple policies can be
|
|
219
|
+
* registered per T to support extension (a new policy added alongside the old) and
|
|
220
|
+
* migration (both coexist while consumers switch). `request_deposit<T>` requires
|
|
221
|
+
* the set to be non-empty; `consume_deposit<T, P>` requires P to be in the set.
|
|
222
|
+
*/
|
|
223
|
+
deposit_policies: vec_map.VecMap(type_name.TypeName, vec_set.VecSet(type_name.TypeName)),
|
|
224
|
+
/**
|
|
225
|
+
* `T → set of WithdrawPolicy witness TypeNames`. Symmetric to `deposit_policies`
|
|
226
|
+
* for `request_withdraw<T>` / `consume_withdraw`.
|
|
227
|
+
*/
|
|
228
|
+
withdraw_policies: vec_map.VecMap(type_name.TypeName, vec_set.VecSet(type_name.TypeName)),
|
|
229
|
+
/**
|
|
230
|
+
* Per-T aggregate of `Balance<T>` currently held inside accounts. Incremented in
|
|
231
|
+
* `put<T, P>`, decremented in `take<T, P>` and `request_withdraw<T>`. Does _not_
|
|
232
|
+
* include balance held by protocols (after `take`) or sitting in flight inside a
|
|
233
|
+
* `DepositRequest` / `WithdrawRequest` hot potato.
|
|
234
|
+
*/
|
|
235
|
+
balances: vec_map.VecMap(type_name.TypeName, bcs_1.bcs.u64()),
|
|
236
|
+
allowed_versions: vec_set.VecSet(bcs_1.bcs.u16()),
|
|
237
|
+
managers: vec_set.VecSet(bcs_1.bcs.Address),
|
|
238
|
+
paused: bcs_1.bcs.bool()
|
|
239
|
+
} });
|
|
240
|
+
exports.VaultKey = new index_ts_1.MoveTuple({ name: `${$moduleName}::VaultKey<phantom T>`, fields: [bcs_1.bcs.bool()] });
|
|
241
|
+
exports.Vault = new index_ts_1.MoveStruct({ name: `${$moduleName}::Vault<phantom T>`, fields: {
|
|
242
|
+
balance: balance_1.Balance,
|
|
243
|
+
sheet: sheet.Sheet
|
|
244
|
+
} });
|
|
245
|
+
exports.ProtocolDataKey = new index_ts_1.MoveTuple({ name: `${$moduleName}::ProtocolDataKey<phantom PROTOCOL>`, fields: [bcs_1.bcs.bool()] });
|
|
246
|
+
exports.Delegate = new index_ts_1.MoveStruct({ name: `${$moduleName}::Delegate`, fields: {
|
|
247
|
+
delegate_address: bcs_1.bcs.Address,
|
|
248
|
+
alias: bcs_1.bcs.string(),
|
|
249
|
+
/**
|
|
250
|
+
* Framework-level action bitmap (`PERM_WITHDRAW`, `PERM_RECEIVE`,
|
|
251
|
+
* `PERM_MANAGE_DELEGATES`). **Vestigial — retained for ABI/bitmap stability but no
|
|
252
|
+
* longer the live authority for any path.** All three bits now gate nothing: the
|
|
253
|
+
* funds-out paths (`request_withdraw` / `withdraw_from_funds` / `receive`) and
|
|
254
|
+
* delegate-perm management (`set/unset_delegate_protocol_permission`) are
|
|
255
|
+
* owner-only. Delegate authority lives entirely in `protocol_permissions` below
|
|
256
|
+
* plus the per-account `take`/`put` gate. `effective_permissions` /
|
|
257
|
+
* `has_permission` remain as public views but no internal path consults them.
|
|
258
|
+
*/
|
|
259
|
+
permissions: bcs_1.bcs.u32(),
|
|
260
|
+
/**
|
|
261
|
+
* Per-protocol bitmap. Missing key → delegate cannot drive that protocol. Each
|
|
262
|
+
* protocol's module interprets its own bits. Owner always has `PERM_ALL` per
|
|
263
|
+
* protocol regardless of this field.
|
|
264
|
+
*/
|
|
265
|
+
protocol_permissions: vec_map.VecMap(type_name.TypeName, bcs_1.bcs.u32()),
|
|
266
|
+
expires_at_ms: bcs_1.bcs.option(bcs_1.bcs.u64())
|
|
267
|
+
} });
|
|
268
|
+
exports.Account = new index_ts_1.MoveStruct({ name: `${$moduleName}::Account`, fields: {
|
|
269
|
+
id: bcs_1.bcs.Address,
|
|
270
|
+
owner_address: bcs_1.bcs.Address,
|
|
271
|
+
alias: bcs_1.bcs.string(),
|
|
272
|
+
delegates: bcs_1.bcs.vector(exports.Delegate),
|
|
273
|
+
/**
|
|
274
|
+
* Mirror of the per-T `Balance<T>` values stored as dynamic fields under
|
|
275
|
+
* `BalanceKey<T>()` on this UID. Always equals the matching stored balance's
|
|
276
|
+
* `value()`.
|
|
277
|
+
*/
|
|
278
|
+
balances: vec_map.VecMap(type_name.TypeName, bcs_1.bcs.u64())
|
|
279
|
+
} });
|
|
280
|
+
exports.DepositRequest = new index_ts_1.MoveStruct({ name: `${$moduleName}::DepositRequest<phantom T>`, fields: {
|
|
281
|
+
account_id: bcs_1.bcs.Address,
|
|
282
|
+
balance: balance_1.Balance,
|
|
283
|
+
extra_data: bcs_1.bcs.vector(bcs_1.bcs.u8())
|
|
284
|
+
} });
|
|
285
|
+
exports.WithdrawRequest = new index_ts_1.MoveStruct({ name: `${$moduleName}::WithdrawRequest<phantom T>`, fields: {
|
|
286
|
+
account_id: bcs_1.bcs.Address,
|
|
287
|
+
balance: balance_1.Balance,
|
|
288
|
+
recipient: bcs_1.bcs.Address,
|
|
289
|
+
extra_data: bcs_1.bcs.vector(bcs_1.bcs.u8())
|
|
290
|
+
} });
|
|
291
|
+
exports.PausedProtocolsKey = new index_ts_1.MoveTuple({ name: `${$moduleName}::PausedProtocolsKey`, fields: [bcs_1.bcs.bool()] });
|
|
292
|
+
exports.AccountKey = new index_ts_1.MoveStruct({ name: `${$moduleName}::AccountKey`, fields: {
|
|
293
|
+
owner: bcs_1.bcs.Address,
|
|
294
|
+
index: bcs_1.bcs.u64()
|
|
295
|
+
} });
|
|
296
|
+
function permNone(options = {}) {
|
|
297
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
298
|
+
return (tx) => tx.moveCall({
|
|
299
|
+
package: packageAddress,
|
|
300
|
+
module: 'account',
|
|
301
|
+
function: 'perm_none',
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
function permWithdraw(options = {}) {
|
|
305
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
306
|
+
return (tx) => tx.moveCall({
|
|
307
|
+
package: packageAddress,
|
|
308
|
+
module: 'account',
|
|
309
|
+
function: 'perm_withdraw',
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
function permManageDelegates(options = {}) {
|
|
313
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
314
|
+
return (tx) => tx.moveCall({
|
|
315
|
+
package: packageAddress,
|
|
316
|
+
module: 'account',
|
|
317
|
+
function: 'perm_manage_delegates',
|
|
318
|
+
});
|
|
319
|
+
}
|
|
320
|
+
function permReceive(options = {}) {
|
|
321
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
322
|
+
return (tx) => tx.moveCall({
|
|
323
|
+
package: packageAddress,
|
|
324
|
+
module: 'account',
|
|
325
|
+
function: 'perm_receive',
|
|
326
|
+
});
|
|
327
|
+
}
|
|
328
|
+
function permAll(options = {}) {
|
|
329
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
330
|
+
return (tx) => tx.moveCall({
|
|
331
|
+
package: packageAddress,
|
|
332
|
+
module: 'account',
|
|
333
|
+
function: 'perm_all',
|
|
334
|
+
});
|
|
335
|
+
}
|
|
336
|
+
function aliasMaxLength(options = {}) {
|
|
337
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
338
|
+
return (tx) => tx.moveCall({
|
|
339
|
+
package: packageAddress,
|
|
340
|
+
module: 'account',
|
|
341
|
+
function: 'alias_max_length',
|
|
342
|
+
});
|
|
343
|
+
}
|
|
344
|
+
function maxAccountsPerOwner(options = {}) {
|
|
345
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
346
|
+
return (tx) => tx.moveCall({
|
|
347
|
+
package: packageAddress,
|
|
348
|
+
module: 'account',
|
|
349
|
+
function: 'max_accounts_per_owner',
|
|
350
|
+
});
|
|
351
|
+
}
|
|
352
|
+
function maxDelegatesPerAccount(options = {}) {
|
|
353
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
354
|
+
return (tx) => tx.moveCall({
|
|
355
|
+
package: packageAddress,
|
|
356
|
+
module: 'account',
|
|
357
|
+
function: 'max_delegates_per_account',
|
|
358
|
+
});
|
|
359
|
+
}
|
|
360
|
+
function maxProtocolPermsPerDelegate(options = {}) {
|
|
361
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
362
|
+
return (tx) => tx.moveCall({
|
|
363
|
+
package: packageAddress,
|
|
364
|
+
module: 'account',
|
|
365
|
+
function: 'max_protocol_perms_per_delegate',
|
|
366
|
+
});
|
|
367
|
+
}
|
|
368
|
+
function assertVersion(options) {
|
|
369
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
370
|
+
const argumentsTypes = [
|
|
371
|
+
null
|
|
372
|
+
];
|
|
373
|
+
const parameterNames = ["registry"];
|
|
374
|
+
return (tx) => tx.moveCall({
|
|
375
|
+
package: packageAddress,
|
|
376
|
+
module: 'account',
|
|
377
|
+
function: 'assert_version',
|
|
378
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
379
|
+
});
|
|
380
|
+
}
|
|
381
|
+
function isVersionAllowed(options) {
|
|
382
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
383
|
+
const argumentsTypes = [
|
|
384
|
+
null,
|
|
385
|
+
'u16'
|
|
386
|
+
];
|
|
387
|
+
const parameterNames = ["registry", "v"];
|
|
388
|
+
return (tx) => tx.moveCall({
|
|
389
|
+
package: packageAddress,
|
|
390
|
+
module: 'account',
|
|
391
|
+
function: 'is_version_allowed',
|
|
392
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
393
|
+
});
|
|
394
|
+
}
|
|
395
|
+
function allowVersion(options) {
|
|
396
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
397
|
+
const argumentsTypes = [
|
|
398
|
+
null,
|
|
399
|
+
null,
|
|
400
|
+
'u16'
|
|
401
|
+
];
|
|
402
|
+
const parameterNames = ["registry", "_", "v"];
|
|
403
|
+
return (tx) => tx.moveCall({
|
|
404
|
+
package: packageAddress,
|
|
405
|
+
module: 'account',
|
|
406
|
+
function: 'allow_version',
|
|
407
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
408
|
+
});
|
|
409
|
+
}
|
|
410
|
+
function disallowVersion(options) {
|
|
411
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
412
|
+
const argumentsTypes = [
|
|
413
|
+
null,
|
|
414
|
+
null,
|
|
415
|
+
'u16'
|
|
416
|
+
];
|
|
417
|
+
const parameterNames = ["registry", "_", "v"];
|
|
418
|
+
return (tx) => tx.moveCall({
|
|
419
|
+
package: packageAddress,
|
|
420
|
+
module: 'account',
|
|
421
|
+
function: 'disallow_version',
|
|
422
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
423
|
+
});
|
|
424
|
+
}
|
|
425
|
+
function isPaused(options) {
|
|
426
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
427
|
+
const argumentsTypes = [
|
|
428
|
+
null
|
|
429
|
+
];
|
|
430
|
+
const parameterNames = ["registry"];
|
|
431
|
+
return (tx) => tx.moveCall({
|
|
432
|
+
package: packageAddress,
|
|
433
|
+
module: 'account',
|
|
434
|
+
function: 'is_paused',
|
|
435
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
436
|
+
});
|
|
437
|
+
}
|
|
438
|
+
function assertNotPaused(options) {
|
|
439
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
440
|
+
const argumentsTypes = [
|
|
441
|
+
null
|
|
442
|
+
];
|
|
443
|
+
const parameterNames = ["registry"];
|
|
444
|
+
return (tx) => tx.moveCall({
|
|
445
|
+
package: packageAddress,
|
|
446
|
+
module: 'account',
|
|
447
|
+
function: 'assert_not_paused',
|
|
448
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
449
|
+
});
|
|
450
|
+
}
|
|
451
|
+
function pause(options) {
|
|
452
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
453
|
+
const argumentsTypes = [
|
|
454
|
+
null,
|
|
455
|
+
null
|
|
456
|
+
];
|
|
457
|
+
const parameterNames = ["registry", "managerRequest"];
|
|
458
|
+
return (tx) => tx.moveCall({
|
|
459
|
+
package: packageAddress,
|
|
460
|
+
module: 'account',
|
|
461
|
+
function: 'pause',
|
|
462
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
463
|
+
});
|
|
464
|
+
}
|
|
465
|
+
function unpause(options) {
|
|
466
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
467
|
+
const argumentsTypes = [
|
|
468
|
+
null,
|
|
469
|
+
null
|
|
470
|
+
];
|
|
471
|
+
const parameterNames = ["registry", "_"];
|
|
472
|
+
return (tx) => tx.moveCall({
|
|
473
|
+
package: packageAddress,
|
|
474
|
+
module: 'account',
|
|
475
|
+
function: 'unpause',
|
|
476
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
477
|
+
});
|
|
478
|
+
}
|
|
479
|
+
function isManager(options) {
|
|
480
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
481
|
+
const argumentsTypes = [
|
|
482
|
+
null,
|
|
483
|
+
'address'
|
|
484
|
+
];
|
|
485
|
+
const parameterNames = ["registry", "addr"];
|
|
486
|
+
return (tx) => tx.moveCall({
|
|
487
|
+
package: packageAddress,
|
|
488
|
+
module: 'account',
|
|
489
|
+
function: 'is_manager',
|
|
490
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
491
|
+
});
|
|
492
|
+
}
|
|
493
|
+
function managers(options) {
|
|
494
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
495
|
+
const argumentsTypes = [
|
|
496
|
+
null
|
|
497
|
+
];
|
|
498
|
+
const parameterNames = ["registry"];
|
|
499
|
+
return (tx) => tx.moveCall({
|
|
500
|
+
package: packageAddress,
|
|
501
|
+
module: 'account',
|
|
502
|
+
function: 'managers',
|
|
503
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
504
|
+
});
|
|
505
|
+
}
|
|
506
|
+
function addManager(options) {
|
|
507
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
508
|
+
const argumentsTypes = [
|
|
509
|
+
null,
|
|
510
|
+
null,
|
|
511
|
+
'address'
|
|
512
|
+
];
|
|
513
|
+
const parameterNames = ["registry", "_", "manager"];
|
|
514
|
+
return (tx) => tx.moveCall({
|
|
515
|
+
package: packageAddress,
|
|
516
|
+
module: 'account',
|
|
517
|
+
function: 'add_manager',
|
|
518
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
519
|
+
});
|
|
520
|
+
}
|
|
521
|
+
function removeManager(options) {
|
|
522
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
523
|
+
const argumentsTypes = [
|
|
524
|
+
null,
|
|
525
|
+
null,
|
|
526
|
+
'address'
|
|
527
|
+
];
|
|
528
|
+
const parameterNames = ["registry", "_", "manager"];
|
|
529
|
+
return (tx) => tx.moveCall({
|
|
530
|
+
package: packageAddress,
|
|
531
|
+
module: 'account',
|
|
532
|
+
function: 'remove_manager',
|
|
533
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
534
|
+
});
|
|
535
|
+
}
|
|
536
|
+
function isProtocolWhitelisted(options) {
|
|
537
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
538
|
+
const argumentsTypes = [
|
|
539
|
+
null
|
|
540
|
+
];
|
|
541
|
+
const parameterNames = ["registry"];
|
|
542
|
+
return (tx) => tx.moveCall({
|
|
543
|
+
package: packageAddress,
|
|
544
|
+
module: 'account',
|
|
545
|
+
function: 'is_protocol_whitelisted',
|
|
546
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
547
|
+
typeArguments: options.typeArguments
|
|
548
|
+
});
|
|
549
|
+
}
|
|
550
|
+
function isProtocolAssetAllowed(options) {
|
|
551
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
552
|
+
const argumentsTypes = [
|
|
553
|
+
null
|
|
554
|
+
];
|
|
555
|
+
const parameterNames = ["registry"];
|
|
556
|
+
return (tx) => tx.moveCall({
|
|
557
|
+
package: packageAddress,
|
|
558
|
+
module: 'account',
|
|
559
|
+
function: 'is_protocol_asset_allowed',
|
|
560
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
561
|
+
typeArguments: options.typeArguments
|
|
562
|
+
});
|
|
563
|
+
}
|
|
564
|
+
function protocolWhitelist(options) {
|
|
565
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
566
|
+
const argumentsTypes = [
|
|
567
|
+
null
|
|
568
|
+
];
|
|
569
|
+
const parameterNames = ["registry"];
|
|
570
|
+
return (tx) => tx.moveCall({
|
|
571
|
+
package: packageAddress,
|
|
572
|
+
module: 'account',
|
|
573
|
+
function: 'protocol_whitelist',
|
|
574
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
575
|
+
});
|
|
576
|
+
}
|
|
577
|
+
/**
|
|
578
|
+
* Admin: register witness type `P` with an empty asset set. After this, admin must
|
|
579
|
+
* call `allow_protocol_asset<P, T>` for each T the protocol may draw. Strict —
|
|
580
|
+
* aborts if `P` is already listed.
|
|
581
|
+
*/
|
|
582
|
+
function whitelistProtocol(options) {
|
|
583
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
584
|
+
const argumentsTypes = [
|
|
585
|
+
null,
|
|
586
|
+
null
|
|
587
|
+
];
|
|
588
|
+
const parameterNames = ["registry", "_"];
|
|
589
|
+
return (tx) => tx.moveCall({
|
|
590
|
+
package: packageAddress,
|
|
591
|
+
module: 'account',
|
|
592
|
+
function: 'whitelist_protocol',
|
|
593
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
594
|
+
typeArguments: options.typeArguments
|
|
595
|
+
});
|
|
596
|
+
}
|
|
597
|
+
/**
|
|
598
|
+
* Admin: remove witness type `P` (and its entire asset set) from the protocol
|
|
599
|
+
* whitelist. After this, every `take<T, P>` / `put<T, P>` and witness-gated
|
|
600
|
+
* data-slot call aborts. Existing data slots and protocol-held balances are
|
|
601
|
+
* untouched — only future calls are blocked, so admin can pause a misbehaving
|
|
602
|
+
* protocol without stranding state on accounts.
|
|
603
|
+
*/
|
|
604
|
+
function delistProtocol(options) {
|
|
605
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
606
|
+
const argumentsTypes = [
|
|
607
|
+
null,
|
|
608
|
+
null
|
|
609
|
+
];
|
|
610
|
+
const parameterNames = ["registry", "_"];
|
|
611
|
+
return (tx) => tx.moveCall({
|
|
612
|
+
package: packageAddress,
|
|
613
|
+
module: 'account',
|
|
614
|
+
function: 'delist_protocol',
|
|
615
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
616
|
+
typeArguments: options.typeArguments
|
|
617
|
+
});
|
|
618
|
+
}
|
|
619
|
+
/**
|
|
620
|
+
* Admin: pause protocol `P` WITHOUT delisting it. A paused protocol cannot
|
|
621
|
+
* `take<_, P>` (new outbound debits) or `new_data<P, _>` (new account state), but
|
|
622
|
+
* `put<_, P>`, `borrow_data_mut<P, _>`, and `remove_data<P, _>` keep working — so
|
|
623
|
+
* in-flight refunds, claims, and close/cleanup can complete. Use this instead of
|
|
624
|
+
* `delist_protocol` for emergency stops; delisting blocks the exit paths too and
|
|
625
|
+
* strands active per-account state (see audit M09).
|
|
626
|
+
*/
|
|
627
|
+
function pauseProtocol(options) {
|
|
628
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
629
|
+
const argumentsTypes = [
|
|
630
|
+
null,
|
|
631
|
+
null
|
|
632
|
+
];
|
|
633
|
+
const parameterNames = ["registry", "_"];
|
|
634
|
+
return (tx) => tx.moveCall({
|
|
635
|
+
package: packageAddress,
|
|
636
|
+
module: 'account',
|
|
637
|
+
function: 'pause_protocol',
|
|
638
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
639
|
+
typeArguments: options.typeArguments
|
|
640
|
+
});
|
|
641
|
+
}
|
|
642
|
+
/** Admin: lift a `pause_protocol<P>`. Idempotent on a non-paused protocol. */
|
|
643
|
+
function unpauseProtocol(options) {
|
|
644
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
645
|
+
const argumentsTypes = [
|
|
646
|
+
null,
|
|
647
|
+
null
|
|
648
|
+
];
|
|
649
|
+
const parameterNames = ["registry", "_"];
|
|
650
|
+
return (tx) => tx.moveCall({
|
|
651
|
+
package: packageAddress,
|
|
652
|
+
module: 'account',
|
|
653
|
+
function: 'unpause_protocol',
|
|
654
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
655
|
+
typeArguments: options.typeArguments
|
|
656
|
+
});
|
|
657
|
+
}
|
|
658
|
+
function isProtocolPaused(options) {
|
|
659
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
660
|
+
const argumentsTypes = [
|
|
661
|
+
null
|
|
662
|
+
];
|
|
663
|
+
const parameterNames = ["registry"];
|
|
664
|
+
return (tx) => tx.moveCall({
|
|
665
|
+
package: packageAddress,
|
|
666
|
+
module: 'account',
|
|
667
|
+
function: 'is_protocol_paused',
|
|
668
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
669
|
+
typeArguments: options.typeArguments
|
|
670
|
+
});
|
|
671
|
+
}
|
|
672
|
+
/**
|
|
673
|
+
* Admin: add asset type `T` to protocol `P`'s allowed-asset set. After this,
|
|
674
|
+
* `take<T, P>` is permitted (subject to per-account auth). Aborts if `P` is not
|
|
675
|
+
* whitelisted or if `T` is already in the set.
|
|
676
|
+
*/
|
|
677
|
+
function allowProtocolAsset(options) {
|
|
678
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
679
|
+
const argumentsTypes = [
|
|
680
|
+
null,
|
|
681
|
+
null
|
|
682
|
+
];
|
|
683
|
+
const parameterNames = ["registry", "_"];
|
|
684
|
+
return (tx) => tx.moveCall({
|
|
685
|
+
package: packageAddress,
|
|
686
|
+
module: 'account',
|
|
687
|
+
function: 'allow_protocol_asset',
|
|
688
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
689
|
+
typeArguments: options.typeArguments
|
|
690
|
+
});
|
|
691
|
+
}
|
|
692
|
+
/**
|
|
693
|
+
* Admin: remove asset type `T` from protocol `P`'s allowed-asset set. Blocks
|
|
694
|
+
* future `take<T, P>` calls but `put<T, P>` on `T` stays open so existing
|
|
695
|
+
* positions can always close. Aborts if `P` is not whitelisted or if `T` is not in
|
|
696
|
+
* the set.
|
|
697
|
+
*/
|
|
698
|
+
function disallowProtocolAsset(options) {
|
|
699
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
700
|
+
const argumentsTypes = [
|
|
701
|
+
null,
|
|
702
|
+
null
|
|
703
|
+
];
|
|
704
|
+
const parameterNames = ["registry", "_"];
|
|
705
|
+
return (tx) => tx.moveCall({
|
|
706
|
+
package: packageAddress,
|
|
707
|
+
module: 'account',
|
|
708
|
+
function: 'disallow_protocol_asset',
|
|
709
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
710
|
+
typeArguments: options.typeArguments
|
|
711
|
+
});
|
|
712
|
+
}
|
|
713
|
+
/**
|
|
714
|
+
* Returns true if `T` has at least one deposit policy registered. Used by
|
|
715
|
+
* `request_deposit<T>` to gate inflow and by `withdraw_from_funds<T>` to refuse
|
|
716
|
+
* policy-managed types.
|
|
717
|
+
*/
|
|
718
|
+
function isDepositPolicyRegistered(options) {
|
|
719
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
720
|
+
const argumentsTypes = [
|
|
721
|
+
null
|
|
722
|
+
];
|
|
723
|
+
const parameterNames = ["registry"];
|
|
724
|
+
return (tx) => tx.moveCall({
|
|
725
|
+
package: packageAddress,
|
|
726
|
+
module: 'account',
|
|
727
|
+
function: 'is_deposit_policy_registered',
|
|
728
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
729
|
+
typeArguments: options.typeArguments
|
|
730
|
+
});
|
|
731
|
+
}
|
|
732
|
+
/** Returns true if `T` has at least one withdraw policy registered. */
|
|
733
|
+
function isWithdrawPolicyRegistered(options) {
|
|
734
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
735
|
+
const argumentsTypes = [
|
|
736
|
+
null
|
|
737
|
+
];
|
|
738
|
+
const parameterNames = ["registry"];
|
|
739
|
+
return (tx) => tx.moveCall({
|
|
740
|
+
package: packageAddress,
|
|
741
|
+
module: 'account',
|
|
742
|
+
function: 'is_withdraw_policy_registered',
|
|
743
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
744
|
+
typeArguments: options.typeArguments
|
|
745
|
+
});
|
|
746
|
+
}
|
|
747
|
+
/**
|
|
748
|
+
* Returns true if the specific witness `P` is one of T's registered deposit
|
|
749
|
+
* policies. `consume_deposit<T, P>` aborts `EPolicyMismatch` when this would
|
|
750
|
+
* return false.
|
|
751
|
+
*/
|
|
752
|
+
function isDepositPolicyRegisteredFor(options) {
|
|
753
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
754
|
+
const argumentsTypes = [
|
|
755
|
+
null
|
|
756
|
+
];
|
|
757
|
+
const parameterNames = ["registry"];
|
|
758
|
+
return (tx) => tx.moveCall({
|
|
759
|
+
package: packageAddress,
|
|
760
|
+
module: 'account',
|
|
761
|
+
function: 'is_deposit_policy_registered_for',
|
|
762
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
763
|
+
typeArguments: options.typeArguments
|
|
764
|
+
});
|
|
765
|
+
}
|
|
766
|
+
function isWithdrawPolicyRegisteredFor(options) {
|
|
767
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
768
|
+
const argumentsTypes = [
|
|
769
|
+
null
|
|
770
|
+
];
|
|
771
|
+
const parameterNames = ["registry"];
|
|
772
|
+
return (tx) => tx.moveCall({
|
|
773
|
+
package: packageAddress,
|
|
774
|
+
module: 'account',
|
|
775
|
+
function: 'is_withdraw_policy_registered_for',
|
|
776
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
777
|
+
typeArguments: options.typeArguments
|
|
778
|
+
});
|
|
779
|
+
}
|
|
780
|
+
/**
|
|
781
|
+
* Returns the full set of deposit-policy witness typenames registered for `T`, as
|
|
782
|
+
* a `vector<TypeName>` copy (TypeName is `copy + drop + store`, so this is
|
|
783
|
+
* cheap). Aborts if T has no policies. Off-chain consumers wanting iteration
|
|
784
|
+
* without the copy should walk the full `deposit_policies()` map instead.
|
|
785
|
+
*/
|
|
786
|
+
function depositPoliciesFor(options) {
|
|
787
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
788
|
+
const argumentsTypes = [
|
|
789
|
+
null
|
|
790
|
+
];
|
|
791
|
+
const parameterNames = ["registry"];
|
|
792
|
+
return (tx) => tx.moveCall({
|
|
793
|
+
package: packageAddress,
|
|
794
|
+
module: 'account',
|
|
795
|
+
function: 'deposit_policies_for',
|
|
796
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
797
|
+
typeArguments: options.typeArguments
|
|
798
|
+
});
|
|
799
|
+
}
|
|
800
|
+
function withdrawPoliciesFor(options) {
|
|
801
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
802
|
+
const argumentsTypes = [
|
|
803
|
+
null
|
|
804
|
+
];
|
|
805
|
+
const parameterNames = ["registry"];
|
|
806
|
+
return (tx) => tx.moveCall({
|
|
807
|
+
package: packageAddress,
|
|
808
|
+
module: 'account',
|
|
809
|
+
function: 'withdraw_policies_for',
|
|
810
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
811
|
+
typeArguments: options.typeArguments
|
|
812
|
+
});
|
|
813
|
+
}
|
|
814
|
+
function depositPolicies(options) {
|
|
815
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
816
|
+
const argumentsTypes = [
|
|
817
|
+
null
|
|
818
|
+
];
|
|
819
|
+
const parameterNames = ["registry"];
|
|
820
|
+
return (tx) => tx.moveCall({
|
|
821
|
+
package: packageAddress,
|
|
822
|
+
module: 'account',
|
|
823
|
+
function: 'deposit_policies',
|
|
824
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
825
|
+
});
|
|
826
|
+
}
|
|
827
|
+
function withdrawPolicies(options) {
|
|
828
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
829
|
+
const argumentsTypes = [
|
|
830
|
+
null
|
|
831
|
+
];
|
|
832
|
+
const parameterNames = ["registry"];
|
|
833
|
+
return (tx) => tx.moveCall({
|
|
834
|
+
package: packageAddress,
|
|
835
|
+
module: 'account',
|
|
836
|
+
function: 'withdraw_policies',
|
|
837
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
838
|
+
});
|
|
839
|
+
}
|
|
840
|
+
/**
|
|
841
|
+
* Admin: register witness type `P` as a deposit policy for `T`. Multiple policies
|
|
842
|
+
* can coexist per T to support extension (a new module added alongside the old)
|
|
843
|
+
* and migration (consumers switch one at a time). Idempotent — adding an
|
|
844
|
+
* already-registered `(T, P)` pair is a silent no-op so admin can re-run deploy
|
|
845
|
+
* scripts safely.
|
|
846
|
+
*/
|
|
847
|
+
function registerDepositPolicy(options) {
|
|
848
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
849
|
+
const argumentsTypes = [
|
|
850
|
+
null,
|
|
851
|
+
null
|
|
852
|
+
];
|
|
853
|
+
const parameterNames = ["registry", "_"];
|
|
854
|
+
return (tx) => tx.moveCall({
|
|
855
|
+
package: packageAddress,
|
|
856
|
+
module: 'account',
|
|
857
|
+
function: 'register_deposit_policy',
|
|
858
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
859
|
+
typeArguments: options.typeArguments
|
|
860
|
+
});
|
|
861
|
+
}
|
|
862
|
+
function registerWithdrawPolicy(options) {
|
|
863
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
864
|
+
const argumentsTypes = [
|
|
865
|
+
null,
|
|
866
|
+
null
|
|
867
|
+
];
|
|
868
|
+
const parameterNames = ["registry", "_"];
|
|
869
|
+
return (tx) => tx.moveCall({
|
|
870
|
+
package: packageAddress,
|
|
871
|
+
module: 'account',
|
|
872
|
+
function: 'register_withdraw_policy',
|
|
873
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
874
|
+
typeArguments: options.typeArguments
|
|
875
|
+
});
|
|
876
|
+
}
|
|
877
|
+
/**
|
|
878
|
+
* Admin: remove `P` from T's deposit-policy set. Other registered policies for `T`
|
|
879
|
+
* keep working. If `P` is the last entry, the `T` key is cleaned up so
|
|
880
|
+
* `is_deposit_policy_registered<T>` returns false. Aborts if `(T, P)` isn't
|
|
881
|
+
* registered.
|
|
882
|
+
*/
|
|
883
|
+
function unregisterDepositPolicy(options) {
|
|
884
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
885
|
+
const argumentsTypes = [
|
|
886
|
+
null,
|
|
887
|
+
null
|
|
888
|
+
];
|
|
889
|
+
const parameterNames = ["registry", "_"];
|
|
890
|
+
return (tx) => tx.moveCall({
|
|
891
|
+
package: packageAddress,
|
|
892
|
+
module: 'account',
|
|
893
|
+
function: 'unregister_deposit_policy',
|
|
894
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
895
|
+
typeArguments: options.typeArguments
|
|
896
|
+
});
|
|
897
|
+
}
|
|
898
|
+
function unregisterWithdrawPolicy(options) {
|
|
899
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
900
|
+
const argumentsTypes = [
|
|
901
|
+
null,
|
|
902
|
+
null
|
|
903
|
+
];
|
|
904
|
+
const parameterNames = ["registry", "_"];
|
|
905
|
+
return (tx) => tx.moveCall({
|
|
906
|
+
package: packageAddress,
|
|
907
|
+
module: 'account',
|
|
908
|
+
function: 'unregister_withdraw_policy',
|
|
909
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
910
|
+
typeArguments: options.typeArguments
|
|
911
|
+
});
|
|
912
|
+
}
|
|
913
|
+
function createAccount(options) {
|
|
914
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
915
|
+
const argumentsTypes = [
|
|
916
|
+
null,
|
|
917
|
+
null,
|
|
918
|
+
'0x1::string::String'
|
|
919
|
+
];
|
|
920
|
+
const parameterNames = ["registry", "senderRequest", "alias"];
|
|
921
|
+
return (tx) => tx.moveCall({
|
|
922
|
+
package: packageAddress,
|
|
923
|
+
module: 'account',
|
|
924
|
+
function: 'create_account',
|
|
925
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
926
|
+
});
|
|
927
|
+
}
|
|
928
|
+
/**
|
|
929
|
+
* Off-chain view: compute the address a future `create_account` call will produce
|
|
930
|
+
* for `(owner, index)`. Mirrors `derived_object::derive_address` keyed on
|
|
931
|
+
* `AccountKey`. Useful for SDKs that want to address an account before it exists,
|
|
932
|
+
* or to discover all of an owner's accounts by iterating index from 0 up to
|
|
933
|
+
* `MAX_ACCOUNTS_PER_OWNER` and checking `has_account` against each derived
|
|
934
|
+
* address.
|
|
935
|
+
*/
|
|
936
|
+
function deriveAccountAddress(options) {
|
|
937
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
938
|
+
const argumentsTypes = [
|
|
939
|
+
null,
|
|
940
|
+
'address',
|
|
941
|
+
'u64'
|
|
942
|
+
];
|
|
943
|
+
const parameterNames = ["registry", "owner", "index"];
|
|
944
|
+
return (tx) => tx.moveCall({
|
|
945
|
+
package: packageAddress,
|
|
946
|
+
module: 'account',
|
|
947
|
+
function: 'derive_account_address',
|
|
948
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
949
|
+
});
|
|
950
|
+
}
|
|
951
|
+
function setAlias(options) {
|
|
952
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
953
|
+
const argumentsTypes = [
|
|
954
|
+
null,
|
|
955
|
+
null,
|
|
956
|
+
'0x2::object::ID',
|
|
957
|
+
'0x1::string::String'
|
|
958
|
+
];
|
|
959
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "alias"];
|
|
960
|
+
return (tx) => tx.moveCall({
|
|
961
|
+
package: packageAddress,
|
|
962
|
+
module: 'account',
|
|
963
|
+
function: 'set_alias',
|
|
964
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
965
|
+
});
|
|
966
|
+
}
|
|
967
|
+
function addDelegate(options) {
|
|
968
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
969
|
+
const argumentsTypes = [
|
|
970
|
+
null,
|
|
971
|
+
null,
|
|
972
|
+
'0x2::object::ID',
|
|
973
|
+
'address',
|
|
974
|
+
'0x1::string::String',
|
|
975
|
+
'u32',
|
|
976
|
+
'0x1::option::Option<u64>',
|
|
977
|
+
'0x2::clock::Clock'
|
|
978
|
+
];
|
|
979
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "delegateAddress", "alias", "permissions", "expiresAtMs"];
|
|
980
|
+
return (tx) => tx.moveCall({
|
|
981
|
+
package: packageAddress,
|
|
982
|
+
module: 'account',
|
|
983
|
+
function: 'add_delegate',
|
|
984
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
985
|
+
});
|
|
986
|
+
}
|
|
987
|
+
/**
|
|
988
|
+
* Owner-only for live delegates; permissionless once the delegate has passed its
|
|
989
|
+
* `expires_at_ms`. Lets a keeper / bot prune dead entries without bothering the
|
|
990
|
+
* owner — an expired delegate carries no authority, so removing it is purely
|
|
991
|
+
* janitorial.
|
|
992
|
+
*/
|
|
993
|
+
function removeDelegate(options) {
|
|
994
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
995
|
+
const argumentsTypes = [
|
|
996
|
+
null,
|
|
997
|
+
null,
|
|
998
|
+
'0x2::object::ID',
|
|
999
|
+
'address',
|
|
1000
|
+
'0x2::clock::Clock'
|
|
1001
|
+
];
|
|
1002
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "delegateAddress"];
|
|
1003
|
+
return (tx) => tx.moveCall({
|
|
1004
|
+
package: packageAddress,
|
|
1005
|
+
module: 'account',
|
|
1006
|
+
function: 'remove_delegate',
|
|
1007
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1008
|
+
});
|
|
1009
|
+
}
|
|
1010
|
+
function updateDelegate(options) {
|
|
1011
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1012
|
+
const argumentsTypes = [
|
|
1013
|
+
null,
|
|
1014
|
+
null,
|
|
1015
|
+
'0x2::object::ID',
|
|
1016
|
+
'address',
|
|
1017
|
+
'0x1::string::String',
|
|
1018
|
+
'u32',
|
|
1019
|
+
'0x1::option::Option<u64>',
|
|
1020
|
+
'0x2::clock::Clock'
|
|
1021
|
+
];
|
|
1022
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "delegateAddress", "alias", "permissions", "expiresAtMs"];
|
|
1023
|
+
return (tx) => tx.moveCall({
|
|
1024
|
+
package: packageAddress,
|
|
1025
|
+
module: 'account',
|
|
1026
|
+
function: 'update_delegate',
|
|
1027
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1028
|
+
});
|
|
1029
|
+
}
|
|
1030
|
+
function setDelegateProtocolPermission(options) {
|
|
1031
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1032
|
+
const argumentsTypes = [
|
|
1033
|
+
null,
|
|
1034
|
+
null,
|
|
1035
|
+
'0x2::object::ID',
|
|
1036
|
+
'address',
|
|
1037
|
+
'u32',
|
|
1038
|
+
'0x2::clock::Clock'
|
|
1039
|
+
];
|
|
1040
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "delegateAddress", "permissions"];
|
|
1041
|
+
return (tx) => tx.moveCall({
|
|
1042
|
+
package: packageAddress,
|
|
1043
|
+
module: 'account',
|
|
1044
|
+
function: 'set_delegate_protocol_permission',
|
|
1045
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1046
|
+
typeArguments: options.typeArguments
|
|
1047
|
+
});
|
|
1048
|
+
}
|
|
1049
|
+
function unsetDelegateProtocolPermission(options) {
|
|
1050
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1051
|
+
const argumentsTypes = [
|
|
1052
|
+
null,
|
|
1053
|
+
null,
|
|
1054
|
+
'0x2::object::ID',
|
|
1055
|
+
'address',
|
|
1056
|
+
'0x2::clock::Clock'
|
|
1057
|
+
];
|
|
1058
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "delegateAddress"];
|
|
1059
|
+
return (tx) => tx.moveCall({
|
|
1060
|
+
package: packageAddress,
|
|
1061
|
+
module: 'account',
|
|
1062
|
+
function: 'unset_delegate_protocol_permission',
|
|
1063
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1064
|
+
typeArguments: options.typeArguments
|
|
1065
|
+
});
|
|
1066
|
+
}
|
|
1067
|
+
/**
|
|
1068
|
+
* Wraps an in-PTB `Coin<T>` into a `DepositRequest<T>` for the account.
|
|
1069
|
+
* Permissionless — anyone can pay into any account, since the policy (not the
|
|
1070
|
+
* framework) decides what the eventual credited asset is. `T` must have a
|
|
1071
|
+
* registered deposit policy; aborts otherwise.
|
|
1072
|
+
*/
|
|
1073
|
+
function requestDeposit(options) {
|
|
1074
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1075
|
+
const argumentsTypes = [
|
|
1076
|
+
null,
|
|
1077
|
+
'0x2::object::ID',
|
|
1078
|
+
null,
|
|
1079
|
+
'vector<u8>'
|
|
1080
|
+
];
|
|
1081
|
+
const parameterNames = ["registry", "accountId", "coin", "extraData"];
|
|
1082
|
+
return (tx) => tx.moveCall({
|
|
1083
|
+
package: packageAddress,
|
|
1084
|
+
module: 'account',
|
|
1085
|
+
function: 'request_deposit',
|
|
1086
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1087
|
+
typeArguments: options.typeArguments
|
|
1088
|
+
});
|
|
1089
|
+
}
|
|
1090
|
+
/**
|
|
1091
|
+
* Drains `Receiving<Coin<T>>` entries addressed to the account's UID into a single
|
|
1092
|
+
* merged `Coin<T>` and wraps it as a `DepositRequest<T>`. Used when a user (or
|
|
1093
|
+
* anyone) previously `transfer_coin`-ed a `Coin<T>` onto the account address and
|
|
1094
|
+
* now wants to fold it into custody. Permissionless for the same reason as
|
|
1095
|
+
* `request_deposit<T>`.
|
|
1096
|
+
*/
|
|
1097
|
+
function requestDepositFromReceivings(options) {
|
|
1098
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1099
|
+
const argumentsTypes = [
|
|
1100
|
+
null,
|
|
1101
|
+
'0x2::object::ID',
|
|
1102
|
+
'vector<null>',
|
|
1103
|
+
'vector<u8>'
|
|
1104
|
+
];
|
|
1105
|
+
const parameterNames = ["registry", "accountId", "receivings", "extraData"];
|
|
1106
|
+
return (tx) => tx.moveCall({
|
|
1107
|
+
package: packageAddress,
|
|
1108
|
+
module: 'account',
|
|
1109
|
+
function: 'request_deposit_from_receivings',
|
|
1110
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1111
|
+
typeArguments: options.typeArguments
|
|
1112
|
+
});
|
|
1113
|
+
}
|
|
1114
|
+
/**
|
|
1115
|
+
* Drains every `Balance<T>` sitting at the account's UID-derived address in Sui's
|
|
1116
|
+
* native funds accumulator and wraps the total into a single `DepositRequest<T>`.
|
|
1117
|
+
* Useful for accounts that receive `Coin<T>` via `0x2::balance::send_funds<T>` (or
|
|
1118
|
+
* any path that lands T at `account_id.to_address()` directly) and want it folded
|
|
1119
|
+
* into framework custody through the deposit-policy pipeline.
|
|
1120
|
+
*
|
|
1121
|
+
* The total drained equals `settled_funds_value<T>(root, addr)` as of the last
|
|
1122
|
+
* consensus commit — within the writing PTB itself, that read returns the pre-tx
|
|
1123
|
+
* value, so SDKs should treat this as a between-tx drain. Permissionless
|
|
1124
|
+
* (crediting an account is always allowed), pause-free, requires `T` to have a
|
|
1125
|
+
* registered deposit policy. Returns a deposit request even when the address holds
|
|
1126
|
+
* zero T (the carried balance is `Balance::zero()` in that case) — callers can
|
|
1127
|
+
* short-circuit off-chain by checking `settled_funds_value` first.
|
|
1128
|
+
*/
|
|
1129
|
+
function requestDepositFromFunds(options) {
|
|
1130
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1131
|
+
const argumentsTypes = [
|
|
1132
|
+
null,
|
|
1133
|
+
'0x2::object::ID',
|
|
1134
|
+
null,
|
|
1135
|
+
'vector<u8>'
|
|
1136
|
+
];
|
|
1137
|
+
const parameterNames = ["registry", "accountId", "accumulatorRoot", "extraData"];
|
|
1138
|
+
return (tx) => tx.moveCall({
|
|
1139
|
+
package: packageAddress,
|
|
1140
|
+
module: 'account',
|
|
1141
|
+
function: 'request_deposit_from_funds',
|
|
1142
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1143
|
+
typeArguments: options.typeArguments
|
|
1144
|
+
});
|
|
1145
|
+
}
|
|
1146
|
+
/**
|
|
1147
|
+
* Policy-side unwrap. Verifies that `P` is the registered deposit policy for `T`,
|
|
1148
|
+
* then destructures the hot potato. The policy module is responsible for what
|
|
1149
|
+
* happens next — typically swap / convert `Balance<T>` to some `Balance<T_OUT>`
|
|
1150
|
+
* and call `put<T_OUT, P>` to credit the account.
|
|
1151
|
+
*/
|
|
1152
|
+
function consumeDeposit(options) {
|
|
1153
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1154
|
+
const argumentsTypes = [
|
|
1155
|
+
null,
|
|
1156
|
+
null,
|
|
1157
|
+
`${options.typeArguments[1]}`
|
|
1158
|
+
];
|
|
1159
|
+
const parameterNames = ["registry", "req", "Witness"];
|
|
1160
|
+
return (tx) => tx.moveCall({
|
|
1161
|
+
package: packageAddress,
|
|
1162
|
+
module: 'account',
|
|
1163
|
+
function: 'consume_deposit',
|
|
1164
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1165
|
+
typeArguments: options.typeArguments
|
|
1166
|
+
});
|
|
1167
|
+
}
|
|
1168
|
+
/**
|
|
1169
|
+
* Debits `amount` of the account's stored `Balance<T>` and packages it into a
|
|
1170
|
+
* `WithdrawRequest<T>` for the registered withdraw policy. Auth (owner-only — see
|
|
1171
|
+
* the gate below; `PERM_WITHDRAW` delegates are rejected) and pause are checked
|
|
1172
|
+
* here, not in `consume_withdraw`.
|
|
1173
|
+
*/
|
|
1174
|
+
function requestWithdraw(options) {
|
|
1175
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1176
|
+
const argumentsTypes = [
|
|
1177
|
+
null,
|
|
1178
|
+
null,
|
|
1179
|
+
'0x2::object::ID',
|
|
1180
|
+
'u64',
|
|
1181
|
+
'address',
|
|
1182
|
+
'vector<u8>',
|
|
1183
|
+
'0x2::clock::Clock'
|
|
1184
|
+
];
|
|
1185
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "amount", "recipient", "extraData"];
|
|
1186
|
+
return (tx) => tx.moveCall({
|
|
1187
|
+
package: packageAddress,
|
|
1188
|
+
module: 'account',
|
|
1189
|
+
function: 'request_withdraw',
|
|
1190
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1191
|
+
typeArguments: options.typeArguments
|
|
1192
|
+
});
|
|
1193
|
+
}
|
|
1194
|
+
/**
|
|
1195
|
+
* Policy-side unwrap. Verifies that `P` is the registered withdraw policy for `T`,
|
|
1196
|
+
* then destructures the hot potato. The policy module decides what to do with the
|
|
1197
|
+
* `Balance<T>` (transfer to `recipient` as `Coin<T>`, swap to another asset and
|
|
1198
|
+
* transfer, queue for later settlement, etc.).
|
|
1199
|
+
*/
|
|
1200
|
+
function consumeWithdraw(options) {
|
|
1201
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1202
|
+
const argumentsTypes = [
|
|
1203
|
+
null,
|
|
1204
|
+
null,
|
|
1205
|
+
`${options.typeArguments[1]}`
|
|
1206
|
+
];
|
|
1207
|
+
const parameterNames = ["registry", "req", "Witness"];
|
|
1208
|
+
return (tx) => tx.moveCall({
|
|
1209
|
+
package: packageAddress,
|
|
1210
|
+
module: 'account',
|
|
1211
|
+
function: 'consume_withdraw',
|
|
1212
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1213
|
+
typeArguments: options.typeArguments
|
|
1214
|
+
});
|
|
1215
|
+
}
|
|
1216
|
+
/**
|
|
1217
|
+
* TTOs a `Coin<T>` to the account's UID address. The coin sits there until someone
|
|
1218
|
+
* calls `request_deposit_from_receivings<T>` (which requires a registered deposit
|
|
1219
|
+
* policy that then folds the coin into the account's stored balance) or
|
|
1220
|
+
* `receive<Coin<T>>` (owner-only, no policy needed). Useful for async / cross-PTB
|
|
1221
|
+
* deposits and for routing protocol payouts (e.g. reward claims) into an account
|
|
1222
|
+
* when `T` has no deposit policy.
|
|
1223
|
+
*/
|
|
1224
|
+
function transferCoin(options) {
|
|
1225
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1226
|
+
const argumentsTypes = [
|
|
1227
|
+
null,
|
|
1228
|
+
'0x2::object::ID',
|
|
1229
|
+
null
|
|
1230
|
+
];
|
|
1231
|
+
const parameterNames = ["registry", "accountId", "coin"];
|
|
1232
|
+
return (tx) => tx.moveCall({
|
|
1233
|
+
package: packageAddress,
|
|
1234
|
+
module: 'account',
|
|
1235
|
+
function: 'transfer_coin',
|
|
1236
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1237
|
+
typeArguments: options.typeArguments
|
|
1238
|
+
});
|
|
1239
|
+
}
|
|
1240
|
+
/**
|
|
1241
|
+
* Account-owner drain of a TTO'd object on the account's UID. Generic over
|
|
1242
|
+
* `T: key + store` — works for NFTs, reward objects, or `Coin<X>` where `X` has no
|
|
1243
|
+
* registered deposit policy.
|
|
1244
|
+
*
|
|
1245
|
+
* **Policy-managed Coin<X> is rejected.** If `T == Coin<X>` and `X` has a deposit
|
|
1246
|
+
* policy registered, this aborts `EUseRequestDepositInstead` to keep policy-routed
|
|
1247
|
+
* inflow on the deposit-policy pipeline — bypassing via `receive` would skip the
|
|
1248
|
+
* conversion / authorization the policy is supposed to enforce. Use
|
|
1249
|
+
* `request_deposit_from_receivings<X>` or `request_deposit_from_funds<X>` for
|
|
1250
|
+
* inflow when X has a deposit policy.
|
|
1251
|
+
*
|
|
1252
|
+
* Auth: account owner only. Receiving a TTO'd object hands it to the caller's PTB
|
|
1253
|
+
* — an off-platform exfil path — so a delegate can never drive it, even one
|
|
1254
|
+
* holding `PERM_RECEIVE`. The `PERM_RECEIVE` bit is retained for ABI stability but
|
|
1255
|
+
* no longer gates any path. Returns the received object to the caller's PTB.
|
|
1256
|
+
*/
|
|
1257
|
+
function receive(options) {
|
|
1258
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1259
|
+
const argumentsTypes = [
|
|
1260
|
+
null,
|
|
1261
|
+
null,
|
|
1262
|
+
'0x2::object::ID',
|
|
1263
|
+
null,
|
|
1264
|
+
'0x2::clock::Clock'
|
|
1265
|
+
];
|
|
1266
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "receiving"];
|
|
1267
|
+
return (tx) => tx.moveCall({
|
|
1268
|
+
package: packageAddress,
|
|
1269
|
+
module: 'account',
|
|
1270
|
+
function: 'receive',
|
|
1271
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1272
|
+
typeArguments: options.typeArguments
|
|
1273
|
+
});
|
|
1274
|
+
}
|
|
1275
|
+
/**
|
|
1276
|
+
* Drains every `Balance<T>` sitting at the account's UID-derived address in Sui's
|
|
1277
|
+
* native funds accumulator and returns it directly as a `Balance<T>`. Symmetric to
|
|
1278
|
+
* `request_deposit_from_funds<T>`, but explicitly for `T` that has **no**
|
|
1279
|
+
* registered deposit policy — policy-managed inflow must route through the
|
|
1280
|
+
* deposit-policy pipeline instead. The intent is to let the account owner pull
|
|
1281
|
+
* policy-less inflow (reward tokens TTO'd via `send_funds`, miscellaneous
|
|
1282
|
+
* `Balance<T>` the SDK parked at the address) straight out.
|
|
1283
|
+
*
|
|
1284
|
+
* Auth: same as `request_withdraw<T>` — owner-only. A delegate is rejected even
|
|
1285
|
+
* one holding `PERM_WITHDRAW` (the bit no longer gates this path; retained for ABI
|
|
1286
|
+
* stability only). Aborts `EUseRequestDepositInstead` if `T` has a deposit policy
|
|
1287
|
+
* registered. Pause-gated. Returns `Balance::zero<T>()` when the address holds no
|
|
1288
|
+
* T.
|
|
1289
|
+
*/
|
|
1290
|
+
function withdrawFromFunds(options) {
|
|
1291
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1292
|
+
const argumentsTypes = [
|
|
1293
|
+
null,
|
|
1294
|
+
null,
|
|
1295
|
+
'0x2::object::ID',
|
|
1296
|
+
null,
|
|
1297
|
+
'0x2::clock::Clock'
|
|
1298
|
+
];
|
|
1299
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "accumulatorRoot"];
|
|
1300
|
+
return (tx) => tx.moveCall({
|
|
1301
|
+
package: packageAddress,
|
|
1302
|
+
module: 'account',
|
|
1303
|
+
function: 'withdraw_from_funds',
|
|
1304
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1305
|
+
typeArguments: options.typeArguments
|
|
1306
|
+
});
|
|
1307
|
+
}
|
|
1308
|
+
/**
|
|
1309
|
+
* Splits `amount` of `Balance<T>` off `account_id` for protocol `P` to use. Three
|
|
1310
|
+
* gates compose:
|
|
1311
|
+
*
|
|
1312
|
+
* 1. **Witness privacy.** Only the module that defines `P` can produce a value of
|
|
1313
|
+
* `P`, so only that module can call `take<T, P>`.
|
|
1314
|
+
* 2. **Protocol whitelist.** `P` must be in `protocol_whitelist` (admin-managed).
|
|
1315
|
+
* Stops any deployed module that happens to own a `drop` witness from draining
|
|
1316
|
+
* accounts.
|
|
1317
|
+
* 3. **Per-account auth.** `sender_request.address()` must be the account's owner
|
|
1318
|
+
* OR a non-expired delegate — even a legitimate whitelisted protocol cannot
|
|
1319
|
+
* move funds out of an account that doesn't know the caller. This mirrors EOA
|
|
1320
|
+
* semantics: the account never pays out without the owner (or a delegated key)
|
|
1321
|
+
* signing. Per-action bit semantics on `protocol_permissions[P]` remain the
|
|
1322
|
+
* protocol's responsibility on top of this.
|
|
1323
|
+
*
|
|
1324
|
+
* No deposit/withdraw policy is consulted — `take` / `put` are the
|
|
1325
|
+
* protocol↔account flow and orthogonal to the external deposit/withdraw path that
|
|
1326
|
+
* policies own.
|
|
1327
|
+
*/
|
|
1328
|
+
function take(options) {
|
|
1329
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1330
|
+
const argumentsTypes = [
|
|
1331
|
+
null,
|
|
1332
|
+
null,
|
|
1333
|
+
'0x2::object::ID',
|
|
1334
|
+
'u64',
|
|
1335
|
+
`${options.typeArguments[1]}`,
|
|
1336
|
+
'0x2::clock::Clock'
|
|
1337
|
+
];
|
|
1338
|
+
const parameterNames = ["registry", "senderRequest", "accountId", "amount", "Witness"];
|
|
1339
|
+
return (tx) => tx.moveCall({
|
|
1340
|
+
package: packageAddress,
|
|
1341
|
+
module: 'account',
|
|
1342
|
+
function: 'take',
|
|
1343
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1344
|
+
typeArguments: options.typeArguments
|
|
1345
|
+
});
|
|
1346
|
+
}
|
|
1347
|
+
/**
|
|
1348
|
+
* Joins `bal` into `account_id`'s stored `Balance<T>`. Symmetric to `take<T, P>`.
|
|
1349
|
+
* Zero-value balances are silently destroyed.
|
|
1350
|
+
*/
|
|
1351
|
+
function put(options) {
|
|
1352
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1353
|
+
const argumentsTypes = [
|
|
1354
|
+
null,
|
|
1355
|
+
'0x2::object::ID',
|
|
1356
|
+
null,
|
|
1357
|
+
`${options.typeArguments[1]}`
|
|
1358
|
+
];
|
|
1359
|
+
const parameterNames = ["registry", "accountId", "bal", "Witness"];
|
|
1360
|
+
return (tx) => tx.moveCall({
|
|
1361
|
+
package: packageAddress,
|
|
1362
|
+
module: 'account',
|
|
1363
|
+
function: 'put',
|
|
1364
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1365
|
+
typeArguments: options.typeArguments
|
|
1366
|
+
});
|
|
1367
|
+
}
|
|
1368
|
+
function hasAccount(options) {
|
|
1369
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1370
|
+
const argumentsTypes = [
|
|
1371
|
+
null,
|
|
1372
|
+
'0x2::object::ID'
|
|
1373
|
+
];
|
|
1374
|
+
const parameterNames = ["registry", "accountId"];
|
|
1375
|
+
return (tx) => tx.moveCall({
|
|
1376
|
+
package: packageAddress,
|
|
1377
|
+
module: 'account',
|
|
1378
|
+
function: 'has_account',
|
|
1379
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1380
|
+
});
|
|
1381
|
+
}
|
|
1382
|
+
/**
|
|
1383
|
+
* Returns `true` when `addr` is the account's owner or a non-expired delegate,
|
|
1384
|
+
* regardless of permission bits. The framework's "is this address known to the
|
|
1385
|
+
* account?" gate — per-action bit semantics are the protocol's responsibility on
|
|
1386
|
+
* top of this.
|
|
1387
|
+
*/
|
|
1388
|
+
function isAccountAuthorized(options) {
|
|
1389
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1390
|
+
const argumentsTypes = [
|
|
1391
|
+
null,
|
|
1392
|
+
'0x2::object::ID',
|
|
1393
|
+
'address',
|
|
1394
|
+
'u64'
|
|
1395
|
+
];
|
|
1396
|
+
const parameterNames = ["registry", "accountId", "addr", "nowMs"];
|
|
1397
|
+
return (tx) => tx.moveCall({
|
|
1398
|
+
package: packageAddress,
|
|
1399
|
+
module: 'account',
|
|
1400
|
+
function: 'is_account_authorized',
|
|
1401
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1402
|
+
});
|
|
1403
|
+
}
|
|
1404
|
+
/**
|
|
1405
|
+
* Returns `true` only when `addr` is the account's **owner** — delegates are
|
|
1406
|
+
* excluded regardless of their permission bits or expiry. Protocols use this for
|
|
1407
|
+
* owner-only actions that must never be delegate-driven (e.g. collateral
|
|
1408
|
+
* withdrawal): defense-in-depth so a phished or compromised delegate key can never
|
|
1409
|
+
* move funds, only the owner's own signature can. Contrast `is_account_authorized`
|
|
1410
|
+
* (owner OR live delegate).
|
|
1411
|
+
*/
|
|
1412
|
+
function isAccountOwner(options) {
|
|
1413
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1414
|
+
const argumentsTypes = [
|
|
1415
|
+
null,
|
|
1416
|
+
'0x2::object::ID',
|
|
1417
|
+
'address'
|
|
1418
|
+
];
|
|
1419
|
+
const parameterNames = ["registry", "accountId", "addr"];
|
|
1420
|
+
return (tx) => tx.moveCall({
|
|
1421
|
+
package: packageAddress,
|
|
1422
|
+
module: 'account',
|
|
1423
|
+
function: 'is_account_owner',
|
|
1424
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1425
|
+
});
|
|
1426
|
+
}
|
|
1427
|
+
function accountCount(options) {
|
|
1428
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1429
|
+
const argumentsTypes = [
|
|
1430
|
+
null,
|
|
1431
|
+
'address'
|
|
1432
|
+
];
|
|
1433
|
+
const parameterNames = ["registry", "owner"];
|
|
1434
|
+
return (tx) => tx.moveCall({
|
|
1435
|
+
package: packageAddress,
|
|
1436
|
+
module: 'account',
|
|
1437
|
+
function: 'account_count',
|
|
1438
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1439
|
+
});
|
|
1440
|
+
}
|
|
1441
|
+
function accountIds(options) {
|
|
1442
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1443
|
+
const argumentsTypes = [
|
|
1444
|
+
null,
|
|
1445
|
+
'address'
|
|
1446
|
+
];
|
|
1447
|
+
const parameterNames = ["registry", "owner"];
|
|
1448
|
+
return (tx) => tx.moveCall({
|
|
1449
|
+
package: packageAddress,
|
|
1450
|
+
module: 'account',
|
|
1451
|
+
function: 'account_ids',
|
|
1452
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1453
|
+
});
|
|
1454
|
+
}
|
|
1455
|
+
/**
|
|
1456
|
+
* Framework-level effective permissions (used by `request_withdraw`). Owner →
|
|
1457
|
+
* `PERM_ALL`. Delegate → its `permissions` bitmap unless expired. Stranger →
|
|
1458
|
+
* `PERM_NONE`.
|
|
1459
|
+
*/
|
|
1460
|
+
function effectivePermissions(options) {
|
|
1461
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1462
|
+
const argumentsTypes = [
|
|
1463
|
+
null,
|
|
1464
|
+
'0x2::object::ID',
|
|
1465
|
+
'address',
|
|
1466
|
+
'u64'
|
|
1467
|
+
];
|
|
1468
|
+
const parameterNames = ["registry", "accountId", "addr", "nowMs"];
|
|
1469
|
+
return (tx) => tx.moveCall({
|
|
1470
|
+
package: packageAddress,
|
|
1471
|
+
module: 'account',
|
|
1472
|
+
function: 'effective_permissions',
|
|
1473
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1474
|
+
});
|
|
1475
|
+
}
|
|
1476
|
+
function hasPermission(options) {
|
|
1477
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1478
|
+
const argumentsTypes = [
|
|
1479
|
+
null,
|
|
1480
|
+
'0x2::object::ID',
|
|
1481
|
+
'address',
|
|
1482
|
+
'u32',
|
|
1483
|
+
'u64'
|
|
1484
|
+
];
|
|
1485
|
+
const parameterNames = ["registry", "accountId", "addr", "permission", "nowMs"];
|
|
1486
|
+
return (tx) => tx.moveCall({
|
|
1487
|
+
package: packageAddress,
|
|
1488
|
+
module: 'account',
|
|
1489
|
+
function: 'has_permission',
|
|
1490
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1491
|
+
});
|
|
1492
|
+
}
|
|
1493
|
+
/**
|
|
1494
|
+
* Per-protocol effective permissions (used by protocol modules). Owner →
|
|
1495
|
+
* `PERM_ALL` for any protocol. Delegate → the bitmap stored at
|
|
1496
|
+
* `protocol_permissions[TypeName(PROTOCOL)]`, or `PERM_NONE` if absent or expired.
|
|
1497
|
+
* Stranger → `PERM_NONE`.
|
|
1498
|
+
*/
|
|
1499
|
+
function effectiveProtocolPermissions(options) {
|
|
1500
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1501
|
+
const argumentsTypes = [
|
|
1502
|
+
null,
|
|
1503
|
+
'0x2::object::ID',
|
|
1504
|
+
'address',
|
|
1505
|
+
'u64'
|
|
1506
|
+
];
|
|
1507
|
+
const parameterNames = ["registry", "accountId", "addr", "nowMs"];
|
|
1508
|
+
return (tx) => tx.moveCall({
|
|
1509
|
+
package: packageAddress,
|
|
1510
|
+
module: 'account',
|
|
1511
|
+
function: 'effective_protocol_permissions',
|
|
1512
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1513
|
+
typeArguments: options.typeArguments
|
|
1514
|
+
});
|
|
1515
|
+
}
|
|
1516
|
+
function hasProtocolPermission(options) {
|
|
1517
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1518
|
+
const argumentsTypes = [
|
|
1519
|
+
null,
|
|
1520
|
+
'0x2::object::ID',
|
|
1521
|
+
'address',
|
|
1522
|
+
'u32',
|
|
1523
|
+
'u64'
|
|
1524
|
+
];
|
|
1525
|
+
const parameterNames = ["registry", "accountId", "addr", "permission", "nowMs"];
|
|
1526
|
+
return (tx) => tx.moveCall({
|
|
1527
|
+
package: packageAddress,
|
|
1528
|
+
module: 'account',
|
|
1529
|
+
function: 'has_protocol_permission',
|
|
1530
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1531
|
+
typeArguments: options.typeArguments
|
|
1532
|
+
});
|
|
1533
|
+
}
|
|
1534
|
+
function accountBalance(options) {
|
|
1535
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1536
|
+
const argumentsTypes = [
|
|
1537
|
+
null,
|
|
1538
|
+
'0x2::object::ID'
|
|
1539
|
+
];
|
|
1540
|
+
const parameterNames = ["registry", "accountId"];
|
|
1541
|
+
return (tx) => tx.moveCall({
|
|
1542
|
+
package: packageAddress,
|
|
1543
|
+
module: 'account',
|
|
1544
|
+
function: 'account_balance',
|
|
1545
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1546
|
+
typeArguments: options.typeArguments
|
|
1547
|
+
});
|
|
1548
|
+
}
|
|
1549
|
+
function accountBalances(options) {
|
|
1550
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1551
|
+
const argumentsTypes = [
|
|
1552
|
+
null,
|
|
1553
|
+
'0x2::object::ID'
|
|
1554
|
+
];
|
|
1555
|
+
const parameterNames = ["registry", "accountId"];
|
|
1556
|
+
return (tx) => tx.moveCall({
|
|
1557
|
+
package: packageAddress,
|
|
1558
|
+
module: 'account',
|
|
1559
|
+
function: 'account_balances',
|
|
1560
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1561
|
+
});
|
|
1562
|
+
}
|
|
1563
|
+
/**
|
|
1564
|
+
* Total `Balance<T>` currently held across all accounts. Counter; not derived from
|
|
1565
|
+
* iterating accounts. Excludes balance held by protocols (after `take`) and
|
|
1566
|
+
* balance sitting in hot-potato requests in flight.
|
|
1567
|
+
*/
|
|
1568
|
+
function balance(options) {
|
|
1569
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1570
|
+
const argumentsTypes = [
|
|
1571
|
+
null
|
|
1572
|
+
];
|
|
1573
|
+
const parameterNames = ["registry"];
|
|
1574
|
+
return (tx) => tx.moveCall({
|
|
1575
|
+
package: packageAddress,
|
|
1576
|
+
module: 'account',
|
|
1577
|
+
function: 'balance',
|
|
1578
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1579
|
+
typeArguments: options.typeArguments
|
|
1580
|
+
});
|
|
1581
|
+
}
|
|
1582
|
+
function accountOwner(options) {
|
|
1583
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1584
|
+
const argumentsTypes = [
|
|
1585
|
+
null
|
|
1586
|
+
];
|
|
1587
|
+
const parameterNames = ["account"];
|
|
1588
|
+
return (tx) => tx.moveCall({
|
|
1589
|
+
package: packageAddress,
|
|
1590
|
+
module: 'account',
|
|
1591
|
+
function: 'account_owner',
|
|
1592
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1593
|
+
});
|
|
1594
|
+
}
|
|
1595
|
+
function accountAlias(options) {
|
|
1596
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1597
|
+
const argumentsTypes = [
|
|
1598
|
+
null
|
|
1599
|
+
];
|
|
1600
|
+
const parameterNames = ["account"];
|
|
1601
|
+
return (tx) => tx.moveCall({
|
|
1602
|
+
package: packageAddress,
|
|
1603
|
+
module: 'account',
|
|
1604
|
+
function: 'account_alias',
|
|
1605
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1606
|
+
});
|
|
1607
|
+
}
|
|
1608
|
+
function accountId(options) {
|
|
1609
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1610
|
+
const argumentsTypes = [
|
|
1611
|
+
null
|
|
1612
|
+
];
|
|
1613
|
+
const parameterNames = ["account"];
|
|
1614
|
+
return (tx) => tx.moveCall({
|
|
1615
|
+
package: packageAddress,
|
|
1616
|
+
module: 'account',
|
|
1617
|
+
function: 'account_id',
|
|
1618
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1619
|
+
});
|
|
1620
|
+
}
|
|
1621
|
+
function accountAddress(options) {
|
|
1622
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1623
|
+
const argumentsTypes = [
|
|
1624
|
+
null
|
|
1625
|
+
];
|
|
1626
|
+
const parameterNames = ["account"];
|
|
1627
|
+
return (tx) => tx.moveCall({
|
|
1628
|
+
package: packageAddress,
|
|
1629
|
+
module: 'account',
|
|
1630
|
+
function: 'account_address',
|
|
1631
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1632
|
+
});
|
|
1633
|
+
}
|
|
1634
|
+
function accountDelegates(options) {
|
|
1635
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1636
|
+
const argumentsTypes = [
|
|
1637
|
+
null
|
|
1638
|
+
];
|
|
1639
|
+
const parameterNames = ["account"];
|
|
1640
|
+
return (tx) => tx.moveCall({
|
|
1641
|
+
package: packageAddress,
|
|
1642
|
+
module: 'account',
|
|
1643
|
+
function: 'account_delegates',
|
|
1644
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1645
|
+
});
|
|
1646
|
+
}
|
|
1647
|
+
function accountBalancesField(options) {
|
|
1648
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1649
|
+
const argumentsTypes = [
|
|
1650
|
+
null
|
|
1651
|
+
];
|
|
1652
|
+
const parameterNames = ["account"];
|
|
1653
|
+
return (tx) => tx.moveCall({
|
|
1654
|
+
package: packageAddress,
|
|
1655
|
+
module: 'account',
|
|
1656
|
+
function: 'account_balances_field',
|
|
1657
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1658
|
+
});
|
|
1659
|
+
}
|
|
1660
|
+
function delegateAddress(options) {
|
|
1661
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1662
|
+
const argumentsTypes = [
|
|
1663
|
+
null
|
|
1664
|
+
];
|
|
1665
|
+
const parameterNames = ["delegate"];
|
|
1666
|
+
return (tx) => tx.moveCall({
|
|
1667
|
+
package: packageAddress,
|
|
1668
|
+
module: 'account',
|
|
1669
|
+
function: 'delegate_address',
|
|
1670
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1671
|
+
});
|
|
1672
|
+
}
|
|
1673
|
+
function delegateAlias(options) {
|
|
1674
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1675
|
+
const argumentsTypes = [
|
|
1676
|
+
null
|
|
1677
|
+
];
|
|
1678
|
+
const parameterNames = ["delegate"];
|
|
1679
|
+
return (tx) => tx.moveCall({
|
|
1680
|
+
package: packageAddress,
|
|
1681
|
+
module: 'account',
|
|
1682
|
+
function: 'delegate_alias',
|
|
1683
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1684
|
+
});
|
|
1685
|
+
}
|
|
1686
|
+
function delegatePermissions(options) {
|
|
1687
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1688
|
+
const argumentsTypes = [
|
|
1689
|
+
null
|
|
1690
|
+
];
|
|
1691
|
+
const parameterNames = ["delegate"];
|
|
1692
|
+
return (tx) => tx.moveCall({
|
|
1693
|
+
package: packageAddress,
|
|
1694
|
+
module: 'account',
|
|
1695
|
+
function: 'delegate_permissions',
|
|
1696
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1697
|
+
});
|
|
1698
|
+
}
|
|
1699
|
+
function delegateProtocolPermissions(options) {
|
|
1700
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1701
|
+
const argumentsTypes = [
|
|
1702
|
+
null
|
|
1703
|
+
];
|
|
1704
|
+
const parameterNames = ["delegate"];
|
|
1705
|
+
return (tx) => tx.moveCall({
|
|
1706
|
+
package: packageAddress,
|
|
1707
|
+
module: 'account',
|
|
1708
|
+
function: 'delegate_protocol_permissions',
|
|
1709
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1710
|
+
});
|
|
1711
|
+
}
|
|
1712
|
+
function delegateExpiresAtMs(options) {
|
|
1713
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1714
|
+
const argumentsTypes = [
|
|
1715
|
+
null
|
|
1716
|
+
];
|
|
1717
|
+
const parameterNames = ["delegate"];
|
|
1718
|
+
return (tx) => tx.moveCall({
|
|
1719
|
+
package: packageAddress,
|
|
1720
|
+
module: 'account',
|
|
1721
|
+
function: 'delegate_expires_at_ms',
|
|
1722
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1723
|
+
});
|
|
1724
|
+
}
|
|
1725
|
+
function depositRequestAccountId(options) {
|
|
1726
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1727
|
+
const argumentsTypes = [
|
|
1728
|
+
null
|
|
1729
|
+
];
|
|
1730
|
+
const parameterNames = ["r"];
|
|
1731
|
+
return (tx) => tx.moveCall({
|
|
1732
|
+
package: packageAddress,
|
|
1733
|
+
module: 'account',
|
|
1734
|
+
function: 'deposit_request_account_id',
|
|
1735
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1736
|
+
typeArguments: options.typeArguments
|
|
1737
|
+
});
|
|
1738
|
+
}
|
|
1739
|
+
function depositRequestBalance(options) {
|
|
1740
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1741
|
+
const argumentsTypes = [
|
|
1742
|
+
null
|
|
1743
|
+
];
|
|
1744
|
+
const parameterNames = ["r"];
|
|
1745
|
+
return (tx) => tx.moveCall({
|
|
1746
|
+
package: packageAddress,
|
|
1747
|
+
module: 'account',
|
|
1748
|
+
function: 'deposit_request_balance',
|
|
1749
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1750
|
+
typeArguments: options.typeArguments
|
|
1751
|
+
});
|
|
1752
|
+
}
|
|
1753
|
+
function depositRequestAmount(options) {
|
|
1754
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1755
|
+
const argumentsTypes = [
|
|
1756
|
+
null
|
|
1757
|
+
];
|
|
1758
|
+
const parameterNames = ["r"];
|
|
1759
|
+
return (tx) => tx.moveCall({
|
|
1760
|
+
package: packageAddress,
|
|
1761
|
+
module: 'account',
|
|
1762
|
+
function: 'deposit_request_amount',
|
|
1763
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1764
|
+
typeArguments: options.typeArguments
|
|
1765
|
+
});
|
|
1766
|
+
}
|
|
1767
|
+
function depositRequestExtraData(options) {
|
|
1768
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1769
|
+
const argumentsTypes = [
|
|
1770
|
+
null
|
|
1771
|
+
];
|
|
1772
|
+
const parameterNames = ["r"];
|
|
1773
|
+
return (tx) => tx.moveCall({
|
|
1774
|
+
package: packageAddress,
|
|
1775
|
+
module: 'account',
|
|
1776
|
+
function: 'deposit_request_extra_data',
|
|
1777
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1778
|
+
typeArguments: options.typeArguments
|
|
1779
|
+
});
|
|
1780
|
+
}
|
|
1781
|
+
function withdrawRequestAccountId(options) {
|
|
1782
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1783
|
+
const argumentsTypes = [
|
|
1784
|
+
null
|
|
1785
|
+
];
|
|
1786
|
+
const parameterNames = ["r"];
|
|
1787
|
+
return (tx) => tx.moveCall({
|
|
1788
|
+
package: packageAddress,
|
|
1789
|
+
module: 'account',
|
|
1790
|
+
function: 'withdraw_request_account_id',
|
|
1791
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1792
|
+
typeArguments: options.typeArguments
|
|
1793
|
+
});
|
|
1794
|
+
}
|
|
1795
|
+
function withdrawRequestBalance(options) {
|
|
1796
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1797
|
+
const argumentsTypes = [
|
|
1798
|
+
null
|
|
1799
|
+
];
|
|
1800
|
+
const parameterNames = ["r"];
|
|
1801
|
+
return (tx) => tx.moveCall({
|
|
1802
|
+
package: packageAddress,
|
|
1803
|
+
module: 'account',
|
|
1804
|
+
function: 'withdraw_request_balance',
|
|
1805
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1806
|
+
typeArguments: options.typeArguments
|
|
1807
|
+
});
|
|
1808
|
+
}
|
|
1809
|
+
function withdrawRequestAmount(options) {
|
|
1810
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1811
|
+
const argumentsTypes = [
|
|
1812
|
+
null
|
|
1813
|
+
];
|
|
1814
|
+
const parameterNames = ["r"];
|
|
1815
|
+
return (tx) => tx.moveCall({
|
|
1816
|
+
package: packageAddress,
|
|
1817
|
+
module: 'account',
|
|
1818
|
+
function: 'withdraw_request_amount',
|
|
1819
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1820
|
+
typeArguments: options.typeArguments
|
|
1821
|
+
});
|
|
1822
|
+
}
|
|
1823
|
+
function withdrawRequestRecipient(options) {
|
|
1824
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1825
|
+
const argumentsTypes = [
|
|
1826
|
+
null
|
|
1827
|
+
];
|
|
1828
|
+
const parameterNames = ["r"];
|
|
1829
|
+
return (tx) => tx.moveCall({
|
|
1830
|
+
package: packageAddress,
|
|
1831
|
+
module: 'account',
|
|
1832
|
+
function: 'withdraw_request_recipient',
|
|
1833
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1834
|
+
typeArguments: options.typeArguments
|
|
1835
|
+
});
|
|
1836
|
+
}
|
|
1837
|
+
function withdrawRequestExtraData(options) {
|
|
1838
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1839
|
+
const argumentsTypes = [
|
|
1840
|
+
null
|
|
1841
|
+
];
|
|
1842
|
+
const parameterNames = ["r"];
|
|
1843
|
+
return (tx) => tx.moveCall({
|
|
1844
|
+
package: packageAddress,
|
|
1845
|
+
module: 'account',
|
|
1846
|
+
function: 'withdraw_request_extra_data',
|
|
1847
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1848
|
+
typeArguments: options.typeArguments
|
|
1849
|
+
});
|
|
1850
|
+
}
|
|
1851
|
+
function newData(options) {
|
|
1852
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1853
|
+
const argumentsTypes = [
|
|
1854
|
+
null,
|
|
1855
|
+
'0x2::object::ID',
|
|
1856
|
+
`${options.typeArguments[0]}`,
|
|
1857
|
+
`${options.typeArguments[1]}`
|
|
1858
|
+
];
|
|
1859
|
+
const parameterNames = ["registry", "accountId", "Witness", "data"];
|
|
1860
|
+
return (tx) => tx.moveCall({
|
|
1861
|
+
package: packageAddress,
|
|
1862
|
+
module: 'account',
|
|
1863
|
+
function: 'new_data',
|
|
1864
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1865
|
+
typeArguments: options.typeArguments
|
|
1866
|
+
});
|
|
1867
|
+
}
|
|
1868
|
+
function borrowData(options) {
|
|
1869
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1870
|
+
const argumentsTypes = [
|
|
1871
|
+
null,
|
|
1872
|
+
'0x2::object::ID'
|
|
1873
|
+
];
|
|
1874
|
+
const parameterNames = ["registry", "accountId"];
|
|
1875
|
+
return (tx) => tx.moveCall({
|
|
1876
|
+
package: packageAddress,
|
|
1877
|
+
module: 'account',
|
|
1878
|
+
function: 'borrow_data',
|
|
1879
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1880
|
+
typeArguments: options.typeArguments
|
|
1881
|
+
});
|
|
1882
|
+
}
|
|
1883
|
+
function borrowDataMut(options) {
|
|
1884
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1885
|
+
const argumentsTypes = [
|
|
1886
|
+
null,
|
|
1887
|
+
'0x2::object::ID',
|
|
1888
|
+
`${options.typeArguments[0]}`
|
|
1889
|
+
];
|
|
1890
|
+
const parameterNames = ["registry", "accountId", "Witness"];
|
|
1891
|
+
return (tx) => tx.moveCall({
|
|
1892
|
+
package: packageAddress,
|
|
1893
|
+
module: 'account',
|
|
1894
|
+
function: 'borrow_data_mut',
|
|
1895
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1896
|
+
typeArguments: options.typeArguments
|
|
1897
|
+
});
|
|
1898
|
+
}
|
|
1899
|
+
function hasData(options) {
|
|
1900
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1901
|
+
const argumentsTypes = [
|
|
1902
|
+
null,
|
|
1903
|
+
'0x2::object::ID'
|
|
1904
|
+
];
|
|
1905
|
+
const parameterNames = ["registry", "accountId"];
|
|
1906
|
+
return (tx) => tx.moveCall({
|
|
1907
|
+
package: packageAddress,
|
|
1908
|
+
module: 'account',
|
|
1909
|
+
function: 'has_data',
|
|
1910
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1911
|
+
typeArguments: options.typeArguments
|
|
1912
|
+
});
|
|
1913
|
+
}
|
|
1914
|
+
function removeData(options) {
|
|
1915
|
+
const packageAddress = options.package ?? '@waterx/account';
|
|
1916
|
+
const argumentsTypes = [
|
|
1917
|
+
null,
|
|
1918
|
+
'0x2::object::ID',
|
|
1919
|
+
`${options.typeArguments[0]}`
|
|
1920
|
+
];
|
|
1921
|
+
const parameterNames = ["registry", "accountId", "Witness"];
|
|
1922
|
+
return (tx) => tx.moveCall({
|
|
1923
|
+
package: packageAddress,
|
|
1924
|
+
module: 'account',
|
|
1925
|
+
function: 'remove_data',
|
|
1926
|
+
arguments: (0, index_ts_1.normalizeMoveArguments)(options.arguments, argumentsTypes, parameterNames),
|
|
1927
|
+
typeArguments: options.typeArguments
|
|
1928
|
+
});
|
|
1929
|
+
}
|