@mysten/deepbook-v3 1.6.7 → 2.0.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.
Files changed (85) hide show
  1. package/CHANGELOG.md +52 -0
  2. package/dist/_virtual/rolldown_runtime.mjs +18 -0
  3. package/dist/client.d.mts +9 -6
  4. package/dist/client.d.mts.map +1 -1
  5. package/dist/client.mjs +3 -2
  6. package/dist/client.mjs.map +1 -1
  7. package/dist/contracts/deepbook/account.d.mts +18 -18
  8. package/dist/contracts/deepbook/account.d.mts.map +1 -1
  9. package/dist/contracts/deepbook/deep_price.d.mts +3 -3
  10. package/dist/contracts/deepbook/deep_price.d.mts.map +1 -1
  11. package/dist/contracts/deepbook_margin/margin_manager.mjs +1 -319
  12. package/dist/contracts/deepbook_margin/margin_manager.mjs.map +1 -1
  13. package/dist/contracts/deepbook_margin/margin_manager_upgraded.mjs +386 -0
  14. package/dist/contracts/deepbook_margin/margin_manager_upgraded.mjs.map +1 -0
  15. package/dist/contracts/deepbook_margin/oracle.mjs +9 -0
  16. package/dist/contracts/deepbook_margin/oracle.mjs.map +1 -1
  17. package/dist/contracts/deepbook_margin/pool_proxy.mjs +1 -383
  18. package/dist/contracts/deepbook_margin/pool_proxy.mjs.map +1 -1
  19. package/dist/contracts/deepbook_margin/pool_proxy_upgraded.mjs +340 -0
  20. package/dist/contracts/deepbook_margin/pool_proxy_upgraded.mjs.map +1 -0
  21. package/dist/contracts/margin_liquidation/liquidation_vault.mjs +33 -17
  22. package/dist/contracts/margin_liquidation/liquidation_vault.mjs.map +1 -1
  23. package/dist/index.d.mts +4 -3
  24. package/dist/index.mjs +2 -2
  25. package/dist/pyth/PriceServiceConnection.d.mts +18 -3
  26. package/dist/pyth/PriceServiceConnection.d.mts.map +1 -1
  27. package/dist/pyth/PriceServiceConnection.mjs +35 -4
  28. package/dist/pyth/PriceServiceConnection.mjs.map +1 -1
  29. package/dist/queries/priceFeedQueries.mjs +50 -18
  30. package/dist/queries/priceFeedQueries.mjs.map +1 -1
  31. package/dist/transactions/balanceManager.d.mts +12 -12
  32. package/dist/transactions/deepbook.d.mts +20 -20
  33. package/dist/transactions/deepbookAdmin.d.mts +4 -4
  34. package/dist/transactions/deepbookAdmin.d.mts.map +1 -1
  35. package/dist/transactions/marginAdmin.d.mts +7 -7
  36. package/dist/transactions/marginAdmin.d.mts.map +1 -1
  37. package/dist/transactions/marginAdmin.mjs +2 -2
  38. package/dist/transactions/marginAdmin.mjs.map +1 -1
  39. package/dist/transactions/marginLiquidations.d.mts.map +1 -1
  40. package/dist/transactions/marginLiquidations.mjs +19 -7
  41. package/dist/transactions/marginLiquidations.mjs.map +1 -1
  42. package/dist/transactions/marginMaintainer.d.mts +5 -5
  43. package/dist/transactions/marginManager.d.mts +32 -32
  44. package/dist/transactions/marginManager.d.mts.map +1 -1
  45. package/dist/transactions/marginManager.mjs +43 -34
  46. package/dist/transactions/marginManager.mjs.map +1 -1
  47. package/dist/transactions/marginPool.d.mts +18 -18
  48. package/dist/transactions/marginTPSL.d.mts +10 -10
  49. package/dist/transactions/marginTPSL.d.mts.map +1 -1
  50. package/dist/transactions/marginTPSL.mjs +19 -10
  51. package/dist/transactions/marginTPSL.mjs.map +1 -1
  52. package/dist/transactions/poolProxy.d.mts +8 -8
  53. package/dist/transactions/poolProxy.d.mts.map +1 -1
  54. package/dist/transactions/poolProxy.mjs +34 -27
  55. package/dist/transactions/poolProxy.mjs.map +1 -1
  56. package/dist/types/index.d.mts +16 -1
  57. package/dist/types/index.d.mts.map +1 -1
  58. package/dist/types/index.mjs.map +1 -1
  59. package/dist/utils/config.d.mts +30 -10
  60. package/dist/utils/config.d.mts.map +1 -1
  61. package/dist/utils/config.mjs +33 -4
  62. package/dist/utils/config.mjs.map +1 -1
  63. package/dist/utils/constants.d.mts +32 -1
  64. package/dist/utils/constants.d.mts.map +1 -1
  65. package/dist/utils/constants.mjs +54 -23
  66. package/dist/utils/constants.mjs.map +1 -1
  67. package/package.json +1 -1
  68. package/src/client.ts +9 -1
  69. package/src/contracts/deepbook_margin/margin_manager.ts +140 -10
  70. package/src/contracts/deepbook_margin/margin_manager_upgraded.ts +651 -0
  71. package/src/contracts/deepbook_margin/oracle.ts +59 -0
  72. package/src/contracts/deepbook_margin/pool_proxy.ts +600 -584
  73. package/src/contracts/deepbook_margin/pool_proxy_upgraded.ts +614 -0
  74. package/src/contracts/margin_liquidation/liquidation_vault.ts +142 -0
  75. package/src/index.ts +4 -0
  76. package/src/pyth/PriceServiceConnection.ts +69 -8
  77. package/src/queries/priceFeedQueries.ts +74 -24
  78. package/src/transactions/marginAdmin.ts +2 -4
  79. package/src/transactions/marginLiquidations.ts +20 -6
  80. package/src/transactions/marginManager.ts +43 -33
  81. package/src/transactions/marginTPSL.ts +19 -9
  82. package/src/transactions/poolProxy.ts +34 -30
  83. package/src/types/index.ts +16 -0
  84. package/src/utils/config.ts +69 -9
  85. package/src/utils/constants.ts +88 -25
@@ -1 +1 @@
1
- {"version":3,"file":"margin_manager.mjs","names":["balance_manager.BalanceManager","balance_manager.DepositCap","balance_manager.WithdrawCap","balance_manager.TradeCap","tpsl.TakeProfitStopLoss","vec_map.VecMap","type_name.TypeName"],"sources":["../../../src/contracts/deepbook_margin/margin_manager.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\nimport { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';\nimport * as balance_manager from './deps/deepbook/balance_manager.js';\nimport * as tpsl from './tpsl.js';\nimport * as vec_map from './deps/sui/vec_map.js';\nimport * as type_name from './deps/std/type_name.js';\nconst $moduleName = '@deepbook/margin::margin_manager';\nexport const MarginApp = new MoveStruct({\n\tname: `${$moduleName}::MarginApp`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const MarginManager = new MoveStruct({\n\tname: `${$moduleName}::MarginManager<phantom BaseAsset, phantom QuoteAsset>`,\n\tfields: {\n\t\tid: bcs.Address,\n\t\towner: bcs.Address,\n\t\tdeepbook_pool: bcs.Address,\n\t\tmargin_pool_id: bcs.option(bcs.Address),\n\t\tbalance_manager: balance_manager.BalanceManager,\n\t\tdeposit_cap: balance_manager.DepositCap,\n\t\twithdraw_cap: balance_manager.WithdrawCap,\n\t\ttrade_cap: balance_manager.TradeCap,\n\t\tborrowed_base_shares: bcs.u64(),\n\t\tborrowed_quote_shares: bcs.u64(),\n\t\ttake_profit_stop_loss: tpsl.TakeProfitStopLoss,\n\t\textra_fields: vec_map.VecMap(bcs.string(), bcs.u64()),\n\t},\n});\nexport const ManagerInitializer = new MoveStruct({\n\tname: `${$moduleName}::ManagerInitializer`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t},\n});\nexport const MarginManagerCreatedEvent = new MoveStruct({\n\tname: `${$moduleName}::MarginManagerCreatedEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tbalance_manager_id: bcs.Address,\n\t\tdeepbook_pool_id: bcs.Address,\n\t\towner: bcs.Address,\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const LoanBorrowedEvent = new MoveStruct({\n\tname: `${$moduleName}::LoanBorrowedEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tmargin_pool_id: bcs.Address,\n\t\tloan_amount: bcs.u64(),\n\t\tloan_shares: bcs.u64(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const LoanRepaidEvent = new MoveStruct({\n\tname: `${$moduleName}::LoanRepaidEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tmargin_pool_id: bcs.Address,\n\t\trepay_amount: bcs.u64(),\n\t\trepay_shares: bcs.u64(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const LiquidationEvent = new MoveStruct({\n\tname: `${$moduleName}::LiquidationEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tmargin_pool_id: bcs.Address,\n\t\tliquidation_amount: bcs.u64(),\n\t\tpool_reward: bcs.u64(),\n\t\tpool_default: bcs.u64(),\n\t\trisk_ratio: bcs.u64(),\n\t\tremaining_base_asset: bcs.u64(),\n\t\tremaining_quote_asset: bcs.u64(),\n\t\tremaining_base_debt: bcs.u64(),\n\t\tremaining_quote_debt: bcs.u64(),\n\t\tbase_pyth_price: bcs.u64(),\n\t\tbase_pyth_decimals: bcs.u8(),\n\t\tquote_pyth_price: bcs.u64(),\n\t\tquote_pyth_decimals: bcs.u8(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const DepositCollateralEvent = new MoveStruct({\n\tname: `${$moduleName}::DepositCollateralEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tamount: bcs.u64(),\n\t\tasset: type_name.TypeName,\n\t\tpyth_price: bcs.u64(),\n\t\tpyth_decimals: bcs.u8(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const WithdrawCollateralEvent = new MoveStruct({\n\tname: `${$moduleName}::WithdrawCollateralEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tamount: bcs.u64(),\n\t\tasset: type_name.TypeName,\n\t\twithdraw_base_asset: bcs.bool(),\n\t\tremaining_base_asset: bcs.u64(),\n\t\tremaining_quote_asset: bcs.u64(),\n\t\tremaining_base_debt: bcs.u64(),\n\t\tremaining_quote_debt: bcs.u64(),\n\t\tbase_pyth_price: bcs.u64(),\n\t\tbase_pyth_decimals: bcs.u8(),\n\t\tquote_pyth_price: bcs.u64(),\n\t\tquote_pyth_decimals: bcs.u8(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport interface AddConditionalOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbasePriceInfoObject: RawTransactionArgument<string>;\n\tquotePriceInfoObject: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tconditionalOrderId: RawTransactionArgument<number | bigint>;\n\tcondition: TransactionArgument;\n\tpendingOrder: TransactionArgument;\n}\nexport interface AddConditionalOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AddConditionalOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbasePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tquotePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tconditionalOrderId: RawTransactionArgument<number | bigint>,\n\t\t\t\tcondition: TransactionArgument,\n\t\t\t\tpendingOrder: TransactionArgument,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Add a conditional order (take-profit / stop-loss). Specifies the condition under\n * which it triggers and the pending order to place when it does.\n *\n * Lifetime: the conditional order itself is never clamped — it rests in the queue\n * until it triggers or is cancelled. A _market_ pending order\n * (`tpsl::new_pending_market_order`) has no expiry, so it is the \"until cancelled\"\n * stop: it waits indefinitely and, when triggered, fires and deleverages via\n * `execute_conditional_orders_v3` (so it can protect even in the danger band). A\n * _limit_ pending order is intentionally transient — when it triggers, the resting\n * order it places is clamped to `max_order_ttl_ms` (default 3 days) by\n * `clamp_expire_timestamp`, the same stale-price guard as any margin limit order.\n * For a permanent stop, use a market pending order.\n */\nexport function addConditionalOrder(options: AddConditionalOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\tnull,\n\t\tnull,\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'pool',\n\t\t'basePriceInfoObject',\n\t\t'quotePriceInfoObject',\n\t\t'registry',\n\t\t'conditionalOrderId',\n\t\t'condition',\n\t\t'pendingOrder',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'add_conditional_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CancelAllConditionalOrdersArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface CancelAllConditionalOrdersOptions {\n\tpackage?: string;\n\targuments: CancelAllConditionalOrdersArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Cancel all conditional orders. */\nexport function cancelAllConditionalOrders(options: CancelAllConditionalOrdersOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'cancel_all_conditional_orders',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CancelConditionalOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tconditionalOrderId: RawTransactionArgument<number | bigint>;\n}\nexport interface CancelConditionalOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CancelConditionalOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tconditionalOrderId: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/** Cancel a conditional order. */\nexport function cancelConditionalOrder(options: CancelConditionalOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, 'u64', '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'conditionalOrderId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'cancel_conditional_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ExecuteConditionalOrdersArguments {\n\tSelf: RawTransactionArgument<string>;\n\tPool: RawTransactionArgument<string>;\n\tBasePriceInfoObject: RawTransactionArgument<string>;\n\tQuotePriceInfoObject: RawTransactionArgument<string>;\n\tRegistry: RawTransactionArgument<string>;\n\tMaxOrdersToExecute: RawTransactionArgument<number | bigint>;\n}\nexport interface ExecuteConditionalOrdersOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ExecuteConditionalOrdersArguments\n\t\t| [\n\t\t\t\tSelf: RawTransactionArgument<string>,\n\t\t\t\tPool: RawTransactionArgument<string>,\n\t\t\t\tBasePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tQuotePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tRegistry: RawTransactionArgument<string>,\n\t\t\t\tMaxOrdersToExecute: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * DEPRECATED. Use `execute_conditional_orders_v2`.\n *\n * The v1 entry preserves its on-chain signature so the v5 package upgrade\n * type-checks against existing dependents, but the body is replaced with\n * `abort EDeprecatedUseV2`. The v2 variant adds margin-pool + oracle params and\n * enforces a post-fill `risk_ratio >= min_borrow_risk_ratio` invariant inside\n * `process_collected_orders_v2`.\n */\nexport function executeConditionalOrders(options: ExecuteConditionalOrdersOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, 'u64', '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'Self',\n\t\t'Pool',\n\t\t'BasePriceInfoObject',\n\t\t'QuotePriceInfoObject',\n\t\t'Registry',\n\t\t'MaxOrdersToExecute',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'execute_conditional_orders',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ExecuteConditionalOrdersV2Arguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n\tbasePriceInfoObject: RawTransactionArgument<string>;\n\tquotePriceInfoObject: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tmaxOrdersToExecute: RawTransactionArgument<number | bigint>;\n}\nexport interface ExecuteConditionalOrdersV2Options {\n\tpackage?: string;\n\targuments:\n\t\t| ExecuteConditionalOrdersV2Arguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbasePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tquotePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tmaxOrdersToExecute: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Execute conditional orders and return the order infos. This is a permissionless\n * function that can be called by anyone.\n *\n * v2 adds `base_margin_pool` + `quote_margin_pool` parameters and enforces a\n * post-fill `risk_ratio >= min_borrow_risk_ratio` invariant inside the inner loop.\n * If any single triggered fill would breach that floor, the entire txn aborts — no\n * partial-state landing.\n */\nexport function executeConditionalOrdersV2(options: ExecuteConditionalOrdersV2Options) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t\t'basePriceInfoObject',\n\t\t'quotePriceInfoObject',\n\t\t'registry',\n\t\t'maxOrdersToExecute',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'execute_conditional_orders_v2',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ExecuteConditionalOrdersV3Arguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n\tbasePriceInfoObject: RawTransactionArgument<string>;\n\tquotePriceInfoObject: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tmaxOrdersToExecute: RawTransactionArgument<number | bigint>;\n}\nexport interface ExecuteConditionalOrdersV3Options {\n\tpackage?: string;\n\targuments:\n\t\t| ExecuteConditionalOrdersV3Arguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbasePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tquotePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tmaxOrdersToExecute: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Execute conditional orders, deleveraging on each market-type fill.\n * Permissionless, like `execute_conditional_orders_v2`, with the same trigger and\n * cancellation handling — but takes the margin pools as `&mut` and repays the loan\n * with the market proceeds before gating on the net (post-repay) `risk_ratio`\n * being at least the pre-fill ratio.\n *\n * This is what lets a stop-loss fire in the `liquidation..min_borrow` danger band:\n * a swap alone only lowers the oracle-valued ratio (so the v2 borrow-floor gate\n * rejects it), while repaying actually improves it. If a single triggered fill\n * would worsen net solvency the whole txn aborts — no partial-state landing.\n */\nexport function executeConditionalOrdersV3(options: ExecuteConditionalOrdersV3Options) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t\t'basePriceInfoObject',\n\t\t'quotePriceInfoObject',\n\t\t'registry',\n\t\t'maxOrdersToExecute',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'execute_conditional_orders_v3',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface NewArguments {\n\tpool: RawTransactionArgument<string>;\n\tdeepbookRegistry: RawTransactionArgument<string>;\n\tmarginRegistry: RawTransactionArgument<string>;\n}\nexport interface NewOptions {\n\tpackage?: string;\n\targuments:\n\t\t| NewArguments\n\t\t| [\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tdeepbookRegistry: RawTransactionArgument<string>,\n\t\t\t\tmarginRegistry: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/** Creates a new margin manager and shares it. */\nexport function _new(options: NewOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['pool', 'deepbookRegistry', 'marginRegistry'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'new',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface NewWithInitializerArguments {\n\tpool: RawTransactionArgument<string>;\n\tdeepbookRegistry: RawTransactionArgument<string>;\n\tmarginRegistry: RawTransactionArgument<string>;\n}\nexport interface NewWithInitializerOptions {\n\tpackage?: string;\n\targuments:\n\t\t| NewWithInitializerArguments\n\t\t| [\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tdeepbookRegistry: RawTransactionArgument<string>,\n\t\t\t\tmarginRegistry: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Creates a new margin manager and returns it along with an initializer. The\n * initializer is used to ensure the margin manager is shared after creation.\n */\nexport function newWithInitializer(options: NewWithInitializerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['pool', 'deepbookRegistry', 'marginRegistry'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'new_with_initializer',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ShareArguments {\n\tmanager: RawTransactionArgument<string>;\n\tinitializer: TransactionArgument;\n}\nexport interface ShareOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ShareArguments\n\t\t| [manager: RawTransactionArgument<string>, initializer: TransactionArgument];\n\ttypeArguments: [string, string];\n}\n/** Shares the margin manager. The initializer is dropped in the process. */\nexport function share(options: ShareOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['manager', 'initializer'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'share',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RegisterMarginManagerArguments {\n\tself: RawTransactionArgument<string>;\n\tmarginRegistry: RawTransactionArgument<string>;\n}\nexport interface RegisterMarginManagerOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RegisterMarginManagerArguments\n\t\t| [self: RawTransactionArgument<string>, marginRegistry: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Register the margin manager back to the margin registry. */\nexport function registerMarginManager(options: RegisterMarginManagerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'marginRegistry'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'register_margin_manager',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface UnregisterMarginManagerArguments {\n\tself: RawTransactionArgument<string>;\n\tmarginRegistry: RawTransactionArgument<string>;\n}\nexport interface UnregisterMarginManagerOptions {\n\tpackage?: string;\n\targuments:\n\t\t| UnregisterMarginManagerArguments\n\t\t| [self: RawTransactionArgument<string>, marginRegistry: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Unregister the margin manager from the margin registry. */\nexport function unregisterMarginManager(options: UnregisterMarginManagerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'marginRegistry'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'unregister_margin_manager',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface SetMarginManagerReferralArguments {\n\tself: RawTransactionArgument<string>;\n\treferralCap: RawTransactionArgument<string>;\n}\nexport interface SetMarginManagerReferralOptions {\n\tpackage?: string;\n\targuments:\n\t\t| SetMarginManagerReferralArguments\n\t\t| [self: RawTransactionArgument<string>, referralCap: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Set the referral for the margin manager. */\nexport function setMarginManagerReferral(options: SetMarginManagerReferralOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'referralCap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'set_margin_manager_referral',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface UnsetMarginManagerReferralArguments {\n\tself: RawTransactionArgument<string>;\n\tpoolId: RawTransactionArgument<string>;\n}\nexport interface UnsetMarginManagerReferralOptions {\n\tpackage?: string;\n\targuments:\n\t\t| UnsetMarginManagerReferralArguments\n\t\t| [self: RawTransactionArgument<string>, poolId: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Unset the referral for the margin manager. */\nexport function unsetMarginManagerReferral(options: UnsetMarginManagerReferralOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, '0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'poolId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'unset_margin_manager_referral',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface DepositArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tcoin: RawTransactionArgument<string>;\n}\nexport interface DepositOptions {\n\tpackage?: string;\n\targuments:\n\t\t| DepositArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tcoin: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string, string];\n}\n/**\n * Deposit a coin into the margin manager. The coin must be of the same type as\n * either the base, quote, or DEEP.\n */\nexport function deposit(options: DepositOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = ['self', 'registry', 'baseOracle', 'quoteOracle', 'coin'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'deposit',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface WithdrawArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\twithdrawAmount: RawTransactionArgument<number | bigint>;\n}\nexport interface WithdrawOptions {\n\tpackage?: string;\n\targuments:\n\t\t| WithdrawArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\twithdrawAmount: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string, string];\n}\n/**\n * Withdraw a specified amount of an asset from the margin manager. The asset must\n * be of the same type as either the base, quote, or DEEP. The withdrawal is\n * subject to the risk ratio limit.\n */\nexport function withdraw(options: WithdrawOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'withdrawAmount',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'withdraw',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowBaseArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tloanAmount: RawTransactionArgument<number | bigint>;\n}\nexport interface BorrowBaseOptions {\n\tpackage?: string;\n\targuments:\n\t\t| BorrowBaseArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tloanAmount: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/** Borrow the base asset using the margin manager. */\nexport function borrowBase(options: BorrowBaseOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseMarginPool',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'loanAmount',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrow_base',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowQuoteArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tloanAmount: RawTransactionArgument<number | bigint>;\n}\nexport interface BorrowQuoteOptions {\n\tpackage?: string;\n\targuments:\n\t\t| BorrowQuoteArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tloanAmount: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/** Borrow the quote asset using the margin manager. */\nexport function borrowQuote(options: BorrowQuoteOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'quoteMarginPool',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'loanAmount',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrow_quote',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RepayBaseArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tmarginPool: RawTransactionArgument<string>;\n\tamount: RawTransactionArgument<number | bigint | null>;\n}\nexport interface RepayBaseOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RepayBaseArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tmarginPool: RawTransactionArgument<string>,\n\t\t\t\tamount: RawTransactionArgument<number | bigint | null>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Repay the base asset loan using the margin manager. Returns the total amount\n * repaid\n */\nexport function repayBase(options: RepayBaseOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'0x1::option::Option<u64>',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'registry', 'marginPool', 'amount'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'repay_base',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RepayQuoteArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tmarginPool: RawTransactionArgument<string>;\n\tamount: RawTransactionArgument<number | bigint | null>;\n}\nexport interface RepayQuoteOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RepayQuoteArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tmarginPool: RawTransactionArgument<string>,\n\t\t\t\tamount: RawTransactionArgument<number | bigint | null>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Repay the quote asset loan using the margin manager. Returns the total amount\n * repaid\n */\nexport function repayQuote(options: RepayQuoteOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'0x1::option::Option<u64>',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'registry', 'marginPool', 'amount'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'repay_quote',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface LiquidateArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tmarginPool: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\trepayCoin: RawTransactionArgument<string>;\n}\nexport interface LiquidateOptions {\n\tpackage?: string;\n\targuments:\n\t\t| LiquidateArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tmarginPool: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\trepayCoin: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string, string];\n}\nexport function liquidate(options: LiquidateOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'marginPool',\n\t\t'pool',\n\t\t'repayCoin',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'liquidate',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RiskRatioArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n}\nexport interface RiskRatioOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RiskRatioArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\nexport function riskRatio(options: RiskRatioOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'risk_ratio',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RiskRatioUnsafeArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n}\nexport interface RiskRatioUnsafeOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RiskRatioUnsafeArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Returns the risk ratio without validating oracle price staleness or confidence.\n * Use for read-only queries where stale prices are acceptable.\n */\nexport function riskRatioUnsafe(options: RiskRatioUnsafeOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'risk_ratio_unsafe',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BalanceManagerArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BalanceManagerOptions {\n\tpackage?: string;\n\targuments: BalanceManagerArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function balanceManager(options: BalanceManagerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'balance_manager',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BaseBalanceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BaseBalanceOptions {\n\tpackage?: string;\n\targuments: BaseBalanceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function baseBalance(options: BaseBalanceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'base_balance',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface QuoteBalanceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface QuoteBalanceOptions {\n\tpackage?: string;\n\targuments: QuoteBalanceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function quoteBalance(options: QuoteBalanceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'quote_balance',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface DeepBalanceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface DeepBalanceOptions {\n\tpackage?: string;\n\targuments: DeepBalanceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function deepBalance(options: DeepBalanceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'deep_balance',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CalculateAssetsArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface CalculateAssetsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CalculateAssetsArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Returns (base_asset, quote_asset) for margin manager. */\nexport function calculateAssets(options: CalculateAssetsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'calculate_assets',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CalculateDebtsArguments {\n\tself: RawTransactionArgument<string>;\n\tmarginPool: RawTransactionArgument<string>;\n}\nexport interface CalculateDebtsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CalculateDebtsArguments\n\t\t| [self: RawTransactionArgument<string>, marginPool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string, string];\n}\nexport function calculateDebts(options: CalculateDebtsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'marginPool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'calculate_debts',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ManagerStateArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n}\nexport interface ManagerStateOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ManagerStateArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Returns comprehensive state information for a margin manager. Returns\n * (manager_id, deepbook_pool_id, risk_ratio, base_asset, quote_asset, base_debt,\n * quote_debt, base_pyth_price, base_pyth_decimals, quote_pyth_price,\n * quote_pyth_decimals, current_price, lowest_trigger_above_price,\n * highest_trigger_below_price)\n */\nexport function managerState(options: ManagerStateOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'manager_state',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface IdArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface IdOptions {\n\tpackage?: string;\n\targuments: IdArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function id(options: IdOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface OwnerArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface OwnerOptions {\n\tpackage?: string;\n\targuments: OwnerArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function owner(options: OwnerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'owner',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface DeepbookPoolArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface DeepbookPoolOptions {\n\tpackage?: string;\n\targuments: DeepbookPoolArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function deepbookPool(options: DeepbookPoolOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'deepbook_pool',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface MarginPoolIdArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface MarginPoolIdOptions {\n\tpackage?: string;\n\targuments: MarginPoolIdArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function marginPoolId(options: MarginPoolIdOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'margin_pool_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowedSharesArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BorrowedSharesOptions {\n\tpackage?: string;\n\targuments: BorrowedSharesArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function borrowedShares(options: BorrowedSharesOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrowed_shares',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowedBaseSharesArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BorrowedBaseSharesOptions {\n\tpackage?: string;\n\targuments: BorrowedBaseSharesArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function borrowedBaseShares(options: BorrowedBaseSharesOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrowed_base_shares',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowedQuoteSharesArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BorrowedQuoteSharesOptions {\n\tpackage?: string;\n\targuments: BorrowedQuoteSharesArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function borrowedQuoteShares(options: BorrowedQuoteSharesOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrowed_quote_shares',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface HasBaseDebtArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface HasBaseDebtOptions {\n\tpackage?: string;\n\targuments: HasBaseDebtArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function hasBaseDebt(options: HasBaseDebtOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'has_base_debt',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ConditionalOrderIdsArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface ConditionalOrderIdsOptions {\n\tpackage?: string;\n\targuments: ConditionalOrderIdsArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function conditionalOrderIds(options: ConditionalOrderIdsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'conditional_order_ids',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ConditionalOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tconditionalOrderId: RawTransactionArgument<number | bigint>;\n}\nexport interface ConditionalOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ConditionalOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tconditionalOrderId: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\nexport function conditionalOrder(options: ConditionalOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, 'u64'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'conditionalOrderId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'conditional_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface LowestTriggerAbovePriceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface LowestTriggerAbovePriceOptions {\n\tpackage?: string;\n\targuments: LowestTriggerAbovePriceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/**\n * Returns the lowest trigger price for trigger_above orders Returns\n * constants::max_u64() if there are no trigger_above orders\n */\nexport function lowestTriggerAbovePrice(options: LowestTriggerAbovePriceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'lowest_trigger_above_price',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface HighestTriggerBelowPriceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface HighestTriggerBelowPriceOptions {\n\tpackage?: string;\n\targuments: HighestTriggerBelowPriceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/**\n * Returns the highest trigger price for trigger_below orders Returns 0 if there\n * are no trigger_below orders\n */\nexport function highestTriggerBelowPrice(options: HighestTriggerBelowPriceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'highest_trigger_below_price',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface GetAccountOrderDetailsArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface GetAccountOrderDetailsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| GetAccountOrderDetailsArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function getAccountOrderDetails(options: GetAccountOrderDetailsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'get_account_order_details',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface AccountOpenOrdersArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface AccountOpenOrdersOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AccountOpenOrdersArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function accountOpenOrders(options: AccountOpenOrdersOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'account_open_orders',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface LockedBalanceArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface LockedBalanceOptions {\n\tpackage?: string;\n\targuments:\n\t\t| LockedBalanceArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function lockedBalance(options: LockedBalanceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'locked_balance',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BalanceManagerIdArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BalanceManagerIdOptions {\n\tpackage?: string;\n\targuments: BalanceManagerIdArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function balanceManagerId(options: BalanceManagerIdOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'balance_manager_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface GetBalanceManagerReferralIdArguments {\n\tself: RawTransactionArgument<string>;\n\tpoolId: RawTransactionArgument<string>;\n}\nexport interface GetBalanceManagerReferralIdOptions {\n\tpackage?: string;\n\targuments:\n\t\t| GetBalanceManagerReferralIdArguments\n\t\t| [self: RawTransactionArgument<string>, poolId: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function getBalanceManagerReferralId(options: GetBalanceManagerReferralIdOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, '0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'poolId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'get_balance_manager_referral_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface AccountExistsArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface AccountExistsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AccountExistsArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function accountExists(options: AccountExistsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'account_exists',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface AccountArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface AccountOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AccountArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function account(options: AccountOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'account',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CanPlaceLimitOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tprice: RawTransactionArgument<number | bigint>;\n\tquantity: RawTransactionArgument<number | bigint>;\n\tisBid: RawTransactionArgument<boolean>;\n\tpayWithDeep: RawTransactionArgument<boolean>;\n\texpireTimestamp: RawTransactionArgument<number | bigint>;\n}\nexport interface CanPlaceLimitOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CanPlaceLimitOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tprice: RawTransactionArgument<number | bigint>,\n\t\t\t\tquantity: RawTransactionArgument<number | bigint>,\n\t\t\t\tisBid: RawTransactionArgument<boolean>,\n\t\t\t\tpayWithDeep: RawTransactionArgument<boolean>,\n\t\t\t\texpireTimestamp: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\nexport function canPlaceLimitOrder(options: CanPlaceLimitOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'u64',\n\t\t'bool',\n\t\t'bool',\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'pool',\n\t\t'price',\n\t\t'quantity',\n\t\t'isBid',\n\t\t'payWithDeep',\n\t\t'expireTimestamp',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'can_place_limit_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CanPlaceMarketOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tquantity: RawTransactionArgument<number | bigint>;\n\tisBid: RawTransactionArgument<boolean>;\n\tpayWithDeep: RawTransactionArgument<boolean>;\n}\nexport interface CanPlaceMarketOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CanPlaceMarketOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tquantity: RawTransactionArgument<number | bigint>,\n\t\t\t\tisBid: RawTransactionArgument<boolean>,\n\t\t\t\tpayWithDeep: RawTransactionArgument<boolean>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\nexport function canPlaceMarketOrder(options: CanPlaceMarketOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, 'u64', 'bool', 'bool', '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = ['self', 'pool', 'quantity', 'isBid', 'payWithDeep'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'can_place_market_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"margin_manager.mjs","names":["balance_manager.BalanceManager","balance_manager.DepositCap","balance_manager.WithdrawCap","balance_manager.TradeCap","tpsl.TakeProfitStopLoss","vec_map.VecMap","type_name.TypeName"],"sources":["../../../src/contracts/deepbook_margin/margin_manager.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\nimport { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';\nimport * as balance_manager from './deps/deepbook/balance_manager.js';\nimport * as tpsl from './tpsl.js';\nimport * as vec_map from './deps/sui/vec_map.js';\nimport * as type_name from './deps/std/type_name.js';\nconst $moduleName = '@deepbook/margin::margin_manager';\nexport const MarginApp = new MoveStruct({\n\tname: `${$moduleName}::MarginApp`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const MarginManager = new MoveStruct({\n\tname: `${$moduleName}::MarginManager<phantom BaseAsset, phantom QuoteAsset>`,\n\tfields: {\n\t\tid: bcs.Address,\n\t\towner: bcs.Address,\n\t\tdeepbook_pool: bcs.Address,\n\t\tmargin_pool_id: bcs.option(bcs.Address),\n\t\tbalance_manager: balance_manager.BalanceManager,\n\t\tdeposit_cap: balance_manager.DepositCap,\n\t\twithdraw_cap: balance_manager.WithdrawCap,\n\t\ttrade_cap: balance_manager.TradeCap,\n\t\tborrowed_base_shares: bcs.u64(),\n\t\tborrowed_quote_shares: bcs.u64(),\n\t\ttake_profit_stop_loss: tpsl.TakeProfitStopLoss,\n\t\textra_fields: vec_map.VecMap(bcs.string(), bcs.u64()),\n\t},\n});\nexport const ManagerInitializer = new MoveStruct({\n\tname: `${$moduleName}::ManagerInitializer`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t},\n});\nexport const MarginManagerCreatedEvent = new MoveStruct({\n\tname: `${$moduleName}::MarginManagerCreatedEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tbalance_manager_id: bcs.Address,\n\t\tdeepbook_pool_id: bcs.Address,\n\t\towner: bcs.Address,\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const LoanBorrowedEvent = new MoveStruct({\n\tname: `${$moduleName}::LoanBorrowedEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tmargin_pool_id: bcs.Address,\n\t\tloan_amount: bcs.u64(),\n\t\tloan_shares: bcs.u64(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const LoanRepaidEvent = new MoveStruct({\n\tname: `${$moduleName}::LoanRepaidEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tmargin_pool_id: bcs.Address,\n\t\trepay_amount: bcs.u64(),\n\t\trepay_shares: bcs.u64(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const LiquidationEvent = new MoveStruct({\n\tname: `${$moduleName}::LiquidationEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tmargin_pool_id: bcs.Address,\n\t\tliquidation_amount: bcs.u64(),\n\t\tpool_reward: bcs.u64(),\n\t\tpool_default: bcs.u64(),\n\t\trisk_ratio: bcs.u64(),\n\t\tremaining_base_asset: bcs.u64(),\n\t\tremaining_quote_asset: bcs.u64(),\n\t\tremaining_base_debt: bcs.u64(),\n\t\tremaining_quote_debt: bcs.u64(),\n\t\tbase_pyth_price: bcs.u64(),\n\t\tbase_pyth_decimals: bcs.u8(),\n\t\tquote_pyth_price: bcs.u64(),\n\t\tquote_pyth_decimals: bcs.u8(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const DepositCollateralEvent = new MoveStruct({\n\tname: `${$moduleName}::DepositCollateralEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tamount: bcs.u64(),\n\t\tasset: type_name.TypeName,\n\t\tpyth_price: bcs.u64(),\n\t\tpyth_decimals: bcs.u8(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport const WithdrawCollateralEvent = new MoveStruct({\n\tname: `${$moduleName}::WithdrawCollateralEvent`,\n\tfields: {\n\t\tmargin_manager_id: bcs.Address,\n\t\tamount: bcs.u64(),\n\t\tasset: type_name.TypeName,\n\t\twithdraw_base_asset: bcs.bool(),\n\t\tremaining_base_asset: bcs.u64(),\n\t\tremaining_quote_asset: bcs.u64(),\n\t\tremaining_base_debt: bcs.u64(),\n\t\tremaining_quote_debt: bcs.u64(),\n\t\tbase_pyth_price: bcs.u64(),\n\t\tbase_pyth_decimals: bcs.u8(),\n\t\tquote_pyth_price: bcs.u64(),\n\t\tquote_pyth_decimals: bcs.u8(),\n\t\ttimestamp: bcs.u64(),\n\t},\n});\nexport interface AddConditionalOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbasePriceInfoObject: RawTransactionArgument<string>;\n\tquotePriceInfoObject: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tconditionalOrderId: RawTransactionArgument<number | bigint>;\n\tcondition: TransactionArgument;\n\tpendingOrder: TransactionArgument;\n}\nexport interface AddConditionalOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AddConditionalOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbasePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tquotePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tconditionalOrderId: RawTransactionArgument<number | bigint>,\n\t\t\t\tcondition: TransactionArgument,\n\t\t\t\tpendingOrder: TransactionArgument,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Add a conditional order (take-profit / stop-loss). Specifies the condition under\n * which it triggers and the pending order to place when it does.\n *\n * Lifetime: the conditional order itself is never clamped — it rests in the queue\n * until it triggers or is cancelled. A _market_ pending order\n * (`tpsl::new_pending_market_order`) has no expiry, so it is the \"until cancelled\"\n * stop: it waits indefinitely and, when triggered, fires and deleverages via\n * `execute_conditional_orders_v3` (so it can protect even in the danger band). A\n * _limit_ pending order is intentionally transient — when it triggers, the resting\n * order it places is clamped to `max_order_ttl_ms` (default 3 days) by\n * `clamp_expire_timestamp`, the same stale-price guard as any margin limit order.\n * For a permanent stop, use a market pending order. Twin:\n * `margin_manager_upgraded::add_conditional_order`. Edit both.\n */\nexport function addConditionalOrder(options: AddConditionalOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\tnull,\n\t\tnull,\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'pool',\n\t\t'basePriceInfoObject',\n\t\t'quotePriceInfoObject',\n\t\t'registry',\n\t\t'conditionalOrderId',\n\t\t'condition',\n\t\t'pendingOrder',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'add_conditional_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CancelAllConditionalOrdersArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface CancelAllConditionalOrdersOptions {\n\tpackage?: string;\n\targuments: CancelAllConditionalOrdersArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Cancel all conditional orders. */\nexport function cancelAllConditionalOrders(options: CancelAllConditionalOrdersOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'cancel_all_conditional_orders',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CancelConditionalOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tconditionalOrderId: RawTransactionArgument<number | bigint>;\n}\nexport interface CancelConditionalOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CancelConditionalOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tconditionalOrderId: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/** Cancel a conditional order. */\nexport function cancelConditionalOrder(options: CancelConditionalOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, 'u64', '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'conditionalOrderId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'cancel_conditional_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ExecuteConditionalOrdersArguments {\n\tSelf: RawTransactionArgument<string>;\n\tPool: RawTransactionArgument<string>;\n\tBasePriceInfoObject: RawTransactionArgument<string>;\n\tQuotePriceInfoObject: RawTransactionArgument<string>;\n\tRegistry: RawTransactionArgument<string>;\n\tMaxOrdersToExecute: RawTransactionArgument<number | bigint>;\n}\nexport interface ExecuteConditionalOrdersOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ExecuteConditionalOrdersArguments\n\t\t| [\n\t\t\t\tSelf: RawTransactionArgument<string>,\n\t\t\t\tPool: RawTransactionArgument<string>,\n\t\t\t\tBasePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tQuotePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tRegistry: RawTransactionArgument<string>,\n\t\t\t\tMaxOrdersToExecute: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * DEPRECATED. Use `execute_conditional_orders_v2`.\n *\n * The v1 entry preserves its on-chain signature so the v5 package upgrade\n * type-checks against existing dependents, but the body is replaced with\n * `abort EDeprecatedUseV2`. The v2 variant adds margin-pool + oracle params and\n * enforces a post-fill `risk_ratio >= min_borrow_risk_ratio` invariant inside\n * `process_collected_orders_v2`.\n */\nexport function executeConditionalOrders(options: ExecuteConditionalOrdersOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, 'u64', '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'Self',\n\t\t'Pool',\n\t\t'BasePriceInfoObject',\n\t\t'QuotePriceInfoObject',\n\t\t'Registry',\n\t\t'MaxOrdersToExecute',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'execute_conditional_orders',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ExecuteConditionalOrdersV2Arguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n\tbasePriceInfoObject: RawTransactionArgument<string>;\n\tquotePriceInfoObject: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tmaxOrdersToExecute: RawTransactionArgument<number | bigint>;\n}\nexport interface ExecuteConditionalOrdersV2Options {\n\tpackage?: string;\n\targuments:\n\t\t| ExecuteConditionalOrdersV2Arguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbasePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tquotePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tmaxOrdersToExecute: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Execute conditional orders and return the order infos. This is a permissionless\n * function that can be called by anyone.\n *\n * v2 adds `base_margin_pool` + `quote_margin_pool` parameters and enforces a\n * post-fill `risk_ratio >= min_borrow_risk_ratio` invariant inside the inner loop.\n * If any single triggered fill would breach that floor, the entire txn aborts — no\n * partial-state landing. Twin:\n * `margin_manager_upgraded::execute_conditional_orders_v2`. Edit both.\n */\nexport function executeConditionalOrdersV2(options: ExecuteConditionalOrdersV2Options) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t\t'basePriceInfoObject',\n\t\t'quotePriceInfoObject',\n\t\t'registry',\n\t\t'maxOrdersToExecute',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'execute_conditional_orders_v2',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ExecuteConditionalOrdersV3Arguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n\tbasePriceInfoObject: RawTransactionArgument<string>;\n\tquotePriceInfoObject: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tmaxOrdersToExecute: RawTransactionArgument<number | bigint>;\n}\nexport interface ExecuteConditionalOrdersV3Options {\n\tpackage?: string;\n\targuments:\n\t\t| ExecuteConditionalOrdersV3Arguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbasePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tquotePriceInfoObject: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tmaxOrdersToExecute: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Execute conditional orders, deleveraging on each market-type fill.\n * Permissionless, like `execute_conditional_orders_v2`, with the same trigger and\n * cancellation handling — but takes the margin pools as `&mut` and repays the loan\n * with the market proceeds before gating on the net (post-repay) `risk_ratio`\n * being at least the pre-fill ratio.\n *\n * This is what lets a stop-loss fire in the `liquidation..min_borrow` danger band:\n * a swap alone only lowers the oracle-valued ratio (so the v2 borrow-floor gate\n * rejects it), while repaying actually improves it. If a single triggered fill\n * would worsen net solvency the whole txn aborts — no partial-state landing. Twin:\n * `margin_manager_upgraded::execute_conditional_orders_v3`. Edit both.\n */\nexport function executeConditionalOrdersV3(options: ExecuteConditionalOrdersV3Options) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t\t'basePriceInfoObject',\n\t\t'quotePriceInfoObject',\n\t\t'registry',\n\t\t'maxOrdersToExecute',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'execute_conditional_orders_v3',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface NewArguments {\n\tpool: RawTransactionArgument<string>;\n\tdeepbookRegistry: RawTransactionArgument<string>;\n\tmarginRegistry: RawTransactionArgument<string>;\n}\nexport interface NewOptions {\n\tpackage?: string;\n\targuments:\n\t\t| NewArguments\n\t\t| [\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tdeepbookRegistry: RawTransactionArgument<string>,\n\t\t\t\tmarginRegistry: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/** Creates a new margin manager and shares it. */\nexport function _new(options: NewOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['pool', 'deepbookRegistry', 'marginRegistry'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'new',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface NewWithInitializerArguments {\n\tpool: RawTransactionArgument<string>;\n\tdeepbookRegistry: RawTransactionArgument<string>;\n\tmarginRegistry: RawTransactionArgument<string>;\n}\nexport interface NewWithInitializerOptions {\n\tpackage?: string;\n\targuments:\n\t\t| NewWithInitializerArguments\n\t\t| [\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tdeepbookRegistry: RawTransactionArgument<string>,\n\t\t\t\tmarginRegistry: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Creates a new margin manager and returns it along with an initializer. The\n * initializer is used to ensure the margin manager is shared after creation.\n */\nexport function newWithInitializer(options: NewWithInitializerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['pool', 'deepbookRegistry', 'marginRegistry'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'new_with_initializer',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ShareArguments {\n\tmanager: RawTransactionArgument<string>;\n\tinitializer: TransactionArgument;\n}\nexport interface ShareOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ShareArguments\n\t\t| [manager: RawTransactionArgument<string>, initializer: TransactionArgument];\n\ttypeArguments: [string, string];\n}\n/** Shares the margin manager. The initializer is dropped in the process. */\nexport function share(options: ShareOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['manager', 'initializer'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'share',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RegisterMarginManagerArguments {\n\tself: RawTransactionArgument<string>;\n\tmarginRegistry: RawTransactionArgument<string>;\n}\nexport interface RegisterMarginManagerOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RegisterMarginManagerArguments\n\t\t| [self: RawTransactionArgument<string>, marginRegistry: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Register the margin manager back to the margin registry. */\nexport function registerMarginManager(options: RegisterMarginManagerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'marginRegistry'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'register_margin_manager',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface UnregisterMarginManagerArguments {\n\tself: RawTransactionArgument<string>;\n\tmarginRegistry: RawTransactionArgument<string>;\n}\nexport interface UnregisterMarginManagerOptions {\n\tpackage?: string;\n\targuments:\n\t\t| UnregisterMarginManagerArguments\n\t\t| [self: RawTransactionArgument<string>, marginRegistry: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Unregister the margin manager from the margin registry. */\nexport function unregisterMarginManager(options: UnregisterMarginManagerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'marginRegistry'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'unregister_margin_manager',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface SetMarginManagerReferralArguments {\n\tself: RawTransactionArgument<string>;\n\treferralCap: RawTransactionArgument<string>;\n}\nexport interface SetMarginManagerReferralOptions {\n\tpackage?: string;\n\targuments:\n\t\t| SetMarginManagerReferralArguments\n\t\t| [self: RawTransactionArgument<string>, referralCap: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Set the referral for the margin manager. */\nexport function setMarginManagerReferral(options: SetMarginManagerReferralOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'referralCap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'set_margin_manager_referral',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface UnsetMarginManagerReferralArguments {\n\tself: RawTransactionArgument<string>;\n\tpoolId: RawTransactionArgument<string>;\n}\nexport interface UnsetMarginManagerReferralOptions {\n\tpackage?: string;\n\targuments:\n\t\t| UnsetMarginManagerReferralArguments\n\t\t| [self: RawTransactionArgument<string>, poolId: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Unset the referral for the margin manager. */\nexport function unsetMarginManagerReferral(options: UnsetMarginManagerReferralOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, '0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'poolId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'unset_margin_manager_referral',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface SetReferralArguments {\n\tSelf: RawTransactionArgument<string>;\n\tReferralCap: RawTransactionArgument<string>;\n}\nexport interface SetReferralOptions {\n\tpackage?: string;\n\targuments:\n\t\t| SetReferralArguments\n\t\t| [Self: RawTransactionArgument<string>, ReferralCap: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/**\n * Superseded by `set_margin_manager_referral`, which takes a pool-scoped\n * `DeepBookPoolReferral`. Retained as an aborting stub because it is public in the\n * deployed package: a `compatible` upgrade cannot drop a public function.\n */\nexport function setReferral(options: SetReferralOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['Self', 'ReferralCap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'set_referral',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface UnsetReferralArguments {\n\tSelf: RawTransactionArgument<string>;\n}\nexport interface UnsetReferralOptions {\n\tpackage?: string;\n\targuments: UnsetReferralArguments | [Self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/**\n * Superseded by `unset_margin_manager_referral`, which is pool-scoped. Retained as\n * an aborting stub for the same reason as `set_referral`.\n */\nexport function unsetReferral(options: UnsetReferralOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['Self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'unset_referral',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface DepositArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tcoin: RawTransactionArgument<string>;\n}\nexport interface DepositOptions {\n\tpackage?: string;\n\targuments:\n\t\t| DepositArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tcoin: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string, string];\n}\n/**\n * Deposit a coin into the margin manager. The coin must be of the same type as\n * either the base, quote, or DEEP. Twin: `margin_manager_upgraded::deposit`. Edit\n * both.\n */\nexport function deposit(options: DepositOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = ['self', 'registry', 'baseOracle', 'quoteOracle', 'coin'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'deposit',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface WithdrawArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\twithdrawAmount: RawTransactionArgument<number | bigint>;\n}\nexport interface WithdrawOptions {\n\tpackage?: string;\n\targuments:\n\t\t| WithdrawArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\twithdrawAmount: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string, string];\n}\n/**\n * Withdraw a specified amount of an asset from the margin manager. The asset must\n * be of the same type as either the base, quote, or DEEP. The withdrawal is\n * subject to the risk ratio limit. Twin: `margin_manager_upgraded::withdraw`. Edit\n * both.\n */\nexport function withdraw(options: WithdrawOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'withdrawAmount',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'withdraw',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowBaseArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tloanAmount: RawTransactionArgument<number | bigint>;\n}\nexport interface BorrowBaseOptions {\n\tpackage?: string;\n\targuments:\n\t\t| BorrowBaseArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tloanAmount: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Borrow the base asset using the margin manager. Twin:\n * `margin_manager_upgraded::borrow_base`. Edit both.\n */\nexport function borrowBase(options: BorrowBaseOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseMarginPool',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'loanAmount',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrow_base',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowQuoteArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tloanAmount: RawTransactionArgument<number | bigint>;\n}\nexport interface BorrowQuoteOptions {\n\tpackage?: string;\n\targuments:\n\t\t| BorrowQuoteArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tloanAmount: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Borrow the quote asset using the margin manager. Twin:\n * `margin_manager_upgraded::borrow_quote`. Edit both.\n */\nexport function borrowQuote(options: BorrowQuoteOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'quoteMarginPool',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'loanAmount',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrow_quote',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RepayBaseArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tmarginPool: RawTransactionArgument<string>;\n\tamount: RawTransactionArgument<number | bigint | null>;\n}\nexport interface RepayBaseOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RepayBaseArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tmarginPool: RawTransactionArgument<string>,\n\t\t\t\tamount: RawTransactionArgument<number | bigint | null>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Repay the base asset loan using the margin manager. Returns the total amount\n * repaid\n */\nexport function repayBase(options: RepayBaseOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'0x1::option::Option<u64>',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'registry', 'marginPool', 'amount'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'repay_base',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RepayQuoteArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tmarginPool: RawTransactionArgument<string>;\n\tamount: RawTransactionArgument<number | bigint | null>;\n}\nexport interface RepayQuoteOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RepayQuoteArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tmarginPool: RawTransactionArgument<string>,\n\t\t\t\tamount: RawTransactionArgument<number | bigint | null>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Repay the quote asset loan using the margin manager. Returns the total amount\n * repaid\n */\nexport function repayQuote(options: RepayQuoteOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'0x1::option::Option<u64>',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'registry', 'marginPool', 'amount'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'repay_quote',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface LiquidateArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tmarginPool: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\trepayCoin: RawTransactionArgument<string>;\n}\nexport interface LiquidateOptions {\n\tpackage?: string;\n\targuments:\n\t\t| LiquidateArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tmarginPool: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\trepayCoin: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string, string];\n}\n/** Twin: `margin_manager_upgraded::liquidate`. Edit both. */\nexport function liquidate(options: LiquidateOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'marginPool',\n\t\t'pool',\n\t\t'repayCoin',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'liquidate',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RiskRatioArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n}\nexport interface RiskRatioOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RiskRatioArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/** Twin: `margin_manager_upgraded::risk_ratio`. Edit both. */\nexport function riskRatio(options: RiskRatioOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'risk_ratio',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RiskRatioUnsafeArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n}\nexport interface RiskRatioUnsafeOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RiskRatioUnsafeArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Returns the risk ratio without validating staleness, EWMA divergence or\n * confidence - only the feed id is checked. Use for read-only queries where stale\n * prices are acceptable. Twin: `margin_manager_upgraded::risk_ratio_unsafe`. Edit\n * both.\n */\nexport function riskRatioUnsafe(options: RiskRatioUnsafeOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'risk_ratio_unsafe',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BalanceManagerArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BalanceManagerOptions {\n\tpackage?: string;\n\targuments: BalanceManagerArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function balanceManager(options: BalanceManagerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'balance_manager',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BaseBalanceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BaseBalanceOptions {\n\tpackage?: string;\n\targuments: BaseBalanceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function baseBalance(options: BaseBalanceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'base_balance',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface QuoteBalanceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface QuoteBalanceOptions {\n\tpackage?: string;\n\targuments: QuoteBalanceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function quoteBalance(options: QuoteBalanceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'quote_balance',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface DeepBalanceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface DeepBalanceOptions {\n\tpackage?: string;\n\targuments: DeepBalanceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function deepBalance(options: DeepBalanceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'deep_balance',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CalculateAssetsArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface CalculateAssetsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CalculateAssetsArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/** Returns (base_asset, quote_asset) for margin manager. */\nexport function calculateAssets(options: CalculateAssetsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'calculate_assets',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CalculateDebtsArguments {\n\tself: RawTransactionArgument<string>;\n\tmarginPool: RawTransactionArgument<string>;\n}\nexport interface CalculateDebtsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CalculateDebtsArguments\n\t\t| [self: RawTransactionArgument<string>, marginPool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string, string];\n}\nexport function calculateDebts(options: CalculateDebtsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, '0x2::clock::Clock'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'marginPool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'calculate_debts',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ManagerStateArguments {\n\tself: RawTransactionArgument<string>;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n}\nexport interface ManagerStateOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ManagerStateArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Returns comprehensive state information for a margin manager. Returns\n * (manager_id, deepbook_pool_id, risk_ratio, base_asset, quote_asset, base_debt,\n * quote_debt, base_pyth_price, base_pyth_decimals, quote_pyth_price,\n * quote_pyth_decimals, current_price, lowest_trigger_above_price,\n * highest_trigger_below_price) Twin: `margin_manager_upgraded::manager_state`.\n * Edit both.\n */\nexport function managerState(options: ManagerStateOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, null, null, null, null, null, '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'registry',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'manager_state',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ManagerStatesArguments {\n\tmarginManagers: TransactionArgument;\n\tregistry: RawTransactionArgument<string>;\n\tbaseOracle: RawTransactionArgument<string>;\n\tquoteOracle: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tbaseMarginPool: RawTransactionArgument<string>;\n\tquoteMarginPool: RawTransactionArgument<string>;\n}\nexport interface ManagerStatesOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ManagerStatesArguments\n\t\t| [\n\t\t\t\tmarginManagers: TransactionArgument,\n\t\t\t\tregistry: RawTransactionArgument<string>,\n\t\t\t\tbaseOracle: RawTransactionArgument<string>,\n\t\t\t\tquoteOracle: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tbaseMarginPool: RawTransactionArgument<string>,\n\t\t\t\tquoteMarginPool: RawTransactionArgument<string>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\n/**\n * Returns comprehensive state information for multiple margin managers. Same as\n * manager_state but takes a vector and returns vectors of all values. All managers\n * must be of the same type. Twin: `margin_manager_upgraded::manager_states`. Edit\n * both.\n */\nexport function managerStates(options: ManagerStatesOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\t'vector<null>',\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\tnull,\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'marginManagers',\n\t\t'registry',\n\t\t'baseOracle',\n\t\t'quoteOracle',\n\t\t'pool',\n\t\t'baseMarginPool',\n\t\t'quoteMarginPool',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'manager_states',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface IdArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface IdOptions {\n\tpackage?: string;\n\targuments: IdArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function id(options: IdOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface OwnerArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface OwnerOptions {\n\tpackage?: string;\n\targuments: OwnerArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function owner(options: OwnerOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'owner',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface DeepbookPoolArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface DeepbookPoolOptions {\n\tpackage?: string;\n\targuments: DeepbookPoolArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function deepbookPool(options: DeepbookPoolOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'deepbook_pool',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface MarginPoolIdArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface MarginPoolIdOptions {\n\tpackage?: string;\n\targuments: MarginPoolIdArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function marginPoolId(options: MarginPoolIdOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'margin_pool_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowedSharesArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BorrowedSharesOptions {\n\tpackage?: string;\n\targuments: BorrowedSharesArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function borrowedShares(options: BorrowedSharesOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrowed_shares',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowedBaseSharesArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BorrowedBaseSharesOptions {\n\tpackage?: string;\n\targuments: BorrowedBaseSharesArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function borrowedBaseShares(options: BorrowedBaseSharesOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrowed_base_shares',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BorrowedQuoteSharesArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BorrowedQuoteSharesOptions {\n\tpackage?: string;\n\targuments: BorrowedQuoteSharesArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function borrowedQuoteShares(options: BorrowedQuoteSharesOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'borrowed_quote_shares',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface HasBaseDebtArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface HasBaseDebtOptions {\n\tpackage?: string;\n\targuments: HasBaseDebtArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function hasBaseDebt(options: HasBaseDebtOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'has_base_debt',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ConditionalOrderIdsArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface ConditionalOrderIdsOptions {\n\tpackage?: string;\n\targuments: ConditionalOrderIdsArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function conditionalOrderIds(options: ConditionalOrderIdsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'conditional_order_ids',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ConditionalOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tconditionalOrderId: RawTransactionArgument<number | bigint>;\n}\nexport interface ConditionalOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ConditionalOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tconditionalOrderId: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\nexport function conditionalOrder(options: ConditionalOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, 'u64'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'conditionalOrderId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'conditional_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface LowestTriggerAbovePriceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface LowestTriggerAbovePriceOptions {\n\tpackage?: string;\n\targuments: LowestTriggerAbovePriceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/**\n * Returns the lowest trigger price for trigger_above orders Returns\n * constants::max_u64() if there are no trigger_above orders\n */\nexport function lowestTriggerAbovePrice(options: LowestTriggerAbovePriceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'lowest_trigger_above_price',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface HighestTriggerBelowPriceArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface HighestTriggerBelowPriceOptions {\n\tpackage?: string;\n\targuments: HighestTriggerBelowPriceArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\n/**\n * Returns the highest trigger price for trigger_below orders Returns 0 if there\n * are no trigger_below orders\n */\nexport function highestTriggerBelowPrice(options: HighestTriggerBelowPriceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'highest_trigger_below_price',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface GetAccountOrderDetailsArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface GetAccountOrderDetailsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| GetAccountOrderDetailsArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function getAccountOrderDetails(options: GetAccountOrderDetailsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'get_account_order_details',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface AccountOpenOrdersArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface AccountOpenOrdersOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AccountOpenOrdersArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function accountOpenOrders(options: AccountOpenOrdersOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'account_open_orders',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface LockedBalanceArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface LockedBalanceOptions {\n\tpackage?: string;\n\targuments:\n\t\t| LockedBalanceArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function lockedBalance(options: LockedBalanceOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'locked_balance',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface BalanceManagerIdArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface BalanceManagerIdOptions {\n\tpackage?: string;\n\targuments: BalanceManagerIdArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function balanceManagerId(options: BalanceManagerIdOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['self'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'balance_manager_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface GetBalanceManagerReferralIdArguments {\n\tself: RawTransactionArgument<string>;\n\tpoolId: RawTransactionArgument<string>;\n}\nexport interface GetBalanceManagerReferralIdOptions {\n\tpackage?: string;\n\targuments:\n\t\t| GetBalanceManagerReferralIdArguments\n\t\t| [self: RawTransactionArgument<string>, poolId: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function getBalanceManagerReferralId(options: GetBalanceManagerReferralIdOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, '0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'poolId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'get_balance_manager_referral_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface AccountExistsArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface AccountExistsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AccountExistsArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function accountExists(options: AccountExistsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'account_exists',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface AccountArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n}\nexport interface AccountOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AccountArguments\n\t\t| [self: RawTransactionArgument<string>, pool: RawTransactionArgument<string>];\n\ttypeArguments: [string, string];\n}\nexport function account(options: AccountOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'pool'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'account',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CanPlaceLimitOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tprice: RawTransactionArgument<number | bigint>;\n\tquantity: RawTransactionArgument<number | bigint>;\n\tisBid: RawTransactionArgument<boolean>;\n\tpayWithDeep: RawTransactionArgument<boolean>;\n\texpireTimestamp: RawTransactionArgument<number | bigint>;\n}\nexport interface CanPlaceLimitOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CanPlaceLimitOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tprice: RawTransactionArgument<number | bigint>,\n\t\t\t\tquantity: RawTransactionArgument<number | bigint>,\n\t\t\t\tisBid: RawTransactionArgument<boolean>,\n\t\t\t\tpayWithDeep: RawTransactionArgument<boolean>,\n\t\t\t\texpireTimestamp: RawTransactionArgument<number | bigint>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\nexport function canPlaceLimitOrder(options: CanPlaceLimitOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [\n\t\tnull,\n\t\tnull,\n\t\t'u64',\n\t\t'u64',\n\t\t'bool',\n\t\t'bool',\n\t\t'u64',\n\t\t'0x2::clock::Clock',\n\t] satisfies (string | null)[];\n\tconst parameterNames = [\n\t\t'self',\n\t\t'pool',\n\t\t'price',\n\t\t'quantity',\n\t\t'isBid',\n\t\t'payWithDeep',\n\t\t'expireTimestamp',\n\t];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'can_place_limit_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface CanPlaceMarketOrderArguments {\n\tself: RawTransactionArgument<string>;\n\tpool: RawTransactionArgument<string>;\n\tquantity: RawTransactionArgument<number | bigint>;\n\tisBid: RawTransactionArgument<boolean>;\n\tpayWithDeep: RawTransactionArgument<boolean>;\n}\nexport interface CanPlaceMarketOrderOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CanPlaceMarketOrderArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tpool: RawTransactionArgument<string>,\n\t\t\t\tquantity: RawTransactionArgument<number | bigint>,\n\t\t\t\tisBid: RawTransactionArgument<boolean>,\n\t\t\t\tpayWithDeep: RawTransactionArgument<boolean>,\n\t\t ];\n\ttypeArguments: [string, string];\n}\nexport function canPlaceMarketOrder(options: CanPlaceMarketOrderOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/margin';\n\tconst argumentsTypes = [null, null, 'u64', 'bool', 'bool', '0x2::clock::Clock'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = ['self', 'pool', 'quantity', 'isBid', 'payWithDeep'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'margin_manager',\n\t\t\tfunction: 'can_place_market_order',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\n"],"mappings":"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"}