@ohos-ports/azle 0.33.0-beta.0

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 (629) hide show
  1. package/.scripts/add_metadata_to_dfx_json.js +54 -0
  2. package/.scripts/cargo_expand.sh +17 -0
  3. package/.scripts/class_migration/add_example_dependency.js +54 -0
  4. package/.scripts/class_migration/change_to_custom_candid_gen.js +76 -0
  5. package/.scripts/class_migration/clean_package.js +27 -0
  6. package/.scripts/class_migration/copy_generated_candid_from_example.js +90 -0
  7. package/.scripts/class_migration/delete_tests_file.js +22 -0
  8. package/.scripts/class_migration/do_all_packages.js +61 -0
  9. package/.scripts/class_migration/modify_pretest.js +57 -0
  10. package/.scripts/class_migration/name_package.js +62 -0
  11. package/.scripts/class_migration/update_test.js +38 -0
  12. package/.scripts/class_migration/update_ts_config.js +48 -0
  13. package/.scripts/class_migration/update_typescript.js +99 -0
  14. package/.scripts/clean_all_projects.ts +91 -0
  15. package/.scripts/delete_git_branches.sh +20 -0
  16. package/.scripts/dev_dependencies/add_dev_dependencies.js +53 -0
  17. package/.scripts/dev_dependencies/remove_dev_dependencies.js +44 -0
  18. package/.scripts/examples-survey.json +5651 -0
  19. package/.scripts/file_generator/bin.js +4 -0
  20. package/.scripts/file_generator/index.ts +59 -0
  21. package/.scripts/file_generator/main.ts +55 -0
  22. package/.scripts/find_multiline_files.ts +101 -0
  23. package/.scripts/hash_file.ts +9 -0
  24. package/.scripts/hash_file_by_parts/bin.js +4 -0
  25. package/.scripts/hash_file_by_parts/index.ts +48 -0
  26. package/.scripts/hash_file_by_parts/main.ts +10 -0
  27. package/.scripts/jest_isolate_modules.js +29 -0
  28. package/.scripts/jest_migration.sh +31 -0
  29. package/.scripts/reorder_dfx_json.js +72 -0
  30. package/.scripts/setup_release_branch.sh +34 -0
  31. package/.scripts/simplify_tsconfig.js +37 -0
  32. package/.scripts/survey_examples.ts +396 -0
  33. package/.scripts/tsx_migration/ts_node_to_tsx.js +76 -0
  34. package/.scripts/update_candid.sh +40 -0
  35. package/.scripts/update_dfx_json_main.js +66 -0
  36. package/.scripts/update_dfx_json_with_optimize.py +22 -0
  37. package/.scripts/update_jest_configs.ts +248 -0
  38. package/LICENSE +21 -0
  39. package/LICENSE_EXTENSION.md +42 -0
  40. package/NOTICE +222 -0
  41. package/README.md +78 -0
  42. package/dist/canister_templates/experimental.wasm +0 -0
  43. package/dist/canister_templates/licenses.yml +29186 -0
  44. package/dist/canister_templates/stable.wasm +0 -0
  45. package/examples/README.md +22 -0
  46. package/examples/experimental/demo/hello_world_http_server/README.md +120 -0
  47. package/examples/experimental/demo/hello_world_http_server/benchmarks.json +42 -0
  48. package/examples/experimental/demo/hello_world_http_server/benchmarks.md +28 -0
  49. package/examples/experimental/demo/hello_world_http_server/dfx.json +13 -0
  50. package/examples/experimental/demo/hello_world_http_server/env.d.ts +9 -0
  51. package/examples/experimental/demo/hello_world_http_server/jest.config.js +10 -0
  52. package/examples/experimental/demo/hello_world_http_server/package-lock.json +8409 -0
  53. package/examples/experimental/demo/hello_world_http_server/package.json +20 -0
  54. package/examples/experimental/demo/hello_world_http_server/src/backend/index.ts +23 -0
  55. package/examples/experimental/demo/hello_world_http_server/src/frontend/index.html +16 -0
  56. package/examples/experimental/demo/hello_world_http_server/src/frontend/index.ts +62 -0
  57. package/examples/experimental/demo/hello_world_http_server/test/pretest.ts +13 -0
  58. package/examples/experimental/demo/hello_world_http_server/test/test.ts +9 -0
  59. package/examples/experimental/demo/hello_world_http_server/test/tests.ts +27 -0
  60. package/examples/experimental/demo/hello_world_http_server/tsconfig.json +13 -0
  61. package/examples/package-lock.json +8746 -0
  62. package/examples/package.json +17 -0
  63. package/examples/stable/demo/hello_world/README.md +97 -0
  64. package/examples/stable/demo/hello_world/benchmarks.json +28 -0
  65. package/examples/stable/demo/hello_world/benchmarks.md +26 -0
  66. package/examples/stable/demo/hello_world/dfx.json +12 -0
  67. package/examples/stable/demo/hello_world/jest.config.js +10 -0
  68. package/examples/stable/demo/hello_world/package-lock.json +5524 -0
  69. package/examples/stable/demo/hello_world/package.json +14 -0
  70. package/examples/stable/demo/hello_world/src/index.ts +15 -0
  71. package/examples/stable/demo/hello_world/test/pretest.ts +17 -0
  72. package/examples/stable/demo/hello_world/test/test.ts +15 -0
  73. package/examples/stable/demo/hello_world/test/tests.ts +27 -0
  74. package/examples/stable/demo/hello_world/tsconfig.json +10 -0
  75. package/jest.config.dev.js +10 -0
  76. package/package.json +102 -0
  77. package/src/build.ts +98 -0
  78. package/src/experimental/build/assert_experimental.ts +5 -0
  79. package/src/experimental/build/commands/build/candid_and_method_meta.ts +30 -0
  80. package/src/experimental/build/commands/build/custom_js_modules/acorn/acorn.ts +6 -0
  81. package/src/experimental/build/commands/build/custom_js_modules/acorn/walk.ts +6 -0
  82. package/src/experimental/build/commands/build/custom_js_modules/async_hooks.ts +11 -0
  83. package/src/experimental/build/commands/build/custom_js_modules/https.ts +6 -0
  84. package/src/experimental/build/commands/build/custom_js_modules/perf_hooks.ts +12 -0
  85. package/src/experimental/build/commands/build/file_watcher/file_watcher.ts +152 -0
  86. package/src/experimental/build/commands/build/file_watcher/file_watcher_loader.js +9 -0
  87. package/src/experimental/build/commands/build/file_watcher/setup_file_watcher.ts +61 -0
  88. package/src/experimental/build/commands/build/get_context.ts +61 -0
  89. package/src/experimental/build/commands/build/index.ts +87 -0
  90. package/src/experimental/build/commands/build/javascript.ts +194 -0
  91. package/src/experimental/build/commands/build/wasm_binary/index.ts +32 -0
  92. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/Cargo.toml +26 -0
  93. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/autoreload.rs +46 -0
  94. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/benchmarking.rs +35 -0
  95. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/candid.rs +106 -0
  96. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/chunk.rs +11 -0
  97. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/execute_method_js.rs +46 -0
  98. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/guards.rs +9 -0
  99. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/accept_message.rs +10 -0
  100. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/call_raw.rs +265 -0
  101. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/candid_compiler.rs +19 -0
  102. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/candid_decode.rs +17 -0
  103. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/candid_encode.rs +17 -0
  104. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/canister_cycle_balance.rs +12 -0
  105. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/canister_self.rs +10 -0
  106. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/canister_version.rs +10 -0
  107. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/certified_data_set.rs +17 -0
  108. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/clear_timer.rs +18 -0
  109. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/cycles_burn.rs +17 -0
  110. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/data_certificate.rs +13 -0
  111. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/debug_print.rs +17 -0
  112. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/drain_microtasks.rs +23 -0
  113. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/in_replicated_execution.rs +8 -0
  114. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/is_controller.rs +16 -0
  115. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/mod.rs +351 -0
  116. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_arg_data.rs +10 -0
  117. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_caller.rs +10 -0
  118. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_cycles_accept.rs +17 -0
  119. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_cycles_available.rs +10 -0
  120. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_cycles_refunded.rs +10 -0
  121. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_method_name.rs +8 -0
  122. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_reject.rs +16 -0
  123. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_reject_code.rs +8 -0
  124. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_reject_msg.rs +8 -0
  125. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/msg_reply.rs +19 -0
  126. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/notify_raw.rs +65 -0
  127. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/performance_counter.rs +19 -0
  128. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/rand_bytes.rs +25 -0
  129. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/rand_seed.rs +30 -0
  130. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/set_timer.rs +83 -0
  131. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/set_timer_interval.rs +66 -0
  132. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_contains_key.rs +32 -0
  133. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_get.rs +36 -0
  134. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_init.rs +29 -0
  135. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_insert.rs +46 -0
  136. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_is_empty.rs +23 -0
  137. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_items.rs +59 -0
  138. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_keys.rs +54 -0
  139. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_len.rs +23 -0
  140. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_remove.rs +36 -0
  141. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/stable_b_tree_map_values.rs +54 -0
  142. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/time.rs +8 -0
  143. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/ic/trap.rs +14 -0
  144. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/init_and_post_upgrade.rs +212 -0
  145. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/internal_canister_methods.rs +142 -0
  146. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/lib.rs +35 -0
  147. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/stable_b_tree_map.rs +50 -0
  148. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/upload_file/bytes_to_human_readable.rs +20 -0
  149. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/upload_file/file_info.rs +60 -0
  150. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/upload_file/hash.rs +111 -0
  151. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/upload_file/mod.rs +20 -0
  152. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/upload_file/reset.rs +15 -0
  153. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/upload_file/upload_file_chunk.rs +88 -0
  154. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/wasm_binary_manipulation.rs +276 -0
  155. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/web_assembly/instantiate.rs +195 -0
  156. package/src/experimental/build/commands/build/wasm_binary/rust/experimental_canister_template/src/web_assembly/mod.rs +24 -0
  157. package/src/experimental/build/commands/upload_assets/file_uploader/bytes_to_human_readable.ts +27 -0
  158. package/src/experimental/build/commands/upload_assets/file_uploader/expand_paths.ts +50 -0
  159. package/src/experimental/build/commands/upload_assets/file_uploader/get_files_to_upload.ts +21 -0
  160. package/src/experimental/build/commands/upload_assets/file_uploader/incomplete_files.ts +28 -0
  161. package/src/experimental/build/commands/upload_assets/file_uploader/index.ts +43 -0
  162. package/src/experimental/build/commands/upload_assets/file_uploader/on_before_exit.ts +34 -0
  163. package/src/experimental/build/commands/upload_assets/file_uploader/upload_file.ts +91 -0
  164. package/src/experimental/build/commands/upload_assets/file_uploader/uploader_actor.ts +51 -0
  165. package/src/experimental/build/commands/upload_assets/index.ts +16 -0
  166. package/src/experimental/build/commands/upload_assets/uploader_identity.ts +23 -0
  167. package/src/experimental/build/index.ts +61 -0
  168. package/src/experimental/build/utils/dfx.ts +212 -0
  169. package/src/experimental/build/utils/filter_async.ts +14 -0
  170. package/src/experimental/build/utils/find_project_root.ts +67 -0
  171. package/src/experimental/build/utils/global_paths.ts +8 -0
  172. package/src/experimental/build/utils/log_success.ts +18 -0
  173. package/src/experimental/build/utils/types.ts +34 -0
  174. package/src/experimental/lib/assert_experimental.ts +19 -0
  175. package/src/experimental/lib/fetch/file.ts +15 -0
  176. package/src/experimental/lib/fetch/headers.ts +85 -0
  177. package/src/experimental/lib/fetch/http.ts +293 -0
  178. package/src/experimental/lib/fetch/icp.ts +98 -0
  179. package/src/experimental/lib/fetch/index.ts +97 -0
  180. package/src/experimental/lib/fetch/response.ts +171 -0
  181. package/src/experimental/lib/fetch/url.ts +15 -0
  182. package/src/experimental/lib/globals.ts +146 -0
  183. package/src/experimental/lib/http_client/fetch_ic/actor.ts +131 -0
  184. package/src/experimental/lib/http_client/fetch_ic/agent.ts +20 -0
  185. package/src/experimental/lib/http_client/fetch_ic/call.ts +257 -0
  186. package/src/experimental/lib/http_client/fetch_ic/get_canister_id.ts +25 -0
  187. package/src/experimental/lib/http_client/fetch_ic/host.ts +30 -0
  188. package/src/experimental/lib/http_client/fetch_ic/identity.ts +52 -0
  189. package/src/experimental/lib/http_client/fetch_ic/index.ts +95 -0
  190. package/src/experimental/lib/http_client/fetch_ic/response.ts +8 -0
  191. package/src/experimental/lib/http_client/index.ts +6 -0
  192. package/src/experimental/lib/http_client/to_jwt.ts +6 -0
  193. package/src/experimental/lib/ic/azle_ic_experimental.ts +92 -0
  194. package/src/experimental/lib/ic/candid_compiler.ts +14 -0
  195. package/src/experimental/lib/ic/index.ts +10 -0
  196. package/src/experimental/lib/ic/set_outgoing_http_options.ts +18 -0
  197. package/src/experimental/lib/index.ts +7 -0
  198. package/src/experimental/lib/server.ts +279 -0
  199. package/src/experimental/lib/threshold_wallet/calculate_rsv_for_tecdsa.ts +45 -0
  200. package/src/experimental/lib/threshold_wallet/ecdsa_public_key.ts +33 -0
  201. package/src/experimental/lib/threshold_wallet/index.ts +7 -0
  202. package/src/experimental/lib/threshold_wallet/register_get_url.ts +36 -0
  203. package/src/experimental/lib/threshold_wallet/sign_with_ecdsa.ts +28 -0
  204. package/src/experimental/lib/threshold_wallet/wallet.ts +99 -0
  205. package/src/experimental/test/property/arbitraries/candid/candid_definition_arb/complex_candid_definition_memo.ts +113 -0
  206. package/src/experimental/test/property/arbitraries/candid/candid_definition_arb/index.ts +73 -0
  207. package/src/experimental/test/property/arbitraries/candid/candid_definition_arb/recursive_candid_definition_memo.ts +28 -0
  208. package/src/experimental/test/property/arbitraries/candid/candid_definition_arb/simple_candid_definition_arb.ts +116 -0
  209. package/src/experimental/test/property/arbitraries/candid/candid_definition_arb/types.ts +117 -0
  210. package/src/experimental/test/property/arbitraries/candid/candid_return_type_arb.ts +22 -0
  211. package/src/experimental/test/property/arbitraries/candid/candid_type.ts +83 -0
  212. package/src/experimental/test/property/arbitraries/candid/candid_value_and_meta_arb.ts +84 -0
  213. package/src/experimental/test/property/arbitraries/candid/candid_value_and_meta_arb_generator.ts +63 -0
  214. package/src/experimental/test/property/arbitraries/candid/candid_values_arb.ts +173 -0
  215. package/src/experimental/test/property/arbitraries/candid/constructed/blob_arb/definition_arb.ts +11 -0
  216. package/src/experimental/test/property/arbitraries/candid/constructed/blob_arb/index.ts +19 -0
  217. package/src/experimental/test/property/arbitraries/candid/constructed/blob_arb/values_arb.ts +11 -0
  218. package/src/experimental/test/property/arbitraries/candid/constructed/opt_arb/definition_arb.ts +172 -0
  219. package/src/experimental/test/property/arbitraries/candid/constructed/opt_arb/index.ts +29 -0
  220. package/src/experimental/test/property/arbitraries/candid/constructed/opt_arb/values_arb.ts +88 -0
  221. package/src/experimental/test/property/arbitraries/candid/constructed/record_arb/definition_arb.ts +184 -0
  222. package/src/experimental/test/property/arbitraries/candid/constructed/record_arb/index.ts +34 -0
  223. package/src/experimental/test/property/arbitraries/candid/constructed/record_arb/values_arb.ts +95 -0
  224. package/src/experimental/test/property/arbitraries/candid/constructed/tuple_arb/definition_arb.ts +159 -0
  225. package/src/experimental/test/property/arbitraries/candid/constructed/tuple_arb/index.ts +31 -0
  226. package/src/experimental/test/property/arbitraries/candid/constructed/tuple_arb/values_arbs.ts +76 -0
  227. package/src/experimental/test/property/arbitraries/candid/constructed/variant_arb/definition_arbs.ts +257 -0
  228. package/src/experimental/test/property/arbitraries/candid/constructed/variant_arb/index.ts +37 -0
  229. package/src/experimental/test/property/arbitraries/candid/constructed/variant_arb/values_arb.ts +92 -0
  230. package/src/experimental/test/property/arbitraries/candid/constructed/vec_arb/definition_arb.ts +203 -0
  231. package/src/experimental/test/property/arbitraries/candid/constructed/vec_arb/index.ts +39 -0
  232. package/src/experimental/test/property/arbitraries/candid/constructed/vec_arb/values_arb.ts +257 -0
  233. package/src/experimental/test/property/arbitraries/candid/corresponding_js_type.ts +34 -0
  234. package/src/experimental/test/property/arbitraries/candid/primitive/bool_arb.ts +28 -0
  235. package/src/experimental/test/property/arbitraries/candid/primitive/floats/float32_arb.ts +56 -0
  236. package/src/experimental/test/property/arbitraries/candid/primitive/floats/float64_arb.ts +56 -0
  237. package/src/experimental/test/property/arbitraries/candid/primitive/ints/index.ts +11 -0
  238. package/src/experimental/test/property/arbitraries/candid/primitive/ints/int16_arb.ts +34 -0
  239. package/src/experimental/test/property/arbitraries/candid/primitive/ints/int32_arb.ts +34 -0
  240. package/src/experimental/test/property/arbitraries/candid/primitive/ints/int64_arb.ts +41 -0
  241. package/src/experimental/test/property/arbitraries/candid/primitive/ints/int8_arb.ts +34 -0
  242. package/src/experimental/test/property/arbitraries/candid/primitive/ints/int_arb.ts +39 -0
  243. package/src/experimental/test/property/arbitraries/candid/primitive/nats/index.ts +11 -0
  244. package/src/experimental/test/property/arbitraries/candid/primitive/nats/nat16_arb.ts +34 -0
  245. package/src/experimental/test/property/arbitraries/candid/primitive/nats/nat32_arb.ts +34 -0
  246. package/src/experimental/test/property/arbitraries/candid/primitive/nats/nat64_arb.ts +41 -0
  247. package/src/experimental/test/property/arbitraries/candid/primitive/nats/nat8_arb.ts +34 -0
  248. package/src/experimental/test/property/arbitraries/candid/primitive/nats/nat_arb.ts +39 -0
  249. package/src/experimental/test/property/arbitraries/candid/primitive/null_arb.ts +33 -0
  250. package/src/experimental/test/property/arbitraries/candid/primitive/text_arb.ts +47 -0
  251. package/src/experimental/test/property/arbitraries/candid/primitive/void_arb.ts +33 -0
  252. package/src/experimental/test/property/arbitraries/candid/recursive/definition_arb.ts +125 -0
  253. package/src/experimental/test/property/arbitraries/candid/recursive/index.ts +35 -0
  254. package/src/experimental/test/property/arbitraries/candid/recursive/values_arb.ts +43 -0
  255. package/src/experimental/test/property/arbitraries/candid/reference/func_arb/definition_arb.ts +198 -0
  256. package/src/experimental/test/property/arbitraries/candid/reference/func_arb/index.ts +23 -0
  257. package/src/experimental/test/property/arbitraries/candid/reference/func_arb/values_arb.ts +70 -0
  258. package/src/experimental/test/property/arbitraries/candid/reference/principal_arb.ts +43 -0
  259. package/src/experimental/test/property/arbitraries/candid/reference/service_arb/definition_arb.ts +163 -0
  260. package/src/experimental/test/property/arbitraries/candid/reference/service_arb/index.ts +41 -0
  261. package/src/experimental/test/property/arbitraries/candid/reference/service_arb/service_method_arb.ts +110 -0
  262. package/src/experimental/test/property/arbitraries/candid/reference/service_arb/values_arb.ts +20 -0
  263. package/src/experimental/test/property/arbitraries/candid/simple_type_arbs/candid_type_to_azle_candid_type.ts +66 -0
  264. package/src/experimental/test/property/arbitraries/candid/simple_type_arbs/definition_arb.ts +95 -0
  265. package/src/experimental/test/property/arbitraries/candid/simple_type_arbs/values_arb.ts +19 -0
  266. package/src/experimental/test/property/arbitraries/candid/to_src_literal/bigint.ts +5 -0
  267. package/src/experimental/test/property/arbitraries/candid/to_src_literal/blob.ts +5 -0
  268. package/src/experimental/test/property/arbitraries/candid/to_src_literal/boolean.ts +5 -0
  269. package/src/experimental/test/property/arbitraries/candid/to_src_literal/float.ts +18 -0
  270. package/src/experimental/test/property/arbitraries/candid/to_src_literal/null.ts +5 -0
  271. package/src/experimental/test/property/arbitraries/candid/to_src_literal/number.ts +5 -0
  272. package/src/experimental/test/property/arbitraries/candid/to_src_literal/principal.ts +7 -0
  273. package/src/experimental/test/property/arbitraries/candid/to_src_literal/string.ts +12 -0
  274. package/src/experimental/test/property/arbitraries/candid/to_src_literal/void.ts +5 -0
  275. package/src/experimental/test/property/arbitraries/canister_arb.ts +195 -0
  276. package/src/experimental/test/property/arbitraries/canister_methods/index.ts +79 -0
  277. package/src/experimental/test/property/arbitraries/canister_methods/init_method_arb.ts +127 -0
  278. package/src/experimental/test/property/arbitraries/canister_methods/inspect_message_method_arb.ts +55 -0
  279. package/src/experimental/test/property/arbitraries/canister_methods/post_upgrade_method_arb.ts +133 -0
  280. package/src/experimental/test/property/arbitraries/canister_methods/pre_upgrade_method_arb.ts +57 -0
  281. package/src/experimental/test/property/arbitraries/canister_methods/query_method_arb.ts +141 -0
  282. package/src/experimental/test/property/arbitraries/canister_methods/update_method_arb.ts +158 -0
  283. package/src/experimental/test/property/arbitraries/config.ts +4 -0
  284. package/src/experimental/test/property/arbitraries/http/body_arb.ts +7 -0
  285. package/src/experimental/test/property/arbitraries/http/headers_arb.ts +22 -0
  286. package/src/experimental/test/property/arbitraries/http/request_arb.ts +158 -0
  287. package/src/experimental/test/property/arbitraries/http/response_arb.ts +192 -0
  288. package/src/experimental/test/property/arbitraries/js_name_arb.ts +144 -0
  289. package/src/experimental/test/property/arbitraries/stable_b_tree_map_arb.ts +55 -0
  290. package/src/experimental/test/property/arbitraries/types.ts +24 -0
  291. package/src/experimental/test/property/arbitraries/unique_identifier_arb.ts +38 -0
  292. package/src/experimental/test/property/arbitraries/unique_primitive_arb.ts +22 -0
  293. package/src/experimental/test/property/are_params_correctly_ordered.ts +19 -0
  294. package/src/experimental/test/property/get_actor.ts +39 -0
  295. package/src/experimental/test/property/index.ts +141 -0
  296. package/src/experimental/test/property/test/index.ts +226 -0
  297. package/src/experimental/test/property/visitors/LICENCE +201 -0
  298. package/src/experimental/test/property/visitors/cli-string-visitor.ts +138 -0
  299. package/src/experimental/test/set_experimental.ts +1 -0
  300. package/src/exports/_internal/dfx.ts +1 -0
  301. package/src/exports/_internal/globals.ts +1 -0
  302. package/src/exports/_internal/test/candid_deep_equal.ts +1 -0
  303. package/src/exports/_internal/test.ts +1 -0
  304. package/src/exports/_internal/type_tests/assert_type.ts +1 -0
  305. package/src/exports/_internal.ts +1 -0
  306. package/src/exports/canisters/ck_btc_ledger/idl.ts +1 -0
  307. package/src/exports/canisters/ck_eth_ledger/idl.ts +1 -0
  308. package/src/exports/canisters/cycles_ledger/idl.ts +1 -0
  309. package/src/exports/canisters/evm_rpc/idl.ts +1 -0
  310. package/src/exports/canisters/exchange_rate/idl.ts +1 -0
  311. package/src/exports/canisters/http_gateway/idl.ts +1 -0
  312. package/src/exports/canisters/icrc_1/idl.ts +1 -0
  313. package/src/exports/canisters/icrc_10/idl.ts +1 -0
  314. package/src/exports/canisters/icrc_2/idl.ts +1 -0
  315. package/src/exports/canisters/icrc_3/idl.ts +1 -0
  316. package/src/exports/canisters/icrc_37/idl.ts +1 -0
  317. package/src/exports/canisters/icrc_7/idl.ts +1 -0
  318. package/src/exports/canisters/llm/idl.ts +1 -0
  319. package/src/exports/canisters/management/idl.ts +1 -0
  320. package/src/exports/canisters/nns_cycles_minting/idl.ts +1 -0
  321. package/src/exports/canisters/nns_governance/idl.ts +1 -0
  322. package/src/exports/canisters/nns_icp_ledger/idl.ts +1 -0
  323. package/src/exports/canisters/nns_internet_identity/idl.ts +1 -0
  324. package/src/exports/canisters/nns_registry/idl.ts +1 -0
  325. package/src/exports/canisters/nns_sns_w/idl.ts +1 -0
  326. package/src/exports/experimental/_internal/dfx.ts +1 -0
  327. package/src/exports/experimental/_internal/globals.ts +1 -0
  328. package/src/exports/experimental/_internal/test/property/arbitraries/candid/candid_definition_arb/types.ts +1 -0
  329. package/src/exports/experimental/_internal/test/property/arbitraries/candid/candid_definition_arb.ts +1 -0
  330. package/src/exports/experimental/_internal/test/property/arbitraries/candid/candid_return_type_arb.ts +1 -0
  331. package/src/exports/experimental/_internal/test/property/arbitraries/candid/candid_value_and_meta_arb.ts +1 -0
  332. package/src/exports/experimental/_internal/test/property/arbitraries/candid/candid_value_and_meta_arb_generator.ts +1 -0
  333. package/src/exports/experimental/_internal/test/property/arbitraries/candid/candid_values_arb.ts +1 -0
  334. package/src/exports/experimental/_internal/test/property/arbitraries/candid/constructed/blob_arb.ts +1 -0
  335. package/src/exports/experimental/_internal/test/property/arbitraries/candid/constructed/opt_arb.ts +1 -0
  336. package/src/exports/experimental/_internal/test/property/arbitraries/candid/constructed/record_arb.ts +1 -0
  337. package/src/exports/experimental/_internal/test/property/arbitraries/candid/constructed/tuple_arb.ts +1 -0
  338. package/src/exports/experimental/_internal/test/property/arbitraries/candid/constructed/variant_arb.ts +1 -0
  339. package/src/exports/experimental/_internal/test/property/arbitraries/candid/constructed/vec_arb.ts +1 -0
  340. package/src/exports/experimental/_internal/test/property/arbitraries/candid/corresponding_js_type.ts +1 -0
  341. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/bool_arb.ts +1 -0
  342. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/floats/float32_arb.ts +1 -0
  343. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/floats/float64_arb.ts +1 -0
  344. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/ints/int16_arb.ts +1 -0
  345. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/ints/int32_arb.ts +1 -0
  346. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/ints/int64_arb.ts +1 -0
  347. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/ints/int8_arb.ts +1 -0
  348. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/ints/int_arb.ts +1 -0
  349. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/nats/nat16_arb.ts +1 -0
  350. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/nats/nat32_arb.ts +1 -0
  351. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/nats/nat64_arb.ts +1 -0
  352. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/nats/nat8_arb.ts +1 -0
  353. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/nats/nat_arb.ts +1 -0
  354. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/null_arb.ts +1 -0
  355. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/text_arb.ts +1 -0
  356. package/src/exports/experimental/_internal/test/property/arbitraries/candid/primitive/void_arb.ts +1 -0
  357. package/src/exports/experimental/_internal/test/property/arbitraries/candid/recursive.ts +1 -0
  358. package/src/exports/experimental/_internal/test/property/arbitraries/candid/reference/func_arb.ts +1 -0
  359. package/src/exports/experimental/_internal/test/property/arbitraries/candid/reference/principal_arb.ts +1 -0
  360. package/src/exports/experimental/_internal/test/property/arbitraries/candid/reference/service_arb.ts +1 -0
  361. package/src/exports/experimental/_internal/test/property/arbitraries/canister_arb.ts +1 -0
  362. package/src/exports/experimental/_internal/test/property/arbitraries/canister_methods/init_method_arb.ts +1 -0
  363. package/src/exports/experimental/_internal/test/property/arbitraries/canister_methods/inspect_message_method_arb.ts +1 -0
  364. package/src/exports/experimental/_internal/test/property/arbitraries/canister_methods/post_upgrade_method_arb.ts +1 -0
  365. package/src/exports/experimental/_internal/test/property/arbitraries/canister_methods/pre_upgrade_method_arb.ts +1 -0
  366. package/src/exports/experimental/_internal/test/property/arbitraries/canister_methods/query_method_arb.ts +1 -0
  367. package/src/exports/experimental/_internal/test/property/arbitraries/canister_methods/update_method_arb.ts +1 -0
  368. package/src/exports/experimental/_internal/test/property/arbitraries/canister_methods.ts +1 -0
  369. package/src/exports/experimental/_internal/test/property/arbitraries/config.ts +1 -0
  370. package/src/exports/experimental/_internal/test/property/arbitraries/http/body_arb.ts +1 -0
  371. package/src/exports/experimental/_internal/test/property/arbitraries/http/headers_arb.ts +1 -0
  372. package/src/exports/experimental/_internal/test/property/arbitraries/http/request_arb.ts +1 -0
  373. package/src/exports/experimental/_internal/test/property/arbitraries/http/response_arb.ts +1 -0
  374. package/src/exports/experimental/_internal/test/property/arbitraries/stable_b_tree_map_arb.ts +1 -0
  375. package/src/exports/experimental/_internal/test/property/arbitraries/types.ts +1 -0
  376. package/src/exports/experimental/_internal/test/property/arbitraries/unique_identifier_arb.ts +1 -0
  377. package/src/exports/experimental/_internal/test/property/are_params_correctly_ordered.ts +1 -0
  378. package/src/exports/experimental/_internal/test/property/test.ts +1 -0
  379. package/src/exports/experimental/_internal/test/property.ts +1 -0
  380. package/src/exports/experimental/_internal/test/set_experimental.ts +1 -0
  381. package/src/exports/experimental/_internal.ts +8 -0
  382. package/src/exports/experimental/http_client.ts +1 -0
  383. package/src/exports/experimental.ts +3 -0
  384. package/src/stable/build/commands/build/candid_and_method_meta/execute.ts +134 -0
  385. package/src/stable/build/commands/build/candid_and_method_meta/index.ts +27 -0
  386. package/src/stable/build/commands/build/get_context.ts +79 -0
  387. package/src/stable/build/commands/build/index.ts +48 -0
  388. package/src/stable/build/commands/build/javascript.ts +259 -0
  389. package/src/stable/build/commands/build/wasm_binary/compile.ts +27 -0
  390. package/src/stable/build/commands/build/wasm_binary/index.ts +30 -0
  391. package/src/stable/build/commands/build/wasm_binary/manipulate.ts +268 -0
  392. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/Cargo.toml +23 -0
  393. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/benchmarking.rs +45 -0
  394. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/candid_and_method_meta.rs +49 -0
  395. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/execute_method_js.rs +65 -0
  396. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/guards.rs +11 -0
  397. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/accept_message.rs +6 -0
  398. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/call_raw.rs +362 -0
  399. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/candid_decode.rs +18 -0
  400. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/candid_encode.rs +19 -0
  401. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/canister_cycle_balance.rs +8 -0
  402. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/canister_self.rs +8 -0
  403. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/canister_version.rs +8 -0
  404. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/certified_data_set.rs +8 -0
  405. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/clear_timer.rs +15 -0
  406. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/cycles_burn.rs +17 -0
  407. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/data_certificate.rs +13 -0
  408. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/debug_print.rs +8 -0
  409. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/drain_microtasks.rs +22 -0
  410. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/in_replicated_execution.rs +6 -0
  411. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/is_controller.rs +11 -0
  412. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/mod.rs +219 -0
  413. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_arg_data.rs +8 -0
  414. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_caller.rs +8 -0
  415. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_cycles_accept.rs +17 -0
  416. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_cycles_available.rs +8 -0
  417. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_cycles_refunded.rs +8 -0
  418. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_method_name.rs +6 -0
  419. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_reject.rs +6 -0
  420. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_reject_code.rs +6 -0
  421. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_reject_msg.rs +6 -0
  422. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/msg_reply.rs +8 -0
  423. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/notify_raw.rs +62 -0
  424. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/performance_counter.rs +17 -0
  425. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/rand_bytes.rs +21 -0
  426. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/rand_seed.rs +26 -0
  427. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/set_timer.rs +92 -0
  428. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/set_timer_interval.rs +62 -0
  429. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_contains_key.rs +18 -0
  430. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_get.rs +21 -0
  431. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_init.rs +19 -0
  432. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_insert.rs +44 -0
  433. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_is_empty.rs +11 -0
  434. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_items.rs +48 -0
  435. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_keys.rs +43 -0
  436. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_len.rs +16 -0
  437. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_remove.rs +21 -0
  438. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/stable_b_tree_map_values.rs +43 -0
  439. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/time.rs +8 -0
  440. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/ic/trap.rs +22 -0
  441. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/init_and_post_upgrade.rs +98 -0
  442. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/initialize_context.rs +102 -0
  443. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/internal_canister_methods.rs +122 -0
  444. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/lib.rs +39 -0
  445. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/rquickjs_utils/call_with_error_handling.rs +26 -0
  446. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/rquickjs_utils/error.rs +27 -0
  447. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/rquickjs_utils/mod.rs +7 -0
  448. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/rquickjs_utils/with_ctx.rs +24 -0
  449. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/stable_b_tree_map.rs +84 -0
  450. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/state.rs +55 -0
  451. package/src/stable/build/commands/build/wasm_binary/rust/stable_canister_template/src/wasm_binary_manipulation.rs +296 -0
  452. package/src/stable/build/commands/clean.ts +15 -0
  453. package/src/stable/build/commands/dev/audit.ts +39 -0
  454. package/src/stable/build/commands/dev/setup/index.ts +41 -0
  455. package/src/stable/build/commands/dev/setup/install_cargo-audit.sh +11 -0
  456. package/src/stable/build/commands/dev/setup/install_cargo-auditable.sh +16 -0
  457. package/src/stable/build/commands/dev/setup/install_cargo-bundle-licenses.sh +11 -0
  458. package/src/stable/build/commands/dev/setup/install_cargo-deny.sh +11 -0
  459. package/src/stable/build/commands/dev/setup/install_dfx.sh +36 -0
  460. package/src/stable/build/commands/dev/setup/install_node.sh +25 -0
  461. package/src/stable/build/commands/dev/setup/install_rust.sh +24 -0
  462. package/src/stable/build/commands/dev/setup/install_wasi2ic.sh +11 -0
  463. package/src/stable/build/commands/dev/template/experimental.ts +28 -0
  464. package/src/stable/build/commands/dev/template/generate_licenses.ts +28 -0
  465. package/src/stable/build/commands/dev/template/stable.ts +27 -0
  466. package/src/stable/build/commands/extension/install.ts +25 -0
  467. package/src/stable/build/commands/generate/index.ts +21 -0
  468. package/src/stable/build/commands/generate/rust/candid_to_ts_js/Cargo.toml +12 -0
  469. package/src/stable/build/commands/generate/rust/candid_to_ts_js/build.sh +9 -0
  470. package/src/stable/build/commands/generate/rust/candid_to_ts_js/licenses.md +1 -0
  471. package/src/stable/build/commands/generate/rust/candid_to_ts_js/pkg/candid_to_ts_js.d.ts +18 -0
  472. package/src/stable/build/commands/generate/rust/candid_to_ts_js/pkg/candid_to_ts_js.js +144 -0
  473. package/src/stable/build/commands/generate/rust/candid_to_ts_js/pkg/candid_to_ts_js_bg.wasm +0 -0
  474. package/src/stable/build/commands/generate/rust/candid_to_ts_js/pkg/candid_to_ts_js_bg.wasm.d.ts +9 -0
  475. package/src/stable/build/commands/generate/rust/candid_to_ts_js/pkg/package.json +11 -0
  476. package/src/stable/build/commands/generate/rust/candid_to_ts_js/src/lib.rs +31 -0
  477. package/src/stable/build/commands/new.ts +165 -0
  478. package/src/stable/build/commands/version.ts +5 -0
  479. package/src/stable/build/dfx_extension/extension.json +36 -0
  480. package/src/stable/build/dfx_extension/install.sh +10 -0
  481. package/src/stable/build/index.ts +282 -0
  482. package/src/stable/build/utils/dfx.ts +10 -0
  483. package/src/stable/build/utils/dfx_root.ts +34 -0
  484. package/src/stable/build/utils/exec_sync_pretty.ts +17 -0
  485. package/src/stable/build/utils/experimental_message.ts +19 -0
  486. package/src/stable/build/utils/get_canister_config.ts +52 -0
  487. package/src/stable/build/utils/global_paths.ts +26 -0
  488. package/src/stable/build/utils/types.ts +87 -0
  489. package/src/stable/lib/canister_methods/heartbeat.ts +29 -0
  490. package/src/stable/lib/canister_methods/index.ts +405 -0
  491. package/src/stable/lib/canister_methods/init.ts +71 -0
  492. package/src/stable/lib/canister_methods/inspect_message.ts +79 -0
  493. package/src/stable/lib/canister_methods/on_low_wasm_memory.ts +27 -0
  494. package/src/stable/lib/canister_methods/post_upgrade.ts +73 -0
  495. package/src/stable/lib/canister_methods/pre_upgrade.ts +27 -0
  496. package/src/stable/lib/canister_methods/query.ts +69 -0
  497. package/src/stable/lib/canister_methods/update.ts +66 -0
  498. package/src/stable/lib/canisters/NOTICE +15 -0
  499. package/src/stable/lib/canisters/ck_btc_ledger/idl/README.md +9 -0
  500. package/src/stable/lib/canisters/ck_btc_ledger/idl/index.did +289 -0
  501. package/src/stable/lib/canisters/ck_btc_ledger/idl/index.ts +1143 -0
  502. package/src/stable/lib/canisters/ck_eth_ledger/idl/README.md +9 -0
  503. package/src/stable/lib/canisters/ck_eth_ledger/idl/index.did +289 -0
  504. package/src/stable/lib/canisters/ck_eth_ledger/idl/index.ts +1143 -0
  505. package/src/stable/lib/canisters/cycles_ledger/idl/README.md +9 -0
  506. package/src/stable/lib/canisters/cycles_ledger/idl/index.did +272 -0
  507. package/src/stable/lib/canisters/cycles_ledger/idl/index.ts +978 -0
  508. package/src/stable/lib/canisters/evm_rpc/idl/README.md +9 -0
  509. package/src/stable/lib/canisters/evm_rpc/idl/index.did +311 -0
  510. package/src/stable/lib/canisters/evm_rpc/idl/index.ts +1028 -0
  511. package/src/stable/lib/canisters/exchange_rate/idl/README.md +9 -0
  512. package/src/stable/lib/canisters/exchange_rate/idl/index.did +83 -0
  513. package/src/stable/lib/canisters/exchange_rate/idl/index.ts +165 -0
  514. package/src/stable/lib/canisters/http_gateway/idl/README.md +9 -0
  515. package/src/stable/lib/canisters/http_gateway/idl/http-gateway.did +49 -0
  516. package/src/stable/lib/canisters/http_gateway/idl/index.ts +120 -0
  517. package/src/stable/lib/canisters/icrc_1/idl/ICRC-1.did +63 -0
  518. package/src/stable/lib/canisters/icrc_1/idl/LICENSE +202 -0
  519. package/src/stable/lib/canisters/icrc_1/idl/index.ts +151 -0
  520. package/src/stable/lib/canisters/icrc_10/idl/ICRC-10.did +8 -0
  521. package/src/stable/lib/canisters/icrc_10/idl/LICENSE +202 -0
  522. package/src/stable/lib/canisters/icrc_10/idl/index.ts +32 -0
  523. package/src/stable/lib/canisters/icrc_2/idl/ICRC-2.did +76 -0
  524. package/src/stable/lib/canisters/icrc_2/idl/LICENSE +202 -0
  525. package/src/stable/lib/canisters/icrc_2/idl/index.ts +226 -0
  526. package/src/stable/lib/canisters/icrc_3/idl/ICRC-3.did +59 -0
  527. package/src/stable/lib/canisters/icrc_3/idl/LICENSE +202 -0
  528. package/src/stable/lib/canisters/icrc_3/idl/index.ts +156 -0
  529. package/src/stable/lib/canisters/icrc_37/idl/ICRC-37.did +152 -0
  530. package/src/stable/lib/canisters/icrc_37/idl/LICENSE +202 -0
  531. package/src/stable/lib/canisters/icrc_37/idl/index.ts +466 -0
  532. package/src/stable/lib/canisters/icrc_7/idl/ICRC-7.did +67 -0
  533. package/src/stable/lib/canisters/icrc_7/idl/LICENSE +202 -0
  534. package/src/stable/lib/canisters/icrc_7/idl/index.ts +213 -0
  535. package/src/stable/lib/canisters/llm/idl/README.md +9 -0
  536. package/src/stable/lib/canisters/llm/idl/index.did +21 -0
  537. package/src/stable/lib/canisters/llm/idl/index.ts +43 -0
  538. package/src/stable/lib/canisters/management/idl/README.md +10 -0
  539. package/src/stable/lib/canisters/management/idl/ic.did +502 -0
  540. package/src/stable/lib/canisters/management/idl/index.ts +1257 -0
  541. package/src/stable/lib/canisters/nns_cycles_minting/idl/README.md +9 -0
  542. package/src/stable/lib/canisters/nns_cycles_minting/idl/index.did +241 -0
  543. package/src/stable/lib/canisters/nns_cycles_minting/idl/index.ts +394 -0
  544. package/src/stable/lib/canisters/nns_governance/idl/README.md +9 -0
  545. package/src/stable/lib/canisters/nns_governance/idl/index.did +1316 -0
  546. package/src/stable/lib/canisters/nns_governance/idl/index.ts +3599 -0
  547. package/src/stable/lib/canisters/nns_icp_ledger/idl/LICENSE +202 -0
  548. package/src/stable/lib/canisters/nns_icp_ledger/idl/NOTICE +14 -0
  549. package/src/stable/lib/canisters/nns_icp_ledger/idl/README.md +18 -0
  550. package/src/stable/lib/canisters/nns_icp_ledger/idl/address/index.ts +82 -0
  551. package/src/stable/lib/canisters/nns_icp_ledger/idl/index.did +264 -0
  552. package/src/stable/lib/canisters/nns_icp_ledger/idl/index.ts +1020 -0
  553. package/src/stable/lib/canisters/nns_internet_identity/idl/README.md +9 -0
  554. package/src/stable/lib/canisters/nns_internet_identity/idl/index.did +779 -0
  555. package/src/stable/lib/canisters/nns_internet_identity/idl/index.ts +1509 -0
  556. package/src/stable/lib/canisters/nns_registry/idl/README.md +9 -0
  557. package/src/stable/lib/canisters/nns_registry/idl/index.did +493 -0
  558. package/src/stable/lib/canisters/nns_registry/idl/index.ts +1421 -0
  559. package/src/stable/lib/canisters/nns_sns_w/idl/README.md +9 -0
  560. package/src/stable/lib/canisters/nns_sns_w/idl/index.did +352 -0
  561. package/src/stable/lib/canisters/nns_sns_w/idl/index.ts +887 -0
  562. package/src/stable/lib/did_file/idl_to_string.ts +79 -0
  563. package/src/stable/lib/did_file/index.ts +2 -0
  564. package/src/stable/lib/did_file/visitor/did_visitor.ts +135 -0
  565. package/src/stable/lib/did_file/visitor/escape_candid_name.ts +100 -0
  566. package/src/stable/lib/did_file/visitor/extract_candid.ts +31 -0
  567. package/src/stable/lib/did_file/visitor/index.ts +1 -0
  568. package/src/stable/lib/did_file/visitor/visit/func.ts +31 -0
  569. package/src/stable/lib/did_file/visitor/visit/opt.ts +16 -0
  570. package/src/stable/lib/did_file/visitor/visit/primitive.ts +11 -0
  571. package/src/stable/lib/did_file/visitor/visit/record.ts +24 -0
  572. package/src/stable/lib/did_file/visitor/visit/recursive.ts +32 -0
  573. package/src/stable/lib/did_file/visitor/visit/service.ts +107 -0
  574. package/src/stable/lib/did_file/visitor/visit/tuple.ts +20 -0
  575. package/src/stable/lib/did_file/visitor/visit/variant.ts +26 -0
  576. package/src/stable/lib/did_file/visitor/visit/vec.ts +16 -0
  577. package/src/stable/lib/error.ts +55 -0
  578. package/src/stable/lib/execute_and_reply_with_candid_serde.ts +245 -0
  579. package/src/stable/lib/func.ts +7 -0
  580. package/src/stable/lib/globals.ts +250 -0
  581. package/src/stable/lib/ic_apis/NOTICE +203 -0
  582. package/src/stable/lib/ic_apis/azle_ic_stable.ts +86 -0
  583. package/src/stable/lib/ic_apis/call.ts +397 -0
  584. package/src/stable/lib/ic_apis/candid_decode.ts +26 -0
  585. package/src/stable/lib/ic_apis/candid_encode.ts +27 -0
  586. package/src/stable/lib/ic_apis/canister_cycle_balance.ts +28 -0
  587. package/src/stable/lib/ic_apis/canister_self.ts +25 -0
  588. package/src/stable/lib/ic_apis/canister_version.ts +33 -0
  589. package/src/stable/lib/ic_apis/certified_data_set.ts +35 -0
  590. package/src/stable/lib/ic_apis/chunk.ts +42 -0
  591. package/src/stable/lib/ic_apis/clear_timer.ts +53 -0
  592. package/src/stable/lib/ic_apis/cycles_burn.ts +32 -0
  593. package/src/stable/lib/ic_apis/data_certificate.ts +30 -0
  594. package/src/stable/lib/ic_apis/in_replicated_execution.ts +20 -0
  595. package/src/stable/lib/ic_apis/index.ts +37 -0
  596. package/src/stable/lib/ic_apis/is_controller.ts +31 -0
  597. package/src/stable/lib/ic_apis/msg_arg_data.ts +28 -0
  598. package/src/stable/lib/ic_apis/msg_caller.ts +32 -0
  599. package/src/stable/lib/ic_apis/msg_cycles_accept.ts +27 -0
  600. package/src/stable/lib/ic_apis/msg_cycles_available.ts +25 -0
  601. package/src/stable/lib/ic_apis/msg_cycles_refunded.ts +25 -0
  602. package/src/stable/lib/ic_apis/msg_method_name.ts +21 -0
  603. package/src/stable/lib/ic_apis/msg_reject.ts +28 -0
  604. package/src/stable/lib/ic_apis/msg_reject_code.ts +40 -0
  605. package/src/stable/lib/ic_apis/msg_reject_msg.ts +24 -0
  606. package/src/stable/lib/ic_apis/msg_reply.ts +34 -0
  607. package/src/stable/lib/ic_apis/performance_counter.ts +31 -0
  608. package/src/stable/lib/ic_apis/rand_seed.ts +40 -0
  609. package/src/stable/lib/ic_apis/set_timer.ts +80 -0
  610. package/src/stable/lib/ic_apis/set_timer_interval.ts +87 -0
  611. package/src/stable/lib/ic_apis/time.ts +26 -0
  612. package/src/stable/lib/ic_apis/trap.ts +29 -0
  613. package/src/stable/lib/index.ts +16 -0
  614. package/src/stable/lib/json.ts +39 -0
  615. package/src/stable/lib/stable_structures/stable_b_tree_map.ts +488 -0
  616. package/src/stable/lib/stable_structures/stable_json.ts +254 -0
  617. package/src/stable/lib/state.ts +322 -0
  618. package/src/stable/test/benchmarks/_azle_get_benchmarks.did +9 -0
  619. package/src/stable/test/benchmarks/index.ts +273 -0
  620. package/src/stable/test/candid_deep_equal.ts +99 -0
  621. package/src/stable/test/canister_names.ts +36 -0
  622. package/src/stable/test/fuzz.ts +102 -0
  623. package/src/stable/test/get_canister_actor.ts +45 -0
  624. package/src/stable/test/global_state.ts +202 -0
  625. package/src/stable/test/index.ts +274 -0
  626. package/src/stable/test/memory_state.ts +187 -0
  627. package/src/stable/test/property/default_prop_test_params.ts +36 -0
  628. package/src/stable/test/type/assert_type.ts +9 -0
  629. package/tsconfig.dev.json +10 -0
@@ -0,0 +1,9 @@
1
+ - `index.did` manual Candid source: https://dashboard.internetcomputer.org/canister/rkp4c-7iaaa-aaaaa-aaaca-cai
2
+ - Licensing is assumed to be that described in ../../NOTICE
3
+
4
+ # How to update the IDL and TypeScript types
5
+
6
+ 1. Go to the URL above
7
+ 2. Find the Candid on that page and copy it
8
+ 3. Paste the Candid into `index.did`
9
+ 4. From this directory run `npx azle generate index.did > index.ts`
@@ -0,0 +1,241 @@
1
+ type Cycles = nat;
2
+ type BlockIndex = nat64;
3
+ type log_visibility = variant {
4
+ controllers;
5
+ public;
6
+ };
7
+ type CanisterSettings = record {
8
+ controllers : opt vec principal;
9
+ compute_allocation : opt nat;
10
+ memory_allocation : opt nat;
11
+ freezing_threshold : opt nat;
12
+ reserved_cycles_limit : opt nat;
13
+ log_visibility : opt log_visibility;
14
+ wasm_memory_limit : opt nat;
15
+ wasm_memory_threshold : opt nat;
16
+ };
17
+ type Subaccount = opt blob;
18
+ type Memo = opt blob;
19
+
20
+ // The argument of the [notify_top_up] method.
21
+ type NotifyTopUpArg = record {
22
+ // Index of the block on the ICP ledger that contains the payment.
23
+ block_index : BlockIndex;
24
+
25
+ // The canister to top up.
26
+ canister_id : principal;
27
+ };
28
+
29
+ type SubnetSelection = variant {
30
+ /// Choose a specific subnet
31
+ Subnet : record {
32
+ subnet : principal;
33
+ };
34
+ /// Choose a random subnet that fulfills the specified properties
35
+ Filter : SubnetFilter;
36
+ };
37
+
38
+ type SubnetFilter = record {
39
+ subnet_type : opt text;
40
+ };
41
+
42
+ // The argument of the [create_canister] method.
43
+ type CreateCanisterArg = record {
44
+ // Optional canister settings that, if set, are applied to the newly created canister.
45
+ // If not specified, the caller is the controller of the canister and the other settings are set to default values.
46
+ settings : opt CanisterSettings;
47
+
48
+ // An optional subnet type that, if set, determines what type of subnet
49
+ // the new canister will be created on.
50
+ // Deprecated. Use subnet_selection instead.
51
+ subnet_type : opt text;
52
+
53
+ // Optional instructions to select on which subnet the new canister will be created on.
54
+ subnet_selection : opt SubnetSelection;
55
+ };
56
+
57
+ // The argument of the [notify_create_canister] method.
58
+ type NotifyCreateCanisterArg = record {
59
+ // Index of the block on the ICP ledger that contains the payment.
60
+ block_index : BlockIndex;
61
+
62
+ // The controller of canister to create.
63
+ controller : principal;
64
+
65
+ // An optional subnet type that, if set, determines what type of subnet
66
+ // the new canister will be created on.
67
+ // Deprecated. Use subnet_selection instead.
68
+ subnet_type : opt text;
69
+
70
+ // Optional instructions to select on which subnet the new canister will be created on.
71
+ // vec may contain no more than one element.
72
+ subnet_selection : opt SubnetSelection;
73
+
74
+ // Optional canister settings that, if set, are applied to the newly created canister.
75
+ // If not specified, the caller is the controller of the canister and the other settings are set to default values.
76
+ settings : opt CanisterSettings;
77
+ };
78
+
79
+ // Canister creation failed and the cycles attached to the call were returned to the calling canister.
80
+ // A small fee may be charged.
81
+ type CreateCanisterError = variant {
82
+ Refunded : record {
83
+ // The amount of cycles returned to the calling canister
84
+ refund_amount : nat;
85
+
86
+ // The reason why creating a canister failed.
87
+ create_error : text;
88
+ };
89
+ };
90
+
91
+ type NotifyError = variant {
92
+ // The payment processing failed and the payment was returned the caller.
93
+ // This is a non-retriable error.
94
+ Refunded : record {
95
+ // The reason for the refund.
96
+ reason : text;
97
+ // The index of the block containing the refund.
98
+ block_index : opt BlockIndex;
99
+ };
100
+
101
+ // The same payment is already being processed by a concurrent request.
102
+ // This is a retriable error.
103
+ Processing;
104
+
105
+ // The payment was too old to be processed.
106
+ // The value of the variant is the oldest block index that can still be processed.
107
+ // This a non-retriable error.
108
+ TransactionTooOld : BlockIndex;
109
+
110
+ // The transaction does not satisfy the cycle minting canister payment protocol.
111
+ // The text contains the description of the problem.
112
+ // This is a non-retriable error.
113
+ InvalidTransaction : text;
114
+
115
+ // Other error.
116
+ Other : record { error_code : nat64; error_message : text };
117
+ };
118
+
119
+ type NotifyTopUpResult = variant {
120
+ // The amount of cycles sent to the specified canister.
121
+ Ok : Cycles;
122
+ Err : NotifyError;
123
+ };
124
+
125
+ type CreateCanisterResult = variant {
126
+ // The principal of the newly created canister.
127
+ Ok : principal;
128
+ Err : CreateCanisterError;
129
+ };
130
+
131
+ type NotifyCreateCanisterResult = variant {
132
+ // The principal of the newly created canister.
133
+ Ok : principal;
134
+ Err : NotifyError;
135
+ };
136
+
137
+ type IcpXdrConversionRate = record {
138
+ // The time for which the market data was queried, expressed in UNIX epoch
139
+ // time in seconds.
140
+ timestamp_seconds : nat64;
141
+
142
+ // The number of 10,000ths of IMF SDR (currency code XDR) that corresponds
143
+ // to 1 ICP. This value reflects the current market price of one ICP token.
144
+ xdr_permyriad_per_icp : nat64;
145
+ };
146
+
147
+ type IcpXdrConversionRateResponse = record {
148
+ // The latest ICP/XDR conversion rate.
149
+ data : IcpXdrConversionRate;
150
+
151
+ // CBOR-serialized hash tree as specified in
152
+ // https://internetcomputer.org/docs/interface-spec/index.html#certification-encoding
153
+ // The hash tree is used for certification and hash the following structure:
154
+ // ```
155
+ // *
156
+ // |
157
+ // +-- ICP_XDR_CONVERSION_RATE -- [ Candid encoded IcpXdrConversionRate ]
158
+ // |
159
+ // `-- AVERAGE_ICP_XDR_CONVERSION_RATE -- [ Candid encoded IcpXdrConversionRate ]
160
+ // ```
161
+ hash_tree : blob;
162
+
163
+ // System certificate as specified in
164
+ // https://internetcomputer.org/docs/interface-spec/index.html#certification-encoding
165
+ certificate : blob;
166
+ };
167
+
168
+ type SubnetTypesToSubnetsResponse = record {
169
+ data : vec record { text; vec principal };
170
+ };
171
+
172
+ type PrincipalsAuthorizedToCreateCanistersToSubnetsResponse = record {
173
+ data : vec record { principal; vec principal };
174
+ };
175
+
176
+ type AccountIdentifier = text;
177
+
178
+ type ExchangeRateCanister = variant {
179
+ /// Enables the exchange rate canister with the given canister ID.
180
+ Set : principal;
181
+ /// Disable the exchange rate canister.
182
+ Unset;
183
+ };
184
+
185
+ type CyclesCanisterInitPayload = record {
186
+ ledger_canister_id : opt principal;
187
+ governance_canister_id : opt principal;
188
+ minting_account_id : opt AccountIdentifier;
189
+ last_purged_notification : opt nat64;
190
+ exchange_rate_canister : opt ExchangeRateCanister;
191
+ cycles_ledger_canister_id : opt principal;
192
+ };
193
+
194
+ type NotifyMintCyclesArg = record {
195
+ block_index : BlockIndex;
196
+ to_subaccount : Subaccount;
197
+ deposit_memo : Memo;
198
+ };
199
+
200
+ type NotifyMintCyclesResult = variant {
201
+ Ok : NotifyMintCyclesSuccess;
202
+ Err : NotifyError;
203
+ };
204
+
205
+ type NotifyMintCyclesSuccess = record {
206
+ // Cycles ledger block index of deposit
207
+ block_index : nat;
208
+ // Amount of cycles that were minted and deposited to the cycles ledger
209
+ minted : nat;
210
+ // New balance of the cycles ledger account
211
+ balance : nat;
212
+ };
213
+
214
+ service : (opt CyclesCanisterInitPayload) -> {
215
+ // Prompts the cycles minting canister to process a payment by converting ICP
216
+ // into cycles and sending the cycles the specified canister.
217
+ notify_top_up : (NotifyTopUpArg) -> (NotifyTopUpResult);
218
+
219
+ // Creates a canister using the cycles attached to the function call.
220
+ create_canister : (CreateCanisterArg) -> (CreateCanisterResult);
221
+
222
+ // Prompts the cycles minting canister to process a payment for canister creation.
223
+ notify_create_canister : (NotifyCreateCanisterArg) -> (NotifyCreateCanisterResult);
224
+
225
+ // Mints cycles and deposits them to the cycles ledger
226
+ notify_mint_cycles : (NotifyMintCyclesArg) -> (NotifyMintCyclesResult);
227
+
228
+ // Returns the ICP/XDR conversion rate.
229
+ get_icp_xdr_conversion_rate : () -> (IcpXdrConversionRateResponse) query;
230
+
231
+ // Returns the current mapping of subnet types to subnets.
232
+ get_subnet_types_to_subnets : () -> (SubnetTypesToSubnetsResponse) query;
233
+
234
+ // Returns the mapping from principals to subnets in which they are authorized
235
+ // to create canisters.
236
+ get_principals_authorized_to_create_canisters_to_subnets : () -> (PrincipalsAuthorizedToCreateCanistersToSubnetsResponse) query;
237
+
238
+ get_default_subnets: () -> (vec principal) query;
239
+
240
+ get_build_metadata : () -> (text) query;
241
+ };
@@ -0,0 +1,394 @@
1
+ import { ActorMethod } from '@dfinity/agent';
2
+ import { IDL } from '@dfinity/candid';
3
+ import { Principal } from '@dfinity/principal';
4
+
5
+ export type AccountIdentifier = string;
6
+ export type BlockIndex = bigint;
7
+ export interface CanisterSettings {
8
+ freezing_threshold: [] | [bigint];
9
+ wasm_memory_threshold: [] | [bigint];
10
+ controllers: [] | [Array<Principal>];
11
+ reserved_cycles_limit: [] | [bigint];
12
+ log_visibility: [] | [log_visibility];
13
+ wasm_memory_limit: [] | [bigint];
14
+ memory_allocation: [] | [bigint];
15
+ compute_allocation: [] | [bigint];
16
+ }
17
+ export interface CreateCanisterArg {
18
+ subnet_selection: [] | [SubnetSelection];
19
+ settings: [] | [CanisterSettings];
20
+ subnet_type: [] | [string];
21
+ }
22
+ export type CreateCanisterError = {
23
+ Refunded: { create_error: string; refund_amount: bigint };
24
+ };
25
+ export type CreateCanisterResult =
26
+ | { Ok: Principal }
27
+ | { Err: CreateCanisterError };
28
+ export type Cycles = bigint;
29
+ export interface CyclesCanisterInitPayload {
30
+ exchange_rate_canister: [] | [ExchangeRateCanister];
31
+ cycles_ledger_canister_id: [] | [Principal];
32
+ last_purged_notification: [] | [bigint];
33
+ governance_canister_id: [] | [Principal];
34
+ minting_account_id: [] | [AccountIdentifier];
35
+ ledger_canister_id: [] | [Principal];
36
+ }
37
+ export type ExchangeRateCanister = { Set: Principal } | { Unset: null };
38
+ export interface IcpXdrConversionRate {
39
+ xdr_permyriad_per_icp: bigint;
40
+ timestamp_seconds: bigint;
41
+ }
42
+ export interface IcpXdrConversionRateResponse {
43
+ certificate: Uint8Array | number[];
44
+ data: IcpXdrConversionRate;
45
+ hash_tree: Uint8Array | number[];
46
+ }
47
+ export type Memo = [] | [Uint8Array | number[]];
48
+ export interface NotifyCreateCanisterArg {
49
+ controller: Principal;
50
+ block_index: BlockIndex;
51
+ subnet_selection: [] | [SubnetSelection];
52
+ settings: [] | [CanisterSettings];
53
+ subnet_type: [] | [string];
54
+ }
55
+ export type NotifyCreateCanisterResult =
56
+ | { Ok: Principal }
57
+ | { Err: NotifyError };
58
+ export type NotifyError =
59
+ | {
60
+ Refunded: { block_index: [] | [BlockIndex]; reason: string };
61
+ }
62
+ | { InvalidTransaction: string }
63
+ | { Other: { error_message: string; error_code: bigint } }
64
+ | { Processing: null }
65
+ | { TransactionTooOld: BlockIndex };
66
+ export interface NotifyMintCyclesArg {
67
+ block_index: BlockIndex;
68
+ deposit_memo: Memo;
69
+ to_subaccount: Subaccount;
70
+ }
71
+ export type NotifyMintCyclesResult =
72
+ | { Ok: NotifyMintCyclesSuccess }
73
+ | { Err: NotifyError };
74
+ export interface NotifyMintCyclesSuccess {
75
+ balance: bigint;
76
+ block_index: bigint;
77
+ minted: bigint;
78
+ }
79
+ export interface NotifyTopUpArg {
80
+ block_index: BlockIndex;
81
+ canister_id: Principal;
82
+ }
83
+ export type NotifyTopUpResult = { Ok: Cycles } | { Err: NotifyError };
84
+ export interface PrincipalsAuthorizedToCreateCanistersToSubnetsResponse {
85
+ data: Array<[Principal, Array<Principal>]>;
86
+ }
87
+ export type Subaccount = [] | [Uint8Array | number[]];
88
+ export interface SubnetFilter {
89
+ subnet_type: [] | [string];
90
+ }
91
+ export type SubnetSelection =
92
+ | { Filter: SubnetFilter }
93
+ | { Subnet: { subnet: Principal } };
94
+ export interface SubnetTypesToSubnetsResponse {
95
+ data: Array<[string, Array<Principal>]>;
96
+ }
97
+ export type log_visibility = { controllers: null } | { public: null };
98
+ export interface _SERVICE {
99
+ create_canister: ActorMethod<[CreateCanisterArg], CreateCanisterResult>;
100
+ get_build_metadata: ActorMethod<[], string>;
101
+ get_default_subnets: ActorMethod<[], Array<Principal>>;
102
+ get_icp_xdr_conversion_rate: ActorMethod<[], IcpXdrConversionRateResponse>;
103
+ get_principals_authorized_to_create_canisters_to_subnets: ActorMethod<
104
+ [],
105
+ PrincipalsAuthorizedToCreateCanistersToSubnetsResponse
106
+ >;
107
+ get_subnet_types_to_subnets: ActorMethod<[], SubnetTypesToSubnetsResponse>;
108
+ notify_create_canister: ActorMethod<
109
+ [NotifyCreateCanisterArg],
110
+ NotifyCreateCanisterResult
111
+ >;
112
+ notify_mint_cycles: ActorMethod<
113
+ [NotifyMintCyclesArg],
114
+ NotifyMintCyclesResult
115
+ >;
116
+ notify_top_up: ActorMethod<[NotifyTopUpArg], NotifyTopUpResult>;
117
+ }
118
+ export type idlFactory = IDL.InterfaceFactory;
119
+ export type init = (args: { IDL: typeof IDL }) => IDL.Type[];
120
+ export const ExchangeRateCanister = IDL.Variant({
121
+ Set: IDL.Principal,
122
+ Unset: IDL.Null
123
+ });
124
+ export const AccountIdentifier = IDL.Text;
125
+ export const CyclesCanisterInitPayload = IDL.Record({
126
+ exchange_rate_canister: IDL.Opt(ExchangeRateCanister),
127
+ cycles_ledger_canister_id: IDL.Opt(IDL.Principal),
128
+ last_purged_notification: IDL.Opt(IDL.Nat64),
129
+ governance_canister_id: IDL.Opt(IDL.Principal),
130
+ minting_account_id: IDL.Opt(AccountIdentifier),
131
+ ledger_canister_id: IDL.Opt(IDL.Principal)
132
+ });
133
+ export const SubnetFilter = IDL.Record({ subnet_type: IDL.Opt(IDL.Text) });
134
+ export const SubnetSelection = IDL.Variant({
135
+ Filter: SubnetFilter,
136
+ Subnet: IDL.Record({ subnet: IDL.Principal })
137
+ });
138
+ export const log_visibility = IDL.Variant({
139
+ controllers: IDL.Null,
140
+ public: IDL.Null
141
+ });
142
+ export const CanisterSettings = IDL.Record({
143
+ freezing_threshold: IDL.Opt(IDL.Nat),
144
+ wasm_memory_threshold: IDL.Opt(IDL.Nat),
145
+ controllers: IDL.Opt(IDL.Vec(IDL.Principal)),
146
+ reserved_cycles_limit: IDL.Opt(IDL.Nat),
147
+ log_visibility: IDL.Opt(log_visibility),
148
+ wasm_memory_limit: IDL.Opt(IDL.Nat),
149
+ memory_allocation: IDL.Opt(IDL.Nat),
150
+ compute_allocation: IDL.Opt(IDL.Nat)
151
+ });
152
+ export const CreateCanisterArg = IDL.Record({
153
+ subnet_selection: IDL.Opt(SubnetSelection),
154
+ settings: IDL.Opt(CanisterSettings),
155
+ subnet_type: IDL.Opt(IDL.Text)
156
+ });
157
+ export const CreateCanisterError = IDL.Variant({
158
+ Refunded: IDL.Record({
159
+ create_error: IDL.Text,
160
+ refund_amount: IDL.Nat
161
+ })
162
+ });
163
+ export const CreateCanisterResult = IDL.Variant({
164
+ Ok: IDL.Principal,
165
+ Err: CreateCanisterError
166
+ });
167
+ export const IcpXdrConversionRate = IDL.Record({
168
+ xdr_permyriad_per_icp: IDL.Nat64,
169
+ timestamp_seconds: IDL.Nat64
170
+ });
171
+ export const IcpXdrConversionRateResponse = IDL.Record({
172
+ certificate: IDL.Vec(IDL.Nat8),
173
+ data: IcpXdrConversionRate,
174
+ hash_tree: IDL.Vec(IDL.Nat8)
175
+ });
176
+ export const PrincipalsAuthorizedToCreateCanistersToSubnetsResponse =
177
+ IDL.Record({
178
+ data: IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Vec(IDL.Principal)))
179
+ });
180
+ export const SubnetTypesToSubnetsResponse = IDL.Record({
181
+ data: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Vec(IDL.Principal)))
182
+ });
183
+ export const BlockIndex = IDL.Nat64;
184
+ export const NotifyCreateCanisterArg = IDL.Record({
185
+ controller: IDL.Principal,
186
+ block_index: BlockIndex,
187
+ subnet_selection: IDL.Opt(SubnetSelection),
188
+ settings: IDL.Opt(CanisterSettings),
189
+ subnet_type: IDL.Opt(IDL.Text)
190
+ });
191
+ export const NotifyError = IDL.Variant({
192
+ Refunded: IDL.Record({
193
+ block_index: IDL.Opt(BlockIndex),
194
+ reason: IDL.Text
195
+ }),
196
+ InvalidTransaction: IDL.Text,
197
+ Other: IDL.Record({
198
+ error_message: IDL.Text,
199
+ error_code: IDL.Nat64
200
+ }),
201
+ Processing: IDL.Null,
202
+ TransactionTooOld: BlockIndex
203
+ });
204
+ export const NotifyCreateCanisterResult = IDL.Variant({
205
+ Ok: IDL.Principal,
206
+ Err: NotifyError
207
+ });
208
+ export const Memo = IDL.Opt(IDL.Vec(IDL.Nat8));
209
+ export const Subaccount = IDL.Opt(IDL.Vec(IDL.Nat8));
210
+ export const NotifyMintCyclesArg = IDL.Record({
211
+ block_index: BlockIndex,
212
+ deposit_memo: Memo,
213
+ to_subaccount: Subaccount
214
+ });
215
+ export const NotifyMintCyclesSuccess = IDL.Record({
216
+ balance: IDL.Nat,
217
+ block_index: IDL.Nat,
218
+ minted: IDL.Nat
219
+ });
220
+ export const NotifyMintCyclesResult = IDL.Variant({
221
+ Ok: NotifyMintCyclesSuccess,
222
+ Err: NotifyError
223
+ });
224
+ export const NotifyTopUpArg = IDL.Record({
225
+ block_index: BlockIndex,
226
+ canister_id: IDL.Principal
227
+ });
228
+ export const Cycles = IDL.Nat;
229
+ export const NotifyTopUpResult = IDL.Variant({
230
+ Ok: Cycles,
231
+ Err: NotifyError
232
+ });
233
+ export const idlFactory: idlFactory = ({ IDL }) => {
234
+ const ExchangeRateCanister = IDL.Variant({
235
+ Set: IDL.Principal,
236
+ Unset: IDL.Null
237
+ });
238
+ const AccountIdentifier = IDL.Text;
239
+ const CyclesCanisterInitPayload = IDL.Record({
240
+ exchange_rate_canister: IDL.Opt(ExchangeRateCanister),
241
+ cycles_ledger_canister_id: IDL.Opt(IDL.Principal),
242
+ last_purged_notification: IDL.Opt(IDL.Nat64),
243
+ governance_canister_id: IDL.Opt(IDL.Principal),
244
+ minting_account_id: IDL.Opt(AccountIdentifier),
245
+ ledger_canister_id: IDL.Opt(IDL.Principal)
246
+ });
247
+ const SubnetFilter = IDL.Record({ subnet_type: IDL.Opt(IDL.Text) });
248
+ const SubnetSelection = IDL.Variant({
249
+ Filter: SubnetFilter,
250
+ Subnet: IDL.Record({ subnet: IDL.Principal })
251
+ });
252
+ const log_visibility = IDL.Variant({
253
+ controllers: IDL.Null,
254
+ public: IDL.Null
255
+ });
256
+ const CanisterSettings = IDL.Record({
257
+ freezing_threshold: IDL.Opt(IDL.Nat),
258
+ wasm_memory_threshold: IDL.Opt(IDL.Nat),
259
+ controllers: IDL.Opt(IDL.Vec(IDL.Principal)),
260
+ reserved_cycles_limit: IDL.Opt(IDL.Nat),
261
+ log_visibility: IDL.Opt(log_visibility),
262
+ wasm_memory_limit: IDL.Opt(IDL.Nat),
263
+ memory_allocation: IDL.Opt(IDL.Nat),
264
+ compute_allocation: IDL.Opt(IDL.Nat)
265
+ });
266
+ const CreateCanisterArg = IDL.Record({
267
+ subnet_selection: IDL.Opt(SubnetSelection),
268
+ settings: IDL.Opt(CanisterSettings),
269
+ subnet_type: IDL.Opt(IDL.Text)
270
+ });
271
+ const CreateCanisterError = IDL.Variant({
272
+ Refunded: IDL.Record({
273
+ create_error: IDL.Text,
274
+ refund_amount: IDL.Nat
275
+ })
276
+ });
277
+ const CreateCanisterResult = IDL.Variant({
278
+ Ok: IDL.Principal,
279
+ Err: CreateCanisterError
280
+ });
281
+ const IcpXdrConversionRate = IDL.Record({
282
+ xdr_permyriad_per_icp: IDL.Nat64,
283
+ timestamp_seconds: IDL.Nat64
284
+ });
285
+ const IcpXdrConversionRateResponse = IDL.Record({
286
+ certificate: IDL.Vec(IDL.Nat8),
287
+ data: IcpXdrConversionRate,
288
+ hash_tree: IDL.Vec(IDL.Nat8)
289
+ });
290
+ const PrincipalsAuthorizedToCreateCanistersToSubnetsResponse = IDL.Record({
291
+ data: IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Vec(IDL.Principal)))
292
+ });
293
+ const SubnetTypesToSubnetsResponse = IDL.Record({
294
+ data: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Vec(IDL.Principal)))
295
+ });
296
+ const BlockIndex = IDL.Nat64;
297
+ const NotifyCreateCanisterArg = IDL.Record({
298
+ controller: IDL.Principal,
299
+ block_index: BlockIndex,
300
+ subnet_selection: IDL.Opt(SubnetSelection),
301
+ settings: IDL.Opt(CanisterSettings),
302
+ subnet_type: IDL.Opt(IDL.Text)
303
+ });
304
+ const NotifyError = IDL.Variant({
305
+ Refunded: IDL.Record({
306
+ block_index: IDL.Opt(BlockIndex),
307
+ reason: IDL.Text
308
+ }),
309
+ InvalidTransaction: IDL.Text,
310
+ Other: IDL.Record({
311
+ error_message: IDL.Text,
312
+ error_code: IDL.Nat64
313
+ }),
314
+ Processing: IDL.Null,
315
+ TransactionTooOld: BlockIndex
316
+ });
317
+ const NotifyCreateCanisterResult = IDL.Variant({
318
+ Ok: IDL.Principal,
319
+ Err: NotifyError
320
+ });
321
+ const Memo = IDL.Opt(IDL.Vec(IDL.Nat8));
322
+ const Subaccount = IDL.Opt(IDL.Vec(IDL.Nat8));
323
+ const NotifyMintCyclesArg = IDL.Record({
324
+ block_index: BlockIndex,
325
+ deposit_memo: Memo,
326
+ to_subaccount: Subaccount
327
+ });
328
+ const NotifyMintCyclesSuccess = IDL.Record({
329
+ balance: IDL.Nat,
330
+ block_index: IDL.Nat,
331
+ minted: IDL.Nat
332
+ });
333
+ const NotifyMintCyclesResult = IDL.Variant({
334
+ Ok: NotifyMintCyclesSuccess,
335
+ Err: NotifyError
336
+ });
337
+ const NotifyTopUpArg = IDL.Record({
338
+ block_index: BlockIndex,
339
+ canister_id: IDL.Principal
340
+ });
341
+ const Cycles = IDL.Nat;
342
+ const NotifyTopUpResult = IDL.Variant({ Ok: Cycles, Err: NotifyError });
343
+ return IDL.Service({
344
+ create_canister: IDL.Func(
345
+ [CreateCanisterArg],
346
+ [CreateCanisterResult],
347
+ []
348
+ ),
349
+ get_build_metadata: IDL.Func([], [IDL.Text], ['query']),
350
+ get_default_subnets: IDL.Func([], [IDL.Vec(IDL.Principal)], ['query']),
351
+ get_icp_xdr_conversion_rate: IDL.Func(
352
+ [],
353
+ [IcpXdrConversionRateResponse],
354
+ ['query']
355
+ ),
356
+ get_principals_authorized_to_create_canisters_to_subnets: IDL.Func(
357
+ [],
358
+ [PrincipalsAuthorizedToCreateCanistersToSubnetsResponse],
359
+ ['query']
360
+ ),
361
+ get_subnet_types_to_subnets: IDL.Func(
362
+ [],
363
+ [SubnetTypesToSubnetsResponse],
364
+ ['query']
365
+ ),
366
+ notify_create_canister: IDL.Func(
367
+ [NotifyCreateCanisterArg],
368
+ [NotifyCreateCanisterResult],
369
+ []
370
+ ),
371
+ notify_mint_cycles: IDL.Func(
372
+ [NotifyMintCyclesArg],
373
+ [NotifyMintCyclesResult],
374
+ []
375
+ ),
376
+ notify_top_up: IDL.Func([NotifyTopUpArg], [NotifyTopUpResult], [])
377
+ });
378
+ };
379
+ export const init: init = ({ IDL }) => {
380
+ const ExchangeRateCanister = IDL.Variant({
381
+ Set: IDL.Principal,
382
+ Unset: IDL.Null
383
+ });
384
+ const AccountIdentifier = IDL.Text;
385
+ const CyclesCanisterInitPayload = IDL.Record({
386
+ exchange_rate_canister: IDL.Opt(ExchangeRateCanister),
387
+ cycles_ledger_canister_id: IDL.Opt(IDL.Principal),
388
+ last_purged_notification: IDL.Opt(IDL.Nat64),
389
+ governance_canister_id: IDL.Opt(IDL.Principal),
390
+ minting_account_id: IDL.Opt(AccountIdentifier),
391
+ ledger_canister_id: IDL.Opt(IDL.Principal)
392
+ });
393
+ return [IDL.Opt(CyclesCanisterInitPayload)];
394
+ };
@@ -0,0 +1,9 @@
1
+ - `index.did` manual Candid source: https://dashboard.internetcomputer.org/canister/rrkah-fqaaa-aaaaa-aaaaq-cai
2
+ - Licensing is assumed to be that described in ../../NOTICE
3
+
4
+ # How to update the IDL and TypeScript types
5
+
6
+ 1. Go to the URL above
7
+ 2. Find the Candid on that page and copy it
8
+ 3. Paste the Candid into `index.did`
9
+ 4. From this directory run `npx azle generate index.did > index.ts`