compass_api_sdk 1.1.2__py3-none-any.whl → 1.1.3rc1__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.

Potentially problematic release.


This version of compass_api_sdk might be problematic. Click here for more details.

Files changed (106) hide show
  1. compass_api_sdk/_version.py +3 -3
  2. compass_api_sdk/aave_v3.py +68 -44
  3. compass_api_sdk/aerodrome_slipstream.py +62 -32
  4. compass_api_sdk/erc_4626_vaults.py +12 -0
  5. compass_api_sdk/ethena.py +18 -0
  6. compass_api_sdk/models/__init__.py +0 -254
  7. compass_api_sdk/models/aaveborrowparams.py +4 -13
  8. compass_api_sdk/models/aaveborrowrequest.py +10 -14
  9. compass_api_sdk/models/aavelooprequest.py +18 -26
  10. compass_api_sdk/models/aaverepayparams.py +4 -13
  11. compass_api_sdk/models/aaverepayrequest.py +10 -14
  12. compass_api_sdk/models/aavesupplyparams.py +4 -13
  13. compass_api_sdk/models/aavesupplyrequest.py +10 -14
  14. compass_api_sdk/models/aavewithdrawparams.py +4 -13
  15. compass_api_sdk/models/aavewithdrawrequest.py +10 -14
  16. compass_api_sdk/models/aerodromeposition.py +4 -25
  17. compass_api_sdk/models/aerodromeslipstreambuyexactlyparams.py +8 -25
  18. compass_api_sdk/models/aerodromeslipstreambuyexactlyrequest.py +14 -26
  19. compass_api_sdk/models/aerodromeslipstreamincreaseliquidityprovisionrequest.py +6 -1
  20. compass_api_sdk/models/aerodromeslipstreammintliquidityprovisionparams.py +8 -25
  21. compass_api_sdk/models/aerodromeslipstreammintliquidityprovisionrequest.py +14 -26
  22. compass_api_sdk/models/aerodromeslipstreampoolpriceresponse.py +8 -25
  23. compass_api_sdk/models/aerodromeslipstreamsellexactlyparams.py +8 -25
  24. compass_api_sdk/models/aerodromeslipstreamsellexactlyrequest.py +13 -25
  25. compass_api_sdk/models/aerodromeslipstreamwithdrawliquidityprovisionrequest.py +6 -1
  26. compass_api_sdk/models/batcheduseroperationsrequest.py +15 -4
  27. compass_api_sdk/models/compass_api_backend_models_generic_read_response_portfolio_tokenbalance.py +4 -13
  28. compass_api_sdk/models/ethenadepositrequest.py +6 -1
  29. compass_api_sdk/models/ethenarequesttowithdrawrequest.py +6 -1
  30. compass_api_sdk/models/ethenaunstakerequest.py +6 -1
  31. compass_api_sdk/models/morphoborrowrequest.py +6 -1
  32. compass_api_sdk/models/morphodepositrequest.py +6 -1
  33. compass_api_sdk/models/morphorepayrequest.py +11 -1
  34. compass_api_sdk/models/morphosupplycollateralrequest.py +11 -1
  35. compass_api_sdk/models/morphowithdrawcollateralrequest.py +6 -1
  36. compass_api_sdk/models/morphowithdrawrequest.py +6 -1
  37. compass_api_sdk/models/multicallexecuterequest.py +7 -2
  38. compass_api_sdk/models/odosswapparams.py +4 -25
  39. compass_api_sdk/models/odosswaprequest.py +10 -28
  40. compass_api_sdk/models/pendlemanageliquidityparams.py +2 -15
  41. compass_api_sdk/models/pendlemanageliquidityrequest.py +8 -16
  42. compass_api_sdk/models/pendleredeemyieldrequest.py +6 -1
  43. compass_api_sdk/models/pendletradeptparams.py +2 -15
  44. compass_api_sdk/models/pendletradeptrequest.py +8 -16
  45. compass_api_sdk/models/pendletradeytparams.py +2 -15
  46. compass_api_sdk/models/pendletradeytrequest.py +8 -16
  47. compass_api_sdk/models/reserve.py +6 -15
  48. compass_api_sdk/models/setallowanceparams.py +2 -15
  49. compass_api_sdk/models/setallowancerequest.py +8 -16
  50. compass_api_sdk/models/skybuyrequest.py +6 -1
  51. compass_api_sdk/models/skydepositrequest.py +6 -1
  52. compass_api_sdk/models/skysellrequest.py +7 -2
  53. compass_api_sdk/models/skywithdrawrequest.py +6 -1
  54. compass_api_sdk/models/tokenbalanceresponse.py +5 -15
  55. compass_api_sdk/models/tokentransferparams.py +2 -15
  56. compass_api_sdk/models/tokentransferrequest.py +8 -16
  57. compass_api_sdk/models/uniswapbuyexactlyparams.py +8 -33
  58. compass_api_sdk/models/uniswapbuyexactlyrequest.py +14 -34
  59. compass_api_sdk/models/uniswapincreaseliquidityprovisionrequest.py +6 -1
  60. compass_api_sdk/models/uniswapmintliquidityprovisionparams.py +8 -25
  61. compass_api_sdk/models/uniswapmintliquidityprovisionrequest.py +14 -26
  62. compass_api_sdk/models/uniswappoolpriceresponse.py +8 -25
  63. compass_api_sdk/models/uniswapsellexactlyparams.py +4 -29
  64. compass_api_sdk/models/uniswapsellexactlyrequest.py +10 -30
  65. compass_api_sdk/models/uniswapwithdrawliquidityprovisionrequest.py +6 -1
  66. compass_api_sdk/models/unsignedmulticalltransaction.py +34 -3
  67. compass_api_sdk/models/unsignedtransaction.py +34 -3
  68. compass_api_sdk/models/unwrapwethrequest.py +6 -1
  69. compass_api_sdk/models/v1_aave_avg_rateop.py +5 -83
  70. compass_api_sdk/models/v1_aave_liquidity_changeop.py +5 -83
  71. compass_api_sdk/models/v1_aave_rateop.py +5 -83
  72. compass_api_sdk/models/v1_aave_reserve_overviewop.py +5 -83
  73. compass_api_sdk/models/v1_aave_std_rateop.py +5 -83
  74. compass_api_sdk/models/v1_aave_token_priceop.py +5 -83
  75. compass_api_sdk/models/v1_aave_user_position_per_tokenop.py +5 -83
  76. compass_api_sdk/models/v1_aerodrome_slipstream_pool_priceop.py +10 -166
  77. compass_api_sdk/models/v1_generic_allowanceop.py +7 -21
  78. compass_api_sdk/models/v1_morpho_marketsop.py +9 -29
  79. compass_api_sdk/models/v1_morpho_vaultsop.py +5 -15
  80. compass_api_sdk/models/v1_sky_positionop.py +4 -5
  81. compass_api_sdk/models/v1_token_balanceop.py +10 -23
  82. compass_api_sdk/models/v1_token_priceop.py +7 -8
  83. compass_api_sdk/models/v1_uniswap_pool_priceop.py +10 -166
  84. compass_api_sdk/models/v1_uniswap_quote_buy_exactlyop.py +10 -166
  85. compass_api_sdk/models/v1_uniswap_quote_sell_exactlyop.py +10 -166
  86. compass_api_sdk/models/vaultdepositrequest.py +6 -1
  87. compass_api_sdk/models/vaultwithdrawrequest.py +6 -1
  88. compass_api_sdk/models/wrapethrequest.py +6 -1
  89. compass_api_sdk/morpho.py +48 -24
  90. compass_api_sdk/pendle.py +30 -20
  91. compass_api_sdk/sdk.py +3 -3
  92. compass_api_sdk/sky.py +38 -16
  93. compass_api_sdk/smart_account.py +6 -0
  94. compass_api_sdk/swap.py +10 -12
  95. compass_api_sdk/{token_sdk.py → token.py} +19 -197
  96. compass_api_sdk/transaction_bundler.py +20 -8
  97. compass_api_sdk/uniswap_v3.py +74 -68
  98. compass_api_sdk/universal.py +24 -188
  99. {compass_api_sdk-1.1.2.dist-info → compass_api_sdk-1.1.3rc1.dist-info}/METADATA +5 -7
  100. {compass_api_sdk-1.1.2.dist-info → compass_api_sdk-1.1.3rc1.dist-info}/RECORD +101 -106
  101. compass_api_sdk/models/token_enum.py +0 -81
  102. compass_api_sdk/models/tokenaddressresponse.py +0 -15
  103. compass_api_sdk/models/tokeninfo.py +0 -17
  104. compass_api_sdk/models/v1_generic_supported_tokensop.py +0 -24
  105. compass_api_sdk/models/v1_token_addressop.py +0 -109
  106. {compass_api_sdk-1.1.2.dist-info → compass_api_sdk-1.1.3rc1.dist-info}/WHEEL +0 -0
@@ -8,192 +8,12 @@ from compass_api_sdk.utils.unmarshal_json_response import unmarshal_json_respons
8
8
  from typing import Any, Mapping, Optional, Union
9
9
 
10
10
 
11
- class TokenSDK(BaseSDK):
12
- def token_address(
13
- self,
14
- *,
15
- chain: models.V1TokenAddressChain = models.V1TokenAddressChain.ARBITRUM,
16
- token: models.V1TokenAddressToken = models.V1TokenAddressToken.WETH,
17
- retries: OptionalNullable[utils.RetryConfig] = UNSET,
18
- server_url: Optional[str] = None,
19
- timeout_ms: Optional[int] = None,
20
- http_headers: Optional[Mapping[str, str]] = None,
21
- ) -> models.TokenAddressResponse:
22
- r"""Token Address
23
-
24
- This endpoint retrieves the address for a token supported by us.
25
-
26
- :param chain:
27
- :param token: The token symbol to get the address for..
28
- :param retries: Override the default retry configuration for this method
29
- :param server_url: Override the default server URL for this method
30
- :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
31
- :param http_headers: Additional headers to set or replace on requests.
32
- """
33
- base_url = None
34
- url_variables = None
35
- if timeout_ms is None:
36
- timeout_ms = self.sdk_configuration.timeout_ms
37
-
38
- if server_url is not None:
39
- base_url = server_url
40
- else:
41
- base_url = self._get_url(base_url, url_variables)
42
-
43
- request = models.V1TokenAddressRequest(
44
- chain=chain,
45
- token=token,
46
- )
47
-
48
- req = self._build_request(
49
- method="GET",
50
- path="/v1/token/address",
51
- base_url=base_url,
52
- url_variables=url_variables,
53
- request=request,
54
- request_body_required=False,
55
- request_has_path_params=False,
56
- request_has_query_params=True,
57
- user_agent_header="user-agent",
58
- accept_header_value="application/json",
59
- http_headers=http_headers,
60
- security=self.sdk_configuration.security,
61
- timeout_ms=timeout_ms,
62
- )
63
-
64
- if retries == UNSET:
65
- if self.sdk_configuration.retry_config is not UNSET:
66
- retries = self.sdk_configuration.retry_config
67
-
68
- retry_config = None
69
- if isinstance(retries, utils.RetryConfig):
70
- retry_config = (retries, ["429", "500", "502", "503", "504"])
71
-
72
- http_res = self.do_request(
73
- hook_ctx=HookContext(
74
- config=self.sdk_configuration,
75
- base_url=base_url or "",
76
- operation_id="v1_token_address",
77
- oauth2_scopes=[],
78
- security_source=self.sdk_configuration.security,
79
- ),
80
- request=req,
81
- error_status_codes=["422", "4XX", "5XX"],
82
- retry_config=retry_config,
83
- )
84
-
85
- response_data: Any = None
86
- if utils.match_response(http_res, "200", "application/json"):
87
- return unmarshal_json_response(models.TokenAddressResponse, http_res)
88
- if utils.match_response(http_res, "422", "application/json"):
89
- response_data = unmarshal_json_response(
90
- errors.HTTPValidationErrorData, http_res
91
- )
92
- raise errors.HTTPValidationError(response_data, http_res)
93
- if utils.match_response(http_res, "4XX", "*"):
94
- http_res_text = utils.stream_to_text(http_res)
95
- raise errors.APIError("API error occurred", http_res, http_res_text)
96
- if utils.match_response(http_res, "5XX", "*"):
97
- http_res_text = utils.stream_to_text(http_res)
98
- raise errors.APIError("API error occurred", http_res, http_res_text)
99
-
100
- raise errors.APIError("Unexpected response received", http_res)
101
-
102
- async def token_address_async(
103
- self,
104
- *,
105
- chain: models.V1TokenAddressChain = models.V1TokenAddressChain.ARBITRUM,
106
- token: models.V1TokenAddressToken = models.V1TokenAddressToken.WETH,
107
- retries: OptionalNullable[utils.RetryConfig] = UNSET,
108
- server_url: Optional[str] = None,
109
- timeout_ms: Optional[int] = None,
110
- http_headers: Optional[Mapping[str, str]] = None,
111
- ) -> models.TokenAddressResponse:
112
- r"""Token Address
113
-
114
- This endpoint retrieves the address for a token supported by us.
115
-
116
- :param chain:
117
- :param token: The token symbol to get the address for..
118
- :param retries: Override the default retry configuration for this method
119
- :param server_url: Override the default server URL for this method
120
- :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
121
- :param http_headers: Additional headers to set or replace on requests.
122
- """
123
- base_url = None
124
- url_variables = None
125
- if timeout_ms is None:
126
- timeout_ms = self.sdk_configuration.timeout_ms
127
-
128
- if server_url is not None:
129
- base_url = server_url
130
- else:
131
- base_url = self._get_url(base_url, url_variables)
132
-
133
- request = models.V1TokenAddressRequest(
134
- chain=chain,
135
- token=token,
136
- )
137
-
138
- req = self._build_request_async(
139
- method="GET",
140
- path="/v1/token/address",
141
- base_url=base_url,
142
- url_variables=url_variables,
143
- request=request,
144
- request_body_required=False,
145
- request_has_path_params=False,
146
- request_has_query_params=True,
147
- user_agent_header="user-agent",
148
- accept_header_value="application/json",
149
- http_headers=http_headers,
150
- security=self.sdk_configuration.security,
151
- timeout_ms=timeout_ms,
152
- )
153
-
154
- if retries == UNSET:
155
- if self.sdk_configuration.retry_config is not UNSET:
156
- retries = self.sdk_configuration.retry_config
157
-
158
- retry_config = None
159
- if isinstance(retries, utils.RetryConfig):
160
- retry_config = (retries, ["429", "500", "502", "503", "504"])
161
-
162
- http_res = await self.do_request_async(
163
- hook_ctx=HookContext(
164
- config=self.sdk_configuration,
165
- base_url=base_url or "",
166
- operation_id="v1_token_address",
167
- oauth2_scopes=[],
168
- security_source=self.sdk_configuration.security,
169
- ),
170
- request=req,
171
- error_status_codes=["422", "4XX", "5XX"],
172
- retry_config=retry_config,
173
- )
174
-
175
- response_data: Any = None
176
- if utils.match_response(http_res, "200", "application/json"):
177
- return unmarshal_json_response(models.TokenAddressResponse, http_res)
178
- if utils.match_response(http_res, "422", "application/json"):
179
- response_data = unmarshal_json_response(
180
- errors.HTTPValidationErrorData, http_res
181
- )
182
- raise errors.HTTPValidationError(response_data, http_res)
183
- if utils.match_response(http_res, "4XX", "*"):
184
- http_res_text = await utils.stream_to_text_async(http_res)
185
- raise errors.APIError("API error occurred", http_res, http_res_text)
186
- if utils.match_response(http_res, "5XX", "*"):
187
- http_res_text = await utils.stream_to_text_async(http_res)
188
- raise errors.APIError("API error occurred", http_res, http_res_text)
189
-
190
- raise errors.APIError("Unexpected response received", http_res)
191
-
11
+ class Token(BaseSDK):
192
12
  def token_price(
193
13
  self,
194
14
  *,
195
15
  chain: models.V1TokenPriceChain = models.V1TokenPriceChain.ETHEREUM,
196
- token: Any,
16
+ token: str = "AAVE",
197
17
  block: OptionalNullable[int] = UNSET,
198
18
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
199
19
  server_url: Optional[str] = None,
@@ -209,7 +29,7 @@ class TokenSDK(BaseSDK):
209
29
  with the update frequency of the oracle.
210
30
 
211
31
  :param chain:
212
- :param token: The symbol or address of the token for which to get the price.
32
+ :param token: The symbol or address of the token for which to get the price..
213
33
  :param block: Optional block number (defaults to latest).
214
34
  :param retries: Override the default retry configuration for this method
215
35
  :param server_url: Override the default server URL for this method
@@ -290,7 +110,7 @@ class TokenSDK(BaseSDK):
290
110
  self,
291
111
  *,
292
112
  chain: models.V1TokenPriceChain = models.V1TokenPriceChain.ETHEREUM,
293
- token: Any,
113
+ token: str = "AAVE",
294
114
  block: OptionalNullable[int] = UNSET,
295
115
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
296
116
  server_url: Optional[str] = None,
@@ -306,7 +126,7 @@ class TokenSDK(BaseSDK):
306
126
  with the update frequency of the oracle.
307
127
 
308
128
  :param chain:
309
- :param token: The symbol or address of the token for which to get the price.
129
+ :param token: The symbol or address of the token for which to get the price..
310
130
  :param block: Optional block number (defaults to latest).
311
131
  :param retries: Override the default retry configuration for this method
312
132
  :param server_url: Override the default server URL for this method
@@ -388,7 +208,7 @@ class TokenSDK(BaseSDK):
388
208
  *,
389
209
  chain: models.V1TokenBalanceChain = models.V1TokenBalanceChain.ARBITRUM,
390
210
  user: str = "0x29F20a192328eF1aD35e1564aBFf4Be9C5ce5f7B",
391
- token: Union[models.V1TokenBalanceToken, models.V1TokenBalanceTokenTypedDict],
211
+ token: str = "USDC",
392
212
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
393
213
  server_url: Optional[str] = None,
394
214
  timeout_ms: Optional[int] = None,
@@ -399,8 +219,8 @@ class TokenSDK(BaseSDK):
399
219
  Returns the balance of a specific ERC20 token for a given user address.
400
220
 
401
221
  :param chain:
402
- :param user: The user to get the ERC20 balance of.
403
- :param token: The symbol of the token for which the balance is checked..
222
+ :param user: The user to get the token balance of.
223
+ :param token: The symbol or address of the token for which the balance is checked.
404
224
  :param retries: Override the default retry configuration for this method
405
225
  :param server_url: Override the default server URL for this method
406
226
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -481,7 +301,7 @@ class TokenSDK(BaseSDK):
481
301
  *,
482
302
  chain: models.V1TokenBalanceChain = models.V1TokenBalanceChain.ARBITRUM,
483
303
  user: str = "0x29F20a192328eF1aD35e1564aBFf4Be9C5ce5f7B",
484
- token: Union[models.V1TokenBalanceToken, models.V1TokenBalanceTokenTypedDict],
304
+ token: str = "USDC",
485
305
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
486
306
  server_url: Optional[str] = None,
487
307
  timeout_ms: Optional[int] = None,
@@ -492,8 +312,8 @@ class TokenSDK(BaseSDK):
492
312
  Returns the balance of a specific ERC20 token for a given user address.
493
313
 
494
314
  :param chain:
495
- :param user: The user to get the ERC20 balance of.
496
- :param token: The symbol of the token for which the balance is checked..
315
+ :param user: The user to get the token balance of.
316
+ :param token: The symbol or address of the token for which the balance is checked.
497
317
  :param retries: Override the default retry configuration for this method
498
318
  :param server_url: Override the default server URL for this method
499
319
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -573,15 +393,14 @@ class TokenSDK(BaseSDK):
573
393
  self,
574
394
  *,
575
395
  to: str,
576
- token: Union[
577
- models.TokenTransferRequestToken, models.TokenTransferRequestTokenTypedDict
578
- ],
396
+ token: str,
579
397
  amount: Union[
580
398
  models.TokenTransferRequestAmount,
581
399
  models.TokenTransferRequestAmountTypedDict,
582
400
  ],
583
401
  chain: models.TokenTransferRequestChain,
584
402
  sender: str,
403
+ estimate_gas: Optional[bool] = True,
585
404
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
586
405
  server_url: Optional[str] = None,
587
406
  timeout_ms: Optional[int] = None,
@@ -596,6 +415,7 @@ class TokenSDK(BaseSDK):
596
415
  :param amount: Amount of token to transfer
597
416
  :param chain:
598
417
  :param sender: The address of the transaction sender.
418
+ :param estimate_gas: Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed.
599
419
  :param retries: Override the default retry configuration for this method
600
420
  :param server_url: Override the default server URL for this method
601
421
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -617,6 +437,7 @@ class TokenSDK(BaseSDK):
617
437
  amount=amount,
618
438
  chain=chain,
619
439
  sender=sender,
440
+ estimate_gas=estimate_gas,
620
441
  )
621
442
 
622
443
  req = self._build_request(
@@ -680,15 +501,14 @@ class TokenSDK(BaseSDK):
680
501
  self,
681
502
  *,
682
503
  to: str,
683
- token: Union[
684
- models.TokenTransferRequestToken, models.TokenTransferRequestTokenTypedDict
685
- ],
504
+ token: str,
686
505
  amount: Union[
687
506
  models.TokenTransferRequestAmount,
688
507
  models.TokenTransferRequestAmountTypedDict,
689
508
  ],
690
509
  chain: models.TokenTransferRequestChain,
691
510
  sender: str,
511
+ estimate_gas: Optional[bool] = True,
692
512
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
693
513
  server_url: Optional[str] = None,
694
514
  timeout_ms: Optional[int] = None,
@@ -703,6 +523,7 @@ class TokenSDK(BaseSDK):
703
523
  :param amount: Amount of token to transfer
704
524
  :param chain:
705
525
  :param sender: The address of the transaction sender.
526
+ :param estimate_gas: Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed.
706
527
  :param retries: Override the default retry configuration for this method
707
528
  :param server_url: Override the default server URL for this method
708
529
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -724,6 +545,7 @@ class TokenSDK(BaseSDK):
724
545
  amount=amount,
725
546
  chain=chain,
726
547
  sender=sender,
548
+ estimate_gas=estimate_gas,
727
549
  )
728
550
 
729
551
  req = self._build_request_async(
@@ -215,6 +215,7 @@ class TransactionBundler(BaseSDK):
215
215
  chain: models.MulticallExecuteRequestChain,
216
216
  sender: str,
217
217
  actions: Union[List[models.UserOperation], List[models.UserOperationTypedDict]],
218
+ estimate_gas: Optional[bool] = True,
218
219
  signed_authorization: OptionalNullable[
219
220
  Union[models.SignedAuthorization, models.SignedAuthorizationTypedDict]
220
221
  ] = UNSET,
@@ -236,6 +237,7 @@ class TransactionBundler(BaseSDK):
236
237
  :param chain:
237
238
  :param sender: The address of the transaction sender.
238
239
  :param actions: List of possible actions for multicall
240
+ :param estimate_gas: Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed.
239
241
  :param signed_authorization: EIP-7702 authorization
240
242
  :param retries: Override the default retry configuration for this method
241
243
  :param server_url: Override the default server URL for this method
@@ -255,6 +257,7 @@ class TransactionBundler(BaseSDK):
255
257
  request = models.MulticallExecuteRequest(
256
258
  chain=chain,
257
259
  sender=sender,
260
+ estimate_gas=estimate_gas,
258
261
  signed_authorization=utils.get_pydantic_model(
259
262
  signed_authorization, OptionalNullable[models.SignedAuthorization]
260
263
  ),
@@ -324,6 +327,7 @@ class TransactionBundler(BaseSDK):
324
327
  chain: models.MulticallExecuteRequestChain,
325
328
  sender: str,
326
329
  actions: Union[List[models.UserOperation], List[models.UserOperationTypedDict]],
330
+ estimate_gas: Optional[bool] = True,
327
331
  signed_authorization: OptionalNullable[
328
332
  Union[models.SignedAuthorization, models.SignedAuthorizationTypedDict]
329
333
  ] = UNSET,
@@ -345,6 +349,7 @@ class TransactionBundler(BaseSDK):
345
349
  :param chain:
346
350
  :param sender: The address of the transaction sender.
347
351
  :param actions: List of possible actions for multicall
352
+ :param estimate_gas: Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed.
348
353
  :param signed_authorization: EIP-7702 authorization
349
354
  :param retries: Override the default retry configuration for this method
350
355
  :param server_url: Override the default server URL for this method
@@ -364,6 +369,7 @@ class TransactionBundler(BaseSDK):
364
369
  request = models.MulticallExecuteRequest(
365
370
  chain=chain,
366
371
  sender=sender,
372
+ estimate_gas=estimate_gas,
367
373
  signed_authorization=utils.get_pydantic_model(
368
374
  signed_authorization, OptionalNullable[models.SignedAuthorization]
369
375
  ),
@@ -432,8 +438,8 @@ class TransactionBundler(BaseSDK):
432
438
  *,
433
439
  chain: models.AaveLoopRequestChain,
434
440
  sender: str,
435
- collateral_token: models.TokenEnum,
436
- borrow_token: models.TokenEnum,
441
+ collateral_token: str,
442
+ borrow_token: str,
437
443
  initial_collateral_amount: Union[
438
444
  models.InitialCollateralAmount, models.InitialCollateralAmountTypedDict
439
445
  ],
@@ -442,6 +448,7 @@ class TransactionBundler(BaseSDK):
442
448
  models.MaxSlippagePercent, models.MaxSlippagePercentTypedDict
443
449
  ],
444
450
  loan_to_value: Union[models.LoanToValue, models.LoanToValueTypedDict],
451
+ estimate_gas: Optional[bool] = True,
445
452
  signed_authorization: OptionalNullable[
446
453
  Union[models.SignedAuthorization, models.SignedAuthorizationTypedDict]
447
454
  ] = UNSET,
@@ -467,12 +474,13 @@ class TransactionBundler(BaseSDK):
467
474
 
468
475
  :param chain:
469
476
  :param sender: The address of the transaction sender.
470
- :param collateral_token: A class representing the token. This class is used to represent the token in the system. Notice individual endpoints' documentation where per chain tokens are presented.
471
- :param borrow_token: A class representing the token. This class is used to represent the token in the system. Notice individual endpoints' documentation where per chain tokens are presented.
477
+ :param collateral_token: Symbol or address of token to supply to Aave..
478
+ :param borrow_token: Symbol or address of token to borrow from Aave..
472
479
  :param initial_collateral_amount: Amount of collateral token to supply to Aave
473
480
  :param multiplier: Leverage multiplier. Total loop collateral will be calculated as `multiplier` x `initial_collateral_amount`
474
481
  :param max_slippage_percent: Maximum allowed slippage for token swaps in percentage
475
482
  :param loan_to_value: Loan To Value percentage of the loop
483
+ :param estimate_gas: Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed.
476
484
  :param signed_authorization: EIP-7702 authorization. Required when `is_account_abstraction` is False.
477
485
  :param is_account_abstraction: Whether to use account abstraction for the transaction.
478
486
  :param retries: Override the default retry configuration for this method
@@ -493,6 +501,7 @@ class TransactionBundler(BaseSDK):
493
501
  request = models.AaveLoopRequest(
494
502
  chain=chain,
495
503
  sender=sender,
504
+ estimate_gas=estimate_gas,
496
505
  signed_authorization=utils.get_pydantic_model(
497
506
  signed_authorization, OptionalNullable[models.SignedAuthorization]
498
507
  ),
@@ -569,8 +578,8 @@ class TransactionBundler(BaseSDK):
569
578
  *,
570
579
  chain: models.AaveLoopRequestChain,
571
580
  sender: str,
572
- collateral_token: models.TokenEnum,
573
- borrow_token: models.TokenEnum,
581
+ collateral_token: str,
582
+ borrow_token: str,
574
583
  initial_collateral_amount: Union[
575
584
  models.InitialCollateralAmount, models.InitialCollateralAmountTypedDict
576
585
  ],
@@ -579,6 +588,7 @@ class TransactionBundler(BaseSDK):
579
588
  models.MaxSlippagePercent, models.MaxSlippagePercentTypedDict
580
589
  ],
581
590
  loan_to_value: Union[models.LoanToValue, models.LoanToValueTypedDict],
591
+ estimate_gas: Optional[bool] = True,
582
592
  signed_authorization: OptionalNullable[
583
593
  Union[models.SignedAuthorization, models.SignedAuthorizationTypedDict]
584
594
  ] = UNSET,
@@ -604,12 +614,13 @@ class TransactionBundler(BaseSDK):
604
614
 
605
615
  :param chain:
606
616
  :param sender: The address of the transaction sender.
607
- :param collateral_token: A class representing the token. This class is used to represent the token in the system. Notice individual endpoints' documentation where per chain tokens are presented.
608
- :param borrow_token: A class representing the token. This class is used to represent the token in the system. Notice individual endpoints' documentation where per chain tokens are presented.
617
+ :param collateral_token: Symbol or address of token to supply to Aave..
618
+ :param borrow_token: Symbol or address of token to borrow from Aave..
609
619
  :param initial_collateral_amount: Amount of collateral token to supply to Aave
610
620
  :param multiplier: Leverage multiplier. Total loop collateral will be calculated as `multiplier` x `initial_collateral_amount`
611
621
  :param max_slippage_percent: Maximum allowed slippage for token swaps in percentage
612
622
  :param loan_to_value: Loan To Value percentage of the loop
623
+ :param estimate_gas: Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed.
613
624
  :param signed_authorization: EIP-7702 authorization. Required when `is_account_abstraction` is False.
614
625
  :param is_account_abstraction: Whether to use account abstraction for the transaction.
615
626
  :param retries: Override the default retry configuration for this method
@@ -630,6 +641,7 @@ class TransactionBundler(BaseSDK):
630
641
  request = models.AaveLoopRequest(
631
642
  chain=chain,
632
643
  sender=sender,
644
+ estimate_gas=estimate_gas,
633
645
  signed_authorization=utils.get_pydantic_model(
634
646
  signed_authorization, OptionalNullable[models.SignedAuthorization]
635
647
  ),