@mysten/deepbook-v3 2.0.0 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +17 -0
- package/dist/contracts/deepbook/account.d.mts +18 -18
- package/dist/contracts/deepbook/balance_manager.mjs.map +1 -1
- package/dist/contracts/deepbook/balances.d.mts +4 -4
- package/dist/contracts/deepbook/balances.d.mts.map +1 -1
- package/dist/contracts/deepbook/deep_price.d.mts +3 -3
- package/dist/contracts/deepbook/order.d.mts +12 -12
- package/dist/contracts/deepbook/pool.mjs.map +1 -1
- package/dist/contracts/deepbook/registry.mjs.map +1 -1
- package/dist/contracts/deepbook_margin/margin_manager.mjs.map +1 -1
- package/dist/contracts/deepbook_margin/margin_manager_upgraded.mjs.map +1 -1
- package/dist/contracts/deepbook_margin/margin_pool.mjs.map +1 -1
- package/dist/contracts/deepbook_margin/margin_registry.mjs.map +1 -1
- package/dist/contracts/deepbook_margin/pool_proxy.mjs.map +1 -1
- package/dist/contracts/deepbook_margin/protocol_config.mjs.map +1 -1
- package/dist/contracts/deepbook_margin/tpsl.mjs.map +1 -1
- package/dist/contracts/margin_liquidation/liquidation_vault.mjs.map +1 -1
- package/dist/transactions/balanceManager.d.mts +12 -12
- package/dist/transactions/balanceManager.d.mts.map +1 -1
- package/dist/transactions/deepbook.d.mts +20 -20
- package/dist/transactions/deepbook.d.mts.map +1 -1
- package/dist/transactions/deepbookAdmin.d.mts +4 -4
- package/dist/transactions/deepbookAdmin.d.mts.map +1 -1
- package/dist/transactions/marginAdmin.d.mts +7 -7
- package/dist/transactions/marginMaintainer.d.mts +5 -5
- package/dist/transactions/marginPool.d.mts +18 -18
- package/dist/transactions/marginTPSL.d.mts +10 -10
- package/dist/types/index.d.mts.map +1 -1
- package/dist/types/index.mjs.map +1 -1
- package/dist/utils/constants.d.mts.map +1 -1
- package/dist/utils/constants.mjs +1 -1
- package/dist/utils/constants.mjs.map +1 -1
- package/package.json +10 -10
- package/src/contracts/deepbook/balance_manager.ts +1 -2
- package/src/contracts/deepbook/pool.ts +12 -24
- package/src/contracts/deepbook/registry.ts +1 -2
- package/src/contracts/deepbook_margin/margin_manager.ts +9 -18
- package/src/contracts/deepbook_margin/margin_manager_upgraded.ts +5 -10
- package/src/contracts/deepbook_margin/margin_pool.ts +2 -4
- package/src/contracts/deepbook_margin/margin_registry.ts +3 -6
- package/src/contracts/deepbook_margin/pool_proxy.ts +3 -6
- package/src/contracts/deepbook_margin/protocol_config.ts +1 -2
- package/src/contracts/deepbook_margin/tpsl.ts +1 -2
- package/src/contracts/margin_liquidation/liquidation_vault.ts +2 -4
- package/src/contracts/pyth/pyth.ts +2 -4
- package/src/types/index.ts +1 -2
- package/src/utils/constants.ts +1 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.mjs","names":["versioned.Versioned","vec_set.VecSet","bag.Bag","type_name.TypeName"],"sources":["../../../src/contracts/deepbook/registry.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/** Registry holds all created pools. */\n\nimport {\n\tMoveStruct,\n\tMoveTuple,\n\tnormalizeMoveArguments,\n\ttype RawTransactionArgument,\n} from '../utils/index.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';\nimport * as versioned from './deps/sui/versioned.js';\nimport * as vec_set from './deps/sui/vec_set.js';\nimport * as bag from './deps/sui/bag.js';\nimport * as type_name from './deps/std/type_name.js';\nconst $moduleName = '@deepbook/core::registry';\nexport const REGISTRY = new MoveStruct({\n\tname: `${$moduleName}::REGISTRY`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const DeepbookAdminCap = new MoveStruct({\n\tname: `${$moduleName}::DeepbookAdminCap`,\n\tfields: {\n\t\tid: bcs.Address,\n\t},\n});\nexport const DeepbookCorePauseCap = new MoveStruct({\n\tname: `${$moduleName}::DeepbookCorePauseCap`,\n\tfields: {\n\t\tid: bcs.Address,\n\t},\n});\nexport const Registry = new MoveStruct({\n\tname: `${$moduleName}::Registry`,\n\tfields: {\n\t\tid: bcs.Address,\n\t\tinner: versioned.Versioned,\n\t},\n});\nexport const RegistryInner = new MoveStruct({\n\tname: `${$moduleName}::RegistryInner`,\n\tfields: {\n\t\tallowed_versions: vec_set.VecSet(bcs.u64()),\n\t\tpools: bag.Bag,\n\t\ttreasury_address: bcs.Address,\n\t},\n});\nexport const PoolKey = new MoveStruct({\n\tname: `${$moduleName}::PoolKey`,\n\tfields: {\n\t\tbase: type_name.TypeName,\n\t\tquote: type_name.TypeName,\n\t},\n});\nexport const StableCoinKey = new MoveStruct({\n\tname: `${$moduleName}::StableCoinKey`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const BalanceManagerKey = new MoveStruct({\n\tname: `${$moduleName}::BalanceManagerKey`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const AllowedPauseCapsKey = new MoveTuple({\n\tname: `${$moduleName}::AllowedPauseCapsKey`,\n\tfields: [bcs.bool()],\n});\nexport const AppKey = new MoveStruct({\n\tname: `${$moduleName}::AppKey<phantom App>`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const AppKeyV2 = new MoveStruct({\n\tname: `${$moduleName}::AppKeyV2<phantom App>`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport interface AuthorizeAppArguments {\n\tself: RawTransactionArgument<string>;\n\tAdminCap: RawTransactionArgument<string>;\n}\nexport interface AuthorizeAppOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AuthorizeAppArguments\n\t\t| [self: RawTransactionArgument<string>, AdminCap: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/** Authorize an application to access protected features of the DeepBook. */\nexport function authorizeApp(options: AuthorizeAppOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'AdminCap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'authorize_app',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface DeauthorizeAppArguments {\n\tself: RawTransactionArgument<string>;\n\tAdminCap: RawTransactionArgument<string>;\n}\nexport interface DeauthorizeAppOptions {\n\tpackage?: string;\n\targuments:\n\t\t| DeauthorizeAppArguments\n\t\t| [self: RawTransactionArgument<string>, AdminCap: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/** Deauthorize an application by removing its authorization key. */\nexport function deauthorizeApp(options: DeauthorizeAppOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'AdminCap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'deauthorize_app',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface AssertAppIsAuthorizedArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface AssertAppIsAuthorizedOptions {\n\tpackage?: string;\n\targuments: AssertAppIsAuthorizedArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/**\n * Assert that an application is authorized to access protected features of\n * DeepBook.\n */\nexport function assertAppIsAuthorized(options: AssertAppIsAuthorizedOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\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: 'registry',\n\t\t\tfunction: 'assert_app_is_authorized',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface SetTreasuryAddressArguments {\n\tself: RawTransactionArgument<string>;\n\ttreasuryAddress: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface SetTreasuryAddressOptions {\n\tpackage?: string;\n\targuments:\n\t\t| SetTreasuryAddressArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\ttreasuryAddress: RawTransactionArgument<string>,\n\t\t\t\tCap: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Sets the treasury address where the pool creation fees are sent By default, the\n * treasury address is the publisher of the deepbook package\n */\nexport function setTreasuryAddress(options: SetTreasuryAddressOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'address', null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'treasuryAddress', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'set_treasury_address',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface EnableVersionArguments {\n\tself: RawTransactionArgument<string>;\n\tversion: RawTransactionArgument<number | bigint>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface EnableVersionOptions {\n\tpackage?: string;\n\targuments:\n\t\t| EnableVersionArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tversion: RawTransactionArgument<number | bigint>,\n\t\t\t\tCap: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Enables a package version Only Admin can enable a package version This function\n * does not have version restrictions\n */\nexport function enableVersion(options: EnableVersionOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'u64', null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'version', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'enable_version',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface DisableVersionArguments {\n\tself: RawTransactionArgument<string>;\n\tversion: RawTransactionArgument<number | bigint>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface DisableVersionOptions {\n\tpackage?: string;\n\targuments:\n\t\t| DisableVersionArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tversion: RawTransactionArgument<number | bigint>,\n\t\t\t\tCap: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Disables a package version Only Admin can disable a package version This\n * function does not have version restrictions\n */\nexport function disableVersion(options: DisableVersionOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'u64', null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'version', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'disable_version',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface MintPauseCapArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface MintPauseCapOptions {\n\tpackage?: string;\n\targuments:\n\t\t| MintPauseCapArguments\n\t\t| [self: RawTransactionArgument<string>, Cap: RawTransactionArgument<string>];\n}\n/**\n * Mint a `DeepbookCorePauseCap`. The new cap's ID is recorded so it can later\n * disable a version via `disable_version_pause_cap`. Only Admin can mint. This\n * function does not have version restrictions.\n */\nexport function mintPauseCap(options: MintPauseCapOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'mint_pause_cap',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface RevokePauseCapArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n\tpauseCapId: RawTransactionArgument<string>;\n}\nexport interface RevokePauseCapOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RevokePauseCapArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tCap: RawTransactionArgument<string>,\n\t\t\t\tpauseCapId: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Revoke a previously minted pause cap by ID. Only Admin can revoke. This function\n * does not have version restrictions.\n */\nexport function revokePauseCap(options: RevokePauseCapOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null, '0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap', 'pauseCapId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'revoke_pause_cap',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface DisableVersionPauseCapArguments {\n\tself: RawTransactionArgument<string>;\n\tversion: RawTransactionArgument<number | bigint>;\n\tpauseCap: RawTransactionArgument<string>;\n}\nexport interface DisableVersionPauseCapOptions {\n\tpackage?: string;\n\targuments:\n\t\t| DisableVersionPauseCapArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tversion: RawTransactionArgument<number | bigint>,\n\t\t\t\tpauseCap: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Disable any allowed package version (including the current one) using a valid\n * `DeepbookCorePauseCap`. The pause cap must be in `allowed_pause_caps`. This\n * function is the emergency kill switch; admin can re-enable via `enable_version`.\n * This function does not have version restrictions.\n */\nexport function disableVersionPauseCap(options: DisableVersionPauseCapOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'u64', null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'version', 'pauseCap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'disable_version_pause_cap',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface AddStablecoinArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface AddStablecoinOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AddStablecoinArguments\n\t\t| [self: RawTransactionArgument<string>, Cap: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/** Adds a stablecoin to the whitelist Only Admin can add stablecoin */\nexport function addStablecoin(options: AddStablecoinOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'add_stablecoin',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RemoveStablecoinArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface RemoveStablecoinOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RemoveStablecoinArguments\n\t\t| [self: RawTransactionArgument<string>, Cap: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/** Removes a stablecoin from the whitelist Only Admin can remove stablecoin */\nexport function removeStablecoin(options: RemoveStablecoinOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'remove_stablecoin',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface InitBalanceManagerMapArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface InitBalanceManagerMapOptions {\n\tpackage?: string;\n\targuments:\n\t\t| InitBalanceManagerMapArguments\n\t\t| [self: RawTransactionArgument<string>, Cap: RawTransactionArgument<string>];\n}\n/** Adds the BalanceManagerKey dynamic field to the registry */\nexport function initBalanceManagerMap(options: InitBalanceManagerMapOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'init_balance_manager_map',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface GetBalanceManagerIdsArguments {\n\tself: RawTransactionArgument<string>;\n\towner: RawTransactionArgument<string>;\n}\nexport interface GetBalanceManagerIdsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| GetBalanceManagerIdsArguments\n\t\t| [self: RawTransactionArgument<string>, owner: RawTransactionArgument<string>];\n}\n/** Get the balance manager IDs for a given owner */\nexport function getBalanceManagerIds(options: GetBalanceManagerIdsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'address'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'owner'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'get_balance_manager_ids',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface AllowedPauseCapsArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface AllowedPauseCapsOptions {\n\tpackage?: string;\n\targuments: AllowedPauseCapsArguments | [self: RawTransactionArgument<string>];\n}\n/**\n * Get the set of pause cap IDs allowed to disable package versions. Returns an\n * empty set if no pause caps have been minted yet.\n */\nexport function allowedPauseCaps(options: AllowedPauseCapsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\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: 'registry',\n\t\t\tfunction: 'allowed_pause_caps',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface IsStablecoinArguments {\n\tself: RawTransactionArgument<string>;\n\tstableType: TransactionArgument;\n}\nexport interface IsStablecoinOptions {\n\tpackage?: string;\n\targuments:\n\t\t| IsStablecoinArguments\n\t\t| [self: RawTransactionArgument<string>, stableType: TransactionArgument];\n}\n/** Returns whether the given coin is whitelisted */\nexport function isStablecoin(options: IsStablecoinOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'stableType'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'is_stablecoin',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.mjs","names":["versioned.Versioned","vec_set.VecSet","bag.Bag","type_name.TypeName"],"sources":["../../../src/contracts/deepbook/registry.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/** Registry holds all created pools. */\n\nimport {\n\tMoveStruct,\n\tMoveTuple,\n\tnormalizeMoveArguments,\n\ttype RawTransactionArgument,\n} from '../utils/index.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';\nimport * as versioned from './deps/sui/versioned.js';\nimport * as vec_set from './deps/sui/vec_set.js';\nimport * as bag from './deps/sui/bag.js';\nimport * as type_name from './deps/std/type_name.js';\nconst $moduleName = '@deepbook/core::registry';\nexport const REGISTRY = new MoveStruct({\n\tname: `${$moduleName}::REGISTRY`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const DeepbookAdminCap = new MoveStruct({\n\tname: `${$moduleName}::DeepbookAdminCap`,\n\tfields: {\n\t\tid: bcs.Address,\n\t},\n});\nexport const DeepbookCorePauseCap = new MoveStruct({\n\tname: `${$moduleName}::DeepbookCorePauseCap`,\n\tfields: {\n\t\tid: bcs.Address,\n\t},\n});\nexport const Registry = new MoveStruct({\n\tname: `${$moduleName}::Registry`,\n\tfields: {\n\t\tid: bcs.Address,\n\t\tinner: versioned.Versioned,\n\t},\n});\nexport const RegistryInner = new MoveStruct({\n\tname: `${$moduleName}::RegistryInner`,\n\tfields: {\n\t\tallowed_versions: vec_set.VecSet(bcs.u64()),\n\t\tpools: bag.Bag,\n\t\ttreasury_address: bcs.Address,\n\t},\n});\nexport const PoolKey = new MoveStruct({\n\tname: `${$moduleName}::PoolKey`,\n\tfields: {\n\t\tbase: type_name.TypeName,\n\t\tquote: type_name.TypeName,\n\t},\n});\nexport const StableCoinKey = new MoveStruct({\n\tname: `${$moduleName}::StableCoinKey`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const BalanceManagerKey = new MoveStruct({\n\tname: `${$moduleName}::BalanceManagerKey`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const AllowedPauseCapsKey = new MoveTuple({\n\tname: `${$moduleName}::AllowedPauseCapsKey`,\n\tfields: [bcs.bool()],\n});\nexport const AppKey = new MoveStruct({\n\tname: `${$moduleName}::AppKey<phantom App>`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport const AppKeyV2 = new MoveStruct({\n\tname: `${$moduleName}::AppKeyV2<phantom App>`,\n\tfields: {\n\t\tdummy_field: bcs.bool(),\n\t},\n});\nexport interface AuthorizeAppArguments {\n\tself: RawTransactionArgument<string>;\n\tAdminCap: RawTransactionArgument<string>;\n}\nexport interface AuthorizeAppOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AuthorizeAppArguments\n\t\t| [self: RawTransactionArgument<string>, AdminCap: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/** Authorize an application to access protected features of the DeepBook. */\nexport function authorizeApp(options: AuthorizeAppOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'AdminCap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'authorize_app',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface DeauthorizeAppArguments {\n\tself: RawTransactionArgument<string>;\n\tAdminCap: RawTransactionArgument<string>;\n}\nexport interface DeauthorizeAppOptions {\n\tpackage?: string;\n\targuments:\n\t\t| DeauthorizeAppArguments\n\t\t| [self: RawTransactionArgument<string>, AdminCap: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/** Deauthorize an application by removing its authorization key. */\nexport function deauthorizeApp(options: DeauthorizeAppOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'AdminCap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'deauthorize_app',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface AssertAppIsAuthorizedArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface AssertAppIsAuthorizedOptions {\n\tpackage?: string;\n\targuments: AssertAppIsAuthorizedArguments | [self: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/**\n * Assert that an application is authorized to access protected features of\n * DeepBook.\n */\nexport function assertAppIsAuthorized(options: AssertAppIsAuthorizedOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\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: 'registry',\n\t\t\tfunction: 'assert_app_is_authorized',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface SetTreasuryAddressArguments {\n\tself: RawTransactionArgument<string>;\n\ttreasuryAddress: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface SetTreasuryAddressOptions {\n\tpackage?: string;\n\targuments:\n\t\t| SetTreasuryAddressArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\ttreasuryAddress: RawTransactionArgument<string>,\n\t\t\t\tCap: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Sets the treasury address where the pool creation fees are sent By default, the\n * treasury address is the publisher of the deepbook package\n */\nexport function setTreasuryAddress(options: SetTreasuryAddressOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'address', null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'treasuryAddress', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'set_treasury_address',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface EnableVersionArguments {\n\tself: RawTransactionArgument<string>;\n\tversion: RawTransactionArgument<number | bigint>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface EnableVersionOptions {\n\tpackage?: string;\n\targuments:\n\t\t| EnableVersionArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tversion: RawTransactionArgument<number | bigint>,\n\t\t\t\tCap: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Enables a package version Only Admin can enable a package version This function\n * does not have version restrictions\n */\nexport function enableVersion(options: EnableVersionOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'u64', null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'version', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'enable_version',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface DisableVersionArguments {\n\tself: RawTransactionArgument<string>;\n\tversion: RawTransactionArgument<number | bigint>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface DisableVersionOptions {\n\tpackage?: string;\n\targuments:\n\t\t| DisableVersionArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tversion: RawTransactionArgument<number | bigint>,\n\t\t\t\tCap: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Disables a package version Only Admin can disable a package version This\n * function does not have version restrictions\n */\nexport function disableVersion(options: DisableVersionOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'u64', null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'version', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'disable_version',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface MintPauseCapArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface MintPauseCapOptions {\n\tpackage?: string;\n\targuments:\n\t\t| MintPauseCapArguments\n\t\t| [self: RawTransactionArgument<string>, Cap: RawTransactionArgument<string>];\n}\n/**\n * Mint a `DeepbookCorePauseCap`. The new cap's ID is recorded so it can later\n * disable a version via `disable_version_pause_cap`. Only Admin can mint. This\n * function does not have version restrictions.\n */\nexport function mintPauseCap(options: MintPauseCapOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'mint_pause_cap',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface RevokePauseCapArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n\tpauseCapId: RawTransactionArgument<string>;\n}\nexport interface RevokePauseCapOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RevokePauseCapArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tCap: RawTransactionArgument<string>,\n\t\t\t\tpauseCapId: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Revoke a previously minted pause cap by ID. Only Admin can revoke. This function\n * does not have version restrictions.\n */\nexport function revokePauseCap(options: RevokePauseCapOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null, '0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap', 'pauseCapId'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'revoke_pause_cap',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface DisableVersionPauseCapArguments {\n\tself: RawTransactionArgument<string>;\n\tversion: RawTransactionArgument<number | bigint>;\n\tpauseCap: RawTransactionArgument<string>;\n}\nexport interface DisableVersionPauseCapOptions {\n\tpackage?: string;\n\targuments:\n\t\t| DisableVersionPauseCapArguments\n\t\t| [\n\t\t\t\tself: RawTransactionArgument<string>,\n\t\t\t\tversion: RawTransactionArgument<number | bigint>,\n\t\t\t\tpauseCap: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Disable any allowed package version (including the current one) using a valid\n * `DeepbookCorePauseCap`. The pause cap must be in `allowed_pause_caps`. This\n * function is the emergency kill switch; admin can re-enable via `enable_version`.\n * This function does not have version restrictions.\n */\nexport function disableVersionPauseCap(options: DisableVersionPauseCapOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'u64', null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'version', 'pauseCap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'disable_version_pause_cap',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface AddStablecoinArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface AddStablecoinOptions {\n\tpackage?: string;\n\targuments:\n\t\t| AddStablecoinArguments\n\t\t| [self: RawTransactionArgument<string>, Cap: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/** Adds a stablecoin to the whitelist Only Admin can add stablecoin */\nexport function addStablecoin(options: AddStablecoinOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'add_stablecoin',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface RemoveStablecoinArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface RemoveStablecoinOptions {\n\tpackage?: string;\n\targuments:\n\t\t| RemoveStablecoinArguments\n\t\t| [self: RawTransactionArgument<string>, Cap: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/** Removes a stablecoin from the whitelist Only Admin can remove stablecoin */\nexport function removeStablecoin(options: RemoveStablecoinOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'remove_stablecoin',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface InitBalanceManagerMapArguments {\n\tself: RawTransactionArgument<string>;\n\tCap: RawTransactionArgument<string>;\n}\nexport interface InitBalanceManagerMapOptions {\n\tpackage?: string;\n\targuments:\n\t\t| InitBalanceManagerMapArguments\n\t\t| [self: RawTransactionArgument<string>, Cap: RawTransactionArgument<string>];\n}\n/** Adds the BalanceManagerKey dynamic field to the registry */\nexport function initBalanceManagerMap(options: InitBalanceManagerMapOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'Cap'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'init_balance_manager_map',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface GetBalanceManagerIdsArguments {\n\tself: RawTransactionArgument<string>;\n\towner: RawTransactionArgument<string>;\n}\nexport interface GetBalanceManagerIdsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| GetBalanceManagerIdsArguments\n\t\t| [self: RawTransactionArgument<string>, owner: RawTransactionArgument<string>];\n}\n/** Get the balance manager IDs for a given owner */\nexport function getBalanceManagerIds(options: GetBalanceManagerIdsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, 'address'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'owner'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'get_balance_manager_ids',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface AllowedPauseCapsArguments {\n\tself: RawTransactionArgument<string>;\n}\nexport interface AllowedPauseCapsOptions {\n\tpackage?: string;\n\targuments: AllowedPauseCapsArguments | [self: RawTransactionArgument<string>];\n}\n/**\n * Get the set of pause cap IDs allowed to disable package versions. Returns an\n * empty set if no pause caps have been minted yet.\n */\nexport function allowedPauseCaps(options: AllowedPauseCapsOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\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: 'registry',\n\t\t\tfunction: 'allowed_pause_caps',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface IsStablecoinArguments {\n\tself: RawTransactionArgument<string>;\n\tstableType: TransactionArgument;\n}\nexport interface IsStablecoinOptions {\n\tpackage?: string;\n\targuments:\n\t\tIsStablecoinArguments | [self: RawTransactionArgument<string>, stableType: TransactionArgument];\n}\n/** Returns whether the given coin is whitelisted */\nexport function isStablecoin(options: IsStablecoinOptions) {\n\tconst packageAddress = options.package ?? '@deepbook/core';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'stableType'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'registry',\n\t\t\tfunction: 'is_stablecoin',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\n"],"mappings":"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"}
|
|
@@ -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. 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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"}
|
|
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\tstring | 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\tShareArguments | [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\tstring | 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\tstring | 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\tstring | 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\tstring | 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\tstring | 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\tAccountArguments | [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\tstring | 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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"}
|