@layerzerolabs/protocol-stellar-v2 0.2.13 → 0.2.18

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 (435) hide show
  1. package/.turbo/turbo-build.log +484 -337
  2. package/.turbo/turbo-lint.log +126 -56
  3. package/.turbo/turbo-test.log +1403 -984
  4. package/Cargo.lock +142 -3
  5. package/Cargo.toml +5 -1
  6. package/contracts/ERROR_SPEC.md +44 -0
  7. package/contracts/common-macros/src/auth.rs +113 -0
  8. package/contracts/common-macros/src/contract_ttl.rs +84 -0
  9. package/contracts/common-macros/src/lib.rs +219 -29
  10. package/contracts/common-macros/src/lz_contract.rs +83 -0
  11. package/contracts/common-macros/src/storage.rs +1 -1
  12. package/contracts/common-macros/src/tests/{ownable.rs → auth.rs} +48 -15
  13. package/contracts/common-macros/src/tests/contract_ttl.rs +662 -0
  14. package/contracts/common-macros/src/tests/mod.rs +3 -2
  15. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_multisig_code.snap +20 -0
  16. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_ownable_code.snap +24 -0
  17. package/contracts/common-macros/src/tests/snapshots/{common_macros__tests__ownable__snapshot_only_owner_preserves_function_signature.snap → common_macros__tests__auth__snapshot_only_auth_preserves_function_signature.snap} +4 -4
  18. package/contracts/common-macros/src/tests/snapshots/{common_macros__tests__contract_impl__snapshot_generated_contract_impl_code.snap → common_macros__tests__contract_ttl__snapshot_generated_contractimpl_code.snap} +26 -10
  19. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__contract_ttl__snapshot_generated_contracttrait_code.snap +69 -0
  20. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__storage__snapshot_generated_storage_code.snap +48 -48
  21. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ttl_configurable__snapshot_generated_ttl_configurable_code.snap +7 -41
  22. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +21 -0
  23. package/contracts/common-macros/src/tests/upgradeable.rs +31 -0
  24. package/contracts/common-macros/src/ttl_configurable.rs +21 -66
  25. package/contracts/common-macros/src/ttl_extendable.rs +36 -0
  26. package/contracts/common-macros/src/upgradeable.rs +76 -0
  27. package/contracts/common-macros/src/utils.rs +9 -0
  28. package/contracts/endpoint-v2/src/constants.rs +4 -4
  29. package/contracts/endpoint-v2/src/endpoint_v2.rs +58 -36
  30. package/contracts/endpoint-v2/src/errors.rs +4 -3
  31. package/contracts/endpoint-v2/src/events.rs +1 -1
  32. package/contracts/endpoint-v2/src/message_lib_manager.rs +18 -5
  33. package/contracts/endpoint-v2/src/messaging_channel.rs +11 -1
  34. package/contracts/endpoint-v2/src/messaging_composer.rs +11 -1
  35. package/contracts/endpoint-v2/src/storage.rs +1 -1
  36. package/contracts/endpoint-v2/src/tests/endpoint_setup.rs +175 -8
  37. package/contracts/endpoint-v2/src/tests/endpoint_v2/build_outbound_packet.rs +76 -0
  38. package/contracts/endpoint-v2/src/tests/endpoint_v2/clear.rs +342 -159
  39. package/contracts/endpoint-v2/src/tests/endpoint_v2/delegate.rs +3 -15
  40. package/contracts/endpoint-v2/src/tests/endpoint_v2/initializable.rs +20 -31
  41. package/contracts/endpoint-v2/src/tests/endpoint_v2/lz_receive_alert.rs +126 -164
  42. package/contracts/endpoint-v2/src/tests/endpoint_v2/mod.rs +1 -0
  43. package/contracts/endpoint-v2/src/tests/endpoint_v2/native_token.rs +0 -1
  44. package/contracts/endpoint-v2/src/tests/endpoint_v2/owner.rs +0 -1
  45. package/contracts/endpoint-v2/src/tests/endpoint_v2/pay_messaging_fees.rs +311 -304
  46. package/contracts/endpoint-v2/src/tests/endpoint_v2/quote.rs +423 -96
  47. package/contracts/endpoint-v2/src/tests/endpoint_v2/recover_token.rs +1 -1
  48. package/contracts/endpoint-v2/src/tests/endpoint_v2/require_oapp_auth.rs +47 -20
  49. package/contracts/endpoint-v2/src/tests/endpoint_v2/send.rs +373 -403
  50. package/contracts/endpoint-v2/src/tests/endpoint_v2/set_delegate.rs +96 -22
  51. package/contracts/endpoint-v2/src/tests/endpoint_v2/set_zro.rs +62 -10
  52. package/contracts/endpoint-v2/src/tests/endpoint_v2/transfer_ownership.rs +4 -4
  53. package/contracts/endpoint-v2/src/tests/endpoint_v2/ttl_config.rs +8 -11
  54. package/contracts/endpoint-v2/src/tests/endpoint_v2/verifiable.rs +81 -30
  55. package/contracts/endpoint-v2/src/tests/endpoint_v2/verify.rs +209 -76
  56. package/contracts/endpoint-v2/src/tests/endpoint_v2/zro.rs +0 -1
  57. package/contracts/endpoint-v2/src/tests/message_lib_manager/default_receive_library.rs +24 -0
  58. package/contracts/endpoint-v2/src/tests/message_lib_manager/default_receive_library_timeout.rs +40 -0
  59. package/contracts/endpoint-v2/src/tests/message_lib_manager/default_send_library.rs +24 -0
  60. package/contracts/endpoint-v2/src/tests/message_lib_manager/get_config.rs +108 -0
  61. package/contracts/endpoint-v2/src/tests/message_lib_manager/get_library_index.rs +52 -0
  62. package/contracts/endpoint-v2/src/tests/message_lib_manager/get_receive_library.rs +92 -0
  63. package/contracts/endpoint-v2/src/tests/message_lib_manager/get_registered_libraries.rs +74 -0
  64. package/contracts/endpoint-v2/src/tests/message_lib_manager/get_send_library.rs +83 -0
  65. package/contracts/endpoint-v2/src/tests/message_lib_manager/is_registered_library.rs +32 -0
  66. package/contracts/endpoint-v2/src/tests/message_lib_manager/is_supported_eid.rs +28 -0
  67. package/contracts/endpoint-v2/src/tests/message_lib_manager/is_valid_receive_library.rs +261 -0
  68. package/contracts/endpoint-v2/src/tests/message_lib_manager/mod.rs +16 -0
  69. package/contracts/endpoint-v2/src/tests/message_lib_manager/receive_library_timeout.rs +62 -0
  70. package/contracts/endpoint-v2/src/tests/message_lib_manager/register_library.rs +65 -43
  71. package/contracts/endpoint-v2/src/tests/message_lib_manager/registered_libraries_count.rs +42 -0
  72. package/contracts/endpoint-v2/src/tests/message_lib_manager/require_receive_lib_for_eid.rs +61 -0
  73. package/contracts/endpoint-v2/src/tests/message_lib_manager/require_registered.rs +4 -6
  74. package/contracts/endpoint-v2/src/tests/message_lib_manager/require_send_lib_for_eid.rs +59 -0
  75. package/contracts/endpoint-v2/src/tests/message_lib_manager/require_supported_eid.rs +16 -2
  76. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_config.rs +155 -51
  77. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_lib_timeout.rs +114 -92
  78. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_library.rs +235 -132
  79. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_send_library.rs +93 -87
  80. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library.rs +346 -245
  81. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library_timeout.rs +406 -60
  82. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_send_library.rs +252 -78
  83. package/contracts/endpoint-v2/src/tests/message_lib_manager/timeout.rs +102 -0
  84. package/contracts/endpoint-v2/src/tests/messaging_channel/burn.rs +212 -273
  85. package/contracts/endpoint-v2/src/tests/messaging_channel/clear_payload.rs +203 -0
  86. package/contracts/endpoint-v2/src/tests/messaging_channel/inbound.rs +94 -0
  87. package/contracts/endpoint-v2/src/tests/messaging_channel/inbound_nonce.rs +78 -248
  88. package/contracts/endpoint-v2/src/tests/messaging_channel/inbound_payload_hash.rs +7 -282
  89. package/contracts/endpoint-v2/src/tests/messaging_channel/lazy_inbound_nonce.rs +6 -274
  90. package/contracts/endpoint-v2/src/tests/messaging_channel/mod.rs +3 -2
  91. package/contracts/endpoint-v2/src/tests/messaging_channel/next_guid.rs +86 -178
  92. package/contracts/endpoint-v2/src/tests/messaging_channel/nilify.rs +328 -212
  93. package/contracts/endpoint-v2/src/tests/messaging_channel/outbound.rs +68 -0
  94. package/contracts/endpoint-v2/src/tests/messaging_channel/outbound_nonce.rs +6 -209
  95. package/contracts/endpoint-v2/src/tests/messaging_channel/skip.rs +207 -159
  96. package/contracts/endpoint-v2/src/tests/messaging_composer/clear_compose.rs +142 -153
  97. package/contracts/endpoint-v2/src/tests/messaging_composer/compose_queue.rs +6 -179
  98. package/contracts/endpoint-v2/src/tests/messaging_composer/lz_compose_alert.rs +163 -221
  99. package/contracts/endpoint-v2/src/tests/messaging_composer/send_compose.rs +90 -121
  100. package/contracts/endpoint-v2/src/tests/mock.rs +18 -4
  101. package/contracts/endpoint-v2/src/tests/util/build_payload.rs +4 -70
  102. package/contracts/endpoint-v2/src/tests/util/compute_guid.rs +2 -1
  103. package/contracts/endpoint-v2/src/tests/util/keccak256.rs +17 -106
  104. package/contracts/layerzero-views/Cargo.toml +35 -0
  105. package/contracts/layerzero-views/src/errors.rs +10 -0
  106. package/contracts/layerzero-views/src/layerzero_view.rs +226 -0
  107. package/contracts/layerzero-views/src/lib.rs +38 -0
  108. package/contracts/layerzero-views/src/storage.rs +18 -0
  109. package/contracts/layerzero-views/src/tests/layerzero_view_tests.rs +423 -0
  110. package/contracts/layerzero-views/src/tests/mod.rs +4 -0
  111. package/contracts/layerzero-views/src/tests/setup.rs +377 -0
  112. package/contracts/layerzero-views/src/types.rs +50 -0
  113. package/contracts/macro-integration-tests/Cargo.toml +30 -0
  114. package/contracts/macro-integration-tests/src/lib.rs +1 -0
  115. package/contracts/macro-integration-tests/tests/runtime/ownable/initialization.rs +62 -0
  116. package/contracts/macro-integration-tests/tests/runtime/ownable/mod.rs +22 -0
  117. package/contracts/macro-integration-tests/tests/runtime/ownable/only_auth_guard.rs +97 -0
  118. package/contracts/macro-integration-tests/tests/runtime/ownable/ownership_transfer.rs +101 -0
  119. package/contracts/macro-integration-tests/tests/runtime/storage/keyed_roundtrip.rs +225 -0
  120. package/contracts/macro-integration-tests/tests/runtime/storage/mod.rs +4 -0
  121. package/contracts/macro-integration-tests/tests/runtime/storage/name_override_runtime.rs +52 -0
  122. package/contracts/macro-integration-tests/tests/runtime/storage/ttl_extension.rs +261 -0
  123. package/contracts/macro-integration-tests/tests/runtime/storage/unkeyed_roundtrip.rs +137 -0
  124. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/configuration.rs +113 -0
  125. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/freeze.rs +139 -0
  126. package/contracts/macro-integration-tests/tests/runtime/ttl_configurable/mod.rs +2 -0
  127. package/contracts/macro-integration-tests/tests/runtime.rs +5 -0
  128. package/contracts/macro-integration-tests/tests/ui/error/fail/attr_not_empty.rs +12 -0
  129. package/contracts/macro-integration-tests/tests/ui/error/fail/attr_not_empty.stderr +7 -0
  130. package/contracts/macro-integration-tests/tests/ui/error/fail/decreasing_discriminant.rs +12 -0
  131. package/contracts/macro-integration-tests/tests/ui/error/fail/decreasing_discriminant.stderr +7 -0
  132. package/contracts/macro-integration-tests/tests/ui/error/fail/non_int_discriminant.rs +21 -0
  133. package/contracts/macro-integration-tests/tests/ui/error/fail/non_int_discriminant.stderr +7 -0
  134. package/contracts/macro-integration-tests/tests/ui/error/fail/non_unit_variant.rs +13 -0
  135. package/contracts/macro-integration-tests/tests/ui/error/fail/non_unit_variant.stderr +7 -0
  136. package/contracts/macro-integration-tests/tests/ui/error/pass/attr_on_variant_allowed.rs +20 -0
  137. package/contracts/macro-integration-tests/tests/ui/error/pass/basic_auto_discriminants.rs +15 -0
  138. package/contracts/macro-integration-tests/tests/ui/error/pass/mixed_discriminants.rs +16 -0
  139. package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_auth_missing_env.rs +22 -0
  140. package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_auth_missing_env.stderr +16 -0
  141. package/contracts/macro-integration-tests/tests/ui/ownable/pass/minimal_contract.rs +26 -0
  142. package/contracts/macro-integration-tests/tests/ui/ownable/pass/namespacing_and_imports.rs +21 -0
  143. package/contracts/macro-integration-tests/tests/ui/ownable/pass/only_auth_env_param_variants.rs +46 -0
  144. package/contracts/macro-integration-tests/tests/ui/storage/fail/invalid_storage_type_param.rs +13 -0
  145. package/contracts/macro-integration-tests/tests/ui/storage/fail/invalid_storage_type_param.stderr +7 -0
  146. package/contracts/macro-integration-tests/tests/ui/storage/fail/missing_storage_type_param.rs +13 -0
  147. package/contracts/macro-integration-tests/tests/ui/storage/fail/missing_storage_type_param.stderr +7 -0
  148. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_storage_kinds.rs +10 -0
  149. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_storage_kinds.stderr +7 -0
  150. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_type_params.rs +12 -0
  151. package/contracts/macro-integration-tests/tests/ui/storage/fail/multiple_type_params.stderr +7 -0
  152. package/contracts/macro-integration-tests/tests/ui/storage/fail/no_ttl_extension_on_non_persistent.rs +10 -0
  153. package/contracts/macro-integration-tests/tests/ui/storage/fail/no_ttl_extension_on_non_persistent.stderr +7 -0
  154. package/contracts/macro-integration-tests/tests/ui/storage/fail/non_enum_input.rs +10 -0
  155. package/contracts/macro-integration-tests/tests/ui/storage/fail/non_enum_input.stderr +7 -0
  156. package/contracts/macro-integration-tests/tests/ui/storage/fail/storage_attr_rejects_args.rs +12 -0
  157. package/contracts/macro-integration-tests/tests/ui/storage/fail/storage_attr_rejects_args.stderr +7 -0
  158. package/contracts/macro-integration-tests/tests/ui/storage/fail/tuple_variant_rejected.rs +13 -0
  159. package/contracts/macro-integration-tests/tests/ui/storage/fail/tuple_variant_rejected.stderr +7 -0
  160. package/contracts/macro-integration-tests/tests/ui/storage/fail/unknown_variant_attr.rs +13 -0
  161. package/contracts/macro-integration-tests/tests/ui/storage/fail/unknown_variant_attr.stderr +7 -0
  162. package/contracts/macro-integration-tests/tests/ui/storage/pass/default_value_on_variant.rs +14 -0
  163. package/contracts/macro-integration-tests/tests/ui/storage/pass/enum_instance_unit_basic.rs +14 -0
  164. package/contracts/macro-integration-tests/tests/ui/storage/pass/enum_persistent_named_fields_keyed.rs +16 -0
  165. package/contracts/macro-integration-tests/tests/ui/storage/pass/enum_temporary_unit_option.rs +15 -0
  166. package/contracts/macro-integration-tests/tests/ui/storage/pass/name_override.rs +14 -0
  167. package/contracts/macro-integration-tests/tests/ui/storage/pass/no_auto_ttl_extension.rs +19 -0
  168. package/contracts/macro-integration-tests/tests/ui/storage/pass/ttl_provider_basic.rs +15 -0
  169. package/contracts/macro-integration-tests/tests/ui/ttl_configurable/pass/minimal_contract.rs +44 -0
  170. package/contracts/macro-integration-tests/tests/ui_error.rs +11 -0
  171. package/contracts/macro-integration-tests/tests/ui_ownable.rs +11 -0
  172. package/contracts/macro-integration-tests/tests/ui_storage.rs +11 -0
  173. package/contracts/macro-integration-tests/tests/ui_ttl_configurable.rs +12 -0
  174. package/contracts/message-libs/blocked-message-lib/src/lib.rs +17 -17
  175. package/contracts/message-libs/message-lib-common/src/errors.rs +7 -2
  176. package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/decode_packet_header.rs +64 -0
  177. package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/encode_packet.rs +58 -0
  178. package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/encode_packet_header.rs +138 -0
  179. package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/mod.rs +6 -0
  180. package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/payload.rs +30 -0
  181. package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/payload_hash.rs +15 -0
  182. package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1/test_helper.rs +39 -0
  183. package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_dvn_option.rs +57 -0
  184. package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_lz_receive_option.rs +49 -0
  185. package/contracts/message-libs/message-lib-common/src/tests/worker_options/append_native_drop_option.rs +73 -0
  186. package/contracts/message-libs/message-lib-common/src/tests/worker_options/convert_legacy_options.rs +280 -0
  187. package/contracts/message-libs/message-lib-common/src/tests/worker_options/extract_type_3_options.rs +126 -0
  188. package/contracts/message-libs/message-lib-common/src/tests/worker_options/left_pad_to_bytes32.rs +48 -0
  189. package/contracts/message-libs/message-lib-common/src/tests/worker_options/mod.rs +7 -0
  190. package/contracts/message-libs/message-lib-common/src/tests/worker_options/split_worker_options.rs +139 -0
  191. package/contracts/message-libs/message-lib-common/src/worker_options.rs +31 -1
  192. package/contracts/message-libs/simple-message-lib/src/simple_message_lib.rs +7 -9
  193. package/contracts/message-libs/treasury/src/errors.rs +2 -3
  194. package/contracts/message-libs/treasury/src/events.rs +1 -1
  195. package/contracts/message-libs/treasury/src/interfaces/zro_fee_lib.rs +2 -2
  196. package/contracts/message-libs/treasury/src/lib.rs +3 -3
  197. package/contracts/message-libs/treasury/src/storage.rs +3 -1
  198. package/contracts/message-libs/treasury/src/tests/treasury_tests.rs +1 -1
  199. package/contracts/message-libs/treasury/src/treasury.rs +23 -26
  200. package/contracts/message-libs/uln-302/Cargo.toml +1 -1
  201. package/contracts/message-libs/uln-302/src/errors.rs +0 -5
  202. package/contracts/message-libs/uln-302/src/events.rs +5 -6
  203. package/contracts/message-libs/uln-302/src/receive_uln.rs +37 -56
  204. package/contracts/message-libs/uln-302/src/send_uln.rs +112 -138
  205. package/contracts/message-libs/uln-302/src/storage.rs +5 -5
  206. package/contracts/message-libs/uln-302/src/tests/receive_uln302/effective_receive_uln_config.rs +5 -7
  207. package/contracts/message-libs/uln-302/src/tests/receive_uln302/set_default_receive_uln_configs.rs +3 -3
  208. package/contracts/message-libs/uln-302/src/tests/send_uln302/effective_send_uln_config.rs +6 -9
  209. package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_executor_configs.rs +2 -2
  210. package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_send_uln_configs.rs +3 -3
  211. package/contracts/message-libs/uln-302/src/tests/setup.rs +9 -0
  212. package/contracts/message-libs/uln-302/src/tests/testing_utils.rs +5 -0
  213. package/contracts/message-libs/uln-302/src/tests/uln302/get_app_receive_uln_config.rs +1 -2
  214. package/contracts/message-libs/uln-302/src/tests/uln302/get_app_send_uln_config.rs +1 -2
  215. package/contracts/message-libs/uln-302/src/tests/uln302/set_config.rs +37 -55
  216. package/contracts/message-libs/uln-302/src/uln302.rs +10 -25
  217. package/contracts/oapps/counter/Cargo.toml +14 -1
  218. package/contracts/oapps/counter/integration_tests/mod.rs +4 -1
  219. package/contracts/oapps/counter/integration_tests/setup_sml.rs +169 -0
  220. package/contracts/oapps/counter/integration_tests/setup_uln.rs +997 -0
  221. package/contracts/oapps/counter/integration_tests/signing.rs +62 -0
  222. package/contracts/oapps/counter/integration_tests/test_with_sml.rs +24 -55
  223. package/contracts/oapps/counter/integration_tests/test_with_uln.rs +314 -0
  224. package/contracts/oapps/counter/integration_tests/utils.rs +196 -53
  225. package/contracts/oapps/counter/src/counter.rs +67 -44
  226. package/contracts/oapps/counter/src/tests/mod.rs +0 -13
  227. package/contracts/oapps/counter/src/tests/test_counter.rs +5 -7
  228. package/contracts/oapps/oapp/src/errors.rs +5 -1
  229. package/contracts/oapps/oapp/src/macro_tests/test_macros.rs +318 -221
  230. package/contracts/oapps/oapp/src/oapp_core.rs +36 -21
  231. package/contracts/oapps/oapp/src/oapp_options_type3.rs +48 -12
  232. package/contracts/oapps/oapp/src/oapp_receiver.rs +106 -41
  233. package/contracts/oapps/oapp/src/oapp_sender.rs +26 -34
  234. package/contracts/oapps/oapp/src/tests/test_oapp_core.rs +9 -9
  235. package/contracts/oapps/oapp/src/tests/test_oapp_options_type3.rs +25 -18
  236. package/contracts/oapps/oapp/src/tests/test_oapp_receiver.rs +7 -8
  237. package/contracts/oapps/oapp/src/tests/test_oapp_sender.rs +14 -16
  238. package/contracts/oapps/oapp-macros/src/generators.rs +128 -0
  239. package/contracts/oapps/oapp-macros/src/lib.rs +211 -0
  240. package/contracts/oapps/oft/integration-tests/setup.rs +34 -9
  241. package/contracts/oapps/oft/integration-tests/utils.rs +1 -1
  242. package/contracts/oapps/oft/src/errors.rs +6 -1
  243. package/contracts/oapps/oft/src/extensions/oft_fee.rs +13 -13
  244. package/contracts/oapps/oft/src/extensions/pausable.rs +5 -5
  245. package/contracts/oapps/oft/src/extensions/rate_limiter.rs +23 -23
  246. package/contracts/oapps/oft/src/lib.rs +4 -2
  247. package/contracts/oapps/oft/src/oft.rs +31 -71
  248. package/contracts/oapps/oft/src/oft_impl.rs +201 -0
  249. package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +2 -4
  250. package/contracts/oapps/oft/src/oft_types/mint_burn.rs +1 -4
  251. package/contracts/oapps/oft/src/storage.rs +2 -0
  252. package/contracts/oapps/oft/src/tests/extensions/setup.rs +60 -31
  253. package/contracts/oapps/oft/src/tests/extensions/test_oft_fee.rs +5 -3
  254. package/contracts/oapps/oft/src/tests/extensions/test_pausable.rs +5 -3
  255. package/contracts/oapps/oft/src/tests/extensions/test_rate_limiter.rs +6 -4
  256. package/contracts/oapps/oft/src/tests/test_decimals.rs +2 -2
  257. package/contracts/oapps/oft/src/tests/test_oft_msg_codec.rs +1 -2
  258. package/contracts/oapps/oft/src/tests/test_send.rs +4 -4
  259. package/contracts/oapps/oft/src/tests/test_utils.rs +122 -81
  260. package/contracts/oapps/oft/src/types.rs +20 -0
  261. package/contracts/oapps/oft-std/Cargo.toml +6 -0
  262. package/contracts/oapps/oft-std/integration-tests/extensions/mod.rs +3 -0
  263. package/contracts/oapps/oft-std/integration-tests/extensions/test_oft_fee.rs +157 -0
  264. package/contracts/oapps/oft-std/integration-tests/extensions/test_pausable.rs +162 -0
  265. package/contracts/oapps/oft-std/integration-tests/extensions/test_rate_limiter.rs +186 -0
  266. package/contracts/oapps/oft-std/integration-tests/mod.rs +3 -0
  267. package/contracts/oapps/{counter/integration_tests → oft-std/integration-tests}/setup.rs +76 -30
  268. package/contracts/oapps/oft-std/integration-tests/utils.rs +427 -0
  269. package/contracts/oapps/oft-std/src/lib.rs +12 -1
  270. package/contracts/oapps/oft-std/src/oft.rs +141 -26
  271. package/contracts/upgrader/Cargo.toml +19 -0
  272. package/contracts/upgrader/src/lib.rs +96 -0
  273. package/contracts/upgrader/src/tests/mod.rs +1 -0
  274. package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract1.wasm +0 -0
  275. package/contracts/upgrader/src/tests/test_data/test_upgradeable_contract2.wasm +0 -0
  276. package/contracts/upgrader/src/tests/test_upgrader.rs +120 -0
  277. package/contracts/utils/src/auth.rs +44 -0
  278. package/contracts/utils/src/errors.rs +32 -5
  279. package/contracts/utils/src/lib.rs +5 -1
  280. package/contracts/utils/src/multisig.rs +211 -0
  281. package/contracts/utils/src/ownable.rs +50 -60
  282. package/contracts/utils/src/tests/buffer_reader.rs +6 -6
  283. package/contracts/utils/src/tests/buffer_writer.rs +6 -6
  284. package/contracts/utils/src/tests/bytes_ext.rs +2 -4
  285. package/contracts/utils/src/tests/mod.rs +4 -1
  286. package/contracts/utils/src/tests/multisig.rs +731 -0
  287. package/contracts/utils/src/tests/option_ext.rs +18 -0
  288. package/contracts/utils/src/tests/ownable.rs +22 -70
  289. package/contracts/utils/src/tests/ttl_configurable.rs +607 -0
  290. package/contracts/utils/src/tests/upgradeable.rs +290 -0
  291. package/contracts/utils/src/ttl_configurable.rs +153 -0
  292. package/contracts/utils/src/ttl_extendable.rs +27 -0
  293. package/contracts/utils/src/upgradeable.rs +56 -0
  294. package/contracts/workers/dvn/Cargo.toml +2 -2
  295. package/contracts/workers/dvn/src/auth.rs +24 -35
  296. package/contracts/workers/dvn/src/dvn.rs +23 -14
  297. package/contracts/workers/dvn/src/errors.rs +1 -7
  298. package/contracts/workers/dvn/src/events.rs +1 -14
  299. package/contracts/workers/dvn/src/interfaces/dvn.rs +2 -2
  300. package/contracts/workers/dvn/src/interfaces/mod.rs +0 -2
  301. package/contracts/workers/dvn/src/storage.rs +3 -13
  302. package/contracts/workers/dvn/src/tests/auth.rs +4 -4
  303. package/contracts/workers/dvn/src/tests/dvn.rs +1 -2
  304. package/contracts/workers/dvn/src/tests/multisig/set_signer.rs +7 -8
  305. package/contracts/workers/dvn/src/tests/multisig/set_threshold.rs +11 -8
  306. package/contracts/workers/dvn/src/tests/multisig/verify_signatures.rs +11 -12
  307. package/contracts/workers/dvn/src/tests/setup.rs +5 -5
  308. package/contracts/workers/dvn-fee-lib/Cargo.toml +0 -1
  309. package/contracts/workers/dvn-fee-lib/src/dvn_fee_lib.rs +45 -16
  310. package/contracts/workers/dvn-fee-lib/src/errors.rs +3 -2
  311. package/contracts/workers/dvn-fee-lib/src/lib.rs +5 -11
  312. package/contracts/workers/dvn-fee-lib/src/tests/dvn_fee_lib.rs +30 -16
  313. package/contracts/workers/executor/src/auth.rs +80 -16
  314. package/contracts/workers/executor/src/executor.rs +17 -29
  315. package/contracts/workers/executor/src/storage.rs +2 -9
  316. package/contracts/workers/executor-fee-lib/Cargo.toml +1 -1
  317. package/contracts/workers/executor-fee-lib/src/errors.rs +9 -7
  318. package/contracts/workers/executor-fee-lib/src/executor_fee_lib.rs +153 -121
  319. package/contracts/workers/executor-helper/Cargo.toml +1 -6
  320. package/contracts/workers/executor-helper/src/executor_helper.rs +53 -73
  321. package/contracts/workers/executor-helper/src/lib.rs +1 -7
  322. package/contracts/workers/price-feed/Cargo.toml +1 -2
  323. package/contracts/workers/price-feed/src/errors.rs +3 -2
  324. package/contracts/workers/price-feed/src/lib.rs +5 -6
  325. package/contracts/workers/price-feed/src/price_feed.rs +42 -23
  326. package/contracts/workers/worker/Cargo.toml +4 -0
  327. package/contracts/workers/worker/src/errors.rs +4 -0
  328. package/contracts/workers/worker/src/interfaces/price_feed.rs +3 -3
  329. package/contracts/workers/worker/src/lib.rs +2 -2
  330. package/contracts/workers/worker/src/tests/mod.rs +4 -0
  331. package/contracts/workers/worker/src/tests/setup.rs +147 -0
  332. package/contracts/workers/worker/src/tests/worker.rs +502 -0
  333. package/contracts/workers/worker/src/worker.rs +28 -30
  334. package/package.json +8 -5
  335. package/sdk/.turbo/turbo-build.log +1 -0
  336. package/sdk/.turbo/turbo-test.log +1009 -0
  337. package/sdk/dist/generated/bml.d.ts +104 -37
  338. package/sdk/dist/generated/bml.js +83 -42
  339. package/sdk/dist/generated/counter.d.ts +334 -175
  340. package/sdk/dist/generated/counter.js +109 -63
  341. package/sdk/dist/generated/dvn.d.ts +1985 -0
  342. package/sdk/dist/generated/dvn.js +326 -0
  343. package/sdk/dist/generated/dvn_fee_lib.d.ts +690 -0
  344. package/sdk/dist/generated/dvn_fee_lib.js +163 -0
  345. package/sdk/dist/generated/endpoint.d.ts +155 -46
  346. package/sdk/dist/generated/endpoint.js +93 -50
  347. package/sdk/dist/generated/executor.d.ts +1841 -0
  348. package/sdk/dist/generated/executor.js +312 -0
  349. package/sdk/dist/generated/executor_fee_lib.d.ts +1083 -0
  350. package/sdk/dist/generated/executor_fee_lib.js +255 -0
  351. package/sdk/dist/generated/executor_helper.d.ts +981 -0
  352. package/sdk/dist/generated/executor_helper.js +236 -0
  353. package/sdk/dist/generated/oft_std.d.ts +1722 -0
  354. package/sdk/dist/generated/oft_std.js +316 -0
  355. package/sdk/dist/generated/price_feed.d.ts +1077 -0
  356. package/sdk/dist/generated/price_feed.js +210 -0
  357. package/sdk/dist/generated/sml.d.ts +171 -56
  358. package/sdk/dist/generated/sml.js +111 -62
  359. package/sdk/dist/generated/treasury.d.ts +896 -0
  360. package/sdk/dist/generated/treasury.js +219 -0
  361. package/sdk/dist/generated/uln302.d.ts +175 -75
  362. package/sdk/dist/generated/uln302.js +126 -82
  363. package/sdk/dist/generated/upgrader.d.ts +70 -0
  364. package/sdk/dist/generated/upgrader.js +19 -0
  365. package/sdk/dist/index.d.ts +10 -0
  366. package/sdk/dist/index.js +14 -0
  367. package/sdk/dist/wasm/blocked-message-lib.d.ts +1 -0
  368. package/sdk/dist/wasm/blocked-message-lib.js +2 -0
  369. package/sdk/dist/wasm/counter.d.ts +1 -0
  370. package/sdk/dist/wasm/counter.js +2 -0
  371. package/sdk/dist/wasm/dvn-fee-lib.d.ts +1 -0
  372. package/sdk/dist/wasm/dvn-fee-lib.js +2 -0
  373. package/sdk/dist/wasm/dvn.d.ts +1 -0
  374. package/sdk/dist/wasm/dvn.js +2 -0
  375. package/sdk/dist/wasm/endpoint-v2.d.ts +1 -0
  376. package/sdk/dist/wasm/endpoint-v2.js +2 -0
  377. package/sdk/dist/wasm/executor-fee-lib.d.ts +1 -0
  378. package/sdk/dist/wasm/executor-fee-lib.js +2 -0
  379. package/sdk/dist/wasm/executor-helper.d.ts +1 -0
  380. package/sdk/dist/wasm/executor-helper.js +2 -0
  381. package/sdk/dist/wasm/executor.d.ts +1 -0
  382. package/sdk/dist/wasm/executor.js +2 -0
  383. package/sdk/dist/wasm/layerzero-views.d.ts +1 -0
  384. package/sdk/dist/wasm/layerzero-views.js +2 -0
  385. package/sdk/dist/wasm/oft-std.d.ts +1 -0
  386. package/sdk/dist/wasm/oft-std.js +2 -0
  387. package/sdk/dist/wasm/price-feed.d.ts +1 -0
  388. package/sdk/dist/wasm/price-feed.js +2 -0
  389. package/sdk/dist/wasm/simple-message-lib.d.ts +1 -0
  390. package/sdk/dist/wasm/simple-message-lib.js +2 -0
  391. package/sdk/dist/wasm/treasury.d.ts +1 -0
  392. package/sdk/dist/wasm/treasury.js +2 -0
  393. package/sdk/dist/wasm/uln302.d.ts +1 -0
  394. package/sdk/dist/wasm/uln302.js +2 -0
  395. package/sdk/dist/wasm/upgrader.d.ts +1 -0
  396. package/sdk/dist/wasm/upgrader.js +2 -0
  397. package/sdk/dist/wasm.d.ts +15 -0
  398. package/sdk/dist/wasm.js +15 -0
  399. package/sdk/package.json +7 -4
  400. package/sdk/src/index.ts +17 -0
  401. package/sdk/test/counter-sml.test.ts +376 -0
  402. package/sdk/test/counter-uln.test.ts +493 -0
  403. package/sdk/test/{oft.test.ts → oft-sml.test.ts} +187 -323
  404. package/sdk/test/suites/constants.ts +22 -2
  405. package/sdk/test/suites/dummyContractClient.ts +169 -0
  406. package/sdk/test/suites/globalSetup.ts +450 -0
  407. package/sdk/test/suites/localnet.ts +23 -6
  408. package/sdk/test/upgrader.test.ts +300 -0
  409. package/sdk/test/utils.ts +558 -85
  410. package/sdk/vitest.config.ts +21 -0
  411. package/tools/ts-bindings-gen/src/main.rs +12 -1
  412. package/turbo.json +2 -0
  413. package/contracts/common-macros/src/contract_impl.rs +0 -47
  414. package/contracts/common-macros/src/ownable.rs +0 -59
  415. package/contracts/common-macros/src/tests/contract_impl.rs +0 -381
  416. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ownable__snapshot_generated_ownable_code.snap +0 -32
  417. package/contracts/endpoint-v2/src/tests/messaging_channel/clear.rs +0 -316
  418. package/contracts/endpoint-v2/src/tests/messaging_channel/internal.rs +0 -388
  419. package/contracts/message-libs/message-lib-common/src/tests/packet_codec_v1.rs +0 -162
  420. package/contracts/message-libs/message-lib-common/src/tests/worker_options.rs +0 -319
  421. package/contracts/oapp-macros/src/lib.rs +0 -154
  422. package/contracts/oapp-macros/src/oapp_core.rs +0 -40
  423. package/contracts/oapp-macros/src/oapp_full.rs +0 -21
  424. package/contracts/oapp-macros/src/oapp_options_type3.rs +0 -31
  425. package/contracts/oapp-macros/src/oapp_receiver.rs +0 -48
  426. package/contracts/oapp-macros/src/oapp_sender.rs +0 -21
  427. package/contracts/oapp-macros/src/util.rs +0 -107
  428. package/contracts/oapps/oft/src/constants.rs +0 -5
  429. package/contracts/oapps/oft/src/default_oft_impl.rs +0 -146
  430. package/contracts/utils/src/tests/ttl.rs +0 -421
  431. package/contracts/utils/src/ttl.rs +0 -123
  432. package/contracts/workers/dvn/src/interfaces/multisig.rs +0 -56
  433. package/contracts/workers/dvn/src/multisig.rs +0 -153
  434. package/sdk/test/index.test.ts +0 -376
  435. /package/contracts/{oapp-macros → oapps/oapp-macros}/Cargo.toml +0 -0
@@ -4,6 +4,7 @@ import type { u32, u64, i128, Option } from '@stellar/stellar-sdk/contract';
4
4
  export * from '@stellar/stellar-sdk';
5
5
  export * as contract from '@stellar/stellar-sdk/contract';
6
6
  export * as rpc from '@stellar/stellar-sdk/rpc';
7
+ export type MigrationData = void;
7
8
  export declare const CounterError: {
8
9
  1: {
9
10
  message: string;
@@ -113,6 +114,9 @@ export declare const EndpointError: {
113
114
  24: {
114
115
  message: string;
115
116
  };
117
+ 25: {
118
+ message: string;
119
+ };
116
120
  };
117
121
  /**
118
122
  * Parameters for sending a cross-chain message.
@@ -325,6 +329,9 @@ export interface FeesAndPacket {
325
329
  */
326
330
  zro_fee_recipients: Array<FeeRecipient>;
327
331
  }
332
+ /**
333
+ * OAppError: 2000-2099
334
+ */
328
335
  export declare const OAppError: {
329
336
  2000: {
330
337
  message: string;
@@ -355,6 +362,9 @@ export type OAppOptionsType3Storage = {
355
362
  tag: "EnforcedOptions";
356
363
  values: readonly [u32, u32];
357
364
  };
365
+ /**
366
+ * BufferReaderError: 1000-1009
367
+ */
358
368
  export declare const BufferReaderError: {
359
369
  1000: {
360
370
  message: string;
@@ -363,41 +373,97 @@ export declare const BufferReaderError: {
363
373
  message: string;
364
374
  };
365
375
  };
376
+ /**
377
+ * BufferWriterError: 1010-1019
378
+ */
366
379
  export declare const BufferWriterError: {
367
- 1100: {
380
+ 1010: {
368
381
  message: string;
369
382
  };
370
383
  };
371
- export declare const TtlError: {
372
- 1200: {
384
+ /**
385
+ * TtlConfigurableError: 1020-1029
386
+ */
387
+ export declare const TtlConfigurableError: {
388
+ 1020: {
373
389
  message: string;
374
390
  };
375
- 1201: {
391
+ 1021: {
376
392
  message: string;
377
393
  };
378
- 1202: {
394
+ 1022: {
379
395
  message: string;
380
396
  };
381
397
  };
398
+ /**
399
+ * OwnableError: 1030-1039
400
+ */
382
401
  export declare const OwnableError: {
383
- 1300: {
402
+ 1030: {
384
403
  message: string;
385
404
  };
386
- 1301: {
405
+ 1031: {
387
406
  message: string;
388
407
  };
389
408
  };
409
+ /**
410
+ * BytesExtError: 1040-1049
411
+ */
390
412
  export declare const BytesExtError: {
391
- 1400: {
413
+ 1040: {
392
414
  message: string;
393
415
  };
394
416
  };
395
- export type DefaultOwnableStorage = {
417
+ /**
418
+ * UpgradeableError: 1050-1059
419
+ */
420
+ export declare const UpgradeableError: {
421
+ 1050: {
422
+ message: string;
423
+ };
424
+ };
425
+ /**
426
+ * MultisigError: 1060-1069
427
+ */
428
+ export declare const MultisigError: {
429
+ 1060: {
430
+ message: string;
431
+ };
432
+ 1061: {
433
+ message: string;
434
+ };
435
+ 1062: {
436
+ message: string;
437
+ };
438
+ 1063: {
439
+ message: string;
440
+ };
441
+ 1064: {
442
+ message: string;
443
+ };
444
+ 1065: {
445
+ message: string;
446
+ };
447
+ 1066: {
448
+ message: string;
449
+ };
450
+ 1067: {
451
+ message: string;
452
+ };
453
+ };
454
+ export type MultisigStorage = {
455
+ tag: "Signers";
456
+ values: void;
457
+ } | {
458
+ tag: "Threshold";
459
+ values: void;
460
+ };
461
+ export type OwnableStorage = {
396
462
  tag: "Owner";
397
463
  values: void;
398
464
  };
399
465
  /**
400
- * A pair of TTL values: threshold (when to trigger extension) and extend_to (target TTL).
466
+ * TTL configuration: threshold (when to extend) and extend_to (target TTL).
401
467
  */
402
468
  export interface TtlConfig {
403
469
  /**
@@ -419,11 +485,15 @@ export type TtlConfigStorage = {
419
485
  tag: "Persistent";
420
486
  values: void;
421
487
  };
488
+ export type UpgradeableStorage = {
489
+ tag: "Migrating";
490
+ values: void;
491
+ };
422
492
  export interface Client {
423
493
  /**
424
- * Construct and simulate a owner transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
494
+ * Construct and simulate a authorizer transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
425
495
  */
426
- owner: (txnOptions?: {
496
+ authorizer: (txnOptions?: {
427
497
  /**
428
498
  * The fee to pay for the transaction. Default: BASE_FEE
429
499
  */
@@ -436,140 +506,7 @@ export interface Client {
436
506
  * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
437
507
  */
438
508
  simulate?: boolean;
439
- }) => Promise<AssembledTransaction<Option<string>>>;
440
- /**
441
- * Construct and simulate a transfer_ownership transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
442
- */
443
- transfer_ownership: ({ new_owner }: {
444
- new_owner: string;
445
- }, txnOptions?: {
446
- /**
447
- * The fee to pay for the transaction. Default: BASE_FEE
448
- */
449
- fee?: number;
450
- /**
451
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
452
- */
453
- timeoutInSeconds?: number;
454
- /**
455
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
456
- */
457
- simulate?: boolean;
458
- }) => Promise<AssembledTransaction<null>>;
459
- /**
460
- * Construct and simulate a renounce_ownership transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
461
- */
462
- renounce_ownership: (txnOptions?: {
463
- /**
464
- * The fee to pay for the transaction. Default: BASE_FEE
465
- */
466
- fee?: number;
467
- /**
468
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
469
- */
470
- timeoutInSeconds?: number;
471
- /**
472
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
473
- */
474
- simulate?: boolean;
475
- }) => Promise<AssembledTransaction<null>>;
476
- /**
477
- * Construct and simulate a set_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
478
- */
479
- set_ttl_configs: ({ instance, persistent }: {
480
- instance: Option<TtlConfig>;
481
- persistent: Option<TtlConfig>;
482
- }, txnOptions?: {
483
- /**
484
- * The fee to pay for the transaction. Default: BASE_FEE
485
- */
486
- fee?: number;
487
- /**
488
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
489
- */
490
- timeoutInSeconds?: number;
491
- /**
492
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
493
- */
494
- simulate?: boolean;
495
- }) => Promise<AssembledTransaction<null>>;
496
- /**
497
- * Construct and simulate a ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
498
- */
499
- ttl_configs: (txnOptions?: {
500
- /**
501
- * The fee to pay for the transaction. Default: BASE_FEE
502
- */
503
- fee?: number;
504
- /**
505
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
506
- */
507
- timeoutInSeconds?: number;
508
- /**
509
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
510
- */
511
- simulate?: boolean;
512
- }) => Promise<AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>>;
513
- /**
514
- * Construct and simulate a freeze_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
515
- */
516
- freeze_ttl_configs: (txnOptions?: {
517
- /**
518
- * The fee to pay for the transaction. Default: BASE_FEE
519
- */
520
- fee?: number;
521
- /**
522
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
523
- */
524
- timeoutInSeconds?: number;
525
- /**
526
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
527
- */
528
- simulate?: boolean;
529
- }) => Promise<AssembledTransaction<null>>;
530
- /**
531
- * Construct and simulate a is_ttl_configs_frozen transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
532
- */
533
- is_ttl_configs_frozen: (txnOptions?: {
534
- /**
535
- * The fee to pay for the transaction. Default: BASE_FEE
536
- */
537
- fee?: number;
538
- /**
539
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
540
- */
541
- timeoutInSeconds?: number;
542
- /**
543
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
544
- */
545
- simulate?: boolean;
546
- }) => Promise<AssembledTransaction<boolean>>;
547
- /**
548
- * Construct and simulate a extend_instance_ttl transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
549
- * Extends the instance TTL.
550
- *
551
- * # Arguments
552
- *
553
- * * `threshold` - The threshold to extend the TTL.
554
- * * `extend_to` - The TTL to extend to.
555
- */
556
- extend_instance_ttl: ({ threshold, extend_to }: {
557
- threshold: u32;
558
- extend_to: u32;
559
- }, txnOptions?: {
560
- /**
561
- * The fee to pay for the transaction. Default: BASE_FEE
562
- */
563
- fee?: number;
564
- /**
565
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
566
- */
567
- timeoutInSeconds?: number;
568
- /**
569
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
570
- */
571
- simulate?: boolean;
572
- }) => Promise<AssembledTransaction<null>>;
509
+ }) => Promise<AssembledTransaction<string>>;
573
510
  /**
574
511
  * Construct and simulate a quote transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
575
512
  */
@@ -765,15 +702,17 @@ export interface Client {
765
702
  simulate?: boolean;
766
703
  }) => Promise<AssembledTransaction<u64>>;
767
704
  /**
768
- * Construct and simulate a lz_receive transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
705
+ * Construct and simulate a allow_initialize_path transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
706
+ * Checks if a messaging path can be initialized for the given origin.
707
+ *
708
+ * # Arguments
709
+ * * `origin` - The origin of the message
710
+ *
711
+ * # Returns
712
+ * True if the path can be initialized, false otherwise
769
713
  */
770
- lz_receive: ({ executor, origin, guid, message, extra_data, value }: {
771
- executor: string;
714
+ allow_initialize_path: ({ origin }: {
772
715
  origin: Origin;
773
- guid: Buffer;
774
- message: Buffer;
775
- extra_data: Buffer;
776
- value: i128;
777
716
  }, txnOptions?: {
778
717
  /**
779
718
  * The fee to pay for the transaction. Default: BASE_FEE
@@ -787,19 +726,32 @@ export interface Client {
787
726
  * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
788
727
  */
789
728
  simulate?: boolean;
790
- }) => Promise<AssembledTransaction<null>>;
729
+ }) => Promise<AssembledTransaction<boolean>>;
791
730
  /**
792
- * Construct and simulate a allow_initialize_path transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
793
- * Checks if a messaging path can be initialized for the given origin.
731
+ * Construct and simulate a lz_receive transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
732
+ * Entry point for receiving messages or packets from the LayerZero endpoint.
794
733
  *
795
- * # Arguments
796
- * * `origin` - The origin of the message
734
+ * The default implementation calls `clear_payload_and_transfer` to validate the message
735
+ * and clear it from the endpoint, then delegates to `__lz_receive` for application logic.
797
736
  *
798
- * # Returns
799
- * True if the path can be initialized, false otherwise
737
+ * # Arguments
738
+ * * `executor` - The address of the executor for the received message
739
+ * * `origin` - The origin information containing the source endpoint and sender address:
740
+ * - `src_eid`: The source chain endpoint ID
741
+ * - `sender`: The sender address on the source chain
742
+ * - `nonce`: The nonce of the message
743
+ * * `guid` - The unique identifier for the received LayerZero message
744
+ * * `message` - The payload of the received message
745
+ * * `extra_data` - Additional arbitrary data provided by the corresponding executor
746
+ * * `value` - The native token value sent with the message
800
747
  */
801
- allow_initialize_path: ({ origin }: {
748
+ lz_receive: ({ executor, origin, guid, message, extra_data, value }: {
749
+ executor: string;
802
750
  origin: Origin;
751
+ guid: Buffer;
752
+ message: Buffer;
753
+ extra_data: Buffer;
754
+ value: i128;
803
755
  }, txnOptions?: {
804
756
  /**
805
757
  * The fee to pay for the transaction. Default: BASE_FEE
@@ -813,7 +765,7 @@ export interface Client {
813
765
  * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
814
766
  */
815
767
  simulate?: boolean;
816
- }) => Promise<AssembledTransaction<boolean>>;
768
+ }) => Promise<AssembledTransaction<null>>;
817
769
  /**
818
770
  * Construct and simulate a is_compose_msg_sender transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
819
771
  * Indicates whether an address is an approved composeMsg sender to the Endpoint.
@@ -874,6 +826,14 @@ export interface Client {
874
826
  }) => Promise<AssembledTransaction<null>>;
875
827
  /**
876
828
  * Construct and simulate a enforced_options transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
829
+ * Retrieves the enforced options for a given endpoint and message type.
830
+ *
831
+ * # Arguments
832
+ * * `eid` - The endpoint ID
833
+ * * `msg_type` - The OApp message type
834
+ *
835
+ * # Returns
836
+ * The enforced options for the given endpoint and message type
877
837
  */
878
838
  enforced_options: ({ eid, msg_type }: {
879
839
  eid: u32;
@@ -894,6 +854,16 @@ export interface Client {
894
854
  }) => Promise<AssembledTransaction<Buffer>>;
895
855
  /**
896
856
  * Construct and simulate a set_enforced_options transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
857
+ * Sets the enforced options for specific endpoint and message type combinations.
858
+ *
859
+ * Only the `authorizer` of the OApp can call this function.
860
+ * Provides a way for the OApp to enforce things like paying for PreCrime, AND/OR minimum dst lzReceive gas amounts etc.
861
+ * These enforced options can vary as the potential options/execution on the remote may differ as per the msg_type.
862
+ * e.g. Amount of lzReceive() gas necessary to deliver a lzCompose() message adds overhead you don't want to pay
863
+ * if you are only making a standard LayerZero message ie. lzReceive() WITHOUT sendCompose().
864
+ *
865
+ * # Arguments
866
+ * * `options` - A vector of EnforcedOptionParam structures specifying enforced options
897
867
  */
898
868
  set_enforced_options: ({ options }: {
899
869
  options: Array<EnforcedOptionParam>;
@@ -913,6 +883,20 @@ export interface Client {
913
883
  }) => Promise<AssembledTransaction<null>>;
914
884
  /**
915
885
  * Construct and simulate a combine_options transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
886
+ * Combines options for a given endpoint and message type.
887
+ *
888
+ * If there is an enforced lzReceive option:
889
+ * - {gas_limit: 200k, value: 1 XLM} AND a caller supplies a lzReceive option: {gas_limit: 100k, value: 0.5 XLM}
890
+ * - The resulting options will be {gas_limit: 300k, value: 1.5 XLM} when the message is executed on the remote lz_receive() function.
891
+ * The presence of duplicated options is handled off-chain in the verifier/executor.
892
+ *
893
+ * # Arguments
894
+ * * `eid` - The endpoint ID
895
+ * * `msg_type` - The OApp message type
896
+ * * `extra_options` - Additional options passed by the caller
897
+ *
898
+ * # Returns
899
+ * The combination of caller specified options AND enforced options
916
900
  */
917
901
  combine_options: ({ eid, msg_type, extra_options }: {
918
902
  eid: u32;
@@ -938,8 +922,8 @@ export interface Client {
938
922
  *
939
923
  * # Returns
940
924
  * A tuple containing:
941
- * - `sender_version`: The version of the OAppSender implementation
942
- * - `receiver_version`: The version of the OAppReceiver implementation
925
+ * - `sender_version`: The version of the OAppSender
926
+ * - `receiver_version`: The version of the OAppReceiver
943
927
  */
944
928
  oapp_version: (txnOptions?: {
945
929
  /**
@@ -957,10 +941,10 @@ export interface Client {
957
941
  }) => Promise<AssembledTransaction<readonly [u64, u64]>>;
958
942
  /**
959
943
  * Construct and simulate a endpoint transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
960
- * Retrieves the LayerZero endpoint associated with the OApp.
944
+ * Retrieves the LayerZero endpoint address associated with the OApp.
961
945
  *
962
946
  * # Returns
963
- * The LayerZero endpoint client
947
+ * The LayerZero endpoint address
964
948
  */
965
949
  endpoint: (txnOptions?: {
966
950
  /**
@@ -1050,6 +1034,180 @@ export interface Client {
1050
1034
  */
1051
1035
  simulate?: boolean;
1052
1036
  }) => Promise<AssembledTransaction<null>>;
1037
+ /**
1038
+ * Construct and simulate a set_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1039
+ * Sets TTL configs for instance and persistent storage.
1040
+ *
1041
+ * - `None` values remove the corresponding config (disables auto-extension for that type)
1042
+ * - Validates that `threshold <= extend_to <= MAX_TTL`
1043
+ *
1044
+ * # Arguments
1045
+ * - `instance` - TTL config for instance storage
1046
+ * - `persistent` - TTL config for persistent storage
1047
+ *
1048
+ * # Panics
1049
+ * - `TtlConfigFrozen` if configs are frozen
1050
+ * - `InvalidTtlConfig` if validation fails
1051
+ */
1052
+ set_ttl_configs: ({ instance, persistent }: {
1053
+ instance: Option<TtlConfig>;
1054
+ persistent: Option<TtlConfig>;
1055
+ }, txnOptions?: {
1056
+ /**
1057
+ * The fee to pay for the transaction. Default: BASE_FEE
1058
+ */
1059
+ fee?: number;
1060
+ /**
1061
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1062
+ */
1063
+ timeoutInSeconds?: number;
1064
+ /**
1065
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1066
+ */
1067
+ simulate?: boolean;
1068
+ }) => Promise<AssembledTransaction<null>>;
1069
+ /**
1070
+ * Construct and simulate a ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1071
+ * Returns the current TTL configs as (instance_config, persistent_config).
1072
+ */
1073
+ ttl_configs: (txnOptions?: {
1074
+ /**
1075
+ * The fee to pay for the transaction. Default: BASE_FEE
1076
+ */
1077
+ fee?: number;
1078
+ /**
1079
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1080
+ */
1081
+ timeoutInSeconds?: number;
1082
+ /**
1083
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1084
+ */
1085
+ simulate?: boolean;
1086
+ }) => Promise<AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>>;
1087
+ /**
1088
+ * Construct and simulate a freeze_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1089
+ * Permanently freezes TTL configs, preventing any future modifications.
1090
+ *
1091
+ * This is irreversible and provides immutability guarantees to users.
1092
+ * Emits `TtlConfigsFrozen` event.
1093
+ *
1094
+ * # Panics
1095
+ * - `TtlConfigAlreadyFrozen` if already frozen
1096
+ */
1097
+ freeze_ttl_configs: (txnOptions?: {
1098
+ /**
1099
+ * The fee to pay for the transaction. Default: BASE_FEE
1100
+ */
1101
+ fee?: number;
1102
+ /**
1103
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1104
+ */
1105
+ timeoutInSeconds?: number;
1106
+ /**
1107
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1108
+ */
1109
+ simulate?: boolean;
1110
+ }) => Promise<AssembledTransaction<null>>;
1111
+ /**
1112
+ * Construct and simulate a is_ttl_configs_frozen transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1113
+ * Returns whether TTL configs are frozen.
1114
+ */
1115
+ is_ttl_configs_frozen: (txnOptions?: {
1116
+ /**
1117
+ * The fee to pay for the transaction. Default: BASE_FEE
1118
+ */
1119
+ fee?: number;
1120
+ /**
1121
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1122
+ */
1123
+ timeoutInSeconds?: number;
1124
+ /**
1125
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1126
+ */
1127
+ simulate?: boolean;
1128
+ }) => Promise<AssembledTransaction<boolean>>;
1129
+ /**
1130
+ * Construct and simulate a extend_instance_ttl transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1131
+ * Extends the instance TTL.
1132
+ *
1133
+ * # Arguments
1134
+ *
1135
+ * * `threshold` - The threshold to extend the TTL (if current TTL is below this, extend).
1136
+ * * `extend_to` - The TTL to extend to.
1137
+ */
1138
+ extend_instance_ttl: ({ threshold, extend_to }: {
1139
+ threshold: u32;
1140
+ extend_to: u32;
1141
+ }, txnOptions?: {
1142
+ /**
1143
+ * The fee to pay for the transaction. Default: BASE_FEE
1144
+ */
1145
+ fee?: number;
1146
+ /**
1147
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1148
+ */
1149
+ timeoutInSeconds?: number;
1150
+ /**
1151
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1152
+ */
1153
+ simulate?: boolean;
1154
+ }) => Promise<AssembledTransaction<null>>;
1155
+ /**
1156
+ * Construct and simulate a owner transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1157
+ * Returns the current owner address, or None if no owner is set.
1158
+ */
1159
+ owner: (txnOptions?: {
1160
+ /**
1161
+ * The fee to pay for the transaction. Default: BASE_FEE
1162
+ */
1163
+ fee?: number;
1164
+ /**
1165
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1166
+ */
1167
+ timeoutInSeconds?: number;
1168
+ /**
1169
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1170
+ */
1171
+ simulate?: boolean;
1172
+ }) => Promise<AssembledTransaction<Option<string>>>;
1173
+ /**
1174
+ * Construct and simulate a transfer_ownership transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1175
+ * Transfers ownership to a new address. Requires current owner authorization.
1176
+ */
1177
+ transfer_ownership: ({ new_owner }: {
1178
+ new_owner: string;
1179
+ }, txnOptions?: {
1180
+ /**
1181
+ * The fee to pay for the transaction. Default: BASE_FEE
1182
+ */
1183
+ fee?: number;
1184
+ /**
1185
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1186
+ */
1187
+ timeoutInSeconds?: number;
1188
+ /**
1189
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1190
+ */
1191
+ simulate?: boolean;
1192
+ }) => Promise<AssembledTransaction<null>>;
1193
+ /**
1194
+ * Construct and simulate a renounce_ownership transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1195
+ * Permanently renounces ownership. Requires current owner authorization.
1196
+ */
1197
+ renounce_ownership: (txnOptions?: {
1198
+ /**
1199
+ * The fee to pay for the transaction. Default: BASE_FEE
1200
+ */
1201
+ fee?: number;
1202
+ /**
1203
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1204
+ */
1205
+ timeoutInSeconds?: number;
1206
+ /**
1207
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1208
+ */
1209
+ simulate?: boolean;
1210
+ }) => Promise<AssembledTransaction<null>>;
1053
1211
  }
1054
1212
  export declare class Client extends ContractClient {
1055
1213
  readonly options: ContractClientOptions;
@@ -1071,14 +1229,7 @@ export declare class Client extends ContractClient {
1071
1229
  }): Promise<AssembledTransaction<T>>;
1072
1230
  constructor(options: ContractClientOptions);
1073
1231
  readonly fromJSON: {
1074
- owner: (json: string) => AssembledTransaction<Option<string>>;
1075
- transfer_ownership: (json: string) => AssembledTransaction<null>;
1076
- renounce_ownership: (json: string) => AssembledTransaction<null>;
1077
- set_ttl_configs: (json: string) => AssembledTransaction<null>;
1078
- ttl_configs: (json: string) => AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>;
1079
- freeze_ttl_configs: (json: string) => AssembledTransaction<null>;
1080
- is_ttl_configs_frozen: (json: string) => AssembledTransaction<boolean>;
1081
- extend_instance_ttl: (json: string) => AssembledTransaction<null>;
1232
+ authorizer: (json: string) => AssembledTransaction<string>;
1082
1233
  quote: (json: string) => AssembledTransaction<MessagingFee>;
1083
1234
  increment: (json: string) => AssembledTransaction<null>;
1084
1235
  set_ordered_nonce: (json: string) => AssembledTransaction<null>;
@@ -1089,8 +1240,8 @@ export declare class Client extends ContractClient {
1089
1240
  inbound_count: (json: string) => AssembledTransaction<bigint>;
1090
1241
  outbound_count: (json: string) => AssembledTransaction<bigint>;
1091
1242
  next_nonce: (json: string) => AssembledTransaction<bigint>;
1092
- lz_receive: (json: string) => AssembledTransaction<null>;
1093
1243
  allow_initialize_path: (json: string) => AssembledTransaction<boolean>;
1244
+ lz_receive: (json: string) => AssembledTransaction<null>;
1094
1245
  is_compose_msg_sender: (json: string) => AssembledTransaction<boolean>;
1095
1246
  lz_compose: (json: string) => AssembledTransaction<null>;
1096
1247
  enforced_options: (json: string) => AssembledTransaction<Buffer<ArrayBufferLike>>;
@@ -1101,5 +1252,13 @@ export declare class Client extends ContractClient {
1101
1252
  peer: (json: string) => AssembledTransaction<Option<Buffer<ArrayBufferLike>>>;
1102
1253
  set_peer: (json: string) => AssembledTransaction<null>;
1103
1254
  set_delegate: (json: string) => AssembledTransaction<null>;
1255
+ set_ttl_configs: (json: string) => AssembledTransaction<null>;
1256
+ ttl_configs: (json: string) => AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>;
1257
+ freeze_ttl_configs: (json: string) => AssembledTransaction<null>;
1258
+ is_ttl_configs_frozen: (json: string) => AssembledTransaction<boolean>;
1259
+ extend_instance_ttl: (json: string) => AssembledTransaction<null>;
1260
+ owner: (json: string) => AssembledTransaction<Option<string>>;
1261
+ transfer_ownership: (json: string) => AssembledTransaction<null>;
1262
+ renounce_ownership: (json: string) => AssembledTransaction<null>;
1104
1263
  };
1105
1264
  }