compass_api_sdk 0.9.35__py3-none-any.whl → 2.0.21rc1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (322) hide show
  1. compass_api_sdk/_hooks/sdkhooks.py +4 -4
  2. compass_api_sdk/_hooks/types.py +1 -2
  3. compass_api_sdk/_version.py +3 -3
  4. compass_api_sdk/aave_v3.py +971 -728
  5. compass_api_sdk/aerodrome_slipstream.py +367 -390
  6. compass_api_sdk/basesdk.py +21 -5
  7. compass_api_sdk/bridge.py +536 -0
  8. compass_api_sdk/earn.py +1780 -0
  9. compass_api_sdk/erc_4626_vaults.py +127 -154
  10. compass_api_sdk/errors/__init__.py +38 -4
  11. compass_api_sdk/errors/apierror.py +32 -14
  12. compass_api_sdk/errors/compassapierror.py +30 -0
  13. compass_api_sdk/errors/httpvalidationerror.py +15 -8
  14. compass_api_sdk/errors/mintpreparenotfoundresponse_error.py +49 -0
  15. compass_api_sdk/errors/no_response_error.py +17 -0
  16. compass_api_sdk/errors/responsevalidationerror.py +27 -0
  17. compass_api_sdk/{token_sdk.py → ethena.py} +318 -293
  18. compass_api_sdk/gas_sponsorship.py +446 -0
  19. compass_api_sdk/httpclient.py +0 -1
  20. compass_api_sdk/models/__init__.py +1701 -945
  21. compass_api_sdk/models/aaveborrowparams.py +4 -13
  22. compass_api_sdk/models/aaveborrowrequest.py +19 -19
  23. compass_api_sdk/models/aavehistoricaltransactionsresponse.py +8 -8
  24. compass_api_sdk/models/aavelooprequest.py +88 -36
  25. compass_api_sdk/models/aaveposition.py +49 -0
  26. compass_api_sdk/models/aaverepayparams.py +4 -13
  27. compass_api_sdk/models/aaverepayrequest.py +19 -19
  28. compass_api_sdk/models/aavereserveoverviewresponse.py +34 -3
  29. compass_api_sdk/models/aavesetuseremodeparams.py +28 -0
  30. compass_api_sdk/models/aavesetuseremoderequest.py +48 -0
  31. compass_api_sdk/models/aavesupplyparams.py +4 -13
  32. compass_api_sdk/models/aavesupplyrequest.py +19 -19
  33. compass_api_sdk/models/aavesupportedtokenmetadata.py +30 -0
  34. compass_api_sdk/models/aavesupportedtokensresponse.py +20 -0
  35. compass_api_sdk/models/aavevenue.py +27 -0
  36. compass_api_sdk/models/aavewithdrawparams.py +4 -13
  37. compass_api_sdk/models/aavewithdrawrequest.py +19 -19
  38. compass_api_sdk/models/aerodromeenrichedposition.py +109 -0
  39. compass_api_sdk/models/aerodromelppositionsresponse.py +10 -7
  40. compass_api_sdk/models/aerodromeslipstreambuyexactlyparams.py +8 -25
  41. compass_api_sdk/models/aerodromeslipstreambuyexactlyrequest.py +21 -31
  42. compass_api_sdk/models/aerodromeslipstreamincreaseliquidityprovisionrequest.py +13 -6
  43. compass_api_sdk/models/aerodromeslipstreammintliquidityprovisionparams.py +8 -25
  44. compass_api_sdk/models/aerodromeslipstreammintliquidityprovisionrequest.py +21 -31
  45. compass_api_sdk/models/aerodromeslipstreampoolpriceresponse.py +8 -25
  46. compass_api_sdk/models/aerodromeslipstreamsellexactlyparams.py +8 -25
  47. compass_api_sdk/models/aerodromeslipstreamsellexactlyrequest.py +20 -30
  48. compass_api_sdk/models/aerodromeslipstreamwithdrawliquidityprovisionrequest.py +13 -6
  49. compass_api_sdk/models/approvetransferrequest.py +32 -0
  50. compass_api_sdk/models/{curator.py → approvetransferresponse.py} +12 -13
  51. compass_api_sdk/models/apy.py +3 -0
  52. compass_api_sdk/models/batchedsafeoperationsresponse_input.py +52 -0
  53. compass_api_sdk/models/batchedsafeoperationsresponse_output.py +52 -0
  54. compass_api_sdk/models/batcheduseroperationsrequest.py +24 -9
  55. compass_api_sdk/models/bundlertransactionresponse.py +17 -0
  56. compass_api_sdk/models/chain.py +3 -3
  57. compass_api_sdk/models/chainmarketinfo.py +29 -0
  58. compass_api_sdk/models/{compass_api_backend_models_generic_read_response_portfolio_tokenbalance.py → compass_api_backend_v1_models_generic_read_response_portfolio_tokenbalance.py} +6 -15
  59. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_check_user_position_apydata.py → compass_api_backend_v1_models_morpho_read_response_check_user_position_apydata.py} +2 -2
  60. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_check_user_position_asset.py → compass_api_backend_v1_models_morpho_read_response_check_user_position_asset.py} +2 -2
  61. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_check_user_position_marketstate.py → compass_api_backend_v1_models_morpho_read_response_check_user_position_marketstate.py} +4 -2
  62. compass_api_sdk/models/compass_api_backend_v1_models_morpho_read_response_check_user_position_vaultposition.py +30 -0
  63. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_check_user_position_vaultstate.py → compass_api_backend_v1_models_morpho_read_response_check_user_position_vaultstate.py} +2 -2
  64. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_get_market_apydata.py → compass_api_backend_v1_models_morpho_read_response_get_market_apydata.py} +2 -2
  65. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_get_vault_asset.py → compass_api_backend_v1_models_morpho_read_response_get_market_asset.py} +5 -5
  66. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_get_market_marketstate.py → compass_api_backend_v1_models_morpho_read_response_get_market_marketstate.py} +4 -2
  67. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_get_markets_asset.py → compass_api_backend_v1_models_morpho_read_response_get_markets_asset.py} +2 -2
  68. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_get_markets_marketstate.py → compass_api_backend_v1_models_morpho_read_response_get_markets_marketstate.py} +2 -2
  69. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_get_vaults_asset.py → compass_api_backend_v1_models_morpho_read_response_get_vaults_asset.py} +2 -2
  70. compass_api_sdk/models/compass_api_backend_v1_models_morpho_read_response_get_vaults_vaultstate.py +73 -0
  71. compass_api_sdk/models/compass_api_backend_v1_models_pendle_read_response_market_userposition.py +82 -0
  72. compass_api_sdk/models/{compass_api_backend_models_pendle_read_response_positions_tokenbalance.py → compass_api_backend_v1_models_pendle_read_response_positions_tokenbalance.py} +2 -2
  73. compass_api_sdk/models/compass_api_backend_v1_models_vaults_read_response_vault_userposition.py +20 -0
  74. compass_api_sdk/models/compass_api_backend_v1_models_wildcat_read_response_market_userposition.py +22 -0
  75. compass_api_sdk/models/compass_api_backend_v2_models_earn_read_response_positions_vaultposition.py +49 -0
  76. compass_api_sdk/models/compass_api_backend_v2_models_gas_sponsorship_permit_2_typed_data_eip712domain.py +36 -0
  77. compass_api_sdk/models/compass_api_backend_v2_models_gas_sponsorship_permit_2_typed_data_eip712types.py +36 -0
  78. compass_api_sdk/models/compass_api_backend_v2_models_gas_sponsorship_permit_typed_data_eip712domain.py +37 -0
  79. compass_api_sdk/models/compass_api_backend_v2_models_gas_sponsorship_permit_typed_data_eip712types.py +32 -0
  80. compass_api_sdk/models/compass_api_backend_v2_models_safe_transact_response_batched_safe_operations_eip712domain.py +29 -0
  81. compass_api_sdk/models/compass_api_backend_v2_models_safe_transact_response_batched_safe_operations_eip712types.py +34 -0
  82. compass_api_sdk/models/cooldownposition.py +35 -0
  83. compass_api_sdk/models/createaccountrequest.py +40 -0
  84. compass_api_sdk/models/createaccountresponse.py +56 -0
  85. compass_api_sdk/models/depositforburnrequest.py +77 -0
  86. compass_api_sdk/models/depositforburnresponse.py +100 -0
  87. compass_api_sdk/models/details.py +44 -7
  88. compass_api_sdk/models/earnmanageparams.py +74 -0
  89. compass_api_sdk/models/earnmanagerequest.py +130 -0
  90. compass_api_sdk/models/{compass_api_backend_models_morpho_read_response_get_market_asset.py → earnmanageresponse.py} +13 -21
  91. compass_api_sdk/models/earnpositionsresponse.py +39 -0
  92. compass_api_sdk/models/earnswapparams.py +74 -0
  93. compass_api_sdk/models/earnswaprequest.py +90 -0
  94. compass_api_sdk/models/earnswapresponse.py +55 -0
  95. compass_api_sdk/models/earntransferrequest.py +104 -0
  96. compass_api_sdk/models/earntransferresponse.py +71 -0
  97. compass_api_sdk/models/eip712domainfield.py +20 -0
  98. compass_api_sdk/models/eip712field.py +20 -0
  99. compass_api_sdk/models/ethenadepositparams.py +82 -0
  100. compass_api_sdk/models/ethenadepositrequest.py +100 -0
  101. compass_api_sdk/models/ethenagetvaultresponse.py +109 -0
  102. compass_api_sdk/models/ethenarequesttowithdrawparams.py +28 -0
  103. compass_api_sdk/models/ethenarequesttowithdrawrequest.py +46 -0
  104. compass_api_sdk/models/ethenarequesttowithdrawtransactionresponse.py +37 -0
  105. compass_api_sdk/models/ethenaunstakeparams.py +65 -0
  106. compass_api_sdk/models/ethenaunstakerequest.py +83 -0
  107. compass_api_sdk/models/fee.py +42 -0
  108. compass_api_sdk/models/listaavemarketsresponse.py +21 -0
  109. compass_api_sdk/models/marketposition.py +5 -5
  110. compass_api_sdk/models/maxsupplyapyinfo.py +34 -0
  111. compass_api_sdk/models/mintpreparecompletedresponse.py +46 -0
  112. compass_api_sdk/models/mintpreparependingresponse.py +65 -0
  113. compass_api_sdk/models/mintpreparereadyresponse.py +43 -0
  114. compass_api_sdk/models/mintpreparerequest.py +25 -0
  115. compass_api_sdk/models/morphoborrowrequest.py +9 -3
  116. compass_api_sdk/models/morphocheckuserpositionresponse.py +9 -3
  117. compass_api_sdk/models/morphodepositrequest.py +9 -3
  118. compass_api_sdk/models/morphogetmarketresponse.py +72 -31
  119. compass_api_sdk/models/morphomarket.py +26 -20
  120. compass_api_sdk/models/morphorepayrequest.py +14 -3
  121. compass_api_sdk/models/morphosupplycollateralrequest.py +14 -3
  122. compass_api_sdk/models/morphovault.py +10 -10
  123. compass_api_sdk/models/morphowithdrawcollateralrequest.py +9 -3
  124. compass_api_sdk/models/morphowithdrawrequest.py +9 -3
  125. compass_api_sdk/models/movement10percent.py +65 -10
  126. compass_api_sdk/models/multicallauthorizationrequest.py +9 -9
  127. compass_api_sdk/models/multicallexecuterequest.py +59 -11
  128. compass_api_sdk/models/odosswapparams.py +52 -0
  129. compass_api_sdk/models/odosswaprequest.py +72 -0
  130. compass_api_sdk/models/odostransactionresponse.py +37 -0
  131. compass_api_sdk/models/oneinchswapparams.py +59 -0
  132. compass_api_sdk/models/openposition.py +7 -7
  133. compass_api_sdk/models/operationtype.py +11 -0
  134. compass_api_sdk/models/pendlegetmarketresponse.py +52 -2
  135. compass_api_sdk/models/pendlemanageliquidityparams.py +68 -0
  136. compass_api_sdk/models/pendlemanageliquidityrequest.py +87 -0
  137. compass_api_sdk/models/pendleredeemyieldrequest.py +15 -6
  138. compass_api_sdk/models/pendletradeptparams.py +68 -0
  139. compass_api_sdk/models/pendletradeptrequest.py +87 -0
  140. compass_api_sdk/models/pendletradeytparams.py +68 -0
  141. compass_api_sdk/models/pendletradeytrequest.py +87 -0
  142. compass_api_sdk/models/pendletxresponse.py +36 -0
  143. compass_api_sdk/models/permit2typeddata_input.py +46 -0
  144. compass_api_sdk/models/permit2typeddata_output.py +46 -0
  145. compass_api_sdk/models/permitfield.py +20 -0
  146. compass_api_sdk/models/permitmessage.py +39 -0
  147. compass_api_sdk/models/permittransferfrommessage.py +29 -0
  148. compass_api_sdk/models/permittypeddataresponse_input.py +50 -0
  149. compass_api_sdk/models/permittypeddataresponse_output.py +50 -0
  150. compass_api_sdk/models/portfolio.py +5 -5
  151. compass_api_sdk/models/protocol.py +13 -0
  152. compass_api_sdk/models/reserve.py +6 -15
  153. compass_api_sdk/models/safetransactionparams.py +78 -0
  154. compass_api_sdk/models/safetransactionresponse.py +28 -0
  155. compass_api_sdk/models/safetxfield.py +20 -0
  156. compass_api_sdk/models/safetxmessage.py +66 -0
  157. compass_api_sdk/models/setallowanceparams.py +5 -16
  158. compass_api_sdk/models/setallowancerequest.py +19 -22
  159. compass_api_sdk/models/skybuyrequest.py +12 -9
  160. compass_api_sdk/models/skydepositrequest.py +13 -9
  161. compass_api_sdk/models/skysellrequest.py +12 -9
  162. compass_api_sdk/models/skywithdrawrequest.py +13 -9
  163. compass_api_sdk/models/sponsorgasrequest.py +71 -0
  164. compass_api_sdk/models/sponsorgasresponse.py +14 -0
  165. compass_api_sdk/models/supportedchaininfo.py +19 -0
  166. compass_api_sdk/models/tokenbalanceresponse.py +5 -15
  167. compass_api_sdk/models/tokenconfig.py +30 -0
  168. compass_api_sdk/models/tokenlistresponse.py +21 -0
  169. compass_api_sdk/models/tokenmarketdata.py +27 -0
  170. compass_api_sdk/models/tokenpermissions.py +20 -0
  171. compass_api_sdk/models/tokentransferparams.py +54 -0
  172. compass_api_sdk/models/tokentransferrequest.py +23 -27
  173. compass_api_sdk/models/transactionresponse.py +31 -0
  174. compass_api_sdk/models/{compass_api_backend_models_vaults_read_response_vault_asset.py → underlyingtoken.py} +2 -2
  175. compass_api_sdk/models/uniswapbuyexactlyparams.py +19 -41
  176. compass_api_sdk/models/uniswapbuyexactlyrequest.py +31 -44
  177. compass_api_sdk/models/uniswapbuyexactlytransactionresponse.py +37 -0
  178. compass_api_sdk/models/uniswapincreaseliquidityprovisionrequest.py +15 -6
  179. compass_api_sdk/models/uniswapmintliquidityprovisionparams.py +8 -25
  180. compass_api_sdk/models/uniswapmintliquidityprovisionrequest.py +23 -31
  181. compass_api_sdk/models/uniswappoolpriceresponse.py +8 -25
  182. compass_api_sdk/models/uniswappositionssolidityresponse.py +42 -2
  183. compass_api_sdk/models/uniswapsellexactlyparams.py +19 -41
  184. compass_api_sdk/models/uniswapsellexactlyrequest.py +31 -44
  185. compass_api_sdk/models/uniswapsellexactlytransactionresponse.py +37 -0
  186. compass_api_sdk/models/uniswapwithdrawliquidityprovisionrequest.py +15 -6
  187. compass_api_sdk/models/unsignedmulticalltransaction.py +44 -13
  188. compass_api_sdk/models/unsignedtransaction.py +44 -13
  189. compass_api_sdk/models/unwrapwethrequest.py +15 -6
  190. compass_api_sdk/models/useroperation.py +61 -49
  191. compass_api_sdk/models/useroperationresponse.py +2 -2
  192. compass_api_sdk/models/userstate.py +3 -3
  193. compass_api_sdk/models/v1_aave_aave_supported_tokensop.py +69 -0
  194. compass_api_sdk/models/v1_aave_avg_rateop.py +83 -0
  195. compass_api_sdk/models/{aave_historical_transactionsop.py → v1_aave_historical_transactionsop.py} +21 -25
  196. compass_api_sdk/models/v1_aave_liquidity_changeop.py +45 -0
  197. compass_api_sdk/models/{pendle_marketop.py → v1_aave_rateop.py} +16 -20
  198. compass_api_sdk/models/v1_aave_reserve_overviewop.py +76 -0
  199. compass_api_sdk/models/v1_aave_std_rateop.py +83 -0
  200. compass_api_sdk/models/v1_aave_token_priceop.py +76 -0
  201. compass_api_sdk/models/v1_aave_user_position_per_tokenop.py +83 -0
  202. compass_api_sdk/models/{aave_user_position_summaryop.py → v1_aave_user_position_summaryop.py} +16 -20
  203. compass_api_sdk/models/v1_aerodrome_slipstream_liquidity_provision_positionsop.py +76 -0
  204. compass_api_sdk/models/v1_aerodrome_slipstream_pool_priceop.py +45 -0
  205. compass_api_sdk/models/v1_ethena_vaultop.py +75 -0
  206. compass_api_sdk/models/{generic_allowanceop.py → v1_generic_allowanceop.py} +28 -41
  207. compass_api_sdk/models/{generic_ensop.py → v1_generic_ensop.py} +8 -14
  208. compass_api_sdk/models/{generic_portfolioop.py → v1_generic_portfolioop.py} +10 -14
  209. compass_api_sdk/models/v1_generic_supported_chainsop.py +57 -0
  210. compass_api_sdk/models/{morpho_market_positionop.py → v1_morpho_market_positionop.py} +11 -10
  211. compass_api_sdk/models/{morpho_marketop.py → v1_morpho_marketop.py} +10 -9
  212. compass_api_sdk/models/{morpho_marketsop.py → v1_morpho_marketsop.py} +13 -12
  213. compass_api_sdk/models/{morpho_user_positionop.py → v1_morpho_user_positionop.py} +10 -9
  214. compass_api_sdk/models/{vaults_vaultop.py → v1_morpho_vaultop.py} +16 -20
  215. compass_api_sdk/models/{morpho_vaultsop.py → v1_morpho_vaultsop.py} +11 -10
  216. compass_api_sdk/models/{pendle_positionop.py → v1_pendle_marketop.py} +24 -27
  217. compass_api_sdk/models/v1_pendle_marketsop.py +24 -0
  218. compass_api_sdk/models/{pendle_positionsop.py → v1_pendle_positionsop.py} +10 -14
  219. compass_api_sdk/models/v1_sky_positionop.py +29 -0
  220. compass_api_sdk/models/v1_token_balanceop.py +38 -0
  221. compass_api_sdk/models/v1_token_listop.py +24 -0
  222. compass_api_sdk/models/v1_token_priceop.py +76 -0
  223. compass_api_sdk/models/v1_transaction_bundler_aave_loopop.py +27 -0
  224. compass_api_sdk/models/{uniswap_liquidity_provision_in_rangeop.py → v1_uniswap_liquidity_provision_in_rangeop.py} +10 -14
  225. compass_api_sdk/models/{uniswap_liquidity_provision_positionsop.py → v1_uniswap_liquidity_provision_positionsop.py} +10 -14
  226. compass_api_sdk/models/v1_uniswap_pool_priceop.py +58 -0
  227. compass_api_sdk/models/v1_uniswap_quote_buy_exactlyop.py +79 -0
  228. compass_api_sdk/models/v1_uniswap_quote_sell_exactlyop.py +79 -0
  229. compass_api_sdk/models/v1_vaults_vaultop.py +84 -0
  230. compass_api_sdk/models/v1_wildcat_marketop.py +82 -0
  231. compass_api_sdk/models/v2_cctp_mintop.py +47 -0
  232. compass_api_sdk/models/v2_earn_aave_marketsop.py +57 -0
  233. compass_api_sdk/models/v2_earn_positionsop.py +56 -0
  234. compass_api_sdk/models/v2_earn_vaultsop.py +105 -0
  235. compass_api_sdk/models/v2bundlerequest.py +33 -0
  236. compass_api_sdk/models/v2bundleresponse.py +67 -0
  237. compass_api_sdk/models/v2useroperation.py +37 -0
  238. compass_api_sdk/models/vault.py +14 -14
  239. compass_api_sdk/models/vaultdepositparams.py +85 -0
  240. compass_api_sdk/models/vaultdepositrequest.py +15 -6
  241. compass_api_sdk/models/vaultgetvaultresponse.py +21 -11
  242. compass_api_sdk/models/vaultinfo.py +129 -0
  243. compass_api_sdk/models/vaultsresponse.py +30 -0
  244. compass_api_sdk/models/vaultvenue.py +27 -0
  245. compass_api_sdk/models/vaultwithdrawparams.py +75 -0
  246. compass_api_sdk/models/vaultwithdrawrequest.py +15 -6
  247. compass_api_sdk/models/wildcatgetmarketresponse.py +151 -0
  248. compass_api_sdk/models/{redeemunderlying.py → withdraw.py} +2 -2
  249. compass_api_sdk/models/wrapethrequest.py +15 -6
  250. compass_api_sdk/morpho.py +481 -816
  251. compass_api_sdk/pendle.py +495 -1384
  252. compass_api_sdk/sdk.py +39 -13
  253. compass_api_sdk/sky.py +275 -240
  254. compass_api_sdk/smart_account.py +37 -50
  255. compass_api_sdk/swap.py +248 -0
  256. compass_api_sdk/token.py +1192 -0
  257. compass_api_sdk/transaction_bundler.py +151 -184
  258. compass_api_sdk/uniswap_v3.py +531 -620
  259. compass_api_sdk/universal.py +181 -932
  260. compass_api_sdk/utils/__init__.py +18 -5
  261. compass_api_sdk/utils/annotations.py +32 -8
  262. compass_api_sdk/utils/eventstreaming.py +10 -0
  263. compass_api_sdk/utils/forms.py +21 -10
  264. compass_api_sdk/utils/queryparams.py +14 -2
  265. compass_api_sdk/utils/retries.py +69 -5
  266. compass_api_sdk/utils/serializers.py +3 -2
  267. compass_api_sdk/utils/unmarshal_json_response.py +38 -0
  268. compass_api_sdk/wildcat.py +208 -0
  269. compass_api_sdk-2.0.21rc1.dist-info/METADATA +623 -0
  270. compass_api_sdk-2.0.21rc1.dist-info/RECORD +346 -0
  271. {compass_api_sdk-0.9.35.dist-info → compass_api_sdk-2.0.21rc1.dist-info}/WHEEL +1 -1
  272. compass_api_sdk/models/aave_avg_rateop.py +0 -141
  273. compass_api_sdk/models/aave_liquidity_changeop.py +0 -103
  274. compass_api_sdk/models/aave_rateop.py +0 -134
  275. compass_api_sdk/models/aave_reserve_overviewop.py +0 -134
  276. compass_api_sdk/models/aave_std_rateop.py +0 -141
  277. compass_api_sdk/models/aave_token_priceop.py +0 -134
  278. compass_api_sdk/models/aave_user_position_per_tokenop.py +0 -141
  279. compass_api_sdk/models/aerodrome_slipstream_liquidity_provision_positionsop.py +0 -37
  280. compass_api_sdk/models/aerodrome_slipstream_pool_priceop.py +0 -159
  281. compass_api_sdk/models/aerodromeposition.py +0 -70
  282. compass_api_sdk/models/compass_api_backend_models_morpho_read_response_get_vault_vaultstate.py +0 -53
  283. compass_api_sdk/models/compass_api_backend_models_morpho_read_response_get_vaults_vaultstate.py +0 -32
  284. compass_api_sdk/models/generic_supported_tokensop.py +0 -28
  285. compass_api_sdk/models/generic_visualize_portfolioop.py +0 -37
  286. compass_api_sdk/models/image.py +0 -15
  287. compass_api_sdk/models/liquidity.py +0 -16
  288. compass_api_sdk/models/metadata.py +0 -50
  289. compass_api_sdk/models/morpho_vault_positionop.py +0 -37
  290. compass_api_sdk/models/morpho_vaultop.py +0 -30
  291. compass_api_sdk/models/morphocheckvaultpositionresponse.py +0 -20
  292. compass_api_sdk/models/morphogetvaultresponse.py +0 -86
  293. compass_api_sdk/models/pendle_marketsop.py +0 -28
  294. compass_api_sdk/models/pendleaddliquidityparams.py +0 -50
  295. compass_api_sdk/models/pendleaddliquidityrequest.py +0 -61
  296. compass_api_sdk/models/pendlebuyptparams.py +0 -48
  297. compass_api_sdk/models/pendlebuyptrequest.py +0 -59
  298. compass_api_sdk/models/pendlebuyytparams.py +0 -48
  299. compass_api_sdk/models/pendlebuyytrequest.py +0 -59
  300. compass_api_sdk/models/pendlegetuserpositionresponse.py +0 -56
  301. compass_api_sdk/models/pendleremoveliquidityparams.py +0 -50
  302. compass_api_sdk/models/pendleremoveliquidityrequest.py +0 -61
  303. compass_api_sdk/models/pendlesellptparams.py +0 -48
  304. compass_api_sdk/models/pendlesellptrequest.py +0 -61
  305. compass_api_sdk/models/pendlesellytparams.py +0 -48
  306. compass_api_sdk/models/pendlesellytrequest.py +0 -61
  307. compass_api_sdk/models/sky_positionop.py +0 -31
  308. compass_api_sdk/models/token_addressop.py +0 -89
  309. compass_api_sdk/models/token_balanceop.py +0 -55
  310. compass_api_sdk/models/token_enum.py +0 -57
  311. compass_api_sdk/models/token_priceop.py +0 -89
  312. compass_api_sdk/models/tokenaddressresponse.py +0 -15
  313. compass_api_sdk/models/tokeninfo.py +0 -17
  314. compass_api_sdk/models/tokentransfererc20params.py +0 -63
  315. compass_api_sdk/models/txresponse.py +0 -27
  316. compass_api_sdk/models/uniswap_pool_priceop.py +0 -170
  317. compass_api_sdk/models/uniswap_quote_buy_exactlyop.py +0 -191
  318. compass_api_sdk/models/uniswap_quote_sell_exactlyop.py +0 -191
  319. compass_api_sdk/models/userposition.py +0 -16
  320. compass_api_sdk/models/vaultposition.py +0 -24
  321. compass_api_sdk-0.9.35.dist-info/METADATA +0 -558
  322. compass_api_sdk-0.9.35.dist-info/RECORD +0 -260
@@ -18,8 +18,9 @@ from typing_extensions import Annotated, NotRequired, TypedDict
18
18
 
19
19
 
20
20
  class MorphoRepayRequestChain(str, Enum):
21
- ETHEREUM_MAINNET = "ethereum:mainnet"
22
- BASE_MAINNET = "base:mainnet"
21
+ ARBITRUM = "arbitrum"
22
+ BASE = "base"
23
+ ETHEREUM = "ethereum"
23
24
 
24
25
 
25
26
  class MorphoRepayRequestTypedDict(TypedDict):
@@ -35,6 +36,8 @@ class MorphoRepayRequestTypedDict(TypedDict):
35
36
  r"""The address on behalf of whom the repayment is made. Defaults to sender."""
36
37
  callback_data: NotRequired[Nullable[bytes]]
37
38
  r"""An optional field for callback byte data that will be triggered upon successful repaying of debt."""
39
+ estimate_gas: NotRequired[bool]
40
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
38
41
 
39
42
 
40
43
  class MorphoRepayRequest(BaseModel):
@@ -63,9 +66,17 @@ class MorphoRepayRequest(BaseModel):
63
66
  callback_data: OptionalNullable[bytes] = UNSET
64
67
  r"""An optional field for callback byte data that will be triggered upon successful repaying of debt."""
65
68
 
69
+ estimate_gas: Optional[bool] = None
70
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
71
+
66
72
  @model_serializer(mode="wrap")
67
73
  def serialize_model(self, handler):
68
- optional_fields = ["action_type", "on_behalf_of", "callback_data"]
74
+ optional_fields = [
75
+ "action_type",
76
+ "on_behalf_of",
77
+ "callback_data",
78
+ "estimate_gas",
79
+ ]
69
80
  nullable_fields = ["on_behalf_of", "callback_data"]
70
81
  null_default_fields = []
71
82
 
@@ -30,8 +30,9 @@ r"""Amount of the token to supply to the market as collateral."""
30
30
 
31
31
 
32
32
  class MorphoSupplyCollateralRequestChain(str, Enum):
33
- ETHEREUM_MAINNET = "ethereum:mainnet"
34
- BASE_MAINNET = "base:mainnet"
33
+ ARBITRUM = "arbitrum"
34
+ BASE = "base"
35
+ ETHEREUM = "ethereum"
35
36
 
36
37
 
37
38
  class MorphoSupplyCollateralRequestTypedDict(TypedDict):
@@ -47,6 +48,8 @@ class MorphoSupplyCollateralRequestTypedDict(TypedDict):
47
48
  r"""The address on behalf of whom the supplied collateral is made. Defaults to sender."""
48
49
  callback_data: NotRequired[Nullable[bytes]]
49
50
  r"""An optional field for callback byte data that will be triggered upon successful supplying of collateral."""
51
+ estimate_gas: NotRequired[bool]
52
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
50
53
 
51
54
 
52
55
  class MorphoSupplyCollateralRequest(BaseModel):
@@ -75,9 +78,17 @@ class MorphoSupplyCollateralRequest(BaseModel):
75
78
  callback_data: OptionalNullable[bytes] = UNSET
76
79
  r"""An optional field for callback byte data that will be triggered upon successful supplying of collateral."""
77
80
 
81
+ estimate_gas: Optional[bool] = None
82
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
83
+
78
84
  @model_serializer(mode="wrap")
79
85
  def serialize_model(self, handler):
80
- optional_fields = ["action_type", "on_behalf_of", "callback_data"]
86
+ optional_fields = [
87
+ "action_type",
88
+ "on_behalf_of",
89
+ "callback_data",
90
+ "estimate_gas",
91
+ ]
81
92
  nullable_fields = ["on_behalf_of", "callback_data"]
82
93
  null_default_fields = []
83
94
 
@@ -2,13 +2,13 @@
2
2
 
3
3
  from __future__ import annotations
4
4
  from .chaininfo import ChainInfo, ChainInfoTypedDict
5
- from .compass_api_backend_models_morpho_read_response_get_vaults_asset import (
6
- CompassAPIBackendModelsMorphoReadResponseGetVaultsAsset,
7
- CompassAPIBackendModelsMorphoReadResponseGetVaultsAssetTypedDict,
5
+ from .compass_api_backend_v1_models_morpho_read_response_get_vaults_asset import (
6
+ CompassAPIBackendV1ModelsMorphoReadResponseGetVaultsAsset,
7
+ CompassAPIBackendV1ModelsMorphoReadResponseGetVaultsAssetTypedDict,
8
8
  )
9
- from .compass_api_backend_models_morpho_read_response_get_vaults_vaultstate import (
10
- CompassAPIBackendModelsMorphoReadResponseGetVaultsVaultState,
11
- CompassAPIBackendModelsMorphoReadResponseGetVaultsVaultStateTypedDict,
9
+ from .compass_api_backend_v1_models_morpho_read_response_get_vaults_vaultstate import (
10
+ CompassAPIBackendV1ModelsMorphoReadResponseGetVaultsVaultState,
11
+ CompassAPIBackendV1ModelsMorphoReadResponseGetVaultsVaultStateTypedDict,
12
12
  )
13
13
  from compass_api_sdk.types import BaseModel
14
14
  import pydantic
@@ -23,9 +23,9 @@ class MorphoVaultTypedDict(TypedDict):
23
23
  creation_timestamp: int
24
24
  creator_address: str
25
25
  whitelisted: bool
26
- asset: CompassAPIBackendModelsMorphoReadResponseGetVaultsAssetTypedDict
26
+ asset: CompassAPIBackendV1ModelsMorphoReadResponseGetVaultsAssetTypedDict
27
27
  chain: ChainInfoTypedDict
28
- state: CompassAPIBackendModelsMorphoReadResponseGetVaultsVaultStateTypedDict
28
+ state: CompassAPIBackendV1ModelsMorphoReadResponseGetVaultsVaultStateTypedDict
29
29
 
30
30
 
31
31
  class MorphoVault(BaseModel):
@@ -43,8 +43,8 @@ class MorphoVault(BaseModel):
43
43
 
44
44
  whitelisted: bool
45
45
 
46
- asset: CompassAPIBackendModelsMorphoReadResponseGetVaultsAsset
46
+ asset: CompassAPIBackendV1ModelsMorphoReadResponseGetVaultsAsset
47
47
 
48
48
  chain: ChainInfo
49
49
 
50
- state: CompassAPIBackendModelsMorphoReadResponseGetVaultsVaultState
50
+ state: CompassAPIBackendV1ModelsMorphoReadResponseGetVaultsVaultState
@@ -30,8 +30,9 @@ r"""Amount of the token to supply to the market as collateral."""
30
30
 
31
31
 
32
32
  class MorphoWithdrawCollateralRequestChain(str, Enum):
33
- ETHEREUM_MAINNET = "ethereum:mainnet"
34
- BASE_MAINNET = "base:mainnet"
33
+ ARBITRUM = "arbitrum"
34
+ BASE = "base"
35
+ ETHEREUM = "ethereum"
35
36
 
36
37
 
37
38
  class MorphoWithdrawCollateralRequestTypedDict(TypedDict):
@@ -47,6 +48,8 @@ class MorphoWithdrawCollateralRequestTypedDict(TypedDict):
47
48
  r"""The address on behalf of whom the withdraw is made. Defaults to sender."""
48
49
  receiver: NotRequired[Nullable[str]]
49
50
  r"""The address where the withdrawn collateral will be received. Defaults to sender."""
51
+ estimate_gas: NotRequired[bool]
52
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
50
53
 
51
54
 
52
55
  class MorphoWithdrawCollateralRequest(BaseModel):
@@ -75,9 +78,12 @@ class MorphoWithdrawCollateralRequest(BaseModel):
75
78
  receiver: OptionalNullable[str] = UNSET
76
79
  r"""The address where the withdrawn collateral will be received. Defaults to sender."""
77
80
 
81
+ estimate_gas: Optional[bool] = None
82
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
83
+
78
84
  @model_serializer(mode="wrap")
79
85
  def serialize_model(self, handler):
80
- optional_fields = ["action_type", "on_behalf_of", "receiver"]
86
+ optional_fields = ["action_type", "on_behalf_of", "receiver", "estimate_gas"]
81
87
  nullable_fields = ["on_behalf_of", "receiver"]
82
88
  null_default_fields = []
83
89
 
@@ -18,8 +18,9 @@ from typing_extensions import Annotated, NotRequired, TypedDict
18
18
 
19
19
 
20
20
  class MorphoWithdrawRequestChain(str, Enum):
21
- ETHEREUM_MAINNET = "ethereum:mainnet"
22
- BASE_MAINNET = "base:mainnet"
21
+ ARBITRUM = "arbitrum"
22
+ BASE = "base"
23
+ ETHEREUM = "ethereum"
23
24
 
24
25
 
25
26
  class MorphoWithdrawRequestTypedDict(TypedDict):
@@ -33,6 +34,8 @@ class MorphoWithdrawRequestTypedDict(TypedDict):
33
34
  action_type: Literal["MORPHO_WITHDRAW"]
34
35
  receiver: NotRequired[Nullable[str]]
35
36
  r"""The address which will receive the tokens withdrawn. Defaults to the sender."""
37
+ estimate_gas: NotRequired[bool]
38
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
36
39
 
37
40
 
38
41
  class MorphoWithdrawRequest(BaseModel):
@@ -58,9 +61,12 @@ class MorphoWithdrawRequest(BaseModel):
58
61
  receiver: OptionalNullable[str] = UNSET
59
62
  r"""The address which will receive the tokens withdrawn. Defaults to the sender."""
60
63
 
64
+ estimate_gas: Optional[bool] = None
65
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
66
+
61
67
  @model_serializer(mode="wrap")
62
68
  def serialize_model(self, handler):
63
- optional_fields = ["action_type", "receiver"]
69
+ optional_fields = ["action_type", "receiver", "estimate_gas"]
64
70
  nullable_fields = ["receiver"]
65
71
  null_default_fields = []
66
72
 
@@ -1,23 +1,78 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from compass_api_sdk.types import BaseModel
4
+ from compass_api_sdk.types import (
5
+ BaseModel,
6
+ Nullable,
7
+ OptionalNullable,
8
+ UNSET,
9
+ UNSET_SENTINEL,
10
+ )
5
11
  import pydantic
6
- from typing_extensions import Annotated, TypedDict
12
+ from pydantic import model_serializer
13
+ from typing_extensions import Annotated, NotRequired, TypedDict
7
14
 
8
15
 
9
16
  class Movement10PercentTypedDict(TypedDict):
10
- pt_movement_up_usd: float
11
- pt_movement_down_usd: float
12
- yt_movement_up_usd: float
13
- yt_movement_down_usd: float
17
+ pt_movement_up_usd: NotRequired[Nullable[float]]
18
+ pt_movement_down_usd: NotRequired[Nullable[float]]
19
+ yt_movement_up_usd: NotRequired[Nullable[float]]
20
+ yt_movement_down_usd: NotRequired[Nullable[float]]
14
21
 
15
22
 
16
23
  class Movement10Percent(BaseModel):
17
- pt_movement_up_usd: Annotated[float, pydantic.Field(alias="ptMovementUpUsd")]
24
+ pt_movement_up_usd: Annotated[
25
+ OptionalNullable[float], pydantic.Field(alias="ptMovementUpUsd")
26
+ ] = UNSET
18
27
 
19
- pt_movement_down_usd: Annotated[float, pydantic.Field(alias="ptMovementDownUsd")]
28
+ pt_movement_down_usd: Annotated[
29
+ OptionalNullable[float], pydantic.Field(alias="ptMovementDownUsd")
30
+ ] = UNSET
20
31
 
21
- yt_movement_up_usd: Annotated[float, pydantic.Field(alias="ytMovementUpUsd")]
32
+ yt_movement_up_usd: Annotated[
33
+ OptionalNullable[float], pydantic.Field(alias="ytMovementUpUsd")
34
+ ] = UNSET
22
35
 
23
- yt_movement_down_usd: Annotated[float, pydantic.Field(alias="ytMovementDownUsd")]
36
+ yt_movement_down_usd: Annotated[
37
+ OptionalNullable[float], pydantic.Field(alias="ytMovementDownUsd")
38
+ ] = UNSET
39
+
40
+ @model_serializer(mode="wrap")
41
+ def serialize_model(self, handler):
42
+ optional_fields = [
43
+ "ptMovementUpUsd",
44
+ "ptMovementDownUsd",
45
+ "ytMovementUpUsd",
46
+ "ytMovementDownUsd",
47
+ ]
48
+ nullable_fields = [
49
+ "ptMovementUpUsd",
50
+ "ptMovementDownUsd",
51
+ "ytMovementUpUsd",
52
+ "ytMovementDownUsd",
53
+ ]
54
+ null_default_fields = []
55
+
56
+ serialized = handler(self)
57
+
58
+ m = {}
59
+
60
+ for n, f in type(self).model_fields.items():
61
+ k = f.alias or n
62
+ val = serialized.get(k)
63
+ serialized.pop(k, None)
64
+
65
+ optional_nullable = k in optional_fields and k in nullable_fields
66
+ is_set = (
67
+ self.__pydantic_fields_set__.intersection({n})
68
+ or k in null_default_fields
69
+ ) # pylint: disable=no-member
70
+
71
+ if val is not None and val != UNSET_SENTINEL:
72
+ m[k] = val
73
+ elif val != UNSET_SENTINEL and (
74
+ not k in optional_fields or (optional_nullable and is_set)
75
+ ):
76
+ m[k] = val
77
+
78
+ return m
@@ -1,23 +1,26 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .chain import Chain
5
4
  from compass_api_sdk.types import BaseModel
5
+ from enum import Enum
6
6
  from typing_extensions import TypedDict
7
7
 
8
8
 
9
+ class MulticallAuthorizationRequestChain(str, Enum):
10
+ ARBITRUM = "arbitrum"
11
+ BASE = "base"
12
+ ETHEREUM = "ethereum"
13
+
14
+
9
15
  class MulticallAuthorizationRequestTypedDict(TypedDict):
10
16
  r"""Request model for getting a multicall authorization.
11
17
 
12
18
  This model is used to authorize a sender address to perform multicall operations,
13
19
  allowing it to call multiple functions on multiple contracts in a single
14
20
  transaction.
15
-
16
- Only needs to be done once per an EOA.
17
21
  """
18
22
 
19
- chain: Chain
20
- r"""The chain to use."""
23
+ chain: MulticallAuthorizationRequestChain
21
24
  sender: str
22
25
  r"""The Ethereum address to use for authorization"""
23
26
 
@@ -28,12 +31,9 @@ class MulticallAuthorizationRequest(BaseModel):
28
31
  This model is used to authorize a sender address to perform multicall operations,
29
32
  allowing it to call multiple functions on multiple contracts in a single
30
33
  transaction.
31
-
32
- Only needs to be done once per an EOA.
33
34
  """
34
35
 
35
- chain: Chain
36
- r"""The chain to use."""
36
+ chain: MulticallAuthorizationRequestChain
37
37
 
38
38
  sender: str
39
39
  r"""The Ethereum address to use for authorization"""
@@ -1,36 +1,84 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .chain import Chain
5
4
  from .signedauthorization import SignedAuthorization, SignedAuthorizationTypedDict
6
5
  from .useroperation import UserOperation, UserOperationTypedDict
7
- from compass_api_sdk.types import BaseModel
8
- from typing import List
9
- from typing_extensions import TypedDict
6
+ from compass_api_sdk.types import (
7
+ BaseModel,
8
+ Nullable,
9
+ OptionalNullable,
10
+ UNSET,
11
+ UNSET_SENTINEL,
12
+ )
13
+ from enum import Enum
14
+ from pydantic import model_serializer
15
+ from typing import List, Optional
16
+ from typing_extensions import NotRequired, TypedDict
17
+
18
+
19
+ class MulticallExecuteRequestChain(str, Enum):
20
+ ARBITRUM = "arbitrum"
21
+ BASE = "base"
22
+ ETHEREUM = "ethereum"
10
23
 
11
24
 
12
25
  class MulticallExecuteRequestTypedDict(TypedDict):
13
26
  r"""Request model for executing a multicall."""
14
27
 
15
- chain: Chain
16
- r"""The chain to use."""
28
+ chain: MulticallExecuteRequestChain
17
29
  sender: str
18
30
  r"""The address of the transaction sender."""
19
- signed_authorization: SignedAuthorizationTypedDict
20
31
  actions: List[UserOperationTypedDict]
21
32
  r"""List of possible actions for multicall"""
33
+ estimate_gas: NotRequired[bool]
34
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
35
+ signed_authorization: NotRequired[Nullable[SignedAuthorizationTypedDict]]
36
+ r"""EIP-7702 authorization"""
22
37
 
23
38
 
24
39
  class MulticallExecuteRequest(BaseModel):
25
40
  r"""Request model for executing a multicall."""
26
41
 
27
- chain: Chain
28
- r"""The chain to use."""
42
+ chain: MulticallExecuteRequestChain
29
43
 
30
44
  sender: str
31
45
  r"""The address of the transaction sender."""
32
46
 
33
- signed_authorization: SignedAuthorization
34
-
35
47
  actions: List[UserOperation]
36
48
  r"""List of possible actions for multicall"""
49
+
50
+ estimate_gas: Optional[bool] = None
51
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
52
+
53
+ signed_authorization: OptionalNullable[SignedAuthorization] = UNSET
54
+ r"""EIP-7702 authorization"""
55
+
56
+ @model_serializer(mode="wrap")
57
+ def serialize_model(self, handler):
58
+ optional_fields = ["estimate_gas", "signed_authorization"]
59
+ nullable_fields = ["signed_authorization"]
60
+ null_default_fields = []
61
+
62
+ serialized = handler(self)
63
+
64
+ m = {}
65
+
66
+ for n, f in type(self).model_fields.items():
67
+ k = f.alias or n
68
+ val = serialized.get(k)
69
+ serialized.pop(k, None)
70
+
71
+ optional_nullable = k in optional_fields and k in nullable_fields
72
+ is_set = (
73
+ self.__pydantic_fields_set__.intersection({n})
74
+ or k in null_default_fields
75
+ ) # pylint: disable=no-member
76
+
77
+ if val is not None and val != UNSET_SENTINEL:
78
+ m[k] = val
79
+ elif val != UNSET_SENTINEL and (
80
+ not k in optional_fields or (optional_nullable and is_set)
81
+ ):
82
+ m[k] = val
83
+
84
+ return m
@@ -0,0 +1,52 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from compass_api_sdk.types import BaseModel
5
+ from compass_api_sdk.utils import validate_const
6
+ import pydantic
7
+ from pydantic.functional_validators import AfterValidator
8
+ from typing import Literal, Optional, Union
9
+ from typing_extensions import Annotated, TypeAliasType, TypedDict
10
+
11
+
12
+ OdosSwapParamsAmountInTypedDict = TypeAliasType(
13
+ "OdosSwapParamsAmountInTypedDict", Union[float, str]
14
+ )
15
+ r"""The amount of token_in to be sold."""
16
+
17
+
18
+ OdosSwapParamsAmountIn = TypeAliasType("OdosSwapParamsAmountIn", Union[float, str])
19
+ r"""The amount of token_in to be sold."""
20
+
21
+
22
+ class OdosSwapParamsTypedDict(TypedDict):
23
+ token_in: str
24
+ r"""The symbol or address of the token that is to be sold."""
25
+ token_out: str
26
+ r"""The symbol or address of the token that is to be bought."""
27
+ amount_in: OdosSwapParamsAmountInTypedDict
28
+ r"""The amount of token_in to be sold."""
29
+ max_slippage_percent: float
30
+ r"""The maximum slippage allowed in percent. e.g. `1` means `1%` slippage allowed."""
31
+ action_type: Literal["ODOS_SWAP"]
32
+
33
+
34
+ class OdosSwapParams(BaseModel):
35
+ token_in: str
36
+ r"""The symbol or address of the token that is to be sold."""
37
+
38
+ token_out: str
39
+ r"""The symbol or address of the token that is to be bought."""
40
+
41
+ amount_in: OdosSwapParamsAmountIn
42
+ r"""The amount of token_in to be sold."""
43
+
44
+ max_slippage_percent: float
45
+ r"""The maximum slippage allowed in percent. e.g. `1` means `1%` slippage allowed."""
46
+
47
+ ACTION_TYPE: Annotated[
48
+ Annotated[
49
+ Optional[Literal["ODOS_SWAP"]], AfterValidator(validate_const("ODOS_SWAP"))
50
+ ],
51
+ pydantic.Field(alias="action_type"),
52
+ ] = "ODOS_SWAP"
@@ -0,0 +1,72 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from compass_api_sdk.types import BaseModel
5
+ from compass_api_sdk.utils import validate_const
6
+ from enum import Enum
7
+ import pydantic
8
+ from pydantic.functional_validators import AfterValidator
9
+ from typing import Literal, Optional, Union
10
+ from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
11
+
12
+
13
+ OdosSwapRequestAmountInTypedDict = TypeAliasType(
14
+ "OdosSwapRequestAmountInTypedDict", Union[float, str]
15
+ )
16
+ r"""The amount of token_in to be sold."""
17
+
18
+
19
+ OdosSwapRequestAmountIn = TypeAliasType("OdosSwapRequestAmountIn", Union[float, str])
20
+ r"""The amount of token_in to be sold."""
21
+
22
+
23
+ class OdosSwapRequestChain(str, Enum):
24
+ ARBITRUM = "arbitrum"
25
+ BASE = "base"
26
+ ETHEREUM = "ethereum"
27
+
28
+
29
+ class OdosSwapRequestTypedDict(TypedDict):
30
+ token_in: str
31
+ r"""The symbol or address of the token that is to be sold."""
32
+ token_out: str
33
+ r"""The symbol or address of the token that is to be bought."""
34
+ amount_in: OdosSwapRequestAmountInTypedDict
35
+ r"""The amount of token_in to be sold."""
36
+ max_slippage_percent: float
37
+ r"""The maximum slippage allowed in percent. e.g. `1` means `1%` slippage allowed."""
38
+ chain: OdosSwapRequestChain
39
+ sender: str
40
+ r"""The address of the transaction sender."""
41
+ action_type: Literal["ODOS_SWAP"]
42
+ estimate_gas: NotRequired[bool]
43
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
44
+
45
+
46
+ class OdosSwapRequest(BaseModel):
47
+ token_in: str
48
+ r"""The symbol or address of the token that is to be sold."""
49
+
50
+ token_out: str
51
+ r"""The symbol or address of the token that is to be bought."""
52
+
53
+ amount_in: OdosSwapRequestAmountIn
54
+ r"""The amount of token_in to be sold."""
55
+
56
+ max_slippage_percent: float
57
+ r"""The maximum slippage allowed in percent. e.g. `1` means `1%` slippage allowed."""
58
+
59
+ chain: OdosSwapRequestChain
60
+
61
+ sender: str
62
+ r"""The address of the transaction sender."""
63
+
64
+ ACTION_TYPE: Annotated[
65
+ Annotated[
66
+ Optional[Literal["ODOS_SWAP"]], AfterValidator(validate_const("ODOS_SWAP"))
67
+ ],
68
+ pydantic.Field(alias="action_type"),
69
+ ] = "ODOS_SWAP"
70
+
71
+ estimate_gas: Optional[bool] = None
72
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
@@ -0,0 +1,37 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from .unsignedtransaction import UnsignedTransaction, UnsignedTransactionTypedDict
5
+ from .useroperationresponse import UserOperationResponse, UserOperationResponseTypedDict
6
+ from compass_api_sdk.types import BaseModel
7
+ from typing import Union
8
+ from typing_extensions import TypeAliasType, TypedDict
9
+
10
+
11
+ OdosTransactionResponseTransactionTypedDict = TypeAliasType(
12
+ "OdosTransactionResponseTransactionTypedDict",
13
+ Union[UserOperationResponseTypedDict, UnsignedTransactionTypedDict],
14
+ )
15
+ r"""The unsigned transaction data. User must sign and broadcast to network."""
16
+
17
+
18
+ OdosTransactionResponseTransaction = TypeAliasType(
19
+ "OdosTransactionResponseTransaction",
20
+ Union[UserOperationResponse, UnsignedTransaction],
21
+ )
22
+ r"""The unsigned transaction data. User must sign and broadcast to network."""
23
+
24
+
25
+ class OdosTransactionResponseTypedDict(TypedDict):
26
+ transaction: OdosTransactionResponseTransactionTypedDict
27
+ r"""The unsigned transaction data. User must sign and broadcast to network."""
28
+ amount_out_quote: str
29
+ r"""The estimated amount out for the transaction. The actual output amount for this transaction is guaranteed be within the acceptable threshold, defined by the `max_slippage_percent`, relative to this quote."""
30
+
31
+
32
+ class OdosTransactionResponse(BaseModel):
33
+ transaction: OdosTransactionResponseTransaction
34
+ r"""The unsigned transaction data. User must sign and broadcast to network."""
35
+
36
+ amount_out_quote: str
37
+ r"""The estimated amount out for the transaction. The actual output amount for this transaction is guaranteed be within the acceptable threshold, defined by the `max_slippage_percent`, relative to this quote."""
@@ -0,0 +1,59 @@
1
+ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
+
3
+ from __future__ import annotations
4
+ from compass_api_sdk.types import BaseModel
5
+ from compass_api_sdk.utils import validate_const
6
+ import pydantic
7
+ from pydantic.functional_validators import AfterValidator
8
+ from typing import Literal, Optional, Union
9
+ from typing_extensions import Annotated, TypeAliasType, TypedDict
10
+
11
+
12
+ OneInchSwapParamsAmountInTypedDict = TypeAliasType(
13
+ "OneInchSwapParamsAmountInTypedDict", Union[float, str]
14
+ )
15
+ r"""The amount of token_in to be sold."""
16
+
17
+
18
+ OneInchSwapParamsAmountIn = TypeAliasType(
19
+ "OneInchSwapParamsAmountIn", Union[float, str]
20
+ )
21
+ r"""The amount of token_in to be sold."""
22
+
23
+
24
+ class OneInchSwapParamsTypedDict(TypedDict):
25
+ r"""Parameters for 1inch swap operations."""
26
+
27
+ token_in: str
28
+ r"""The symbol or address of the token that is to be sold."""
29
+ token_out: str
30
+ r"""The symbol or address of the token that is to be bought."""
31
+ amount_in: OneInchSwapParamsAmountInTypedDict
32
+ r"""The amount of token_in to be sold."""
33
+ max_slippage_percent: float
34
+ r"""The maximum slippage allowed in percent. e.g. `1` means `1%` slippage allowed."""
35
+ action_type: Literal["ONE_INCH_SWAP"]
36
+
37
+
38
+ class OneInchSwapParams(BaseModel):
39
+ r"""Parameters for 1inch swap operations."""
40
+
41
+ token_in: str
42
+ r"""The symbol or address of the token that is to be sold."""
43
+
44
+ token_out: str
45
+ r"""The symbol or address of the token that is to be bought."""
46
+
47
+ amount_in: OneInchSwapParamsAmountIn
48
+ r"""The amount of token_in to be sold."""
49
+
50
+ max_slippage_percent: float
51
+ r"""The maximum slippage allowed in percent. e.g. `1` means `1%` slippage allowed."""
52
+
53
+ ACTION_TYPE: Annotated[
54
+ Annotated[
55
+ Optional[Literal["ONE_INCH_SWAP"]],
56
+ AfterValidator(validate_const("ONE_INCH_SWAP")),
57
+ ],
58
+ pydantic.Field(alias="action_type"),
59
+ ] = "ONE_INCH_SWAP"