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
@@ -7,7 +7,7 @@ from enum import Enum
7
7
  import pydantic
8
8
  from pydantic.functional_validators import AfterValidator
9
9
  from typing import Literal, Optional, Union
10
- from typing_extensions import Annotated, TypeAliasType, TypedDict
10
+ from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
11
11
 
12
12
 
13
13
  AerodromeSlipstreamIncreaseLiquidityProvisionRequestAmount0DesiredTypedDict = (
@@ -91,6 +91,8 @@ class AerodromeSlipstreamIncreaseLiquidityProvisionRequestTypedDict(TypedDict):
91
91
  sender: str
92
92
  r"""The address of the transaction sender."""
93
93
  action_type: Literal["AERODROME_SLIPSTREAM_INCREASE_LIQUIDITY_PROVISION"]
94
+ estimate_gas: NotRequired[bool]
95
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
94
96
 
95
97
 
96
98
  class AerodromeSlipstreamIncreaseLiquidityProvisionRequest(BaseModel):
@@ -123,3 +125,6 @@ class AerodromeSlipstreamIncreaseLiquidityProvisionRequest(BaseModel):
123
125
  ],
124
126
  pydantic.Field(alias="action_type"),
125
127
  ] = "AERODROME_SLIPSTREAM_INCREASE_LIQUIDITY_PROVISION"
128
+
129
+ estimate_gas: Optional[bool] = True
130
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
@@ -1,7 +1,6 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .token_enum import TokenEnum
5
4
  from compass_api_sdk.types import (
6
5
  BaseModel,
7
6
  Nullable,
@@ -72,18 +71,10 @@ r"""The minimum amount of the second token to deposit"""
72
71
  class AerodromeSlipstreamMintLiquidityProvisionParamsTypedDict(TypedDict):
73
72
  r"""Parameters model for minting a new liquidity position."""
74
73
 
75
- token0: TokenEnum
76
- r"""A class representing the token.
77
-
78
- This class is used to represent the token in the system. Notice individual
79
- endpoints' documentation where per chain tokens are presented.
80
- """
81
- token1: TokenEnum
82
- r"""A class representing the token.
83
-
84
- This class is used to represent the token in the system. Notice individual
85
- endpoints' documentation where per chain tokens are presented.
86
- """
74
+ token0: str
75
+ r"""The symbol or address of the first token in the pair."""
76
+ token1: str
77
+ r"""The symbol or address of the second token in the pair."""
87
78
  tick_spacing: int
88
79
  r"""The tick spacing of the pool"""
89
80
  tick_lower: int
@@ -110,19 +101,11 @@ class AerodromeSlipstreamMintLiquidityProvisionParamsTypedDict(TypedDict):
110
101
  class AerodromeSlipstreamMintLiquidityProvisionParams(BaseModel):
111
102
  r"""Parameters model for minting a new liquidity position."""
112
103
 
113
- token0: TokenEnum
114
- r"""A class representing the token.
115
-
116
- This class is used to represent the token in the system. Notice individual
117
- endpoints' documentation where per chain tokens are presented.
118
- """
119
-
120
- token1: TokenEnum
121
- r"""A class representing the token.
104
+ token0: str
105
+ r"""The symbol or address of the first token in the pair."""
122
106
 
123
- This class is used to represent the token in the system. Notice individual
124
- endpoints' documentation where per chain tokens are presented.
125
- """
107
+ token1: str
108
+ r"""The symbol or address of the second token in the pair."""
126
109
 
127
110
  tick_spacing: int
128
111
  r"""The tick spacing of the pool"""
@@ -1,7 +1,6 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .token_enum import TokenEnum
5
4
  from compass_api_sdk.types import (
6
5
  BaseModel,
7
6
  Nullable,
@@ -77,18 +76,10 @@ class AerodromeSlipstreamMintLiquidityProvisionRequestChain(str, Enum):
77
76
  class AerodromeSlipstreamMintLiquidityProvisionRequestTypedDict(TypedDict):
78
77
  r"""Request model for minting a new liquidity position."""
79
78
 
80
- token0: TokenEnum
81
- r"""A class representing the token.
82
-
83
- This class is used to represent the token in the system. Notice individual
84
- endpoints' documentation where per chain tokens are presented.
85
- """
86
- token1: TokenEnum
87
- r"""A class representing the token.
88
-
89
- This class is used to represent the token in the system. Notice individual
90
- endpoints' documentation where per chain tokens are presented.
91
- """
79
+ token0: str
80
+ r"""The symbol or address of the first token in the pair."""
81
+ token1: str
82
+ r"""The symbol or address of the second token in the pair."""
92
83
  tick_spacing: int
93
84
  r"""The tick spacing of the pool"""
94
85
  tick_lower: int
@@ -113,24 +104,18 @@ class AerodromeSlipstreamMintLiquidityProvisionRequestTypedDict(TypedDict):
113
104
  action_type: Literal["AERODROME_SLIPSTREAM_MINT_LIQUIDITY_PROVISION"]
114
105
  recipient: NotRequired[Nullable[str]]
115
106
  r"""The address that will receive the LP tokens"""
107
+ estimate_gas: NotRequired[bool]
108
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
116
109
 
117
110
 
118
111
  class AerodromeSlipstreamMintLiquidityProvisionRequest(BaseModel):
119
112
  r"""Request model for minting a new liquidity position."""
120
113
 
121
- token0: TokenEnum
122
- r"""A class representing the token.
123
-
124
- This class is used to represent the token in the system. Notice individual
125
- endpoints' documentation where per chain tokens are presented.
126
- """
114
+ token0: str
115
+ r"""The symbol or address of the first token in the pair."""
127
116
 
128
- token1: TokenEnum
129
- r"""A class representing the token.
130
-
131
- This class is used to represent the token in the system. Notice individual
132
- endpoints' documentation where per chain tokens are presented.
133
- """
117
+ token1: str
118
+ r"""The symbol or address of the second token in the pair."""
134
119
 
135
120
  tick_spacing: int
136
121
  r"""The tick spacing of the pool"""
@@ -171,9 +156,12 @@ class AerodromeSlipstreamMintLiquidityProvisionRequest(BaseModel):
171
156
  recipient: OptionalNullable[str] = UNSET
172
157
  r"""The address that will receive the LP tokens"""
173
158
 
159
+ estimate_gas: Optional[bool] = True
160
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
161
+
174
162
  @model_serializer(mode="wrap")
175
163
  def serialize_model(self, handler):
176
- optional_fields = ["action_type", "recipient"]
164
+ optional_fields = ["action_type", "recipient", "estimate_gas"]
177
165
  nullable_fields = ["recipient"]
178
166
  null_default_fields = []
179
167
 
@@ -1,24 +1,15 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .token_enum import TokenEnum
5
4
  from compass_api_sdk.types import BaseModel
6
5
  from typing_extensions import TypedDict
7
6
 
8
7
 
9
8
  class AerodromeSlipstreamPoolPriceResponseTypedDict(TypedDict):
10
- token_in: TokenEnum
11
- r"""A class representing the token.
12
-
13
- This class is used to represent the token in the system. Notice individual
14
- endpoints' documentation where per chain tokens are presented.
15
- """
16
- token_out: TokenEnum
17
- r"""A class representing the token.
18
-
19
- This class is used to represent the token in the system. Notice individual
20
- endpoints' documentation where per chain tokens are presented.
21
- """
9
+ token_in: str
10
+ r"""The first token in the pool."""
11
+ token_out: str
12
+ r"""The second token in the pool."""
22
13
  price: str
23
14
  r"""The price of the pool. This is expressed as an instantaneous amount of how
24
15
  many token0 you need to buy 1 token1. In any swap this will not change during the trade; use
@@ -31,19 +22,11 @@ class AerodromeSlipstreamPoolPriceResponseTypedDict(TypedDict):
31
22
 
32
23
 
33
24
  class AerodromeSlipstreamPoolPriceResponse(BaseModel):
34
- token_in: TokenEnum
35
- r"""A class representing the token.
25
+ token_in: str
26
+ r"""The first token in the pool."""
36
27
 
37
- This class is used to represent the token in the system. Notice individual
38
- endpoints' documentation where per chain tokens are presented.
39
- """
40
-
41
- token_out: TokenEnum
42
- r"""A class representing the token.
43
-
44
- This class is used to represent the token in the system. Notice individual
45
- endpoints' documentation where per chain tokens are presented.
46
- """
28
+ token_out: str
29
+ r"""The second token in the pool."""
47
30
 
48
31
  price: str
49
32
  r"""The price of the pool. This is expressed as an instantaneous amount of how
@@ -1,7 +1,6 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .token_enum import TokenEnum
5
4
  from compass_api_sdk.types import BaseModel
6
5
  from compass_api_sdk.utils import validate_const
7
6
  import pydantic
@@ -37,18 +36,10 @@ r"""The minimum amount of the token to swap to, defaults to 0"""
37
36
  class AerodromeSlipstreamSellExactlyParamsTypedDict(TypedDict):
38
37
  r"""Parameters model for selling exactly an amount of tokens."""
39
38
 
40
- token_in: TokenEnum
41
- r"""A class representing the token.
42
-
43
- This class is used to represent the token in the system. Notice individual
44
- endpoints' documentation where per chain tokens are presented.
45
- """
46
- token_out: TokenEnum
47
- r"""A class representing the token.
48
-
49
- This class is used to represent the token in the system. Notice individual
50
- endpoints' documentation where per chain tokens are presented.
51
- """
39
+ token_in: str
40
+ r"""The symbol or address of the token to swap from."""
41
+ token_out: str
42
+ r"""The symbol or address of the token to swap to."""
52
43
  tick_spacing: int
53
44
  r"""The tick spacing of the pool"""
54
45
  amount_in: AerodromeSlipstreamSellExactlyParamsAmountInTypedDict
@@ -63,19 +54,11 @@ class AerodromeSlipstreamSellExactlyParamsTypedDict(TypedDict):
63
54
  class AerodromeSlipstreamSellExactlyParams(BaseModel):
64
55
  r"""Parameters model for selling exactly an amount of tokens."""
65
56
 
66
- token_in: TokenEnum
67
- r"""A class representing the token.
68
-
69
- This class is used to represent the token in the system. Notice individual
70
- endpoints' documentation where per chain tokens are presented.
71
- """
72
-
73
- token_out: TokenEnum
74
- r"""A class representing the token.
57
+ token_in: str
58
+ r"""The symbol or address of the token to swap from."""
75
59
 
76
- This class is used to represent the token in the system. Notice individual
77
- endpoints' documentation where per chain tokens are presented.
78
- """
60
+ token_out: str
61
+ r"""The symbol or address of the token to swap to."""
79
62
 
80
63
  tick_spacing: int
81
64
  r"""The tick spacing of the pool"""
@@ -1,7 +1,6 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .token_enum import TokenEnum
5
4
  from compass_api_sdk.types import BaseModel
6
5
  from compass_api_sdk.utils import validate_const
7
6
  from enum import Enum
@@ -42,18 +41,10 @@ class AerodromeSlipstreamSellExactlyRequestChain(str, Enum):
42
41
  class AerodromeSlipstreamSellExactlyRequestTypedDict(TypedDict):
43
42
  r"""Request model for selling exactly an amount of tokens."""
44
43
 
45
- token_in: TokenEnum
46
- r"""A class representing the token.
47
-
48
- This class is used to represent the token in the system. Notice individual
49
- endpoints' documentation where per chain tokens are presented.
50
- """
51
- token_out: TokenEnum
52
- r"""A class representing the token.
53
-
54
- This class is used to represent the token in the system. Notice individual
55
- endpoints' documentation where per chain tokens are presented.
56
- """
44
+ token_in: str
45
+ r"""The symbol or address of the token to swap from."""
46
+ token_out: str
47
+ r"""The symbol or address of the token to swap to."""
57
48
  tick_spacing: int
58
49
  r"""The tick spacing of the pool"""
59
50
  amount_in: AerodromeSlipstreamSellExactlyRequestAmountInTypedDict
@@ -66,24 +57,18 @@ class AerodromeSlipstreamSellExactlyRequestTypedDict(TypedDict):
66
57
  AerodromeSlipstreamSellExactlyRequestAmountOutMinimumTypedDict
67
58
  ]
68
59
  r"""The minimum amount of the token to swap to, defaults to 0"""
60
+ estimate_gas: NotRequired[bool]
61
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
69
62
 
70
63
 
71
64
  class AerodromeSlipstreamSellExactlyRequest(BaseModel):
72
65
  r"""Request model for selling exactly an amount of tokens."""
73
66
 
74
- token_in: TokenEnum
75
- r"""A class representing the token.
76
-
77
- This class is used to represent the token in the system. Notice individual
78
- endpoints' documentation where per chain tokens are presented.
79
- """
67
+ token_in: str
68
+ r"""The symbol or address of the token to swap from."""
80
69
 
81
- token_out: TokenEnum
82
- r"""A class representing the token.
83
-
84
- This class is used to represent the token in the system. Notice individual
85
- endpoints' documentation where per chain tokens are presented.
86
- """
70
+ token_out: str
71
+ r"""The symbol or address of the token to swap to."""
87
72
 
88
73
  tick_spacing: int
89
74
  r"""The tick spacing of the pool"""
@@ -108,3 +93,6 @@ class AerodromeSlipstreamSellExactlyRequest(BaseModel):
108
93
  AerodromeSlipstreamSellExactlyRequestAmountOutMinimum
109
94
  ] = None
110
95
  r"""The minimum amount of the token to swap to, defaults to 0"""
96
+
97
+ estimate_gas: Optional[bool] = True
98
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
@@ -7,7 +7,7 @@ from enum import Enum
7
7
  import pydantic
8
8
  from pydantic.functional_validators import AfterValidator
9
9
  from typing import Literal, Optional, Union
10
- from typing_extensions import Annotated, TypeAliasType, TypedDict
10
+ from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict
11
11
 
12
12
 
13
13
  AerodromeSlipstreamWithdrawLiquidityProvisionRequestPercentageForWithdrawalTypedDict = TypeAliasType(
@@ -39,6 +39,8 @@ class AerodromeSlipstreamWithdrawLiquidityProvisionRequestTypedDict(TypedDict):
39
39
  sender: str
40
40
  r"""The address of the transaction sender."""
41
41
  action_type: Literal["AERODROME_SLIPSTREAM_WITHDRAW_LIQUIDITY_PROVISION"]
42
+ estimate_gas: NotRequired[bool]
43
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
42
44
 
43
45
 
44
46
  class AerodromeSlipstreamWithdrawLiquidityProvisionRequest(BaseModel):
@@ -64,3 +66,6 @@ class AerodromeSlipstreamWithdrawLiquidityProvisionRequest(BaseModel):
64
66
  ],
65
67
  pydantic.Field(alias="action_type"),
66
68
  ] = "AERODROME_SLIPSTREAM_WITHDRAW_LIQUIDITY_PROVISION"
69
+
70
+ estimate_gas: Optional[bool] = True
71
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
@@ -4,8 +4,8 @@ from __future__ import annotations
4
4
  from .useroperation import UserOperation, UserOperationTypedDict
5
5
  from compass_api_sdk.types import BaseModel
6
6
  from enum import Enum
7
- from typing import List
8
- from typing_extensions import TypedDict
7
+ from typing import List, Optional
8
+ from typing_extensions import NotRequired, TypedDict
9
9
 
10
10
 
11
11
  class BatchedUserOperationsRequestChain(str, Enum):
@@ -15,17 +15,25 @@ class BatchedUserOperationsRequestChain(str, Enum):
15
15
 
16
16
 
17
17
  class BatchedUserOperationsRequestTypedDict(TypedDict):
18
- r"""Request model for batching user operations."""
18
+ r"""Request model for batching user operations.
19
+
20
+ Used for smart account batching and 5792 batching.
21
+ """
19
22
 
20
23
  chain: BatchedUserOperationsRequestChain
21
24
  sender: str
22
25
  r"""The address of the transaction sender."""
23
26
  operations: List[UserOperationTypedDict]
24
27
  r"""List of possible user operations"""
28
+ estimate_gas: NotRequired[bool]
29
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
25
30
 
26
31
 
27
32
  class BatchedUserOperationsRequest(BaseModel):
28
- r"""Request model for batching user operations."""
33
+ r"""Request model for batching user operations.
34
+
35
+ Used for smart account batching and 5792 batching.
36
+ """
29
37
 
30
38
  chain: BatchedUserOperationsRequestChain
31
39
 
@@ -34,3 +42,6 @@ class BatchedUserOperationsRequest(BaseModel):
34
42
 
35
43
  operations: List[UserOperation]
36
44
  r"""List of possible user operations"""
45
+
46
+ estimate_gas: Optional[bool] = True
47
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
@@ -1,7 +1,6 @@
1
1
  """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
2
2
 
3
3
  from __future__ import annotations
4
- from .token_enum import TokenEnum
5
4
  from compass_api_sdk.types import BaseModel
6
5
  from typing_extensions import TypedDict
7
6
 
@@ -13,12 +12,8 @@ class CompassAPIBackendModelsGenericReadResponsePortfolioTokenBalanceTypedDict(
13
12
  r"""Amount of tokens a particular address holds"""
14
13
  decimals: int
15
14
  r"""Number of decimals of the token"""
16
- token_symbol: TokenEnum
17
- r"""A class representing the token.
18
-
19
- This class is used to represent the token in the system. Notice individual
20
- endpoints' documentation where per chain tokens are presented.
21
- """
15
+ token_symbol: str
16
+ r"""Symbol of the token."""
22
17
  token_address: str
23
18
  r"""Address of the token"""
24
19
  price: str
@@ -34,12 +29,8 @@ class CompassAPIBackendModelsGenericReadResponsePortfolioTokenBalance(BaseModel)
34
29
  decimals: int
35
30
  r"""Number of decimals of the token"""
36
31
 
37
- token_symbol: TokenEnum
38
- r"""A class representing the token.
39
-
40
- This class is used to represent the token in the system. Notice individual
41
- endpoints' documentation where per chain tokens are presented.
42
- """
32
+ token_symbol: str
33
+ r"""Symbol of the token."""
43
34
 
44
35
  token_address: str
45
36
  r"""Address of the token"""
@@ -42,6 +42,8 @@ class EthenaDepositRequestTypedDict(TypedDict):
42
42
  action_type: Literal["ETHENA_DEPOSIT"]
43
43
  receiver: NotRequired[Nullable[str]]
44
44
  r"""The address which will receive the shares (sUSDe) from Ethena's vault representing their proportional ownership of the vault's assets. Defaults to the sender."""
45
+ estimate_gas: NotRequired[bool]
46
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
45
47
 
46
48
 
47
49
  class EthenaDepositRequest(BaseModel):
@@ -64,9 +66,12 @@ class EthenaDepositRequest(BaseModel):
64
66
  receiver: OptionalNullable[str] = UNSET
65
67
  r"""The address which will receive the shares (sUSDe) from Ethena's vault representing their proportional ownership of the vault's assets. Defaults to the sender."""
66
68
 
69
+ estimate_gas: Optional[bool] = True
70
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
71
+
67
72
  @model_serializer(mode="wrap")
68
73
  def serialize_model(self, handler):
69
- optional_fields = ["action_type", "receiver"]
74
+ optional_fields = ["action_type", "receiver", "estimate_gas"]
70
75
  nullable_fields = ["receiver"]
71
76
  null_default_fields = []
72
77
 
@@ -7,7 +7,7 @@ from enum import Enum
7
7
  import pydantic
8
8
  from pydantic.functional_validators import AfterValidator
9
9
  from typing import Any, Literal, Optional
10
- from typing_extensions import Annotated, TypedDict
10
+ from typing_extensions import Annotated, NotRequired, TypedDict
11
11
 
12
12
 
13
13
  class EthenaRequestToWithdrawRequestChain(str, Enum):
@@ -21,6 +21,8 @@ class EthenaRequestToWithdrawRequestTypedDict(TypedDict):
21
21
  sender: str
22
22
  r"""The address of the transaction sender."""
23
23
  action_type: Literal["ETHENA_REQUEST_WITHDRAW"]
24
+ estimate_gas: NotRequired[bool]
25
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
24
26
 
25
27
 
26
28
  class EthenaRequestToWithdrawRequest(BaseModel):
@@ -39,3 +41,6 @@ class EthenaRequestToWithdrawRequest(BaseModel):
39
41
  ],
40
42
  pydantic.Field(alias="action_type"),
41
43
  ] = "ETHENA_REQUEST_WITHDRAW"
44
+
45
+ estimate_gas: Optional[bool] = True
46
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
@@ -28,6 +28,8 @@ class EthenaUnstakeRequestTypedDict(TypedDict):
28
28
  action_type: Literal["ETHENA_UNSTAKE"]
29
29
  receiver: NotRequired[Nullable[str]]
30
30
  r"""The address which will receive the unstaked USDe. Defaults to the sender."""
31
+ estimate_gas: NotRequired[bool]
32
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
31
33
 
32
34
 
33
35
  class EthenaUnstakeRequest(BaseModel):
@@ -47,9 +49,12 @@ class EthenaUnstakeRequest(BaseModel):
47
49
  receiver: OptionalNullable[str] = UNSET
48
50
  r"""The address which will receive the unstaked USDe. Defaults to the sender."""
49
51
 
52
+ estimate_gas: Optional[bool] = True
53
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
54
+
50
55
  @model_serializer(mode="wrap")
51
56
  def serialize_model(self, handler):
52
- optional_fields = ["action_type", "receiver"]
57
+ optional_fields = ["action_type", "receiver", "estimate_gas"]
53
58
  nullable_fields = ["receiver"]
54
59
  null_default_fields = []
55
60
 
@@ -48,6 +48,8 @@ class MorphoBorrowRequestTypedDict(TypedDict):
48
48
  r"""The address where the collateral is borrowed against. Defaults to sender."""
49
49
  receiver: NotRequired[Nullable[str]]
50
50
  r"""The address of the receiver of the tokens borrowed. Defaults to the transaction 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."""
51
53
 
52
54
 
53
55
  class MorphoBorrowRequest(BaseModel):
@@ -76,9 +78,12 @@ class MorphoBorrowRequest(BaseModel):
76
78
  receiver: OptionalNullable[str] = UNSET
77
79
  r"""The address of the receiver of the tokens borrowed. Defaults to the transaction sender."""
78
80
 
81
+ estimate_gas: Optional[bool] = True
82
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
83
+
79
84
  @model_serializer(mode="wrap")
80
85
  def serialize_model(self, handler):
81
- optional_fields = ["action_type", "on_behalf_of", "receiver"]
86
+ optional_fields = ["action_type", "on_behalf_of", "receiver", "estimate_gas"]
82
87
  nullable_fields = ["on_behalf_of", "receiver"]
83
88
  null_default_fields = []
84
89
 
@@ -46,6 +46,8 @@ class MorphoDepositRequestTypedDict(TypedDict):
46
46
  action_type: Literal["MORPHO_DEPOSIT"]
47
47
  receiver: NotRequired[Nullable[str]]
48
48
  r"""The address which will receive the shares from the vault representing their proportional ownership of the vault's assets. Defaults to the sender."""
49
+ estimate_gas: NotRequired[bool]
50
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
49
51
 
50
52
 
51
53
  class MorphoDepositRequest(BaseModel):
@@ -71,9 +73,12 @@ class MorphoDepositRequest(BaseModel):
71
73
  receiver: OptionalNullable[str] = UNSET
72
74
  r"""The address which will receive the shares from the vault representing their proportional ownership of the vault's assets. Defaults to the sender."""
73
75
 
76
+ estimate_gas: Optional[bool] = True
77
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
78
+
74
79
  @model_serializer(mode="wrap")
75
80
  def serialize_model(self, handler):
76
- optional_fields = ["action_type", "receiver"]
81
+ optional_fields = ["action_type", "receiver", "estimate_gas"]
77
82
  nullable_fields = ["receiver"]
78
83
  null_default_fields = []
79
84
 
@@ -36,6 +36,8 @@ class MorphoRepayRequestTypedDict(TypedDict):
36
36
  r"""The address on behalf of whom the repayment is made. Defaults to sender."""
37
37
  callback_data: NotRequired[Nullable[bytes]]
38
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."""
39
41
 
40
42
 
41
43
  class MorphoRepayRequest(BaseModel):
@@ -64,9 +66,17 @@ class MorphoRepayRequest(BaseModel):
64
66
  callback_data: OptionalNullable[bytes] = UNSET
65
67
  r"""An optional field for callback byte data that will be triggered upon successful repaying of debt."""
66
68
 
69
+ estimate_gas: Optional[bool] = True
70
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
71
+
67
72
  @model_serializer(mode="wrap")
68
73
  def serialize_model(self, handler):
69
- 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
+ ]
70
80
  nullable_fields = ["on_behalf_of", "callback_data"]
71
81
  null_default_fields = []
72
82
 
@@ -48,6 +48,8 @@ class MorphoSupplyCollateralRequestTypedDict(TypedDict):
48
48
  r"""The address on behalf of whom the supplied collateral is made. Defaults to sender."""
49
49
  callback_data: NotRequired[Nullable[bytes]]
50
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."""
51
53
 
52
54
 
53
55
  class MorphoSupplyCollateralRequest(BaseModel):
@@ -76,9 +78,17 @@ class MorphoSupplyCollateralRequest(BaseModel):
76
78
  callback_data: OptionalNullable[bytes] = UNSET
77
79
  r"""An optional field for callback byte data that will be triggered upon successful supplying of collateral."""
78
80
 
81
+ estimate_gas: Optional[bool] = True
82
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
83
+
79
84
  @model_serializer(mode="wrap")
80
85
  def serialize_model(self, handler):
81
- 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
+ ]
82
92
  nullable_fields = ["on_behalf_of", "callback_data"]
83
93
  null_default_fields = []
84
94
 
@@ -48,6 +48,8 @@ class MorphoWithdrawCollateralRequestTypedDict(TypedDict):
48
48
  r"""The address on behalf of whom the withdraw is made. Defaults to sender."""
49
49
  receiver: NotRequired[Nullable[str]]
50
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."""
51
53
 
52
54
 
53
55
  class MorphoWithdrawCollateralRequest(BaseModel):
@@ -76,9 +78,12 @@ class MorphoWithdrawCollateralRequest(BaseModel):
76
78
  receiver: OptionalNullable[str] = UNSET
77
79
  r"""The address where the withdrawn collateral will be received. Defaults to sender."""
78
80
 
81
+ estimate_gas: Optional[bool] = True
82
+ r"""Determines whether to estimate gas costs for transactions, also verifying that the transaction can be successfully executed."""
83
+
79
84
  @model_serializer(mode="wrap")
80
85
  def serialize_model(self, handler):
81
- optional_fields = ["action_type", "on_behalf_of", "receiver"]
86
+ optional_fields = ["action_type", "on_behalf_of", "receiver", "estimate_gas"]
82
87
  nullable_fields = ["on_behalf_of", "receiver"]
83
88
  null_default_fields = []
84
89