@haneullabs/deepbook-v3 0.1.0
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/CHANGELOG.md +984 -0
- package/README.md +1 -0
- package/dist/cjs/client.d.ts +861 -0
- package/dist/cjs/client.js +1982 -0
- package/dist/cjs/client.js.map +7 -0
- package/dist/cjs/contracts/deepbook/account.d.ts +105 -0
- package/dist/cjs/contracts/deepbook/account.js +163 -0
- package/dist/cjs/contracts/deepbook/account.js.map +7 -0
- package/dist/cjs/contracts/deepbook/balance_manager.d.ts +268 -0
- package/dist/cjs/contracts/deepbook/balance_manager.js +361 -0
- package/dist/cjs/contracts/deepbook/balance_manager.js.map +7 -0
- package/dist/cjs/contracts/deepbook/balances.d.ts +10 -0
- package/dist/cjs/contracts/deepbook/balances.js +35 -0
- package/dist/cjs/contracts/deepbook/balances.js.map +7 -0
- package/dist/cjs/contracts/deepbook/big_vector.d.ts +62 -0
- package/dist/cjs/contracts/deepbook/big_vector.js +80 -0
- package/dist/cjs/contracts/deepbook/big_vector.js.map +7 -0
- package/dist/cjs/contracts/deepbook/book.d.ts +34 -0
- package/dist/cjs/contracts/deepbook/book.js +50 -0
- package/dist/cjs/contracts/deepbook/book.js.map +7 -0
- package/dist/cjs/contracts/deepbook/constants.d.ts +176 -0
- package/dist/cjs/contracts/deepbook/constants.js +338 -0
- package/dist/cjs/contracts/deepbook/constants.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deep_price.d.ts +60 -0
- package/dist/cjs/contracts/deepbook/deep_price.js +87 -0
- package/dist/cjs/contracts/deepbook/deep_price.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/std/type_name.d.ts +14 -0
- package/dist/cjs/contracts/deepbook/deps/std/type_name.js +42 -0
- package/dist/cjs/contracts/deepbook/deps/std/type_name.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/bag.d.ts +33 -0
- package/dist/cjs/contracts/deepbook/deps/sui/bag.js +47 -0
- package/dist/cjs/contracts/deepbook/deps/sui/bag.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/balance.d.ts +9 -0
- package/dist/cjs/contracts/deepbook/deps/sui/balance.js +33 -0
- package/dist/cjs/contracts/deepbook/deps/sui/balance.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/object.d.ts +5 -0
- package/dist/cjs/contracts/deepbook/deps/sui/object.js +33 -0
- package/dist/cjs/contracts/deepbook/deps/sui/object.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/table.d.ts +28 -0
- package/dist/cjs/contracts/deepbook/deps/sui/table.js +47 -0
- package/dist/cjs/contracts/deepbook/deps/sui/table.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_map.d.ts +27 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_map.js +45 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_map.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_set.d.ts +15 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_set.js +35 -0
- package/dist/cjs/contracts/deepbook/deps/sui/vec_set.js.map +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/versioned.d.ts +7 -0
- package/dist/cjs/contracts/deepbook/deps/sui/versioned.js +45 -0
- package/dist/cjs/contracts/deepbook/deps/sui/versioned.js.map +7 -0
- package/dist/cjs/contracts/deepbook/ewma.d.ts +17 -0
- package/dist/cjs/contracts/deepbook/ewma.js +39 -0
- package/dist/cjs/contracts/deepbook/ewma.js.map +7 -0
- package/dist/cjs/contracts/deepbook/fill.d.ts +153 -0
- package/dist/cjs/contracts/deepbook/fill.js +251 -0
- package/dist/cjs/contracts/deepbook/fill.js.map +7 -0
- package/dist/cjs/contracts/deepbook/governance.d.ts +63 -0
- package/dist/cjs/contracts/deepbook/governance.js +79 -0
- package/dist/cjs/contracts/deepbook/governance.js.map +7 -0
- package/dist/cjs/contracts/deepbook/history.d.ts +60 -0
- package/dist/cjs/contracts/deepbook/history.js +78 -0
- package/dist/cjs/contracts/deepbook/history.js.map +7 -0
- package/dist/cjs/contracts/deepbook/math.d.ts +94 -0
- package/dist/cjs/contracts/deepbook/math.js +132 -0
- package/dist/cjs/contracts/deepbook/math.js.map +7 -0
- package/dist/cjs/contracts/deepbook/order.d.ts +135 -0
- package/dist/cjs/contracts/deepbook/order.js +218 -0
- package/dist/cjs/contracts/deepbook/order.js.map +7 -0
- package/dist/cjs/contracts/deepbook/order_info.d.ts +296 -0
- package/dist/cjs/contracts/deepbook/order_info.js +386 -0
- package/dist/cjs/contracts/deepbook/order_info.js.map +7 -0
- package/dist/cjs/contracts/deepbook/order_query.d.ts +85 -0
- package/dist/cjs/contracts/deepbook/order_query.js +96 -0
- package/dist/cjs/contracts/deepbook/order_query.js.map +7 -0
- package/dist/cjs/contracts/deepbook/pool.d.ts +1218 -0
- package/dist/cjs/contracts/deepbook/pool.js +1236 -0
- package/dist/cjs/contracts/deepbook/pool.js.map +7 -0
- package/dist/cjs/contracts/deepbook/registry.d.ts +134 -0
- package/dist/cjs/contracts/deepbook/registry.js +182 -0
- package/dist/cjs/contracts/deepbook/registry.js.map +7 -0
- package/dist/cjs/contracts/deepbook/state.d.ts +117 -0
- package/dist/cjs/contracts/deepbook/state.js +104 -0
- package/dist/cjs/contracts/deepbook/state.js.map +7 -0
- package/dist/cjs/contracts/deepbook/trade_params.d.ts +7 -0
- package/dist/cjs/contracts/deepbook/trade_params.js +35 -0
- package/dist/cjs/contracts/deepbook/trade_params.js.map +7 -0
- package/dist/cjs/contracts/deepbook/vault.d.ts +30 -0
- package/dist/cjs/contracts/deepbook/vault.js +65 -0
- package/dist/cjs/contracts/deepbook/vault.js.map +7 -0
- package/dist/cjs/contracts/utils/index.d.ts +25 -0
- package/dist/cjs/contracts/utils/index.js +148 -0
- package/dist/cjs/contracts/utils/index.js.map +7 -0
- package/dist/cjs/index.d.ts +23 -0
- package/dist/cjs/index.js +81 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/package.json +4 -0
- package/dist/cjs/pyth/PriceServiceConnection.d.ts +26 -0
- package/dist/cjs/pyth/PriceServiceConnection.js +68 -0
- package/dist/cjs/pyth/PriceServiceConnection.js.map +7 -0
- package/dist/cjs/pyth/pyth-helpers.d.ts +7 -0
- package/dist/cjs/pyth/pyth-helpers.js +36 -0
- package/dist/cjs/pyth/pyth-helpers.js.map +7 -0
- package/dist/cjs/pyth/pyth.d.ts +65 -0
- package/dist/cjs/pyth/pyth.js +269 -0
- package/dist/cjs/pyth/pyth.js.map +7 -0
- package/dist/cjs/transactions/balanceManager.d.ts +168 -0
- package/dist/cjs/transactions/balanceManager.js +384 -0
- package/dist/cjs/transactions/balanceManager.js.map +7 -0
- package/dist/cjs/transactions/deepbook.d.ts +477 -0
- package/dist/cjs/transactions/deepbook.js +1335 -0
- package/dist/cjs/transactions/deepbook.js.map +7 -0
- package/dist/cjs/transactions/deepbookAdmin.d.ts +105 -0
- package/dist/cjs/transactions/deepbookAdmin.js +334 -0
- package/dist/cjs/transactions/deepbookAdmin.js.map +7 -0
- package/dist/cjs/transactions/flashLoans.d.ts +56 -0
- package/dist/cjs/transactions/flashLoans.js +124 -0
- package/dist/cjs/transactions/flashLoans.js.map +7 -0
- package/dist/cjs/transactions/governance.d.ts +42 -0
- package/dist/cjs/transactions/governance.js +135 -0
- package/dist/cjs/transactions/governance.js.map +7 -0
- package/dist/cjs/transactions/marginAdmin.d.ts +133 -0
- package/dist/cjs/transactions/marginAdmin.js +393 -0
- package/dist/cjs/transactions/marginAdmin.js.map +7 -0
- package/dist/cjs/transactions/marginLiquidations.d.ts +61 -0
- package/dist/cjs/transactions/marginLiquidations.js +173 -0
- package/dist/cjs/transactions/marginLiquidations.js.map +7 -0
- package/dist/cjs/transactions/marginMaintainer.d.ts +80 -0
- package/dist/cjs/transactions/marginMaintainer.js +251 -0
- package/dist/cjs/transactions/marginMaintainer.js.map +7 -0
- package/dist/cjs/transactions/marginManager.d.ts +236 -0
- package/dist/cjs/transactions/marginManager.js +688 -0
- package/dist/cjs/transactions/marginManager.js.map +7 -0
- package/dist/cjs/transactions/marginPool.d.ts +134 -0
- package/dist/cjs/transactions/marginPool.js +330 -0
- package/dist/cjs/transactions/marginPool.js.map +7 -0
- package/dist/cjs/transactions/marginRegistry.d.ts +94 -0
- package/dist/cjs/transactions/marginRegistry.js +221 -0
- package/dist/cjs/transactions/marginRegistry.js.map +7 -0
- package/dist/cjs/transactions/marginTPSL.d.ts +93 -0
- package/dist/cjs/transactions/marginTPSL.js +286 -0
- package/dist/cjs/transactions/marginTPSL.js.map +7 -0
- package/dist/cjs/transactions/poolProxy.d.ts +104 -0
- package/dist/cjs/transactions/poolProxy.js +435 -0
- package/dist/cjs/transactions/poolProxy.js.map +7 -0
- package/dist/cjs/types/bcs.d.ts +5 -0
- package/dist/cjs/types/bcs.js +33 -0
- package/dist/cjs/types/bcs.js.map +7 -0
- package/dist/cjs/types/index.d.ts +218 -0
- package/dist/cjs/types/index.js +38 -0
- package/dist/cjs/types/index.js.map +7 -0
- package/dist/cjs/utils/config.d.ts +65 -0
- package/dist/cjs/utils/config.js +144 -0
- package/dist/cjs/utils/config.js.map +7 -0
- package/dist/cjs/utils/constants.d.ts +76 -0
- package/dist/cjs/utils/constants.js +382 -0
- package/dist/cjs/utils/constants.js.map +7 -0
- package/dist/cjs/utils/errors.d.ts +42 -0
- package/dist/cjs/utils/errors.js +70 -0
- package/dist/cjs/utils/errors.js.map +7 -0
- package/dist/cjs/utils/validation.d.ts +50 -0
- package/dist/cjs/utils/validation.js +67 -0
- package/dist/cjs/utils/validation.js.map +7 -0
- package/dist/esm/client.d.ts +861 -0
- package/dist/esm/client.js +1967 -0
- package/dist/esm/client.js.map +7 -0
- package/dist/esm/contracts/deepbook/account.d.ts +105 -0
- package/dist/esm/contracts/deepbook/account.js +133 -0
- package/dist/esm/contracts/deepbook/account.js.map +7 -0
- package/dist/esm/contracts/deepbook/balance_manager.d.ts +268 -0
- package/dist/esm/contracts/deepbook/balance_manager.js +331 -0
- package/dist/esm/contracts/deepbook/balance_manager.js.map +7 -0
- package/dist/esm/contracts/deepbook/balances.d.ts +10 -0
- package/dist/esm/contracts/deepbook/balances.js +15 -0
- package/dist/esm/contracts/deepbook/balances.js.map +7 -0
- package/dist/esm/contracts/deepbook/big_vector.d.ts +62 -0
- package/dist/esm/contracts/deepbook/big_vector.js +50 -0
- package/dist/esm/contracts/deepbook/big_vector.js.map +7 -0
- package/dist/esm/contracts/deepbook/book.d.ts +34 -0
- package/dist/esm/contracts/deepbook/book.js +20 -0
- package/dist/esm/contracts/deepbook/book.js.map +7 -0
- package/dist/esm/contracts/deepbook/constants.d.ts +176 -0
- package/dist/esm/contracts/deepbook/constants.js +318 -0
- package/dist/esm/contracts/deepbook/constants.js.map +7 -0
- package/dist/esm/contracts/deepbook/deep_price.d.ts +60 -0
- package/dist/esm/contracts/deepbook/deep_price.js +67 -0
- package/dist/esm/contracts/deepbook/deep_price.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/std/type_name.d.ts +14 -0
- package/dist/esm/contracts/deepbook/deps/std/type_name.js +22 -0
- package/dist/esm/contracts/deepbook/deps/std/type_name.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/bag.d.ts +33 -0
- package/dist/esm/contracts/deepbook/deps/sui/bag.js +17 -0
- package/dist/esm/contracts/deepbook/deps/sui/bag.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/balance.d.ts +9 -0
- package/dist/esm/contracts/deepbook/deps/sui/balance.js +13 -0
- package/dist/esm/contracts/deepbook/deps/sui/balance.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/object.d.ts +5 -0
- package/dist/esm/contracts/deepbook/deps/sui/object.js +13 -0
- package/dist/esm/contracts/deepbook/deps/sui/object.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/table.d.ts +28 -0
- package/dist/esm/contracts/deepbook/deps/sui/table.js +17 -0
- package/dist/esm/contracts/deepbook/deps/sui/table.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_map.d.ts +27 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_map.js +25 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_map.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_set.d.ts +15 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_set.js +15 -0
- package/dist/esm/contracts/deepbook/deps/sui/vec_set.js.map +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/versioned.d.ts +7 -0
- package/dist/esm/contracts/deepbook/deps/sui/versioned.js +15 -0
- package/dist/esm/contracts/deepbook/deps/sui/versioned.js.map +7 -0
- package/dist/esm/contracts/deepbook/ewma.d.ts +17 -0
- package/dist/esm/contracts/deepbook/ewma.js +19 -0
- package/dist/esm/contracts/deepbook/ewma.js.map +7 -0
- package/dist/esm/contracts/deepbook/fill.d.ts +153 -0
- package/dist/esm/contracts/deepbook/fill.js +221 -0
- package/dist/esm/contracts/deepbook/fill.js.map +7 -0
- package/dist/esm/contracts/deepbook/governance.d.ts +63 -0
- package/dist/esm/contracts/deepbook/governance.js +49 -0
- package/dist/esm/contracts/deepbook/governance.js.map +7 -0
- package/dist/esm/contracts/deepbook/history.d.ts +60 -0
- package/dist/esm/contracts/deepbook/history.js +48 -0
- package/dist/esm/contracts/deepbook/history.js.map +7 -0
- package/dist/esm/contracts/deepbook/math.d.ts +94 -0
- package/dist/esm/contracts/deepbook/math.js +112 -0
- package/dist/esm/contracts/deepbook/math.js.map +7 -0
- package/dist/esm/contracts/deepbook/order.d.ts +135 -0
- package/dist/esm/contracts/deepbook/order.js +188 -0
- package/dist/esm/contracts/deepbook/order.js.map +7 -0
- package/dist/esm/contracts/deepbook/order_info.d.ts +296 -0
- package/dist/esm/contracts/deepbook/order_info.js +356 -0
- package/dist/esm/contracts/deepbook/order_info.js.map +7 -0
- package/dist/esm/contracts/deepbook/order_query.d.ts +85 -0
- package/dist/esm/contracts/deepbook/order_query.js +66 -0
- package/dist/esm/contracts/deepbook/order_query.js.map +7 -0
- package/dist/esm/contracts/deepbook/pool.d.ts +1218 -0
- package/dist/esm/contracts/deepbook/pool.js +1206 -0
- package/dist/esm/contracts/deepbook/pool.js.map +7 -0
- package/dist/esm/contracts/deepbook/registry.d.ts +134 -0
- package/dist/esm/contracts/deepbook/registry.js +152 -0
- package/dist/esm/contracts/deepbook/registry.js.map +7 -0
- package/dist/esm/contracts/deepbook/state.d.ts +117 -0
- package/dist/esm/contracts/deepbook/state.js +74 -0
- package/dist/esm/contracts/deepbook/state.js.map +7 -0
- package/dist/esm/contracts/deepbook/trade_params.d.ts +7 -0
- package/dist/esm/contracts/deepbook/trade_params.js +15 -0
- package/dist/esm/contracts/deepbook/trade_params.js.map +7 -0
- package/dist/esm/contracts/deepbook/vault.d.ts +30 -0
- package/dist/esm/contracts/deepbook/vault.js +35 -0
- package/dist/esm/contracts/deepbook/vault.js.map +7 -0
- package/dist/esm/contracts/utils/index.d.ts +25 -0
- package/dist/esm/contracts/utils/index.js +128 -0
- package/dist/esm/contracts/utils/index.js.map +7 -0
- package/dist/esm/index.d.ts +23 -0
- package/dist/esm/index.js +81 -0
- package/dist/esm/index.js.map +7 -0
- package/dist/esm/package.json +4 -0
- package/dist/esm/pyth/PriceServiceConnection.d.ts +26 -0
- package/dist/esm/pyth/PriceServiceConnection.js +38 -0
- package/dist/esm/pyth/PriceServiceConnection.js.map +7 -0
- package/dist/esm/pyth/pyth-helpers.d.ts +7 -0
- package/dist/esm/pyth/pyth-helpers.js +16 -0
- package/dist/esm/pyth/pyth-helpers.js.map +7 -0
- package/dist/esm/pyth/pyth.d.ts +65 -0
- package/dist/esm/pyth/pyth.js +249 -0
- package/dist/esm/pyth/pyth.js.map +7 -0
- package/dist/esm/transactions/balanceManager.d.ts +168 -0
- package/dist/esm/transactions/balanceManager.js +364 -0
- package/dist/esm/transactions/balanceManager.js.map +7 -0
- package/dist/esm/transactions/deepbook.d.ts +477 -0
- package/dist/esm/transactions/deepbook.js +1321 -0
- package/dist/esm/transactions/deepbook.js.map +7 -0
- package/dist/esm/transactions/deepbookAdmin.d.ts +105 -0
- package/dist/esm/transactions/deepbookAdmin.js +314 -0
- package/dist/esm/transactions/deepbookAdmin.js.map +7 -0
- package/dist/esm/transactions/flashLoans.d.ts +56 -0
- package/dist/esm/transactions/flashLoans.js +104 -0
- package/dist/esm/transactions/flashLoans.js.map +7 -0
- package/dist/esm/transactions/governance.d.ts +42 -0
- package/dist/esm/transactions/governance.js +115 -0
- package/dist/esm/transactions/governance.js.map +7 -0
- package/dist/esm/transactions/marginAdmin.d.ts +133 -0
- package/dist/esm/transactions/marginAdmin.js +373 -0
- package/dist/esm/transactions/marginAdmin.js.map +7 -0
- package/dist/esm/transactions/marginLiquidations.d.ts +61 -0
- package/dist/esm/transactions/marginLiquidations.js +153 -0
- package/dist/esm/transactions/marginLiquidations.js.map +7 -0
- package/dist/esm/transactions/marginMaintainer.d.ts +80 -0
- package/dist/esm/transactions/marginMaintainer.js +231 -0
- package/dist/esm/transactions/marginMaintainer.js.map +7 -0
- package/dist/esm/transactions/marginManager.d.ts +236 -0
- package/dist/esm/transactions/marginManager.js +668 -0
- package/dist/esm/transactions/marginManager.js.map +7 -0
- package/dist/esm/transactions/marginPool.d.ts +134 -0
- package/dist/esm/transactions/marginPool.js +310 -0
- package/dist/esm/transactions/marginPool.js.map +7 -0
- package/dist/esm/transactions/marginRegistry.d.ts +94 -0
- package/dist/esm/transactions/marginRegistry.js +201 -0
- package/dist/esm/transactions/marginRegistry.js.map +7 -0
- package/dist/esm/transactions/marginTPSL.d.ts +93 -0
- package/dist/esm/transactions/marginTPSL.js +266 -0
- package/dist/esm/transactions/marginTPSL.js.map +7 -0
- package/dist/esm/transactions/poolProxy.d.ts +104 -0
- package/dist/esm/transactions/poolProxy.js +415 -0
- package/dist/esm/transactions/poolProxy.js.map +7 -0
- package/dist/esm/types/bcs.d.ts +5 -0
- package/dist/esm/types/bcs.js +13 -0
- package/dist/esm/types/bcs.js.map +7 -0
- package/dist/esm/types/index.d.ts +218 -0
- package/dist/esm/types/index.js +18 -0
- package/dist/esm/types/index.js.map +7 -0
- package/dist/esm/utils/config.d.ts +65 -0
- package/dist/esm/utils/config.js +135 -0
- package/dist/esm/utils/config.js.map +7 -0
- package/dist/esm/utils/constants.d.ts +76 -0
- package/dist/esm/utils/constants.js +362 -0
- package/dist/esm/utils/constants.js.map +7 -0
- package/dist/esm/utils/errors.d.ts +42 -0
- package/dist/esm/utils/errors.js +50 -0
- package/dist/esm/utils/errors.js.map +7 -0
- package/dist/esm/utils/validation.d.ts +50 -0
- package/dist/esm/utils/validation.js +47 -0
- package/dist/esm/utils/validation.js.map +7 -0
- package/dist/tsconfig.esm.tsbuildinfo +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +63 -0
- package/src/client.ts +2451 -0
- package/src/contracts/deepbook/account.ts +199 -0
- package/src/contracts/deepbook/balance_manager.ts +532 -0
- package/src/contracts/deepbook/balances.ts +19 -0
- package/src/contracts/deepbook/big_vector.ts +74 -0
- package/src/contracts/deepbook/book.ts +24 -0
- package/src/contracts/deepbook/constants.ts +458 -0
- package/src/contracts/deepbook/deep_price.ts +84 -0
- package/src/contracts/deepbook/deps/std/type_name.ts +23 -0
- package/src/contracts/deepbook/deps/sui/bag.ts +41 -0
- package/src/contracts/deepbook/deps/sui/balance.ts +18 -0
- package/src/contracts/deepbook/deps/sui/object.ts +14 -0
- package/src/contracts/deepbook/deps/sui/table.ts +36 -0
- package/src/contracts/deepbook/deps/sui/vec_map.ts +33 -0
- package/src/contracts/deepbook/deps/sui/vec_set.ts +22 -0
- package/src/contracts/deepbook/deps/sui/versioned.ts +13 -0
- package/src/contracts/deepbook/ewma.ts +26 -0
- package/src/contracts/deepbook/fill.ts +336 -0
- package/src/contracts/deepbook/governance.ts +52 -0
- package/src/contracts/deepbook/history.ts +51 -0
- package/src/contracts/deepbook/math.ts +210 -0
- package/src/contracts/deepbook/order.ts +269 -0
- package/src/contracts/deepbook/order_info.ts +513 -0
- package/src/contracts/deepbook/order_query.ts +115 -0
- package/src/contracts/deepbook/pool.ts +2269 -0
- package/src/contracts/deepbook/registry.ts +242 -0
- package/src/contracts/deepbook/state.ts +74 -0
- package/src/contracts/deepbook/trade_params.ts +16 -0
- package/src/contracts/deepbook/vault.ts +37 -0
- package/src/contracts/utils/index.ts +184 -0
- package/src/index.ts +95 -0
- package/src/pyth/PriceServiceConnection.ts +48 -0
- package/src/pyth/pyth-helpers.ts +23 -0
- package/src/pyth/pyth.ts +305 -0
- package/src/transactions/balanceManager.ts +399 -0
- package/src/transactions/deepbook.ts +1519 -0
- package/src/transactions/deepbookAdmin.ts +332 -0
- package/src/transactions/flashLoans.ts +123 -0
- package/src/transactions/governance.ts +123 -0
- package/src/transactions/marginAdmin.ts +396 -0
- package/src/transactions/marginLiquidations.ts +175 -0
- package/src/transactions/marginMaintainer.ts +280 -0
- package/src/transactions/marginManager.ts +708 -0
- package/src/transactions/marginPool.ts +339 -0
- package/src/transactions/marginRegistry.ts +212 -0
- package/src/transactions/marginTPSL.ts +296 -0
- package/src/transactions/poolProxy.ts +438 -0
- package/src/types/bcs.ts +8 -0
- package/src/types/index.ts +255 -0
- package/src/utils/config.ts +177 -0
- package/src/utils/constants.ts +374 -0
- package/src/utils/errors.ts +67 -0
- package/src/utils/validation.ts +91 -0
|
@@ -0,0 +1,399 @@
|
|
|
1
|
+
// Copyright (c) Mysten Labs, Inc.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { coinWithBalance } from '@haneullabs/haneul/transactions';
|
|
4
|
+
import type { Transaction, TransactionArgument } from '@haneullabs/haneul/transactions';
|
|
5
|
+
|
|
6
|
+
import type { DeepBookConfig } from '../utils/config.js';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* BalanceManagerContract class for managing BalanceManager operations.
|
|
10
|
+
*/
|
|
11
|
+
export class BalanceManagerContract {
|
|
12
|
+
#config: DeepBookConfig;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* @param {DeepBookConfig} config Configuration for BalanceManagerContract
|
|
16
|
+
*/
|
|
17
|
+
constructor(config: DeepBookConfig) {
|
|
18
|
+
this.#config = config;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* @description Create and share a new BalanceManager
|
|
23
|
+
* @returns A function that takes a Transaction object
|
|
24
|
+
*/
|
|
25
|
+
createAndShareBalanceManager = () => (tx: Transaction) => {
|
|
26
|
+
const manager = tx.moveCall({
|
|
27
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::new`,
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
tx.moveCall({
|
|
31
|
+
target: '0x2::transfer::public_share_object',
|
|
32
|
+
arguments: [manager],
|
|
33
|
+
typeArguments: [`${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::BalanceManager`],
|
|
34
|
+
});
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* @description Create a new BalanceManager, manually set the owner. Returns the manager.
|
|
39
|
+
* @returns A function that takes a Transaction object
|
|
40
|
+
*/
|
|
41
|
+
createBalanceManagerWithOwner = (ownerAddress: string) => (tx: Transaction) => {
|
|
42
|
+
return tx.moveCall({
|
|
43
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::new_with_custom_owner`,
|
|
44
|
+
arguments: [tx.pure.address(ownerAddress)],
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* @description Share the BalanceManager
|
|
50
|
+
* @param {TransactionArgument} manager The BalanceManager to share
|
|
51
|
+
* @returns A function that takes a Transaction object
|
|
52
|
+
*/
|
|
53
|
+
shareBalanceManager = (manager: TransactionArgument) => (tx: Transaction) => {
|
|
54
|
+
tx.moveCall({
|
|
55
|
+
target: '0x2::transfer::public_share_object',
|
|
56
|
+
arguments: [manager],
|
|
57
|
+
typeArguments: [`${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::BalanceManager`],
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* @description Deposit funds into the BalanceManager
|
|
63
|
+
* @param {string} managerKey The key of the BalanceManager
|
|
64
|
+
* @param {string} coinKey The key of the coin to deposit
|
|
65
|
+
* @param {number} amountToDeposit The amount to deposit
|
|
66
|
+
* @returns A function that takes a Transaction object
|
|
67
|
+
*/
|
|
68
|
+
depositIntoManager =
|
|
69
|
+
(managerKey: string, coinKey: string, amountToDeposit: number) => (tx: Transaction) => {
|
|
70
|
+
tx.setSenderIfNotSet(this.#config.address);
|
|
71
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
72
|
+
const coin = this.#config.getCoin(coinKey);
|
|
73
|
+
const depositInput = Math.round(amountToDeposit * coin.scalar);
|
|
74
|
+
const deposit = coinWithBalance({
|
|
75
|
+
type: coin.type,
|
|
76
|
+
balance: depositInput,
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
tx.moveCall({
|
|
80
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::deposit`,
|
|
81
|
+
arguments: [tx.object(managerId), deposit],
|
|
82
|
+
typeArguments: [coin.type],
|
|
83
|
+
});
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* @description Withdraw funds from the BalanceManager
|
|
88
|
+
* @param {string} managerKey The key of the BalanceManager
|
|
89
|
+
* @param {string} coinKey The key of the coin to withdraw
|
|
90
|
+
* @param {number} amountToWithdraw The amount to withdraw
|
|
91
|
+
* @param {string} recipient The recipient of the withdrawn funds
|
|
92
|
+
* @returns A function that takes a Transaction object
|
|
93
|
+
*/
|
|
94
|
+
withdrawFromManager =
|
|
95
|
+
(managerKey: string, coinKey: string, amountToWithdraw: number, recipient: string) =>
|
|
96
|
+
(tx: Transaction) => {
|
|
97
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
98
|
+
const coin = this.#config.getCoin(coinKey);
|
|
99
|
+
const withdrawInput = Math.round(amountToWithdraw * coin.scalar);
|
|
100
|
+
const coinObject = tx.moveCall({
|
|
101
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::withdraw`,
|
|
102
|
+
arguments: [tx.object(managerId), tx.pure.u64(withdrawInput)],
|
|
103
|
+
typeArguments: [coin.type],
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
tx.transferObjects([coinObject], recipient);
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* @description Withdraw all funds from the BalanceManager
|
|
111
|
+
* @param {string} managerKey The key of the BalanceManager
|
|
112
|
+
* @param {string} coinKey The key of the coin to withdraw
|
|
113
|
+
* @param {string} recipient The recipient of the withdrawn funds
|
|
114
|
+
* @returns A function that takes a Transaction object
|
|
115
|
+
*/
|
|
116
|
+
withdrawAllFromManager =
|
|
117
|
+
(managerKey: string, coinKey: string, recipient: string) => (tx: Transaction) => {
|
|
118
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
119
|
+
const coin = this.#config.getCoin(coinKey);
|
|
120
|
+
const withdrawalCoin = tx.moveCall({
|
|
121
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::withdraw_all`,
|
|
122
|
+
arguments: [tx.object(managerId)],
|
|
123
|
+
typeArguments: [coin.type],
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
tx.transferObjects([withdrawalCoin], recipient);
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* @description Check the balance of the BalanceManager
|
|
131
|
+
* @param {string} managerKey The key of the BalanceManager
|
|
132
|
+
* @param {string} coinKey The key of the coin to check the balance of
|
|
133
|
+
* @returns A function that takes a Transaction object
|
|
134
|
+
*/
|
|
135
|
+
checkManagerBalance = (managerKey: string, coinKey: string) => (tx: Transaction) => {
|
|
136
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
137
|
+
const coin = this.#config.getCoin(coinKey);
|
|
138
|
+
tx.moveCall({
|
|
139
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::balance`,
|
|
140
|
+
arguments: [tx.object(managerId)],
|
|
141
|
+
typeArguments: [coin.type],
|
|
142
|
+
});
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* @description Generate a trade proof for the BalanceManager. Calls the appropriate function based on whether tradeCap is set.
|
|
147
|
+
* @param {string} managerKey The key of the BalanceManager
|
|
148
|
+
* @returns A function that takes a Transaction object
|
|
149
|
+
*/
|
|
150
|
+
generateProof = (managerKey: string) => (tx: Transaction) => {
|
|
151
|
+
const balanceManager = this.#config.getBalanceManager(managerKey);
|
|
152
|
+
return tx.add(
|
|
153
|
+
balanceManager.tradeCap
|
|
154
|
+
? this.generateProofAsTrader(balanceManager.address, balanceManager.tradeCap)
|
|
155
|
+
: this.generateProofAsOwner(balanceManager.address),
|
|
156
|
+
);
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* @description Generate a trade proof as the owner
|
|
161
|
+
* @param {string} managerId The ID of the BalanceManager
|
|
162
|
+
* @returns A function that takes a Transaction object
|
|
163
|
+
*/
|
|
164
|
+
generateProofAsOwner = (managerId: string) => (tx: Transaction) => {
|
|
165
|
+
return tx.moveCall({
|
|
166
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::generate_proof_as_owner`,
|
|
167
|
+
arguments: [tx.object(managerId)],
|
|
168
|
+
});
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* @description Generate a trade proof as a trader
|
|
173
|
+
* @param {string} managerId The ID of the BalanceManager
|
|
174
|
+
* @param {string} tradeCapId The ID of the tradeCap
|
|
175
|
+
* @returns A function that takes a Transaction object
|
|
176
|
+
*/
|
|
177
|
+
generateProofAsTrader = (managerId: string, tradeCapId: string) => (tx: Transaction) => {
|
|
178
|
+
return tx.moveCall({
|
|
179
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::generate_proof_as_trader`,
|
|
180
|
+
arguments: [tx.object(managerId), tx.object(tradeCapId)],
|
|
181
|
+
});
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* @description Mint a TradeCap
|
|
186
|
+
* @param {string} managerKey The name of the BalanceManager
|
|
187
|
+
* @returns A function that takes a Transaction object
|
|
188
|
+
*/
|
|
189
|
+
mintTradeCap = (managerKey: string) => (tx: Transaction) => {
|
|
190
|
+
const manager = this.#config.getBalanceManager(managerKey);
|
|
191
|
+
const managerId = manager.address;
|
|
192
|
+
return tx.moveCall({
|
|
193
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::mint_trade_cap`,
|
|
194
|
+
arguments: [tx.object(managerId)],
|
|
195
|
+
});
|
|
196
|
+
};
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* @description Mint a DepositCap
|
|
200
|
+
* @param {string} managerKey The name of the BalanceManager
|
|
201
|
+
* @returns A function that takes a Transaction object
|
|
202
|
+
*/
|
|
203
|
+
mintDepositCap = (managerKey: string) => (tx: Transaction) => {
|
|
204
|
+
const manager = this.#config.getBalanceManager(managerKey);
|
|
205
|
+
const managerId = manager.address;
|
|
206
|
+
return tx.moveCall({
|
|
207
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::mint_deposit_cap`,
|
|
208
|
+
arguments: [tx.object(managerId)],
|
|
209
|
+
});
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
/**
|
|
213
|
+
* @description Mint a WithdrawalCap
|
|
214
|
+
* @param {string} managerKey The name of the BalanceManager
|
|
215
|
+
* @returns A function that takes a Transaction object
|
|
216
|
+
*/
|
|
217
|
+
mintWithdrawalCap = (managerKey: string) => (tx: Transaction) => {
|
|
218
|
+
const manager = this.#config.getBalanceManager(managerKey);
|
|
219
|
+
const managerId = manager.address;
|
|
220
|
+
return tx.moveCall({
|
|
221
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::mint_withdraw_cap`,
|
|
222
|
+
arguments: [tx.object(managerId)],
|
|
223
|
+
});
|
|
224
|
+
};
|
|
225
|
+
|
|
226
|
+
/**
|
|
227
|
+
* @description Deposit using the DepositCap
|
|
228
|
+
* @param {string} managerKey The name of the BalanceManager
|
|
229
|
+
* @param {string} coinKey The name of the coin to deposit
|
|
230
|
+
* @param {number} amountToDeposit The amount to deposit
|
|
231
|
+
* @returns A function that takes a Transaction object
|
|
232
|
+
*/
|
|
233
|
+
depositWithCap =
|
|
234
|
+
(managerKey: string, coinKey: string, amountToDeposit: number) => (tx: Transaction) => {
|
|
235
|
+
tx.setSenderIfNotSet(this.#config.address);
|
|
236
|
+
const manager = this.#config.getBalanceManager(managerKey);
|
|
237
|
+
const managerId = manager.address;
|
|
238
|
+
if (!manager.depositCap) {
|
|
239
|
+
throw new Error(`DepositCap not set for ${managerKey}`);
|
|
240
|
+
}
|
|
241
|
+
const depositCapId = manager.depositCap;
|
|
242
|
+
const coin = this.#config.getCoin(coinKey);
|
|
243
|
+
const depositInput = Math.round(amountToDeposit * coin.scalar);
|
|
244
|
+
const deposit = coinWithBalance({
|
|
245
|
+
type: coin.type,
|
|
246
|
+
balance: depositInput,
|
|
247
|
+
});
|
|
248
|
+
tx.moveCall({
|
|
249
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::deposit_with_cap`,
|
|
250
|
+
arguments: [tx.object(managerId), tx.object(depositCapId), deposit],
|
|
251
|
+
typeArguments: [coin.type],
|
|
252
|
+
});
|
|
253
|
+
};
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* @description Withdraw using the WithdrawCap
|
|
257
|
+
* @param {string} managerKey The name of the BalanceManager
|
|
258
|
+
* @param {string} coinKey The name of the coin to withdraw
|
|
259
|
+
* @param {number} amountToWithdraw The amount to withdraw
|
|
260
|
+
* @returns A function that takes a Transaction object
|
|
261
|
+
*/
|
|
262
|
+
withdrawWithCap =
|
|
263
|
+
(managerKey: string, coinKey: string, amountToWithdraw: number) => (tx: Transaction) => {
|
|
264
|
+
tx.setSenderIfNotSet(this.#config.address);
|
|
265
|
+
const manager = this.#config.getBalanceManager(managerKey);
|
|
266
|
+
const managerId = manager.address;
|
|
267
|
+
if (!manager.withdrawCap) {
|
|
268
|
+
throw new Error(`WithdrawCap not set for ${managerKey}`);
|
|
269
|
+
}
|
|
270
|
+
const withdrawCapId = manager.withdrawCap;
|
|
271
|
+
const coin = this.#config.getCoin(coinKey);
|
|
272
|
+
const withdrawAmount = Math.round(amountToWithdraw * coin.scalar);
|
|
273
|
+
return tx.moveCall({
|
|
274
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::withdraw_with_cap`,
|
|
275
|
+
arguments: [tx.object(managerId), tx.object(withdrawCapId), tx.pure.u64(withdrawAmount)],
|
|
276
|
+
typeArguments: [coin.type],
|
|
277
|
+
});
|
|
278
|
+
};
|
|
279
|
+
|
|
280
|
+
/**
|
|
281
|
+
* @description Set the referral for the BalanceManager for a specific pool
|
|
282
|
+
* @param {string} managerKey The name of the BalanceManager
|
|
283
|
+
* @param {string} referral The referral (DeepBookPoolReferral) to set the BalanceManager to
|
|
284
|
+
* @param {TransactionArgument} tradeCap The tradeCap for permission checking
|
|
285
|
+
* @returns A function that takes a Transaction object
|
|
286
|
+
*/
|
|
287
|
+
setBalanceManagerReferral =
|
|
288
|
+
(managerKey: string, referral: string, tradeCap: TransactionArgument) => (tx: Transaction) => {
|
|
289
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
290
|
+
tx.moveCall({
|
|
291
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::set_balance_manager_referral`,
|
|
292
|
+
arguments: [tx.object(managerId), tx.object(referral), tradeCap],
|
|
293
|
+
});
|
|
294
|
+
};
|
|
295
|
+
|
|
296
|
+
/**
|
|
297
|
+
* @description Unset the referral for the BalanceManager for a specific pool
|
|
298
|
+
* @param {string} managerKey The name of the BalanceManager
|
|
299
|
+
* @param {string} poolKey The key of the pool to unset the referral for
|
|
300
|
+
* @param {TransactionArgument} tradeCap The tradeCap for permission checking
|
|
301
|
+
* @returns A function that takes a Transaction object
|
|
302
|
+
*/
|
|
303
|
+
unsetBalanceManagerReferral =
|
|
304
|
+
(managerKey: string, poolKey: string, tradeCap: TransactionArgument) => (tx: Transaction) => {
|
|
305
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
306
|
+
const poolId = this.#config.getPool(poolKey).address;
|
|
307
|
+
tx.moveCall({
|
|
308
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::unset_balance_manager_referral`,
|
|
309
|
+
arguments: [tx.object(managerId), tx.pure.id(poolId), tradeCap],
|
|
310
|
+
});
|
|
311
|
+
};
|
|
312
|
+
|
|
313
|
+
registerBalanceManager = (managerKey: string) => (tx: Transaction) => {
|
|
314
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
315
|
+
tx.moveCall({
|
|
316
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::register_balance_manager`,
|
|
317
|
+
arguments: [tx.object(managerId), tx.object(this.#config.REGISTRY_ID)],
|
|
318
|
+
});
|
|
319
|
+
};
|
|
320
|
+
|
|
321
|
+
/**
|
|
322
|
+
* @description Get the owner of the BalanceManager
|
|
323
|
+
* @param {string} managerKey The key of the BalanceManager
|
|
324
|
+
* @returns A function that takes a Transaction object
|
|
325
|
+
*/
|
|
326
|
+
owner = (managerKey: string) => (tx: Transaction) => {
|
|
327
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
328
|
+
tx.moveCall({
|
|
329
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::owner`,
|
|
330
|
+
arguments: [tx.object(managerId)],
|
|
331
|
+
});
|
|
332
|
+
};
|
|
333
|
+
|
|
334
|
+
/**
|
|
335
|
+
* @description Get the ID of the BalanceManager
|
|
336
|
+
* @param {string} managerKey The key of the BalanceManager
|
|
337
|
+
* @returns A function that takes a Transaction object
|
|
338
|
+
*/
|
|
339
|
+
id = (managerKey: string) => (tx: Transaction) => {
|
|
340
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
341
|
+
tx.moveCall({
|
|
342
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::id`,
|
|
343
|
+
arguments: [tx.object(managerId)],
|
|
344
|
+
});
|
|
345
|
+
};
|
|
346
|
+
|
|
347
|
+
/**
|
|
348
|
+
* @description Get the owner of the referral (DeepBookPoolReferral)
|
|
349
|
+
* @param {string} referralId The ID of the referral to get the owner of
|
|
350
|
+
* @returns A function that takes a Transaction object
|
|
351
|
+
*/
|
|
352
|
+
balanceManagerReferralOwner = (referralId: string) => (tx: Transaction) => {
|
|
353
|
+
return tx.moveCall({
|
|
354
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::balance_manager_referral_owner`,
|
|
355
|
+
arguments: [tx.object(referralId)],
|
|
356
|
+
});
|
|
357
|
+
};
|
|
358
|
+
|
|
359
|
+
/**
|
|
360
|
+
* @description Get the pool ID associated with a referral (DeepBookPoolReferral)
|
|
361
|
+
* @param {string} referralId The ID of the referral to get the pool ID of
|
|
362
|
+
* @returns A function that takes a Transaction object
|
|
363
|
+
*/
|
|
364
|
+
balanceManagerReferralPoolId = (referralId: string) => (tx: Transaction) => {
|
|
365
|
+
return tx.moveCall({
|
|
366
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::balance_manager_referral_pool_id`,
|
|
367
|
+
arguments: [tx.object(referralId)],
|
|
368
|
+
});
|
|
369
|
+
};
|
|
370
|
+
|
|
371
|
+
/**
|
|
372
|
+
* @description Get the referral ID from the balance manager for a specific pool
|
|
373
|
+
* @param {string} managerKey The name of the BalanceManager
|
|
374
|
+
* @param {string} poolKey Key of the pool to get the referral for
|
|
375
|
+
* @returns A function that takes a Transaction object
|
|
376
|
+
*/
|
|
377
|
+
getBalanceManagerReferralId = (managerKey: string, poolKey: string) => (tx: Transaction) => {
|
|
378
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
379
|
+
const poolId = this.#config.getPool(poolKey).address;
|
|
380
|
+
return tx.moveCall({
|
|
381
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::get_balance_manager_referral_id`,
|
|
382
|
+
arguments: [tx.object(managerId), tx.pure.id(poolId)],
|
|
383
|
+
});
|
|
384
|
+
};
|
|
385
|
+
|
|
386
|
+
/**
|
|
387
|
+
* @description Revoke a TradeCap. This also revokes the associated DepositCap and WithdrawCap.
|
|
388
|
+
* @param {string} managerKey The name of the BalanceManager
|
|
389
|
+
* @param {string} tradeCapId The ID of the TradeCap to revoke
|
|
390
|
+
* @returns A function that takes a Transaction object
|
|
391
|
+
*/
|
|
392
|
+
revokeTradeCap = (managerKey: string, tradeCapId: string) => (tx: Transaction) => {
|
|
393
|
+
const managerId = this.#config.getBalanceManager(managerKey).address;
|
|
394
|
+
tx.moveCall({
|
|
395
|
+
target: `${this.#config.DEEPBOOK_PACKAGE_ID}::balance_manager::revoke_trade_cap`,
|
|
396
|
+
arguments: [tx.object(managerId), tx.pure.id(tradeCapId)],
|
|
397
|
+
});
|
|
398
|
+
};
|
|
399
|
+
}
|