viem 2.55.10 → 2.55.13

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 (138) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/_cjs/actions/wallet/prepareTransactionRequest.js +12 -12
  3. package/_cjs/actions/wallet/prepareTransactionRequest.js.map +1 -1
  4. package/_cjs/actions/wallet/sendTransaction.js +24 -12
  5. package/_cjs/actions/wallet/sendTransaction.js.map +1 -1
  6. package/_cjs/actions/wallet/sendTransactionSync.js +24 -12
  7. package/_cjs/actions/wallet/sendTransactionSync.js.map +1 -1
  8. package/_cjs/chains/definitions/story.js +7 -7
  9. package/_cjs/chains/definitions/story.js.map +1 -1
  10. package/_cjs/chains/definitions/storyAeneid.js +8 -8
  11. package/_cjs/chains/definitions/storyAeneid.js.map +1 -1
  12. package/_cjs/clients/createClient.js +1 -0
  13. package/_cjs/clients/createClient.js.map +1 -1
  14. package/_cjs/errors/typedData.js +11 -1
  15. package/_cjs/errors/typedData.js.map +1 -1
  16. package/_cjs/errors/version.js +1 -1
  17. package/_cjs/index.js +5 -4
  18. package/_cjs/index.js.map +1 -1
  19. package/_cjs/tempo/Abis.js +642 -253
  20. package/_cjs/tempo/Abis.js.map +1 -1
  21. package/_cjs/tempo/Decorator.js +7 -0
  22. package/_cjs/tempo/Decorator.js.map +1 -1
  23. package/_cjs/tempo/actions/earn/deployment.js +654 -0
  24. package/_cjs/tempo/actions/earn/deployment.js.map +1 -0
  25. package/_cjs/tempo/actions/earn.js +60 -17
  26. package/_cjs/tempo/actions/earn.js.map +1 -1
  27. package/_cjs/tempo/actions/token.js +18 -6
  28. package/_cjs/tempo/actions/token.js.map +1 -1
  29. package/_cjs/tempo/actions/zone.js +11 -1
  30. package/_cjs/tempo/actions/zone.js.map +1 -1
  31. package/_cjs/tempo/chainConfig.js +24 -23
  32. package/_cjs/tempo/chainConfig.js.map +1 -1
  33. package/_cjs/tempo/internal/WithdrawalSenderTag.js +2 -2
  34. package/_cjs/tempo/internal/WithdrawalSenderTag.js.map +1 -1
  35. package/_cjs/tempo/zones/Abis.js +17 -0
  36. package/_cjs/tempo/zones/Abis.js.map +1 -1
  37. package/_cjs/tokens/definitions/usdc.js +7 -0
  38. package/_cjs/tokens/definitions/usdc.js.map +1 -1
  39. package/_cjs/utils/promise/withRetry.js +2 -2
  40. package/_cjs/utils/promise/withRetry.js.map +1 -1
  41. package/_cjs/utils/typedData.js +3 -0
  42. package/_cjs/utils/typedData.js.map +1 -1
  43. package/_esm/actions/wallet/prepareTransactionRequest.js +14 -13
  44. package/_esm/actions/wallet/prepareTransactionRequest.js.map +1 -1
  45. package/_esm/actions/wallet/sendTransaction.js +24 -12
  46. package/_esm/actions/wallet/sendTransaction.js.map +1 -1
  47. package/_esm/actions/wallet/sendTransactionSync.js +24 -12
  48. package/_esm/actions/wallet/sendTransactionSync.js.map +1 -1
  49. package/_esm/chains/definitions/story.js +7 -7
  50. package/_esm/chains/definitions/story.js.map +1 -1
  51. package/_esm/chains/definitions/storyAeneid.js +8 -8
  52. package/_esm/chains/definitions/storyAeneid.js.map +1 -1
  53. package/_esm/clients/createClient.js +4 -3
  54. package/_esm/clients/createClient.js.map +1 -1
  55. package/_esm/errors/typedData.js +9 -0
  56. package/_esm/errors/typedData.js.map +1 -1
  57. package/_esm/errors/version.js +1 -1
  58. package/_esm/index.js +1 -1
  59. package/_esm/index.js.map +1 -1
  60. package/_esm/tempo/Abis.js +643 -254
  61. package/_esm/tempo/Abis.js.map +1 -1
  62. package/_esm/tempo/Decorator.js +7 -0
  63. package/_esm/tempo/Decorator.js.map +1 -1
  64. package/_esm/tempo/actions/earn/deployment.js +967 -0
  65. package/_esm/tempo/actions/earn/deployment.js.map +1 -0
  66. package/_esm/tempo/actions/earn.js +47 -17
  67. package/_esm/tempo/actions/earn.js.map +1 -1
  68. package/_esm/tempo/actions/token.js +21 -8
  69. package/_esm/tempo/actions/token.js.map +1 -1
  70. package/_esm/tempo/actions/zone.js +11 -1
  71. package/_esm/tempo/actions/zone.js.map +1 -1
  72. package/_esm/tempo/chainConfig.js +26 -28
  73. package/_esm/tempo/chainConfig.js.map +1 -1
  74. package/_esm/tempo/internal/WithdrawalSenderTag.js +3 -3
  75. package/_esm/tempo/internal/WithdrawalSenderTag.js.map +1 -1
  76. package/_esm/tempo/zones/Abis.js +17 -0
  77. package/_esm/tempo/zones/Abis.js.map +1 -1
  78. package/_esm/tokens/definitions/usdc.js +7 -0
  79. package/_esm/tokens/definitions/usdc.js.map +1 -1
  80. package/_esm/utils/promise/withRetry.js +2 -2
  81. package/_esm/utils/promise/withRetry.js.map +1 -1
  82. package/_esm/utils/typedData.js +4 -1
  83. package/_esm/utils/typedData.js.map +1 -1
  84. package/_types/actions/wallet/prepareTransactionRequest.d.ts.map +1 -1
  85. package/_types/actions/wallet/sendTransaction.d.ts.map +1 -1
  86. package/_types/actions/wallet/sendTransactionSync.d.ts.map +1 -1
  87. package/_types/chains/definitions/story.d.ts +7 -7
  88. package/_types/chains/definitions/storyAeneid.d.ts +8 -8
  89. package/_types/clients/createClient.d.ts +3 -3
  90. package/_types/clients/createClient.d.ts.map +1 -1
  91. package/_types/errors/typedData.d.ts +8 -0
  92. package/_types/errors/typedData.d.ts.map +1 -1
  93. package/_types/errors/version.d.ts +1 -1
  94. package/_types/index.d.ts +1 -1
  95. package/_types/index.d.ts.map +1 -1
  96. package/_types/tempo/Abis.d.ts +945 -388
  97. package/_types/tempo/Abis.d.ts.map +1 -1
  98. package/_types/tempo/Decorator.d.ts +18 -0
  99. package/_types/tempo/Decorator.d.ts.map +1 -1
  100. package/_types/tempo/actions/earn/deployment.d.ts +1710 -0
  101. package/_types/tempo/actions/earn/deployment.d.ts.map +1 -0
  102. package/_types/tempo/actions/earn.d.ts +1142 -535
  103. package/_types/tempo/actions/earn.d.ts.map +1 -1
  104. package/_types/tempo/actions/token.d.ts +1 -1
  105. package/_types/tempo/actions/token.d.ts.map +1 -1
  106. package/_types/tempo/actions/zone.d.ts.map +1 -1
  107. package/_types/tempo/chainConfig.d.ts.map +1 -1
  108. package/_types/tempo/internal/WithdrawalSenderTag.d.ts +2 -1
  109. package/_types/tempo/internal/WithdrawalSenderTag.d.ts.map +1 -1
  110. package/_types/tempo/zones/Abis.d.ts +48 -0
  111. package/_types/tempo/zones/Abis.d.ts.map +1 -1
  112. package/_types/tokens/definitions/usdc.d.ts +7 -0
  113. package/_types/tokens/definitions/usdc.d.ts.map +1 -1
  114. package/_types/tokens/sets.d.ts +14 -0
  115. package/_types/tokens/sets.d.ts.map +1 -1
  116. package/_types/utils/typedData.d.ts.map +1 -1
  117. package/actions/wallet/prepareTransactionRequest.ts +18 -17
  118. package/actions/wallet/sendTransaction.ts +25 -10
  119. package/actions/wallet/sendTransactionSync.ts +25 -10
  120. package/chains/definitions/story.ts +7 -7
  121. package/chains/definitions/storyAeneid.ts +8 -8
  122. package/clients/createClient.ts +4 -3
  123. package/errors/typedData.ts +13 -0
  124. package/errors/version.ts +1 -1
  125. package/index.ts +2 -0
  126. package/package.json +1 -1
  127. package/tempo/Abis.ts +644 -254
  128. package/tempo/Decorator.ts +41 -0
  129. package/tempo/actions/earn/deployment.ts +1427 -0
  130. package/tempo/actions/earn.ts +83 -63
  131. package/tempo/actions/token.ts +60 -9
  132. package/tempo/actions/zone.ts +10 -1
  133. package/tempo/chainConfig.ts +30 -27
  134. package/tempo/internal/WithdrawalSenderTag.ts +5 -4
  135. package/tempo/zones/Abis.ts +17 -0
  136. package/tokens/definitions/usdc.ts +7 -0
  137. package/utils/promise/withRetry.ts +4 -4
  138. package/utils/typedData.ts +5 -0
@@ -2973,7 +2973,68 @@ export const abis = [
2973
2973
  ...validatorConfig,
2974
2974
  ...validatorConfigV2,
2975
2975
  ];
2976
- // Earn source: tempoxyz/earn at 4794b0ce4f611af7afe87587522e0087e690422f. Do not modify manually.
2976
+ // Earn source: tempoxyz/earn at 454fa260ded101f970ee7d6bafebf4c3b6ec9095. Do not modify manually.
2977
+ export const erc4626EngineFactory = [
2978
+ {
2979
+ type: 'function',
2980
+ name: 'computeEngineSalt',
2981
+ inputs: [
2982
+ { name: 'deploymentId', type: 'bytes32' },
2983
+ { name: 'vault', type: 'address' },
2984
+ { name: 'owner', type: 'address' },
2985
+ { name: 'nameOverride', type: 'string' },
2986
+ { name: 'symbolOverride', type: 'string' },
2987
+ ],
2988
+ outputs: [{ name: '', type: 'bytes32' }],
2989
+ stateMutability: 'pure',
2990
+ },
2991
+ {
2992
+ type: 'function',
2993
+ name: 'deploy',
2994
+ inputs: [
2995
+ { name: 'deploymentId', type: 'bytes32' },
2996
+ { name: 'vault', type: 'address' },
2997
+ { name: 'owner', type: 'address' },
2998
+ { name: 'nameOverride', type: 'string' },
2999
+ { name: 'symbolOverride', type: 'string' },
3000
+ ],
3001
+ outputs: [{ name: 'engine', type: 'address' }],
3002
+ stateMutability: 'nonpayable',
3003
+ },
3004
+ {
3005
+ type: 'function',
3006
+ name: 'predictEngine',
3007
+ inputs: [
3008
+ { name: 'deploymentId', type: 'bytes32' },
3009
+ { name: 'vault', type: 'address' },
3010
+ { name: 'owner', type: 'address' },
3011
+ { name: 'nameOverride', type: 'string' },
3012
+ { name: 'symbolOverride', type: 'string' },
3013
+ ],
3014
+ outputs: [{ name: '', type: 'address' }],
3015
+ stateMutability: 'view',
3016
+ },
3017
+ {
3018
+ type: 'event',
3019
+ name: 'ERC4626EngineDeployed',
3020
+ inputs: [
3021
+ { name: 'engine', type: 'address', indexed: true },
3022
+ { name: 'vault', type: 'address', indexed: true },
3023
+ { name: 'owner', type: 'address', indexed: true },
3024
+ { name: 'asset', type: 'address', indexed: false },
3025
+ { name: 'deploymentId', type: 'bytes32', indexed: false },
3026
+ { name: 'engineSalt', type: 'bytes32', indexed: false },
3027
+ ],
3028
+ anonymous: false,
3029
+ },
3030
+ { type: 'error', name: 'EmptyDeploymentId', inputs: [] },
3031
+ {
3032
+ type: 'error',
3033
+ name: 'EngineAlreadyExists',
3034
+ inputs: [{ name: 'engine', type: 'address' }],
3035
+ },
3036
+ { type: 'error', name: 'FactoryCannotBeFinalOwner', inputs: [] },
3037
+ ];
2977
3038
  export const earnFactory = [
2978
3039
  {
2979
3040
  type: 'function',
@@ -2992,44 +3053,44 @@ export const earnFactory = [
2992
3053
  components: [
2993
3054
  { name: 'emergencyGuardian', type: 'address' },
2994
3055
  { name: 'asyncJanitor', type: 'address' },
3056
+ { name: 'maxManagedAssets', type: 'uint256' },
2995
3057
  { name: 'migrationMode', type: 'uint8' },
2996
3058
  ],
2997
3059
  },
3060
+ {
3061
+ name: 'distributorConfig',
3062
+ type: 'tuple',
3063
+ components: [
3064
+ { name: 'distributor', type: 'address' },
3065
+ { name: 'updateDelay', type: 'uint40' },
3066
+ ],
3067
+ },
2998
3068
  {
2999
3069
  name: 'fees',
3000
3070
  type: 'tuple',
3001
3071
  components: [
3002
- { name: 'administrator', type: 'address' },
3003
- { name: 'guardian', type: 'address' },
3004
- { name: 'fixedFeeCap', type: 'uint96' },
3005
- { name: 'excessFeeCap', type: 'uint96' },
3072
+ { name: 'fixedFeeCount', type: 'uint8' },
3006
3073
  {
3007
- name: 'initialConfig',
3074
+ name: 'fixedFees',
3075
+ type: 'tuple[4]',
3076
+ components: [
3077
+ { name: 'account', type: 'address' },
3078
+ { name: 'rateBps', type: 'uint16' },
3079
+ ],
3080
+ },
3081
+ {
3082
+ name: 'excess',
3008
3083
  type: 'tuple',
3009
3084
  components: [
3010
- { name: 'fixedFeeCount', type: 'uint8' },
3011
- {
3012
- name: 'fixedFees',
3013
- type: 'tuple[4]',
3014
- components: [
3015
- { name: 'account', type: 'address' },
3016
- { name: 'rate', type: 'uint96' },
3017
- ],
3018
- },
3019
- {
3020
- name: 'excess',
3021
- type: 'tuple',
3022
- components: [
3023
- { name: 'enabled', type: 'bool' },
3024
- { name: 'account', type: 'address' },
3025
- { name: 'annualTargetRate', type: 'uint96' },
3026
- { name: 'excessFeeRate', type: 'uint96' },
3027
- ],
3028
- },
3085
+ { name: 'enabled', type: 'bool' },
3086
+ { name: 'account', type: 'address' },
3087
+ { name: 'annualTargetRateBps', type: 'uint16' },
3088
+ { name: 'excessFeeRateBps', type: 'uint16' },
3029
3089
  ],
3030
3090
  },
3031
3091
  ],
3032
3092
  },
3093
+ { name: 'transferPolicyId', type: 'uint64' },
3033
3094
  ],
3034
3095
  },
3035
3096
  ],
@@ -3053,44 +3114,44 @@ export const earnFactory = [
3053
3114
  components: [
3054
3115
  { name: 'emergencyGuardian', type: 'address' },
3055
3116
  { name: 'asyncJanitor', type: 'address' },
3117
+ { name: 'maxManagedAssets', type: 'uint256' },
3056
3118
  { name: 'migrationMode', type: 'uint8' },
3057
3119
  ],
3058
3120
  },
3121
+ {
3122
+ name: 'distributorConfig',
3123
+ type: 'tuple',
3124
+ components: [
3125
+ { name: 'distributor', type: 'address' },
3126
+ { name: 'updateDelay', type: 'uint40' },
3127
+ ],
3128
+ },
3059
3129
  {
3060
3130
  name: 'fees',
3061
3131
  type: 'tuple',
3062
3132
  components: [
3063
- { name: 'administrator', type: 'address' },
3064
- { name: 'guardian', type: 'address' },
3065
- { name: 'fixedFeeCap', type: 'uint96' },
3066
- { name: 'excessFeeCap', type: 'uint96' },
3133
+ { name: 'fixedFeeCount', type: 'uint8' },
3134
+ {
3135
+ name: 'fixedFees',
3136
+ type: 'tuple[4]',
3137
+ components: [
3138
+ { name: 'account', type: 'address' },
3139
+ { name: 'rateBps', type: 'uint16' },
3140
+ ],
3141
+ },
3067
3142
  {
3068
- name: 'initialConfig',
3143
+ name: 'excess',
3069
3144
  type: 'tuple',
3070
3145
  components: [
3071
- { name: 'fixedFeeCount', type: 'uint8' },
3072
- {
3073
- name: 'fixedFees',
3074
- type: 'tuple[4]',
3075
- components: [
3076
- { name: 'account', type: 'address' },
3077
- { name: 'rate', type: 'uint96' },
3078
- ],
3079
- },
3080
- {
3081
- name: 'excess',
3082
- type: 'tuple',
3083
- components: [
3084
- { name: 'enabled', type: 'bool' },
3085
- { name: 'account', type: 'address' },
3086
- { name: 'annualTargetRate', type: 'uint96' },
3087
- { name: 'excessFeeRate', type: 'uint96' },
3088
- ],
3089
- },
3146
+ { name: 'enabled', type: 'bool' },
3147
+ { name: 'account', type: 'address' },
3148
+ { name: 'annualTargetRateBps', type: 'uint16' },
3149
+ { name: 'excessFeeRateBps', type: 'uint16' },
3090
3150
  ],
3091
3151
  },
3092
3152
  ],
3093
3153
  },
3154
+ { name: 'transferPolicyId', type: 'uint64' },
3094
3155
  ],
3095
3156
  },
3096
3157
  ],
@@ -3101,6 +3162,20 @@ export const earnFactory = [
3101
3162
  ],
3102
3163
  stateMutability: 'nonpayable',
3103
3164
  },
3165
+ {
3166
+ type: 'function',
3167
+ name: 'earnFeesImplementation',
3168
+ inputs: [],
3169
+ outputs: [{ name: '', type: 'address' }],
3170
+ stateMutability: 'view',
3171
+ },
3172
+ {
3173
+ type: 'function',
3174
+ name: 'earnVaultImplementation',
3175
+ inputs: [],
3176
+ outputs: [{ name: '', type: 'address' }],
3177
+ stateMutability: 'view',
3178
+ },
3104
3179
  {
3105
3180
  type: 'function',
3106
3181
  name: 'predictEarnFees',
@@ -3118,44 +3193,44 @@ export const earnFactory = [
3118
3193
  components: [
3119
3194
  { name: 'emergencyGuardian', type: 'address' },
3120
3195
  { name: 'asyncJanitor', type: 'address' },
3196
+ { name: 'maxManagedAssets', type: 'uint256' },
3121
3197
  { name: 'migrationMode', type: 'uint8' },
3122
3198
  ],
3123
3199
  },
3200
+ {
3201
+ name: 'distributorConfig',
3202
+ type: 'tuple',
3203
+ components: [
3204
+ { name: 'distributor', type: 'address' },
3205
+ { name: 'updateDelay', type: 'uint40' },
3206
+ ],
3207
+ },
3124
3208
  {
3125
3209
  name: 'fees',
3126
3210
  type: 'tuple',
3127
3211
  components: [
3128
- { name: 'administrator', type: 'address' },
3129
- { name: 'guardian', type: 'address' },
3130
- { name: 'fixedFeeCap', type: 'uint96' },
3131
- { name: 'excessFeeCap', type: 'uint96' },
3212
+ { name: 'fixedFeeCount', type: 'uint8' },
3213
+ {
3214
+ name: 'fixedFees',
3215
+ type: 'tuple[4]',
3216
+ components: [
3217
+ { name: 'account', type: 'address' },
3218
+ { name: 'rateBps', type: 'uint16' },
3219
+ ],
3220
+ },
3132
3221
  {
3133
- name: 'initialConfig',
3222
+ name: 'excess',
3134
3223
  type: 'tuple',
3135
3224
  components: [
3136
- { name: 'fixedFeeCount', type: 'uint8' },
3137
- {
3138
- name: 'fixedFees',
3139
- type: 'tuple[4]',
3140
- components: [
3141
- { name: 'account', type: 'address' },
3142
- { name: 'rate', type: 'uint96' },
3143
- ],
3144
- },
3145
- {
3146
- name: 'excess',
3147
- type: 'tuple',
3148
- components: [
3149
- { name: 'enabled', type: 'bool' },
3150
- { name: 'account', type: 'address' },
3151
- { name: 'annualTargetRate', type: 'uint96' },
3152
- { name: 'excessFeeRate', type: 'uint96' },
3153
- ],
3154
- },
3225
+ { name: 'enabled', type: 'bool' },
3226
+ { name: 'account', type: 'address' },
3227
+ { name: 'annualTargetRateBps', type: 'uint16' },
3228
+ { name: 'excessFeeRateBps', type: 'uint16' },
3155
3229
  ],
3156
3230
  },
3157
3231
  ],
3158
3232
  },
3233
+ { name: 'transferPolicyId', type: 'uint64' },
3159
3234
  ],
3160
3235
  },
3161
3236
  ],
@@ -3179,50 +3254,57 @@ export const earnFactory = [
3179
3254
  components: [
3180
3255
  { name: 'emergencyGuardian', type: 'address' },
3181
3256
  { name: 'asyncJanitor', type: 'address' },
3257
+ { name: 'maxManagedAssets', type: 'uint256' },
3182
3258
  { name: 'migrationMode', type: 'uint8' },
3183
3259
  ],
3184
3260
  },
3261
+ {
3262
+ name: 'distributorConfig',
3263
+ type: 'tuple',
3264
+ components: [
3265
+ { name: 'distributor', type: 'address' },
3266
+ { name: 'updateDelay', type: 'uint40' },
3267
+ ],
3268
+ },
3185
3269
  {
3186
3270
  name: 'fees',
3187
3271
  type: 'tuple',
3188
3272
  components: [
3189
- { name: 'administrator', type: 'address' },
3190
- { name: 'guardian', type: 'address' },
3191
- { name: 'fixedFeeCap', type: 'uint96' },
3192
- { name: 'excessFeeCap', type: 'uint96' },
3273
+ { name: 'fixedFeeCount', type: 'uint8' },
3274
+ {
3275
+ name: 'fixedFees',
3276
+ type: 'tuple[4]',
3277
+ components: [
3278
+ { name: 'account', type: 'address' },
3279
+ { name: 'rateBps', type: 'uint16' },
3280
+ ],
3281
+ },
3193
3282
  {
3194
- name: 'initialConfig',
3283
+ name: 'excess',
3195
3284
  type: 'tuple',
3196
3285
  components: [
3197
- { name: 'fixedFeeCount', type: 'uint8' },
3198
- {
3199
- name: 'fixedFees',
3200
- type: 'tuple[4]',
3201
- components: [
3202
- { name: 'account', type: 'address' },
3203
- { name: 'rate', type: 'uint96' },
3204
- ],
3205
- },
3206
- {
3207
- name: 'excess',
3208
- type: 'tuple',
3209
- components: [
3210
- { name: 'enabled', type: 'bool' },
3211
- { name: 'account', type: 'address' },
3212
- { name: 'annualTargetRate', type: 'uint96' },
3213
- { name: 'excessFeeRate', type: 'uint96' },
3214
- ],
3215
- },
3286
+ { name: 'enabled', type: 'bool' },
3287
+ { name: 'account', type: 'address' },
3288
+ { name: 'annualTargetRateBps', type: 'uint16' },
3289
+ { name: 'excessFeeRateBps', type: 'uint16' },
3216
3290
  ],
3217
3291
  },
3218
3292
  ],
3219
3293
  },
3294
+ { name: 'transferPolicyId', type: 'uint64' },
3220
3295
  ],
3221
3296
  },
3222
3297
  ],
3223
3298
  outputs: [{ name: '', type: 'address' }],
3224
3299
  stateMutability: 'view',
3225
3300
  },
3301
+ {
3302
+ type: 'function',
3303
+ name: 'tip20Factory',
3304
+ inputs: [],
3305
+ outputs: [{ name: '', type: 'address' }],
3306
+ stateMutability: 'view',
3307
+ },
3226
3308
  {
3227
3309
  type: 'event',
3228
3310
  name: 'EarnStackDeployed',
@@ -3236,7 +3318,9 @@ export const earnFactory = [
3236
3318
  { name: 'deploymentId', type: 'bytes32', indexed: false },
3237
3319
  { name: 'emergencyGuardian', type: 'address', indexed: false },
3238
3320
  { name: 'asyncJanitor', type: 'address', indexed: false },
3321
+ { name: 'maxManagedAssets', type: 'uint256', indexed: false },
3239
3322
  { name: 'migrationMode', type: 'uint8', indexed: false },
3323
+ { name: 'transferPolicyId', type: 'uint64', indexed: false },
3240
3324
  { name: 'earnShareSalt', type: 'bytes32', indexed: false },
3241
3325
  { name: 'controlConfigHash', type: 'bytes32', indexed: false },
3242
3326
  { name: 'feeConfigHash', type: 'bytes32', indexed: false },
@@ -3253,6 +3337,11 @@ export const earnFactory = [
3253
3337
  { type: 'error', name: 'EarnShareSupplyNotZero', inputs: [] },
3254
3338
  { type: 'error', name: 'EmptyDeploymentId', inputs: [] },
3255
3339
  { type: 'error', name: 'EmptyEarnShareMetadata', inputs: [] },
3340
+ {
3341
+ type: 'error',
3342
+ name: 'EngineAlreadyBound',
3343
+ inputs: [{ name: 'earnVault', type: 'address' }],
3344
+ },
3256
3345
  { type: 'error', name: 'FactoryCannotBeFinalOwner', inputs: [] },
3257
3346
  { type: 'error', name: 'FailedDeployment', inputs: [] },
3258
3347
  {
@@ -3263,9 +3352,32 @@ export const earnFactory = [
3263
3352
  { name: 'needed', type: 'uint256' },
3264
3353
  ],
3265
3354
  },
3355
+ { type: 'error', name: 'InvalidDistributorConfig', inputs: [] },
3266
3356
  { type: 'error', name: 'InvalidEarnFeesImplementation', inputs: [] },
3267
3357
  { type: 'error', name: 'InvalidEarnVaultImplementation', inputs: [] },
3358
+ { type: 'error', name: 'InvalidEngine', inputs: [] },
3359
+ {
3360
+ type: 'error',
3361
+ name: 'InvalidTransferPolicy',
3362
+ inputs: [{ name: 'policyId', type: 'uint64' }],
3363
+ },
3268
3364
  { type: 'error', name: 'IssuerGrantFailed', inputs: [] },
3365
+ {
3366
+ type: 'error',
3367
+ name: 'TransferPolicyMismatch',
3368
+ inputs: [
3369
+ { name: 'expected', type: 'uint64' },
3370
+ { name: 'actual', type: 'uint64' },
3371
+ ],
3372
+ },
3373
+ {
3374
+ type: 'error',
3375
+ name: 'UnsupportedTransferPolicy',
3376
+ inputs: [
3377
+ { name: 'policyId', type: 'uint64' },
3378
+ { name: 'policyType', type: 'uint8' },
3379
+ ],
3380
+ },
3269
3381
  { type: 'error', name: 'ZeroAddress', inputs: [] },
3270
3382
  ];
3271
3383
  export const erc4626Engine = [
@@ -3276,6 +3388,27 @@ export const erc4626Engine = [
3276
3388
  outputs: [],
3277
3389
  stateMutability: 'nonpayable',
3278
3390
  },
3391
+ {
3392
+ type: 'function',
3393
+ name: 'asset',
3394
+ inputs: [],
3395
+ outputs: [{ name: '', type: 'address' }],
3396
+ stateMutability: 'view',
3397
+ },
3398
+ {
3399
+ type: 'function',
3400
+ name: 'baseAsset',
3401
+ inputs: [],
3402
+ outputs: [{ name: '', type: 'address' }],
3403
+ stateMutability: 'view',
3404
+ },
3405
+ {
3406
+ type: 'function',
3407
+ name: 'earnVault',
3408
+ inputs: [],
3409
+ outputs: [{ name: '', type: 'address' }],
3410
+ stateMutability: 'view',
3411
+ },
3279
3412
  {
3280
3413
  type: 'function',
3281
3414
  name: 'initializeEarnVault',
@@ -3283,6 +3416,13 @@ export const erc4626Engine = [
3283
3416
  outputs: [],
3284
3417
  stateMutability: 'nonpayable',
3285
3418
  },
3419
+ {
3420
+ type: 'function',
3421
+ name: 'name',
3422
+ inputs: [],
3423
+ outputs: [{ name: '', type: 'string' }],
3424
+ stateMutability: 'view',
3425
+ },
3286
3426
  {
3287
3427
  type: 'function',
3288
3428
  name: 'owner',
@@ -3304,6 +3444,13 @@ export const erc4626Engine = [
3304
3444
  outputs: [],
3305
3445
  stateMutability: 'nonpayable',
3306
3446
  },
3447
+ {
3448
+ type: 'function',
3449
+ name: 'symbol',
3450
+ inputs: [],
3451
+ outputs: [{ name: '', type: 'string' }],
3452
+ stateMutability: 'view',
3453
+ },
3307
3454
  {
3308
3455
  type: 'function',
3309
3456
  name: 'transferOwnership',
@@ -3311,6 +3458,13 @@ export const erc4626Engine = [
3311
3458
  outputs: [],
3312
3459
  stateMutability: 'nonpayable',
3313
3460
  },
3461
+ {
3462
+ type: 'function',
3463
+ name: 'vault',
3464
+ inputs: [],
3465
+ outputs: [{ name: '', type: 'address' }],
3466
+ stateMutability: 'view',
3467
+ },
3314
3468
  {
3315
3469
  type: 'event',
3316
3470
  name: 'Deposited',
@@ -3405,10 +3559,33 @@ export const erc4626Engine = [
3405
3559
  },
3406
3560
  { type: 'error', name: 'ReentrantCall', inputs: [] },
3407
3561
  { type: 'error', name: 'TransferFailed', inputs: [] },
3562
+ {
3563
+ type: 'error',
3564
+ name: 'UnexpectedAssetsReceived',
3565
+ inputs: [
3566
+ { name: 'expectedAssets', type: 'uint256' },
3567
+ { name: 'actualAssets', type: 'uint256' },
3568
+ ],
3569
+ },
3570
+ {
3571
+ type: 'error',
3572
+ name: 'UnexpectedVenueSharesBurned',
3573
+ inputs: [
3574
+ { name: 'expectedShares', type: 'uint256' },
3575
+ { name: 'actualShares', type: 'uint256' },
3576
+ ],
3577
+ },
3408
3578
  { type: 'error', name: 'ZeroAddress', inputs: [] },
3409
3579
  ];
3410
3580
  export const earnVault = [
3411
3581
  { type: 'constructor', inputs: [], stateMutability: 'nonpayable' },
3582
+ {
3583
+ type: 'function',
3584
+ name: 'acceptDistributor',
3585
+ inputs: [],
3586
+ outputs: [],
3587
+ stateMutability: 'nonpayable',
3588
+ },
3412
3589
  {
3413
3590
  type: 'function',
3414
3591
  name: 'accrueFees',
@@ -3447,6 +3624,20 @@ export const earnVault = [
3447
3624
  outputs: [{ name: '', type: 'address' }],
3448
3625
  stateMutability: 'view',
3449
3626
  },
3627
+ {
3628
+ type: 'function',
3629
+ name: 'cancelDistributorFeeUpdate',
3630
+ inputs: [],
3631
+ outputs: [],
3632
+ stateMutability: 'nonpayable',
3633
+ },
3634
+ {
3635
+ type: 'function',
3636
+ name: 'cancelDistributorTransfer',
3637
+ inputs: [],
3638
+ outputs: [],
3639
+ stateMutability: 'nonpayable',
3640
+ },
3450
3641
  {
3451
3642
  type: 'function',
3452
3643
  name: 'cancelRedeem',
@@ -3461,7 +3652,7 @@ export const earnVault = [
3461
3652
  type: 'function',
3462
3653
  name: 'contribute',
3463
3654
  inputs: [{ name: 'assets', type: 'uint256' }],
3464
- outputs: [{ name: 'venueShares', type: 'uint256' }],
3655
+ outputs: [{ name: 'receivedEngineShares', type: 'uint256' }],
3465
3656
  stateMutability: 'nonpayable',
3466
3657
  },
3467
3658
  {
@@ -3489,13 +3680,6 @@ export const earnVault = [
3489
3680
  outputs: [{ name: 'earnShares', type: 'uint256' }],
3490
3681
  stateMutability: 'nonpayable',
3491
3682
  },
3492
- {
3493
- type: 'function',
3494
- name: 'depositSwapOverride',
3495
- inputs: [{ name: 'inputToken', type: 'address' }],
3496
- outputs: [{ name: 'swapAdapter', type: 'address' }],
3497
- stateMutability: 'view',
3498
- },
3499
3683
  {
3500
3684
  type: 'function',
3501
3685
  name: 'depositVenueShares',
@@ -3521,6 +3705,30 @@ export const earnVault = [
3521
3705
  outputs: [],
3522
3706
  stateMutability: 'nonpayable',
3523
3707
  },
3708
+ {
3709
+ type: 'function',
3710
+ name: 'distributor',
3711
+ inputs: [],
3712
+ outputs: [{ name: '', type: 'address' }],
3713
+ stateMutability: 'view',
3714
+ },
3715
+ {
3716
+ type: 'function',
3717
+ name: 'distributorFee',
3718
+ inputs: [],
3719
+ outputs: [
3720
+ { name: 'recipient', type: 'address' },
3721
+ { name: 'rateBps', type: 'uint16' },
3722
+ ],
3723
+ stateMutability: 'view',
3724
+ },
3725
+ {
3726
+ type: 'function',
3727
+ name: 'distributorUpdateDelay',
3728
+ inputs: [],
3729
+ outputs: [{ name: '', type: 'uint40' }],
3730
+ stateMutability: 'view',
3731
+ },
3524
3732
  {
3525
3733
  type: 'function',
3526
3734
  name: 'earnFees',
@@ -3565,17 +3773,10 @@ export const earnVault = [
3565
3773
  },
3566
3774
  {
3567
3775
  type: 'function',
3568
- name: 'feeAdministrator',
3776
+ name: 'executeDistributorFeeUpdate',
3569
3777
  inputs: [],
3570
- outputs: [{ name: '', type: 'address' }],
3571
- stateMutability: 'view',
3572
- },
3573
- {
3574
- type: 'function',
3575
- name: 'feeGuardian',
3576
- inputs: [],
3577
- outputs: [{ name: '', type: 'address' }],
3578
- stateMutability: 'view',
3778
+ outputs: [{ name: 'feeConfigId', type: 'uint64' }],
3779
+ stateMutability: 'nonpayable',
3579
3780
  },
3580
3781
  {
3581
3782
  type: 'function',
@@ -3602,42 +3803,16 @@ export const earnVault = [
3602
3803
  components: [
3603
3804
  { name: 'emergencyGuardian', type: 'address' },
3604
3805
  { name: 'asyncJanitor', type: 'address' },
3806
+ { name: 'maxManagedAssets', type: 'uint256' },
3605
3807
  { name: 'migrationMode', type: 'uint8' },
3606
3808
  ],
3607
3809
  },
3608
3810
  {
3609
- name: 'feeInit_',
3811
+ name: 'distributorInit_',
3610
3812
  type: 'tuple',
3611
3813
  components: [
3612
- { name: 'administrator', type: 'address' },
3613
- { name: 'guardian', type: 'address' },
3614
- { name: 'fixedFeeCap', type: 'uint96' },
3615
- { name: 'excessFeeCap', type: 'uint96' },
3616
- {
3617
- name: 'initialConfig',
3618
- type: 'tuple',
3619
- components: [
3620
- { name: 'fixedFeeCount', type: 'uint8' },
3621
- {
3622
- name: 'fixedFees',
3623
- type: 'tuple[4]',
3624
- components: [
3625
- { name: 'account', type: 'address' },
3626
- { name: 'rate', type: 'uint96' },
3627
- ],
3628
- },
3629
- {
3630
- name: 'excess',
3631
- type: 'tuple',
3632
- components: [
3633
- { name: 'enabled', type: 'bool' },
3634
- { name: 'account', type: 'address' },
3635
- { name: 'annualTargetRate', type: 'uint96' },
3636
- { name: 'excessFeeRate', type: 'uint96' },
3637
- ],
3638
- },
3639
- ],
3640
- },
3814
+ { name: 'distributor', type: 'address' },
3815
+ { name: 'updateDelay', type: 'uint40' },
3641
3816
  ],
3642
3817
  },
3643
3818
  ],
@@ -3651,6 +3826,13 @@ export const earnVault = [
3651
3826
  outputs: [{ name: '', type: 'bool' }],
3652
3827
  stateMutability: 'view',
3653
3828
  },
3829
+ {
3830
+ type: 'function',
3831
+ name: 'maxManagedAssets',
3832
+ inputs: [],
3833
+ outputs: [{ name: '', type: 'uint256' }],
3834
+ stateMutability: 'view',
3835
+ },
3654
3836
  {
3655
3837
  type: 'function',
3656
3838
  name: 'migrateEngine',
@@ -3676,6 +3858,31 @@ export const earnVault = [
3676
3858
  outputs: [{ name: '', type: 'address' }],
3677
3859
  stateMutability: 'view',
3678
3860
  },
3861
+ {
3862
+ type: 'function',
3863
+ name: 'pendingDistributor',
3864
+ inputs: [],
3865
+ outputs: [{ name: '', type: 'address' }],
3866
+ stateMutability: 'view',
3867
+ },
3868
+ {
3869
+ type: 'function',
3870
+ name: 'pendingDistributorFeeUpdate',
3871
+ inputs: [],
3872
+ outputs: [
3873
+ {
3874
+ name: '',
3875
+ type: 'tuple',
3876
+ components: [
3877
+ { name: 'recipient', type: 'address' },
3878
+ { name: 'rateBps', type: 'uint16' },
3879
+ { name: 'executableAt', type: 'uint40' },
3880
+ { name: 'pending', type: 'bool' },
3881
+ ],
3882
+ },
3883
+ ],
3884
+ stateMutability: 'view',
3885
+ },
3679
3886
  {
3680
3887
  type: 'function',
3681
3888
  name: 'pendingRedeem',
@@ -3688,7 +3895,7 @@ export const earnVault = [
3688
3895
  { name: 'receiver', type: 'address' },
3689
3896
  { name: 'requester', type: 'address' },
3690
3897
  { name: 'burnedEarnShares', type: 'uint256' },
3691
- { name: 'venueShares', type: 'uint256' },
3898
+ { name: 'engineShares', type: 'uint256' },
3692
3899
  { name: 'open', type: 'bool' },
3693
3900
  ],
3694
3901
  },
@@ -3722,9 +3929,9 @@ export const earnVault = [
3722
3929
  },
3723
3930
  {
3724
3931
  type: 'function',
3725
- name: 'redeemSwapOverride',
3726
- inputs: [{ name: 'outputToken', type: 'address' }],
3727
- outputs: [{ name: 'swapAdapter', type: 'address' }],
3932
+ name: 'remainingDepositCapacity',
3933
+ inputs: [],
3934
+ outputs: [{ name: 'assets', type: 'uint256' }],
3728
3935
  stateMutability: 'view',
3729
3936
  },
3730
3937
  {
@@ -3740,10 +3947,10 @@ export const earnVault = [
3740
3947
  },
3741
3948
  {
3742
3949
  type: 'function',
3743
- name: 'setDepositSwapOverride',
3950
+ name: 'scheduleDistributorFeeUpdate',
3744
3951
  inputs: [
3745
- { name: 'inputToken', type: 'address' },
3746
- { name: 'swapAdapter', type: 'address' },
3952
+ { name: 'recipient', type: 'address' },
3953
+ { name: 'rateBps', type: 'uint16' },
3747
3954
  ],
3748
3955
  outputs: [],
3749
3956
  stateMutability: 'nonpayable',
@@ -3779,7 +3986,7 @@ export const earnVault = [
3779
3986
  type: 'tuple[4]',
3780
3987
  components: [
3781
3988
  { name: 'account', type: 'address' },
3782
- { name: 'rate', type: 'uint96' },
3989
+ { name: 'rateBps', type: 'uint16' },
3783
3990
  ],
3784
3991
  },
3785
3992
  {
@@ -3788,8 +3995,8 @@ export const earnVault = [
3788
3995
  components: [
3789
3996
  { name: 'enabled', type: 'bool' },
3790
3997
  { name: 'account', type: 'address' },
3791
- { name: 'annualTargetRate', type: 'uint96' },
3792
- { name: 'excessFeeRate', type: 'uint96' },
3998
+ { name: 'annualTargetRateBps', type: 'uint16' },
3999
+ { name: 'excessFeeRateBps', type: 'uint16' },
3793
4000
  ],
3794
4001
  },
3795
4002
  ],
@@ -3800,11 +4007,8 @@ export const earnVault = [
3800
4007
  },
3801
4008
  {
3802
4009
  type: 'function',
3803
- name: 'setRedeemSwapOverride',
3804
- inputs: [
3805
- { name: 'outputToken', type: 'address' },
3806
- { name: 'swapAdapter', type: 'address' },
3807
- ],
4010
+ name: 'setMaxManagedAssets',
4011
+ inputs: [{ name: 'newMaxManagedAssets', type: 'uint256' }],
3808
4012
  outputs: [],
3809
4013
  stateMutability: 'nonpayable',
3810
4014
  },
@@ -3815,6 +4019,13 @@ export const earnVault = [
3815
4019
  outputs: [{ name: '', type: 'uint256' }],
3816
4020
  stateMutability: 'view',
3817
4021
  },
4022
+ {
4023
+ type: 'function',
4024
+ name: 'transferDistributor',
4025
+ inputs: [{ name: 'newDistributor', type: 'address' }],
4026
+ outputs: [],
4027
+ stateMutability: 'nonpayable',
4028
+ },
3818
4029
  {
3819
4030
  type: 'function',
3820
4031
  name: 'withdrawExact',
@@ -3832,7 +4043,7 @@ export const earnVault = [
3832
4043
  inputs: [
3833
4044
  { name: 'caller', type: 'address', indexed: true },
3834
4045
  { name: 'assets', type: 'uint256', indexed: false },
3835
- { name: 'venueShares', type: 'uint256', indexed: false },
4046
+ { name: 'engineShares', type: 'uint256', indexed: false },
3836
4047
  { name: 'anchorEngineShares', type: 'uint256', indexed: false },
3837
4048
  { name: 'anchorEarnShares', type: 'uint256', indexed: false },
3838
4049
  ],
@@ -3849,21 +4060,66 @@ export const earnVault = [
3849
4060
  },
3850
4061
  {
3851
4062
  type: 'event',
3852
- name: 'DepositSwapOverrideSet',
4063
+ name: 'Deposited',
3853
4064
  inputs: [
3854
- { name: 'inputToken', type: 'address', indexed: true },
3855
- { name: 'swapAdapter', type: 'address', indexed: true },
4065
+ { name: 'caller', type: 'address', indexed: true },
4066
+ { name: 'receiver', type: 'address', indexed: true },
4067
+ { name: 'assets', type: 'uint256', indexed: false },
4068
+ { name: 'earnShares', type: 'uint256', indexed: false },
3856
4069
  ],
3857
4070
  anonymous: false,
3858
4071
  },
3859
4072
  {
3860
4073
  type: 'event',
3861
- name: 'Deposited',
4074
+ name: 'DistributorFeeUpdateCancelled',
4075
+ inputs: [{ name: 'distributor', type: 'address', indexed: true }],
4076
+ anonymous: false,
4077
+ },
4078
+ {
4079
+ type: 'event',
4080
+ name: 'DistributorFeeUpdateScheduled',
3862
4081
  inputs: [
3863
- { name: 'caller', type: 'address', indexed: true },
3864
- { name: 'receiver', type: 'address', indexed: true },
3865
- { name: 'assets', type: 'uint256', indexed: false },
3866
- { name: 'earnShares', type: 'uint256', indexed: false },
4082
+ { name: 'distributor', type: 'address', indexed: true },
4083
+ { name: 'recipient', type: 'address', indexed: true },
4084
+ { name: 'rateBps', type: 'uint16', indexed: false },
4085
+ { name: 'executableAt', type: 'uint40', indexed: false },
4086
+ ],
4087
+ anonymous: false,
4088
+ },
4089
+ {
4090
+ type: 'event',
4091
+ name: 'DistributorFeeUpdated',
4092
+ inputs: [
4093
+ { name: 'recipient', type: 'address', indexed: true },
4094
+ { name: 'rateBps', type: 'uint16', indexed: false },
4095
+ { name: 'feeConfigId', type: 'uint64', indexed: true },
4096
+ ],
4097
+ anonymous: false,
4098
+ },
4099
+ {
4100
+ type: 'event',
4101
+ name: 'DistributorTransferCancelled',
4102
+ inputs: [
4103
+ { name: 'distributor', type: 'address', indexed: true },
4104
+ { name: 'pendingDistributor', type: 'address', indexed: true },
4105
+ ],
4106
+ anonymous: false,
4107
+ },
4108
+ {
4109
+ type: 'event',
4110
+ name: 'DistributorTransferStarted',
4111
+ inputs: [
4112
+ { name: 'distributor', type: 'address', indexed: true },
4113
+ { name: 'pendingDistributor', type: 'address', indexed: true },
4114
+ ],
4115
+ anonymous: false,
4116
+ },
4117
+ {
4118
+ type: 'event',
4119
+ name: 'DistributorTransferred',
4120
+ inputs: [
4121
+ { name: 'previousDistributor', type: 'address', indexed: true },
4122
+ { name: 'newDistributor', type: 'address', indexed: true },
3867
4123
  ],
3868
4124
  anonymous: false,
3869
4125
  },
@@ -3891,6 +4147,15 @@ export const earnVault = [
3891
4147
  ],
3892
4148
  anonymous: false,
3893
4149
  },
4150
+ {
4151
+ type: 'event',
4152
+ name: 'MaxManagedAssetsChanged',
4153
+ inputs: [
4154
+ { name: 'previousMaxManagedAssets', type: 'uint256', indexed: false },
4155
+ { name: 'newMaxManagedAssets', type: 'uint256', indexed: false },
4156
+ ],
4157
+ anonymous: false,
4158
+ },
3894
4159
  {
3895
4160
  type: 'event',
3896
4161
  name: 'RedeemCancelled',
@@ -3924,15 +4189,6 @@ export const earnVault = [
3924
4189
  ],
3925
4190
  anonymous: false,
3926
4191
  },
3927
- {
3928
- type: 'event',
3929
- name: 'RedeemSwapOverrideSet',
3930
- inputs: [
3931
- { name: 'outputToken', type: 'address', indexed: true },
3932
- { name: 'swapAdapter', type: 'address', indexed: true },
3933
- ],
3934
- anonymous: false,
3935
- },
3936
4192
  {
3937
4193
  type: 'event',
3938
4194
  name: 'Redeemed',
@@ -3951,7 +4207,7 @@ export const earnVault = [
3951
4207
  { name: 'caller', type: 'address', indexed: true },
3952
4208
  { name: 'receiver', type: 'address', indexed: true },
3953
4209
  { name: 'requestedVenueShares', type: 'uint256', indexed: false },
3954
- { name: 'receivedVenueShares', type: 'uint256', indexed: false },
4210
+ { name: 'receivedEngineShares', type: 'uint256', indexed: false },
3955
4211
  { name: 'earnShares', type: 'uint256', indexed: false },
3956
4212
  ],
3957
4213
  anonymous: false,
@@ -3967,8 +4223,16 @@ export const earnVault = [
3967
4223
  ],
3968
4224
  anonymous: false,
3969
4225
  },
4226
+ { type: 'error', name: 'ActiveSupplyWithoutBacking', inputs: [] },
3970
4227
  { type: 'error', name: 'AlreadyInitialized', inputs: [] },
3971
4228
  { type: 'error', name: 'DepositsPaused', inputs: [] },
4229
+ { type: 'error', name: 'DistributorFeeUpdateNotPending', inputs: [] },
4230
+ {
4231
+ type: 'error',
4232
+ name: 'DistributorFeeUpdateNotReady',
4233
+ inputs: [{ name: 'executableAt', type: 'uint40' }],
4234
+ },
4235
+ { type: 'error', name: 'DistributorTransferNotPending', inputs: [] },
3972
4236
  {
3973
4237
  type: 'error',
3974
4238
  name: 'DuplicateRequest',
@@ -3980,20 +4244,36 @@ export const earnVault = [
3980
4244
  name: 'EngineCapabilityUnsupported',
3981
4245
  inputs: [{ name: 'interfaceId', type: 'bytes4' }],
3982
4246
  },
4247
+ { type: 'error', name: 'EngineExitUnsupported', inputs: [] },
3983
4248
  { type: 'error', name: 'ExceedsMaxEarnShares', inputs: [] },
3984
4249
  {
3985
4250
  type: 'error',
3986
4251
  name: 'ExcessiveConversionLoss',
3987
4252
  inputs: [
3988
- { name: 'inputEngineShares', type: 'uint256' },
3989
- { name: 'representedEngineShares', type: 'uint256' },
4253
+ { name: 'inputShares', type: 'uint256' },
4254
+ { name: 'representedShares', type: 'uint256' },
3990
4255
  ],
3991
4256
  },
4257
+ {
4258
+ type: 'error',
4259
+ name: 'FinalizedAssetMismatch',
4260
+ inputs: [{ name: 'finalizedAsset', type: 'address' }],
4261
+ },
4262
+ { type: 'error', name: 'GlobalFeeDisableUnavailable', inputs: [] },
3992
4263
  { type: 'error', name: 'InitialEarnShareSupplyNotZero', inputs: [] },
3993
4264
  { type: 'error', name: 'InsufficientOutput', inputs: [] },
4265
+ { type: 'error', name: 'InvalidDistributorConfiguration', inputs: [] },
4266
+ { type: 'error', name: 'InvalidDistributorFeeConfiguration', inputs: [] },
3994
4267
  { type: 'error', name: 'InvalidEarnDecimals', inputs: [] },
3995
4268
  { type: 'error', name: 'InvalidEngineShareScale', inputs: [] },
3996
- { type: 'error', name: 'InvalidSwapOverride', inputs: [] },
4269
+ {
4270
+ type: 'error',
4271
+ name: 'MaxManagedAssetsExceeded',
4272
+ inputs: [
4273
+ { name: 'maximum', type: 'uint256' },
4274
+ { name: 'actual', type: 'uint256' },
4275
+ ],
4276
+ },
3997
4277
  {
3998
4278
  type: 'error',
3999
4279
  name: 'MinimumAssetsNotMet',
@@ -4019,11 +4299,11 @@ export const earnVault = [
4019
4299
  ],
4020
4300
  },
4021
4301
  { type: 'error', name: 'NoEarnShares', inputs: [] },
4302
+ { type: 'error', name: 'NotDistributor', inputs: [] },
4022
4303
  { type: 'error', name: 'NotEmergencyGuardianOrOperator', inputs: [] },
4023
4304
  { type: 'error', name: 'NotEngine', inputs: [] },
4024
- { type: 'error', name: 'NotFeeAdministrator', inputs: [] },
4025
- { type: 'error', name: 'NotFeeGuardian', inputs: [] },
4026
4305
  { type: 'error', name: 'NotOperator', inputs: [] },
4306
+ { type: 'error', name: 'NotPendingDistributor', inputs: [] },
4027
4307
  { type: 'error', name: 'NotRequesterOrJanitor', inputs: [] },
4028
4308
  { type: 'error', name: 'OperatorMigrationDisabled', inputs: [] },
4029
4309
  { type: 'error', name: 'PendingRedeemsOpen', inputs: [] },
@@ -4112,7 +4392,7 @@ export const earnFees = [
4112
4392
  {
4113
4393
  type: 'function',
4114
4394
  name: 'disableFees',
4115
- inputs: [{ name: 'guardian', type: 'address' }],
4395
+ inputs: [{ name: 'operator', type: 'address' }],
4116
4396
  outputs: [],
4117
4397
  stateMutability: 'nonpayable',
4118
4398
  },
@@ -4137,13 +4417,6 @@ export const earnFees = [
4137
4417
  outputs: [{ name: '', type: 'address' }],
4138
4418
  stateMutability: 'view',
4139
4419
  },
4140
- {
4141
- type: 'function',
4142
- name: 'excessFeeCap',
4143
- inputs: [],
4144
- outputs: [{ name: '', type: 'uint96' }],
4145
- stateMutability: 'view',
4146
- },
4147
4420
  {
4148
4421
  type: 'function',
4149
4422
  name: 'feeConfig',
@@ -4159,7 +4432,7 @@ export const earnFees = [
4159
4432
  type: 'tuple[4]',
4160
4433
  components: [
4161
4434
  { name: 'account', type: 'address' },
4162
- { name: 'rate', type: 'uint96' },
4435
+ { name: 'rateBps', type: 'uint16' },
4163
4436
  ],
4164
4437
  },
4165
4438
  {
@@ -4168,8 +4441,8 @@ export const earnFees = [
4168
4441
  components: [
4169
4442
  { name: 'enabled', type: 'bool' },
4170
4443
  { name: 'account', type: 'address' },
4171
- { name: 'annualTargetRate', type: 'uint96' },
4172
- { name: 'excessFeeRate', type: 'uint96' },
4444
+ { name: 'annualTargetRateBps', type: 'uint16' },
4445
+ { name: 'excessFeeRateBps', type: 'uint16' },
4173
4446
  ],
4174
4447
  },
4175
4448
  ],
@@ -4201,13 +4474,6 @@ export const earnFees = [
4201
4474
  outputs: [{ name: '', type: 'bool' }],
4202
4475
  stateMutability: 'view',
4203
4476
  },
4204
- {
4205
- type: 'function',
4206
- name: 'fixedFeeCap',
4207
- inputs: [],
4208
- outputs: [{ name: '', type: 'uint96' }],
4209
- stateMutability: 'view',
4210
- },
4211
4477
  {
4212
4478
  type: 'function',
4213
4479
  name: 'highWaterMark',
@@ -4222,36 +4488,26 @@ export const earnFees = [
4222
4488
  { name: 'earnVault_', type: 'address' },
4223
4489
  { name: 'earnShare_', type: 'address' },
4224
4490
  {
4225
- name: 'init',
4491
+ name: 'initialConfig',
4226
4492
  type: 'tuple',
4227
4493
  components: [
4228
- { name: 'administrator', type: 'address' },
4229
- { name: 'guardian', type: 'address' },
4230
- { name: 'fixedFeeCap', type: 'uint96' },
4231
- { name: 'excessFeeCap', type: 'uint96' },
4494
+ { name: 'fixedFeeCount', type: 'uint8' },
4495
+ {
4496
+ name: 'fixedFees',
4497
+ type: 'tuple[4]',
4498
+ components: [
4499
+ { name: 'account', type: 'address' },
4500
+ { name: 'rateBps', type: 'uint16' },
4501
+ ],
4502
+ },
4232
4503
  {
4233
- name: 'initialConfig',
4504
+ name: 'excess',
4234
4505
  type: 'tuple',
4235
4506
  components: [
4236
- { name: 'fixedFeeCount', type: 'uint8' },
4237
- {
4238
- name: 'fixedFees',
4239
- type: 'tuple[4]',
4240
- components: [
4241
- { name: 'account', type: 'address' },
4242
- { name: 'rate', type: 'uint96' },
4243
- ],
4244
- },
4245
- {
4246
- name: 'excess',
4247
- type: 'tuple',
4248
- components: [
4249
- { name: 'enabled', type: 'bool' },
4250
- { name: 'account', type: 'address' },
4251
- { name: 'annualTargetRate', type: 'uint96' },
4252
- { name: 'excessFeeRate', type: 'uint96' },
4253
- ],
4254
- },
4507
+ { name: 'enabled', type: 'bool' },
4508
+ { name: 'account', type: 'address' },
4509
+ { name: 'annualTargetRateBps', type: 'uint16' },
4510
+ { name: 'excessFeeRateBps', type: 'uint16' },
4255
4511
  ],
4256
4512
  },
4257
4513
  ],
@@ -4346,7 +4602,7 @@ export const earnFees = [
4346
4602
  type: 'tuple[4]',
4347
4603
  components: [
4348
4604
  { name: 'account', type: 'address' },
4349
- { name: 'rate', type: 'uint96' },
4605
+ { name: 'rateBps', type: 'uint16' },
4350
4606
  ],
4351
4607
  },
4352
4608
  {
@@ -4355,8 +4611,8 @@ export const earnFees = [
4355
4611
  components: [
4356
4612
  { name: 'enabled', type: 'bool' },
4357
4613
  { name: 'account', type: 'address' },
4358
- { name: 'annualTargetRate', type: 'uint96' },
4359
- { name: 'excessFeeRate', type: 'uint96' },
4614
+ { name: 'annualTargetRateBps', type: 'uint16' },
4615
+ { name: 'excessFeeRateBps', type: 'uint16' },
4360
4616
  ],
4361
4617
  },
4362
4618
  ],
@@ -4406,6 +4662,39 @@ export const earnFees = [
4406
4662
  outputs: [{ name: '', type: 'uint256' }],
4407
4663
  stateMutability: 'view',
4408
4664
  },
4665
+ {
4666
+ type: 'function',
4667
+ name: 'validateFeeConfig',
4668
+ inputs: [
4669
+ {
4670
+ name: 'config',
4671
+ type: 'tuple',
4672
+ components: [
4673
+ { name: 'fixedFeeCount', type: 'uint8' },
4674
+ {
4675
+ name: 'fixedFees',
4676
+ type: 'tuple[4]',
4677
+ components: [
4678
+ { name: 'account', type: 'address' },
4679
+ { name: 'rateBps', type: 'uint16' },
4680
+ ],
4681
+ },
4682
+ {
4683
+ name: 'excess',
4684
+ type: 'tuple',
4685
+ components: [
4686
+ { name: 'enabled', type: 'bool' },
4687
+ { name: 'account', type: 'address' },
4688
+ { name: 'annualTargetRateBps', type: 'uint16' },
4689
+ { name: 'excessFeeRateBps', type: 'uint16' },
4690
+ ],
4691
+ },
4692
+ ],
4693
+ },
4694
+ ],
4695
+ outputs: [],
4696
+ stateMutability: 'view',
4697
+ },
4409
4698
  {
4410
4699
  type: 'event',
4411
4700
  name: 'FeeBaselinesInitialized',
@@ -4474,12 +4763,10 @@ export const earnFees = [
4474
4763
  {
4475
4764
  type: 'event',
4476
4765
  name: 'FeesDisabled',
4477
- inputs: [{ name: 'guardian', type: 'address', indexed: true }],
4766
+ inputs: [{ name: 'operator', type: 'address', indexed: true }],
4478
4767
  anonymous: false,
4479
4768
  },
4480
4769
  { type: 'error', name: 'AlreadyInitialized', inputs: [] },
4481
- { type: 'error', name: 'FeeCapTooHigh', inputs: [] },
4482
- { type: 'error', name: 'FeesPermanentlyDisabled', inputs: [] },
4483
4770
  { type: 'error', name: 'InsufficientClaimableEarnShares', inputs: [] },
4484
4771
  { type: 'error', name: 'InvalidFeeClaimReceiver', inputs: [] },
4485
4772
  { type: 'error', name: 'InvalidFeeConfiguration', inputs: [] },
@@ -4503,6 +4790,13 @@ export const earnEngine = [
4503
4790
  outputs: [{ name: 'engineShares', type: 'uint256' }],
4504
4791
  stateMutability: 'nonpayable',
4505
4792
  },
4793
+ {
4794
+ type: 'function',
4795
+ name: 'earnVault',
4796
+ inputs: [],
4797
+ outputs: [{ name: '', type: 'address' }],
4798
+ stateMutability: 'view',
4799
+ },
4506
4800
  {
4507
4801
  type: 'function',
4508
4802
  name: 'name',
@@ -4693,10 +4987,7 @@ export const vedaEngine = [
4693
4987
  name: 'getClaim',
4694
4988
  inputs: [{ name: 'requestId', type: 'bytes32' }],
4695
4989
  outputs: [
4696
- { name: 'open', type: 'bool' },
4697
- { name: 'paid', type: 'bool' },
4698
- { name: 'claimable', type: 'bool' },
4699
- { name: 'recorded', type: 'bool' },
4990
+ { name: 'status', type: 'uint8' },
4700
4991
  {
4701
4992
  name: 'request',
4702
4993
  type: 'tuple',
@@ -4815,7 +5106,7 @@ export const vedaEngine = [
4815
5106
  name: 'RedeemCancelledOnQueue',
4816
5107
  inputs: [
4817
5108
  { name: 'requestId', type: 'bytes32', indexed: true },
4818
- { name: 'venueShares', type: 'uint128', indexed: false },
5109
+ { name: 'engineShares', type: 'uint128', indexed: false },
4819
5110
  ],
4820
5111
  anonymous: false,
4821
5112
  },
@@ -4835,7 +5126,7 @@ export const vedaEngine = [
4835
5126
  inputs: [
4836
5127
  { name: 'requestId', type: 'bytes32', indexed: true },
4837
5128
  { name: 'assetOut', type: 'address', indexed: true },
4838
- { name: 'venueShares', type: 'uint128', indexed: false },
5129
+ { name: 'engineShares', type: 'uint128', indexed: false },
4839
5130
  ],
4840
5131
  anonymous: false,
4841
5132
  },
@@ -4909,7 +5200,7 @@ export const vedaEngine = [
4909
5200
  name: 'AssetsNotArrived',
4910
5201
  inputs: [{ name: 'requestId', type: 'bytes32' }],
4911
5202
  },
4912
- { type: 'error', name: 'CannotSweepVenueShares', inputs: [] },
5203
+ { type: 'error', name: 'CannotSweepEngineBacking', inputs: [] },
4913
5204
  {
4914
5205
  type: 'error',
4915
5206
  name: 'ClaimNotClaimable',
@@ -4936,6 +5227,20 @@ export const vedaEngine = [
4936
5227
  inputs: [{ name: 'requestId', type: 'bytes32' }],
4937
5228
  },
4938
5229
  { type: 'error', name: 'EarnVaultNotSet', inputs: [] },
5230
+ { type: 'error', name: 'EmptyMetadata', inputs: [] },
5231
+ {
5232
+ type: 'error',
5233
+ name: 'EngineSharesTooLarge',
5234
+ inputs: [{ name: 'engineShares', type: 'uint256' }],
5235
+ },
5236
+ {
5237
+ type: 'error',
5238
+ name: 'InsufficientAssetsReceived',
5239
+ inputs: [
5240
+ { name: 'minimumAssets', type: 'uint256' },
5241
+ { name: 'actualAssets', type: 'uint256' },
5242
+ ],
5243
+ },
4939
5244
  {
4940
5245
  type: 'error',
4941
5246
  name: 'InvalidAsset',
@@ -4999,6 +5304,7 @@ export const vedaEngine = [
4999
5304
  name: 'OwnableUnauthorizedAccount',
5000
5305
  inputs: [{ name: 'account', type: 'address' }],
5001
5306
  },
5307
+ { type: 'error', name: 'QueueUnavailable', inputs: [] },
5002
5308
  {
5003
5309
  type: 'error',
5004
5310
  name: 'RateChangedWithinTransaction',
@@ -5008,6 +5314,14 @@ export const vedaEngine = [
5008
5314
  ],
5009
5315
  },
5010
5316
  { type: 'error', name: 'ReentrantCall', inputs: [] },
5317
+ {
5318
+ type: 'error',
5319
+ name: 'RegistryEngineMismatch',
5320
+ inputs: [
5321
+ { name: 'expected', type: 'address' },
5322
+ { name: 'actual', type: 'address' },
5323
+ ],
5324
+ },
5011
5325
  {
5012
5326
  type: 'error',
5013
5327
  name: 'RequestDetailsNotRecorded',
@@ -5031,7 +5345,37 @@ export const vedaEngine = [
5031
5345
  { name: 'maxAge', type: 'uint256' },
5032
5346
  ],
5033
5347
  },
5348
+ {
5349
+ type: 'error',
5350
+ name: 'SweepExceedsAvailableBalance',
5351
+ inputs: [
5352
+ { name: 'token', type: 'address' },
5353
+ { name: 'available', type: 'uint256' },
5354
+ { name: 'requested', type: 'uint256' },
5355
+ ],
5356
+ },
5034
5357
  { type: 'error', name: 'TransferFailed', inputs: [] },
5358
+ {
5359
+ type: 'error',
5360
+ name: 'UnexpectedAssetsReceived',
5361
+ inputs: [
5362
+ { name: 'expectedAssets', type: 'uint256' },
5363
+ { name: 'actualAssets', type: 'uint256' },
5364
+ ],
5365
+ },
5366
+ {
5367
+ type: 'error',
5368
+ name: 'UnexpectedVenueSharesBurned',
5369
+ inputs: [
5370
+ { name: 'expectedShares', type: 'uint256' },
5371
+ { name: 'actualShares', type: 'uint256' },
5372
+ ],
5373
+ },
5374
+ {
5375
+ type: 'error',
5376
+ name: 'UnsupportedAccountantFreshness',
5377
+ inputs: [{ name: 'accountant', type: 'address' }],
5378
+ },
5035
5379
  {
5036
5380
  type: 'error',
5037
5381
  name: 'VedaRateOutOfBounds',
@@ -5041,17 +5385,26 @@ export const vedaEngine = [
5041
5385
  { name: 'maxRate', type: 'uint256' },
5042
5386
  ],
5043
5387
  },
5044
- {
5045
- type: 'error',
5046
- name: 'VenueSharesTooLarge',
5047
- inputs: [{ name: 'venueShares', type: 'uint256' }],
5048
- },
5049
5388
  { type: 'error', name: 'ZeroAddress', inputs: [] },
5050
5389
  ];
5051
5390
  export const earnRouter = [
5052
5391
  {
5053
5392
  type: 'function',
5054
- name: 'STABLECOIN_DEX',
5393
+ name: 'allowedZoneId',
5394
+ inputs: [],
5395
+ outputs: [{ name: '', type: 'uint32' }],
5396
+ stateMutability: 'view',
5397
+ },
5398
+ {
5399
+ type: 'function',
5400
+ name: 'earnShare',
5401
+ inputs: [],
5402
+ outputs: [{ name: '', type: 'address' }],
5403
+ stateMutability: 'view',
5404
+ },
5405
+ {
5406
+ type: 'function',
5407
+ name: 'earnVault',
5055
5408
  inputs: [],
5056
5409
  outputs: [{ name: '', type: 'address' }],
5057
5410
  stateMutability: 'view',
@@ -5070,6 +5423,20 @@ export const earnRouter = [
5070
5423
  outputs: [{ name: '', type: 'bytes4' }],
5071
5424
  stateMutability: 'nonpayable',
5072
5425
  },
5426
+ {
5427
+ type: 'function',
5428
+ name: 'privateAsset',
5429
+ inputs: [],
5430
+ outputs: [{ name: '', type: 'address' }],
5431
+ stateMutability: 'view',
5432
+ },
5433
+ {
5434
+ type: 'function',
5435
+ name: 'reserveToken',
5436
+ inputs: [],
5437
+ outputs: [{ name: '', type: 'address' }],
5438
+ stateMutability: 'view',
5439
+ },
5073
5440
  {
5074
5441
  type: 'function',
5075
5442
  name: 'supportsFlow',
@@ -5077,6 +5444,27 @@ export const earnRouter = [
5077
5444
  outputs: [{ name: '', type: 'bool' }],
5078
5445
  stateMutability: 'pure',
5079
5446
  },
5447
+ {
5448
+ type: 'function',
5449
+ name: 'tokenAuthority',
5450
+ inputs: [],
5451
+ outputs: [{ name: '', type: 'address' }],
5452
+ stateMutability: 'view',
5453
+ },
5454
+ {
5455
+ type: 'function',
5456
+ name: 'transactionLimit',
5457
+ inputs: [],
5458
+ outputs: [{ name: '', type: 'uint256' }],
5459
+ stateMutability: 'view',
5460
+ },
5461
+ {
5462
+ type: 'function',
5463
+ name: 'vaultAsset',
5464
+ inputs: [],
5465
+ outputs: [{ name: '', type: 'address' }],
5466
+ stateMutability: 'view',
5467
+ },
5080
5468
  {
5081
5469
  type: 'event',
5082
5470
  name: 'EarnDeposit',
@@ -5105,31 +5493,32 @@ export const earnRouter = [
5105
5493
  ],
5106
5494
  anonymous: false,
5107
5495
  },
5496
+ { type: 'error', name: 'AmountExceedsLimit', inputs: [] },
5108
5497
  { type: 'error', name: 'AmountOverflow', inputs: [] },
5109
5498
  { type: 'error', name: 'BadFlow', inputs: [] },
5110
5499
  { type: 'error', name: 'InsufficientOutput', inputs: [] },
5500
+ { type: 'error', name: 'InvalidAuthority', inputs: [] },
5111
5501
  { type: 'error', name: 'InvalidEarnVault', inputs: [] },
5502
+ { type: 'error', name: 'InvalidPrivateAsset', inputs: [] },
5503
+ { type: 'error', name: 'InvalidReturnToken', inputs: [] },
5504
+ { type: 'error', name: 'InvalidRoutePair', inputs: [] },
5112
5505
  { type: 'error', name: 'InvalidSourcePortal', inputs: [] },
5113
- { type: 'error', name: 'InvalidTargetPortal', inputs: [] },
5114
- { type: 'error', name: 'InvalidToken', inputs: [] },
5506
+ { type: 'error', name: 'MismatchedTransactionLimit', inputs: [] },
5115
5507
  { type: 'error', name: 'NotZoneMessenger', inputs: [] },
5116
5508
  { type: 'error', name: 'ReentrantCall', inputs: [] },
5117
5509
  { type: 'error', name: 'ResidualBalance', inputs: [] },
5118
5510
  { type: 'error', name: 'TokenCallFailed', inputs: [] },
5119
5511
  { type: 'error', name: 'TokenCallFalse', inputs: [] },
5120
- { type: 'error', name: 'WrongEarnShare', inputs: [] },
5121
- { type: 'error', name: 'WrongOutputToken', inputs: [] },
5122
- { type: 'error', name: 'WrongSourceAsset', inputs: [] },
5512
+ { type: 'error', name: 'WrongInputToken', inputs: [] },
5513
+ { type: 'error', name: 'WrongSourceZone', inputs: [] },
5123
5514
  { type: 'error', name: 'ZeroAddress', inputs: [] },
5124
5515
  { type: 'error', name: 'ZeroAmount', inputs: [] },
5125
5516
  ];
5126
- // `ZoneOnlyEarnRouter.CallbackData` parameter for `encodeAbiParameters`.
5517
+ // `SingleZoneEarnRouter.CallbackData` parameter for `encodeAbiParameters`.
5127
5518
  export const earnRouterCallbackData = [
5128
5519
  {
5129
5520
  components: [
5130
5521
  { name: 'flow', type: 'uint8' },
5131
- { name: 'earnVault', type: 'address' },
5132
- { name: 'outputToken', type: 'address' },
5133
5522
  { name: 'minVaultAssets', type: 'uint128' },
5134
5523
  { name: 'minEarnShares', type: 'uint128' },
5135
5524
  { name: 'minOutputAmount', type: 'uint128' },