@metamask/snaps-controllers 18.0.4 → 19.0.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 (288) hide show
  1. package/CHANGELOG.md +96 -1
  2. package/dist/cronjob/CronjobController-method-action-types.cjs +7 -0
  3. package/dist/cronjob/CronjobController-method-action-types.cjs.map +1 -0
  4. package/dist/cronjob/CronjobController-method-action-types.d.cts +51 -0
  5. package/dist/cronjob/CronjobController-method-action-types.d.cts.map +1 -0
  6. package/dist/cronjob/CronjobController-method-action-types.d.mts +51 -0
  7. package/dist/cronjob/CronjobController-method-action-types.d.mts.map +1 -0
  8. package/dist/cronjob/CronjobController-method-action-types.mjs +6 -0
  9. package/dist/cronjob/CronjobController-method-action-types.mjs.map +1 -0
  10. package/dist/cronjob/CronjobController.cjs +7 -4
  11. package/dist/cronjob/CronjobController.cjs.map +1 -1
  12. package/dist/cronjob/CronjobController.d.cts +7 -24
  13. package/dist/cronjob/CronjobController.d.cts.map +1 -1
  14. package/dist/cronjob/CronjobController.d.mts +7 -24
  15. package/dist/cronjob/CronjobController.d.mts.map +1 -1
  16. package/dist/cronjob/CronjobController.mjs +7 -4
  17. package/dist/cronjob/CronjobController.mjs.map +1 -1
  18. package/dist/cronjob/index.cjs +3 -15
  19. package/dist/cronjob/index.cjs.map +1 -1
  20. package/dist/cronjob/index.d.cts +3 -1
  21. package/dist/cronjob/index.d.cts.map +1 -1
  22. package/dist/cronjob/index.d.mts +3 -1
  23. package/dist/cronjob/index.d.mts.map +1 -1
  24. package/dist/cronjob/index.mjs +1 -1
  25. package/dist/cronjob/index.mjs.map +1 -1
  26. package/dist/insights/SnapInsightsController.cjs +1 -3
  27. package/dist/insights/SnapInsightsController.cjs.map +1 -1
  28. package/dist/insights/SnapInsightsController.d.cts +8 -8
  29. package/dist/insights/SnapInsightsController.d.cts.map +1 -1
  30. package/dist/insights/SnapInsightsController.d.mts +8 -8
  31. package/dist/insights/SnapInsightsController.d.mts.map +1 -1
  32. package/dist/insights/SnapInsightsController.mjs +1 -3
  33. package/dist/insights/SnapInsightsController.mjs.map +1 -1
  34. package/dist/insights/index.cjs +3 -15
  35. package/dist/insights/index.cjs.map +1 -1
  36. package/dist/insights/index.d.cts +2 -1
  37. package/dist/insights/index.d.cts.map +1 -1
  38. package/dist/insights/index.d.mts +2 -1
  39. package/dist/insights/index.d.mts.map +1 -1
  40. package/dist/insights/index.mjs +1 -1
  41. package/dist/insights/index.mjs.map +1 -1
  42. package/dist/interface/SnapInterfaceController-method-action-types.cjs +7 -0
  43. package/dist/interface/SnapInterfaceController-method-action-types.cjs.map +1 -0
  44. package/dist/interface/SnapInterfaceController-method-action-types.d.cts +99 -0
  45. package/dist/interface/SnapInterfaceController-method-action-types.d.cts.map +1 -0
  46. package/dist/interface/SnapInterfaceController-method-action-types.d.mts +99 -0
  47. package/dist/interface/SnapInterfaceController-method-action-types.d.mts.map +1 -0
  48. package/dist/interface/SnapInterfaceController-method-action-types.mjs +6 -0
  49. package/dist/interface/SnapInterfaceController-method-action-types.mjs.map +1 -0
  50. package/dist/interface/SnapInterfaceController.cjs +12 -16
  51. package/dist/interface/SnapInterfaceController.cjs.map +1 -1
  52. package/dist/interface/SnapInterfaceController.d.cts +9 -39
  53. package/dist/interface/SnapInterfaceController.d.cts.map +1 -1
  54. package/dist/interface/SnapInterfaceController.d.mts +9 -39
  55. package/dist/interface/SnapInterfaceController.d.mts.map +1 -1
  56. package/dist/interface/SnapInterfaceController.mjs +12 -16
  57. package/dist/interface/SnapInterfaceController.mjs.map +1 -1
  58. package/dist/interface/index.cjs +3 -15
  59. package/dist/interface/index.cjs.map +1 -1
  60. package/dist/interface/index.d.cts +3 -1
  61. package/dist/interface/index.d.cts.map +1 -1
  62. package/dist/interface/index.d.mts +3 -1
  63. package/dist/interface/index.d.mts.map +1 -1
  64. package/dist/interface/index.mjs +1 -1
  65. package/dist/interface/index.mjs.map +1 -1
  66. package/dist/multichain/MultichainRoutingService-method-action-types.cjs +7 -0
  67. package/dist/multichain/MultichainRoutingService-method-action-types.cjs.map +1 -0
  68. package/dist/multichain/MultichainRoutingService-method-action-types.d.cts +61 -0
  69. package/dist/multichain/MultichainRoutingService-method-action-types.d.cts.map +1 -0
  70. package/dist/multichain/MultichainRoutingService-method-action-types.d.mts +61 -0
  71. package/dist/multichain/MultichainRoutingService-method-action-types.d.mts.map +1 -0
  72. package/dist/multichain/MultichainRoutingService-method-action-types.mjs +6 -0
  73. package/dist/multichain/MultichainRoutingService-method-action-types.mjs.map +1 -0
  74. package/dist/multichain/{MultichainRouter.cjs → MultichainRoutingService.cjs} +14 -13
  75. package/dist/multichain/MultichainRoutingService.cjs.map +1 -0
  76. package/dist/multichain/{MultichainRouter.d.mts → MultichainRoutingService.d.cts} +13 -28
  77. package/dist/multichain/MultichainRoutingService.d.cts.map +1 -0
  78. package/dist/multichain/{MultichainRouter.d.cts → MultichainRoutingService.d.mts} +13 -28
  79. package/dist/multichain/MultichainRoutingService.d.mts.map +1 -0
  80. package/dist/multichain/{MultichainRouter.mjs → MultichainRoutingService.mjs} +12 -11
  81. package/dist/multichain/MultichainRoutingService.mjs.map +1 -0
  82. package/dist/multichain/index.cjs +3 -15
  83. package/dist/multichain/index.cjs.map +1 -1
  84. package/dist/multichain/index.d.cts +3 -1
  85. package/dist/multichain/index.d.cts.map +1 -1
  86. package/dist/multichain/index.d.mts +3 -1
  87. package/dist/multichain/index.d.mts.map +1 -1
  88. package/dist/multichain/index.mjs +1 -1
  89. package/dist/multichain/index.mjs.map +1 -1
  90. package/dist/services/ExecutionService-method-action-types.cjs +7 -0
  91. package/dist/services/ExecutionService-method-action-types.cjs.map +1 -0
  92. package/dist/services/ExecutionService-method-action-types.d.cts +50 -0
  93. package/dist/services/ExecutionService-method-action-types.d.cts.map +1 -0
  94. package/dist/services/ExecutionService-method-action-types.d.mts +50 -0
  95. package/dist/services/ExecutionService-method-action-types.d.mts.map +1 -0
  96. package/dist/services/ExecutionService-method-action-types.mjs +6 -0
  97. package/dist/services/ExecutionService-method-action-types.mjs.map +1 -0
  98. package/dist/services/ExecutionService.cjs +287 -0
  99. package/dist/services/ExecutionService.cjs.map +1 -1
  100. package/dist/services/ExecutionService.d.cts +100 -46
  101. package/dist/services/ExecutionService.d.cts.map +1 -1
  102. package/dist/services/ExecutionService.d.mts +100 -46
  103. package/dist/services/ExecutionService.d.mts.map +1 -1
  104. package/dist/services/ExecutionService.mjs +285 -1
  105. package/dist/services/ExecutionService.mjs.map +1 -1
  106. package/dist/services/browser.cjs +5 -2
  107. package/dist/services/browser.cjs.map +1 -1
  108. package/dist/services/browser.d.cts +4 -2
  109. package/dist/services/browser.d.cts.map +1 -1
  110. package/dist/services/browser.d.mts +4 -2
  111. package/dist/services/browser.d.mts.map +1 -1
  112. package/dist/services/browser.mjs +2 -2
  113. package/dist/services/browser.mjs.map +1 -1
  114. package/dist/services/iframe/IframeExecutionService.cjs +2 -2
  115. package/dist/services/iframe/IframeExecutionService.cjs.map +1 -1
  116. package/dist/services/iframe/IframeExecutionService.d.cts +3 -3
  117. package/dist/services/iframe/IframeExecutionService.d.cts.map +1 -1
  118. package/dist/services/iframe/IframeExecutionService.d.mts +3 -3
  119. package/dist/services/iframe/IframeExecutionService.d.mts.map +1 -1
  120. package/dist/services/iframe/IframeExecutionService.mjs +2 -2
  121. package/dist/services/iframe/IframeExecutionService.mjs.map +1 -1
  122. package/dist/services/index.cjs +5 -1
  123. package/dist/services/index.cjs.map +1 -1
  124. package/dist/services/index.d.cts +4 -2
  125. package/dist/services/index.d.cts.map +1 -1
  126. package/dist/services/index.d.mts +4 -2
  127. package/dist/services/index.d.mts.map +1 -1
  128. package/dist/services/index.mjs +2 -1
  129. package/dist/services/index.mjs.map +1 -1
  130. package/dist/services/multiplex.cjs +27 -0
  131. package/dist/services/multiplex.cjs.map +1 -0
  132. package/dist/services/multiplex.d.cts +11 -0
  133. package/dist/services/multiplex.d.cts.map +1 -0
  134. package/dist/services/multiplex.d.mts +11 -0
  135. package/dist/services/multiplex.d.mts.map +1 -0
  136. package/dist/services/multiplex.mjs +27 -0
  137. package/dist/services/multiplex.mjs.map +1 -0
  138. package/dist/services/node-js/NodeProcessExecutionService.cjs +2 -2
  139. package/dist/services/node-js/NodeProcessExecutionService.cjs.map +1 -1
  140. package/dist/services/node-js/NodeProcessExecutionService.d.cts +3 -3
  141. package/dist/services/node-js/NodeProcessExecutionService.d.cts.map +1 -1
  142. package/dist/services/node-js/NodeProcessExecutionService.d.mts +3 -3
  143. package/dist/services/node-js/NodeProcessExecutionService.d.mts.map +1 -1
  144. package/dist/services/node-js/NodeProcessExecutionService.mjs +2 -2
  145. package/dist/services/node-js/NodeProcessExecutionService.mjs.map +1 -1
  146. package/dist/services/node-js/NodeThreadExecutionService.cjs +2 -5
  147. package/dist/services/node-js/NodeThreadExecutionService.cjs.map +1 -1
  148. package/dist/services/node-js/NodeThreadExecutionService.d.cts +3 -3
  149. package/dist/services/node-js/NodeThreadExecutionService.d.cts.map +1 -1
  150. package/dist/services/node-js/NodeThreadExecutionService.d.mts +3 -3
  151. package/dist/services/node-js/NodeThreadExecutionService.d.mts.map +1 -1
  152. package/dist/services/node-js/NodeThreadExecutionService.mjs +2 -5
  153. package/dist/services/node-js/NodeThreadExecutionService.mjs.map +1 -1
  154. package/dist/services/offscreen/OffscreenExecutionService.cjs.map +1 -1
  155. package/dist/services/offscreen/OffscreenExecutionService.d.cts +1 -1
  156. package/dist/services/offscreen/OffscreenExecutionService.d.cts.map +1 -1
  157. package/dist/services/offscreen/OffscreenExecutionService.d.mts +1 -1
  158. package/dist/services/offscreen/OffscreenExecutionService.d.mts.map +1 -1
  159. package/dist/services/offscreen/OffscreenExecutionService.mjs.map +1 -1
  160. package/dist/services/proxy/ProxyExecutionService.cjs +2 -5
  161. package/dist/services/proxy/ProxyExecutionService.cjs.map +1 -1
  162. package/dist/services/proxy/ProxyExecutionService.d.cts +3 -3
  163. package/dist/services/proxy/ProxyExecutionService.d.cts.map +1 -1
  164. package/dist/services/proxy/ProxyExecutionService.d.mts +3 -3
  165. package/dist/services/proxy/ProxyExecutionService.d.mts.map +1 -1
  166. package/dist/services/proxy/ProxyExecutionService.mjs +2 -5
  167. package/dist/services/proxy/ProxyExecutionService.mjs.map +1 -1
  168. package/dist/services/webview/WebViewExecutionService.cjs +2 -2
  169. package/dist/services/webview/WebViewExecutionService.cjs.map +1 -1
  170. package/dist/services/webview/WebViewExecutionService.d.cts +3 -3
  171. package/dist/services/webview/WebViewExecutionService.d.cts.map +1 -1
  172. package/dist/services/webview/WebViewExecutionService.d.mts +3 -3
  173. package/dist/services/webview/WebViewExecutionService.d.mts.map +1 -1
  174. package/dist/services/webview/WebViewExecutionService.mjs +2 -2
  175. package/dist/services/webview/WebViewExecutionService.mjs.map +1 -1
  176. package/dist/snaps/SnapController-method-action-types.cjs +7 -0
  177. package/dist/snaps/SnapController-method-action-types.cjs.map +1 -0
  178. package/dist/snaps/SnapController-method-action-types.d.cts +284 -0
  179. package/dist/snaps/SnapController-method-action-types.d.cts.map +1 -0
  180. package/dist/snaps/SnapController-method-action-types.d.mts +284 -0
  181. package/dist/snaps/SnapController-method-action-types.d.mts.map +1 -0
  182. package/dist/snaps/SnapController-method-action-types.mjs +6 -0
  183. package/dist/snaps/SnapController-method-action-types.mjs.map +1 -0
  184. package/dist/snaps/SnapController.cjs +118 -113
  185. package/dist/snaps/SnapController.cjs.map +1 -1
  186. package/dist/snaps/SnapController.d.cts +32 -189
  187. package/dist/snaps/SnapController.d.cts.map +1 -1
  188. package/dist/snaps/SnapController.d.mts +32 -189
  189. package/dist/snaps/SnapController.d.mts.map +1 -1
  190. package/dist/snaps/SnapController.mjs +119 -114
  191. package/dist/snaps/SnapController.mjs.map +1 -1
  192. package/dist/snaps/index.cjs +3 -1
  193. package/dist/snaps/index.cjs.map +1 -1
  194. package/dist/snaps/index.d.cts +3 -1
  195. package/dist/snaps/index.d.cts.map +1 -1
  196. package/dist/snaps/index.d.mts +3 -1
  197. package/dist/snaps/index.d.mts.map +1 -1
  198. package/dist/snaps/index.mjs +1 -1
  199. package/dist/snaps/index.mjs.map +1 -1
  200. package/dist/snaps/registry/SnapRegistryController-method-action-types.cjs +7 -0
  201. package/dist/snaps/registry/SnapRegistryController-method-action-types.cjs.map +1 -0
  202. package/dist/snaps/registry/SnapRegistryController-method-action-types.d.cts +46 -0
  203. package/dist/snaps/registry/SnapRegistryController-method-action-types.d.cts.map +1 -0
  204. package/dist/snaps/registry/SnapRegistryController-method-action-types.d.mts +46 -0
  205. package/dist/snaps/registry/SnapRegistryController-method-action-types.d.mts.map +1 -0
  206. package/dist/snaps/registry/SnapRegistryController-method-action-types.mjs +6 -0
  207. package/dist/snaps/registry/SnapRegistryController-method-action-types.mjs.map +1 -0
  208. package/dist/snaps/registry/{json.cjs → SnapRegistryController.cjs} +27 -24
  209. package/dist/snaps/registry/SnapRegistryController.cjs.map +1 -0
  210. package/dist/snaps/registry/SnapRegistryController.d.cts +67 -0
  211. package/dist/snaps/registry/SnapRegistryController.d.cts.map +1 -0
  212. package/dist/snaps/registry/SnapRegistryController.d.mts +67 -0
  213. package/dist/snaps/registry/SnapRegistryController.d.mts.map +1 -0
  214. package/dist/snaps/registry/{json.mjs → SnapRegistryController.mjs} +25 -22
  215. package/dist/snaps/registry/SnapRegistryController.mjs.map +1 -0
  216. package/dist/snaps/registry/index.cjs +5 -16
  217. package/dist/snaps/registry/index.cjs.map +1 -1
  218. package/dist/snaps/registry/index.d.cts +5 -2
  219. package/dist/snaps/registry/index.d.cts.map +1 -1
  220. package/dist/snaps/registry/index.d.mts +5 -2
  221. package/dist/snaps/registry/index.d.mts.map +1 -1
  222. package/dist/snaps/registry/index.mjs +2 -2
  223. package/dist/snaps/registry/index.mjs.map +1 -1
  224. package/dist/snaps/registry/types.cjs +11 -0
  225. package/dist/snaps/registry/types.cjs.map +1 -0
  226. package/dist/snaps/registry/types.d.cts +20 -0
  227. package/dist/snaps/registry/types.d.cts.map +1 -0
  228. package/dist/snaps/registry/types.d.mts +20 -0
  229. package/dist/snaps/registry/types.d.mts.map +1 -0
  230. package/dist/snaps/registry/types.mjs +8 -0
  231. package/dist/snaps/registry/types.mjs.map +1 -0
  232. package/dist/types/controllers.cjs.map +1 -1
  233. package/dist/types/controllers.d.cts +1 -1
  234. package/dist/types/controllers.d.cts.map +1 -1
  235. package/dist/types/controllers.d.mts +1 -1
  236. package/dist/types/controllers.d.mts.map +1 -1
  237. package/dist/types/controllers.mjs.map +1 -1
  238. package/dist/websocket/WebSocketService-method-action-types.cjs +7 -0
  239. package/dist/websocket/WebSocketService-method-action-types.cjs.map +1 -0
  240. package/dist/websocket/WebSocketService-method-action-types.d.cts +54 -0
  241. package/dist/websocket/WebSocketService-method-action-types.d.cts.map +1 -0
  242. package/dist/websocket/WebSocketService-method-action-types.d.mts +54 -0
  243. package/dist/websocket/WebSocketService-method-action-types.d.mts.map +1 -0
  244. package/dist/websocket/WebSocketService-method-action-types.mjs +6 -0
  245. package/dist/websocket/WebSocketService-method-action-types.mjs.map +1 -0
  246. package/dist/websocket/WebSocketService.cjs +14 -11
  247. package/dist/websocket/WebSocketService.cjs.map +1 -1
  248. package/dist/websocket/WebSocketService.d.cts +43 -22
  249. package/dist/websocket/WebSocketService.d.cts.map +1 -1
  250. package/dist/websocket/WebSocketService.d.mts +43 -22
  251. package/dist/websocket/WebSocketService.d.mts.map +1 -1
  252. package/dist/websocket/WebSocketService.mjs +14 -11
  253. package/dist/websocket/WebSocketService.mjs.map +1 -1
  254. package/dist/websocket/index.cjs +3 -15
  255. package/dist/websocket/index.cjs.map +1 -1
  256. package/dist/websocket/index.d.cts +3 -1
  257. package/dist/websocket/index.d.cts.map +1 -1
  258. package/dist/websocket/index.d.mts +3 -1
  259. package/dist/websocket/index.d.mts.map +1 -1
  260. package/dist/websocket/index.mjs +1 -1
  261. package/dist/websocket/index.mjs.map +1 -1
  262. package/package.json +8 -7
  263. package/dist/multichain/MultichainRouter.cjs.map +0 -1
  264. package/dist/multichain/MultichainRouter.d.cts.map +0 -1
  265. package/dist/multichain/MultichainRouter.d.mts.map +0 -1
  266. package/dist/multichain/MultichainRouter.mjs.map +0 -1
  267. package/dist/services/AbstractExecutionService.cjs +0 -314
  268. package/dist/services/AbstractExecutionService.cjs.map +0 -1
  269. package/dist/services/AbstractExecutionService.d.cts +0 -107
  270. package/dist/services/AbstractExecutionService.d.cts.map +0 -1
  271. package/dist/services/AbstractExecutionService.d.mts +0 -107
  272. package/dist/services/AbstractExecutionService.d.mts.map +0 -1
  273. package/dist/services/AbstractExecutionService.mjs +0 -313
  274. package/dist/services/AbstractExecutionService.mjs.map +0 -1
  275. package/dist/snaps/registry/json.cjs.map +0 -1
  276. package/dist/snaps/registry/json.d.cts +0 -58
  277. package/dist/snaps/registry/json.d.cts.map +0 -1
  278. package/dist/snaps/registry/json.d.mts +0 -58
  279. package/dist/snaps/registry/json.d.mts.map +0 -1
  280. package/dist/snaps/registry/json.mjs.map +0 -1
  281. package/dist/snaps/registry/registry.cjs +0 -11
  282. package/dist/snaps/registry/registry.cjs.map +0 -1
  283. package/dist/snaps/registry/registry.d.cts +0 -41
  284. package/dist/snaps/registry/registry.d.cts.map +0 -1
  285. package/dist/snaps/registry/registry.d.mts +0 -41
  286. package/dist/snaps/registry/registry.d.mts.map +0 -1
  287. package/dist/snaps/registry/registry.mjs +0 -8
  288. package/dist/snaps/registry/registry.mjs.map +0 -1
@@ -1,4 +1,4 @@
1
- import { type AddApprovalRequest, type UpdateRequestState } from "@metamask/approval-controller";
1
+ import { type ApprovalControllerAddRequestAction, type ApprovalControllerUpdateRequestStateAction } from "@metamask/approval-controller";
2
2
  import type { ControllerGetStateAction, ControllerStateChangeEvent } from "@metamask/base-controller";
3
3
  import { BaseController } from "@metamask/base-controller";
4
4
  import type { CryptographicFunctions } from "@metamask/key-tree";
@@ -13,12 +13,12 @@ import type { StorageServiceGetItemAction, StorageServiceSetItemAction, StorageS
13
13
  import type { Json, NonEmptyArray, SemVerVersion } from "@metamask/utils";
14
14
  import type { StateMachine } from "@xstate/fsm";
15
15
  import { Mutex } from "async-mutex";
16
- import type { Patch } from "immer";
17
16
  import { detectSnapLocation } from "./location/index.cjs";
18
- import type { GetMetadata, GetResult, ResolveVersion, SnapsRegistryStateChangeEvent, Update } from "./registry/index.cjs";
17
+ import type { SnapRegistryControllerGetAction, SnapRegistryControllerGetMetadataAction, SnapRegistryControllerResolveVersionAction, SnapRegistryControllerRequestUpdateAction, SnapRegistryControllerStateChangeEvent } from "./registry/index.cjs";
18
+ import type { SnapControllerMethodActions } from "./SnapController-method-action-types.cjs";
19
19
  import { Timer } from "./Timer.cjs";
20
- import type { CreateInterface, GetInterface, SnapInterfaceControllerSetInterfaceDisplayedAction } from "../interface/index.cjs";
21
- import type { ExecuteSnapAction, ExecutionServiceEvents, HandleRpcRequestAction, SnapErrorJson, TerminateSnapAction } from "../services/index.cjs";
20
+ import type { SnapInterfaceControllerCreateInterfaceAction, SnapInterfaceControllerGetInterfaceAction, SnapInterfaceControllerSetInterfaceDisplayedAction } from "../interface/index.cjs";
21
+ import type { ExecutionServiceEvents, ExecutionServiceExecuteSnapAction, ExecutionServiceHandleRpcRequestAction, ExecutionServiceTerminateSnapAction, SnapErrorJson } from "../services/index.cjs";
22
22
  import type { ExportableKeyEncryptor } from "../types/index.cjs";
23
23
  export declare const controllerName = "SnapController";
24
24
  export declare const SNAP_APPROVAL_INSTALL = "wallet_installSnap";
@@ -62,10 +62,6 @@ export type SnapRuntimeData = {
62
62
  * A Unix timestamp for the last time the Snap received an RPC request
63
63
  */
64
64
  lastRequest: null | number;
65
- /**
66
- * The current number of active references where this Snap is being used
67
- */
68
- activeReferences: number;
69
65
  /**
70
66
  * The current pending inbound requests, meaning requests that are processed by snaps.
71
67
  */
@@ -107,11 +103,6 @@ export type SnapRuntimeData = {
107
103
  */
108
104
  getStateMutex: Mutex;
109
105
  };
110
- export type SnapError = {
111
- message: string;
112
- code: number;
113
- data?: Json;
114
- };
115
106
  type StoredSnaps = Record<SnapId, Snap>;
116
107
  export type SnapControllerState = {
117
108
  snaps: StoredSnaps;
@@ -123,147 +114,26 @@ export type PersistedSnapControllerState = SnapControllerState & {
123
114
  snaps: Record<SnapId, Snap>;
124
115
  snapStates: Record<SnapId, string>;
125
116
  };
126
- /**
127
- * Initialise the SnapController. This should be called after all controllers
128
- * are created.
129
- */
130
- export type SnapControllerInitAction = {
131
- type: `${typeof controllerName}:init`;
132
- handler: SnapController['init'];
133
- };
134
- /**
135
- * Gets the specified Snap from state.
136
- */
137
- export type GetSnap = {
138
- type: `${typeof controllerName}:get`;
139
- handler: SnapController['get'];
140
- };
141
- /**
142
- * Handles sending an inbound request to a snap and returns its result.
143
- */
144
- export type HandleSnapRequest = {
145
- type: `${typeof controllerName}:handleRequest`;
146
- handler: SnapController['handleRequest'];
147
- };
148
- /**
149
- * Gets the specified Snap's persisted state.
150
- */
151
- export type GetSnapState = {
152
- type: `${typeof controllerName}:getSnapState`;
153
- handler: SnapController['getSnapState'];
154
- };
155
- /**
156
- * Checks if the specified snap exists in state.
157
- */
158
- export type HasSnap = {
159
- type: `${typeof controllerName}:has`;
160
- handler: SnapController['has'];
161
- };
162
- /**
163
- * Updates the specified Snap's persisted state.
164
- */
165
- export type UpdateSnapState = {
166
- type: `${typeof controllerName}:updateSnapState`;
167
- handler: SnapController['updateSnapState'];
168
- };
169
- /**
170
- * Clears the specified Snap's persisted state.
171
- */
172
- export type ClearSnapState = {
173
- type: `${typeof controllerName}:clearSnapState`;
174
- handler: SnapController['clearSnapState'];
175
- };
176
- /**
177
- * Checks all installed snaps against the blocklist.
178
- */
179
- export type UpdateRegistry = {
180
- type: `${typeof controllerName}:updateRegistry`;
181
- handler: SnapController['updateRegistry'];
182
- };
183
- export type EnableSnap = {
184
- type: `${typeof controllerName}:enable`;
185
- handler: SnapController['enableSnap'];
186
- };
187
- export type DisableSnap = {
188
- type: `${typeof controllerName}:disable`;
189
- handler: SnapController['disableSnap'];
190
- };
191
- export type RemoveSnap = {
192
- type: `${typeof controllerName}:remove`;
193
- handler: SnapController['removeSnap'];
194
- };
195
- export type GetPermittedSnaps = {
196
- type: `${typeof controllerName}:getPermitted`;
197
- handler: SnapController['getPermittedSnaps'];
198
- };
199
- export type GetAllSnaps = {
200
- type: `${typeof controllerName}:getAll`;
201
- handler: SnapController['getAllSnaps'];
202
- };
203
- export type GetRunnableSnaps = {
204
- type: `${typeof controllerName}:getRunnableSnaps`;
205
- handler: SnapController['getRunnableSnaps'];
206
- };
207
- export type StopAllSnaps = {
208
- type: `${typeof controllerName}:stopAllSnaps`;
209
- handler: SnapController['stopAllSnaps'];
210
- };
211
- export type IncrementActiveReferences = {
212
- type: `${typeof controllerName}:incrementActiveReferences`;
213
- handler: SnapController['incrementActiveReferences'];
214
- };
215
- export type DecrementActiveReferences = {
216
- type: `${typeof controllerName}:decrementActiveReferences`;
217
- handler: SnapController['decrementActiveReferences'];
218
- };
219
- export type InstallSnaps = {
220
- type: `${typeof controllerName}:install`;
221
- handler: SnapController['installSnaps'];
222
- };
223
- export type DisconnectOrigin = {
224
- type: `${typeof controllerName}:disconnectOrigin`;
225
- handler: SnapController['removeSnapFromSubject'];
226
- };
227
- export type RevokeDynamicPermissions = {
228
- type: `${typeof controllerName}:revokeDynamicPermissions`;
229
- handler: SnapController['revokeDynamicSnapPermissions'];
230
- };
231
- export type GetSnapFile = {
232
- type: `${typeof controllerName}:getFile`;
233
- handler: SnapController['getSnapFile'];
234
- };
235
- export type IsMinimumPlatformVersion = {
236
- type: `${typeof controllerName}:isMinimumPlatformVersion`;
237
- handler: SnapController['isMinimumPlatformVersion'];
238
- };
239
- export type SetClientActive = {
240
- type: `${typeof controllerName}:setClientActive`;
241
- handler: SnapController['setClientActive'];
242
- };
243
117
  export type SnapControllerGetStateAction = ControllerGetStateAction<typeof controllerName, SnapControllerState>;
244
- export type SnapControllerActions = SnapControllerInitAction | ClearSnapState | GetSnap | GetSnapState | HandleSnapRequest | HasSnap | UpdateRegistry | UpdateSnapState | EnableSnap | DisableSnap | RemoveSnap | GetPermittedSnaps | InstallSnaps | GetAllSnaps | GetRunnableSnaps | IncrementActiveReferences | DecrementActiveReferences | DisconnectOrigin | RevokeDynamicPermissions | GetSnapFile | SnapControllerGetStateAction | StopAllSnaps | IsMinimumPlatformVersion | SetClientActive;
245
- export type SnapStateChange = {
246
- type: `${typeof controllerName}:stateChange`;
247
- payload: [SnapControllerState, Patch[]];
248
- };
118
+ export type SnapControllerActions = SnapControllerGetStateAction | SnapControllerMethodActions;
249
119
  /**
250
120
  * Emitted when an installed snap has been blocked.
251
121
  */
252
- export type SnapBlocked = {
122
+ export type SnapControllerSnapBlockedEvent = {
253
123
  type: `${typeof controllerName}:snapBlocked`;
254
124
  payload: [snapId: string, blockedSnapInfo?: BlockReason];
255
125
  };
256
126
  /**
257
127
  * Emitted when a snap installation or update is started.
258
128
  */
259
- export type SnapInstallStarted = {
129
+ export type SnapControllerSnapInstallStartedEvent = {
260
130
  type: `${typeof controllerName}:snapInstallStarted`;
261
131
  payload: [snapId: SnapId, origin: string, isUpdate: boolean];
262
132
  };
263
133
  /**
264
134
  * Emitted when a snap installation or update failed.
265
135
  */
266
- export type SnapInstallFailed = {
136
+ export type SnapControllerSnapInstallFailedEvent = {
267
137
  type: `${typeof controllerName}:snapInstallFailed`;
268
138
  payload: [snapId: SnapId, origin: string, isUpdate: boolean, error: string];
269
139
  };
@@ -271,28 +141,28 @@ export type SnapInstallFailed = {
271
141
  * Emitted when a snap has been started after being added and authorized during
272
142
  * installation.
273
143
  */
274
- export type SnapInstalled = {
144
+ export type SnapControllerSnapInstalledEvent = {
275
145
  type: `${typeof controllerName}:snapInstalled`;
276
146
  payload: [snap: TruncatedSnap, origin: string, preinstalled: boolean];
277
147
  };
278
148
  /**
279
149
  * Emitted when a snap that has previously been fully installed, is uninstalled.
280
150
  */
281
- export type SnapUninstalled = {
151
+ export type SnapControllerSnapUninstalledEvent = {
282
152
  type: `${typeof controllerName}:snapUninstalled`;
283
153
  payload: [snap: TruncatedSnap];
284
154
  };
285
155
  /**
286
156
  * Emitted when an installed snap has been unblocked.
287
157
  */
288
- export type SnapUnblocked = {
158
+ export type SnapControllerSnapUnblockedEvent = {
289
159
  type: `${typeof controllerName}:snapUnblocked`;
290
160
  payload: [snapId: string];
291
161
  };
292
162
  /**
293
163
  * Emitted when a snap is updated.
294
164
  */
295
- export type SnapUpdated = {
165
+ export type SnapControllerSnapUpdatedEvent = {
296
166
  type: `${typeof controllerName}:snapUpdated`;
297
167
  payload: [
298
168
  snap: TruncatedSnap,
@@ -304,7 +174,7 @@ export type SnapUpdated = {
304
174
  /**
305
175
  * Emitted when a snap is rolled back.
306
176
  */
307
- export type SnapRolledback = {
177
+ export type SnapControllerSnapRolledbackEvent = {
308
178
  type: `${typeof controllerName}:snapRolledback`;
309
179
  payload: [snap: TruncatedSnap, failedVersion: string];
310
180
  };
@@ -312,7 +182,7 @@ export type SnapRolledback = {
312
182
  * Emitted when a Snap is terminated. This is different from the snap being
313
183
  * stopped as it can also be triggered when a snap fails initialization.
314
184
  */
315
- export type SnapTerminated = {
185
+ export type SnapControllerSnapTerminatedEvent = {
316
186
  type: `${typeof controllerName}:snapTerminated`;
317
187
  payload: [snap: TruncatedSnap];
318
188
  };
@@ -320,14 +190,14 @@ export type SnapTerminated = {
320
190
  * Emitted when a Snap is enabled by a user.
321
191
  * This is not emitted by default when installing a snap.
322
192
  */
323
- export type SnapEnabled = {
193
+ export type SnapControllerSnapEnabledEvent = {
324
194
  type: `${typeof controllerName}:snapEnabled`;
325
195
  payload: [snap: TruncatedSnap];
326
196
  };
327
197
  /**
328
198
  * Emitted when a Snap is disabled by a user.
329
199
  */
330
- export type SnapDisabled = {
200
+ export type SnapControllerSnapDisabledEvent = {
331
201
  type: `${typeof controllerName}:snapDisabled`;
332
202
  payload: [snap: TruncatedSnap];
333
203
  };
@@ -335,14 +205,14 @@ export type SnapDisabled = {
335
205
  * Emitted when there is a state change.
336
206
  */
337
207
  export type SnapControllerStateChangeEvent = ControllerStateChangeEvent<typeof controllerName, SnapControllerState>;
338
- type KeyringControllerLock = {
208
+ type KeyringControllerLockEvent = {
339
209
  type: 'KeyringController:lock';
340
210
  payload: [];
341
211
  };
342
- export type SnapControllerEvents = SnapBlocked | SnapInstalled | SnapUninstalled | SnapInstallStarted | SnapInstallFailed | SnapStateChange | SnapUnblocked | SnapUpdated | SnapRolledback | SnapTerminated | SnapEnabled | SnapDisabled | SnapControllerStateChangeEvent;
343
- export type AllowedActions = GetEndowments | GetPermissions | GetSubjects | GetSubjectMetadata | AddSubjectMetadata | HasPermission | HasPermissions | RevokePermissions | RevokeAllPermissions | RevokePermissionForAllSubjects | GrantPermissions | AddApprovalRequest | HandleRpcRequestAction | ExecuteSnapAction | TerminateSnapAction | UpdateCaveat | UpdateRequestState | GetResult | GetMetadata | Update | ResolveVersion | CreateInterface | GetInterface | SnapInterfaceControllerSetInterfaceDisplayedAction | StorageServiceSetItemAction | StorageServiceGetItemAction | StorageServiceRemoveItemAction | StorageServiceClearAction;
344
- export type AllowedEvents = ExecutionServiceEvents | SnapInstalled | SnapUpdated | KeyringControllerLock | SnapsRegistryStateChangeEvent;
345
- type SnapControllerMessenger = Messenger<typeof controllerName, SnapControllerActions | AllowedActions, SnapControllerEvents | AllowedEvents>;
212
+ export type SnapControllerEvents = SnapControllerSnapBlockedEvent | SnapControllerSnapInstalledEvent | SnapControllerSnapUninstalledEvent | SnapControllerSnapInstallStartedEvent | SnapControllerSnapInstallFailedEvent | SnapControllerSnapUnblockedEvent | SnapControllerSnapUpdatedEvent | SnapControllerSnapRolledbackEvent | SnapControllerSnapTerminatedEvent | SnapControllerSnapEnabledEvent | SnapControllerSnapDisabledEvent | SnapControllerStateChangeEvent;
213
+ type AllowedActions = GetEndowments | GetPermissions | GetSubjects | GetSubjectMetadata | AddSubjectMetadata | HasPermission | HasPermissions | RevokePermissions | RevokeAllPermissions | RevokePermissionForAllSubjects | GrantPermissions | ApprovalControllerAddRequestAction | ExecutionServiceHandleRpcRequestAction | ExecutionServiceExecuteSnapAction | ExecutionServiceTerminateSnapAction | UpdateCaveat | ApprovalControllerUpdateRequestStateAction | SnapRegistryControllerGetAction | SnapRegistryControllerGetMetadataAction | SnapRegistryControllerResolveVersionAction | SnapRegistryControllerRequestUpdateAction | SnapInterfaceControllerCreateInterfaceAction | SnapInterfaceControllerGetInterfaceAction | SnapInterfaceControllerSetInterfaceDisplayedAction | StorageServiceSetItemAction | StorageServiceGetItemAction | StorageServiceRemoveItemAction | StorageServiceClearAction;
214
+ type AllowedEvents = ExecutionServiceEvents | SnapControllerSnapInstalledEvent | SnapControllerSnapUpdatedEvent | KeyringControllerLockEvent | SnapRegistryControllerStateChangeEvent;
215
+ export type SnapControllerMessenger = Messenger<typeof controllerName, SnapControllerActions | AllowedActions, SnapControllerEvents | AllowedEvents>;
346
216
  type FeatureFlags = {
347
217
  requireAllowlist?: boolean;
348
218
  allowLocalSnaps?: boolean;
@@ -364,7 +234,7 @@ type FeatureFlags = {
364
234
  type DynamicFeatureFlags = {
365
235
  disableSnaps?: boolean;
366
236
  };
367
- type SnapControllerArgs = {
237
+ export type SnapControllerArgs = {
368
238
  /**
369
239
  * A list of permissions that are allowed to be dynamic, meaning they can be revoked from the snap whenever.
370
240
  */
@@ -528,14 +398,14 @@ export declare class SnapController extends BaseController<typeof controllerName
528
398
  * @param snapId - The id of the Snap to check.
529
399
  * @returns `true` if the snap is running, otherwise `false`.
530
400
  */
531
- isRunning(snapId: SnapId): boolean;
401
+ isSnapRunning(snapId: SnapId): boolean;
532
402
  /**
533
403
  * Returns whether the given snap has been added to state.
534
404
  *
535
405
  * @param snapId - The id of the Snap to check for.
536
406
  * @returns `true` if the snap exists in the controller state, otherwise `false`.
537
407
  */
538
- has(snapId: SnapId): boolean;
408
+ hasSnap(snapId: SnapId): boolean;
539
409
  /**
540
410
  * Gets the snap with the given id if it exists, including all data.
541
411
  * This should not be used if the snap is to be serializable, as e.g.
@@ -544,34 +414,18 @@ export declare class SnapController extends BaseController<typeof controllerName
544
414
  * @param snapId - The id of the Snap to get.
545
415
  * @returns The entire snap object from the controller state.
546
416
  */
547
- get(snapId: string): Snap | undefined;
417
+ getSnap(snapId: string): Snap | null;
548
418
  /**
549
419
  * Gets the snap with the given id, throws if doesn't.
550
420
  * This should not be used if the snap is to be serializable, as e.g.
551
421
  * the snap sourceCode may be quite large.
552
422
  *
553
- * @see {@link SnapController.get}
423
+ * @see {@link SnapController.getSnap}
554
424
  * @throws {@link Error}. If the snap doesn't exist
555
425
  * @param snapId - The id of the snap to get.
556
426
  * @returns The entire snap object.
557
427
  */
558
- getExpect(snapId: SnapId): Snap;
559
- /**
560
- * Gets the snap with the given id if it exists, excluding any
561
- * non-serializable or expensive-to-serialize data.
562
- *
563
- * @param snapId - The id of the Snap to get.
564
- * @returns A truncated version of the snap state, that is less expensive to serialize.
565
- */
566
- getTruncated(snapId: SnapId): TruncatedSnap | null;
567
- /**
568
- * Gets the snap with the given id, throw if it doesn't exist.
569
- *
570
- * @throws {@link Error}. If snap doesn't exist
571
- * @param snapId - The id of the snap to get.
572
- * @returns A truncated version of the snap state, that is less expensive to serialize.
573
- */
574
- getTruncatedExpect(snapId: SnapId): TruncatedSnap;
428
+ getSnapExpect(snapId: SnapId): Snap;
575
429
  /**
576
430
  * Updates the own state of the snap with the given id.
577
431
  * This is distinct from the state MetaMask uses to manage snaps.
@@ -638,12 +492,13 @@ export declare class SnapController extends BaseController<typeof controllerName
638
492
  */
639
493
  removeSnaps(snapIds: SnapId[]): Promise<void>;
640
494
  /**
641
- * Removes a snap's permission (caveat) from the specified subject.
495
+ * Disconnect the Snap from the given origin, meaning the origin can no longer
496
+ * interact with the Snap until it is reconnected.
642
497
  *
643
- * @param origin - The origin from which to remove the snap.
498
+ * @param origin - The origin from which to remove the Snap.
644
499
  * @param snapId - The id of the snap to remove.
645
500
  */
646
- removeSnapFromSubject(origin: string, snapId: SnapId): void;
501
+ disconnectOrigin(origin: string, snapId: SnapId): void;
647
502
  /**
648
503
  * Checks if a list of permissions are dynamic and allowed to be revoked, if they are they will all be revoked.
649
504
  *
@@ -652,18 +507,6 @@ export declare class SnapController extends BaseController<typeof controllerName
652
507
  * @throws If non-dynamic permissions are passed.
653
508
  */
654
509
  revokeDynamicSnapPermissions(snapId: string, permissionNames: NonEmptyArray<string>): void;
655
- /**
656
- * Handles incrementing the activeReferences counter.
657
- *
658
- * @param snapId - The snap id of the snap that was referenced.
659
- */
660
- incrementActiveReferences(snapId: SnapId): void;
661
- /**
662
- * Handles decrement the activeReferences counter.
663
- *
664
- * @param snapId - The snap id of the snap that was referenced..
665
- */
666
- decrementActiveReferences(snapId: SnapId): void;
667
510
  /**
668
511
  * Gets all snaps in their truncated format.
669
512
  *
@@ -1 +1 @@
1
- {"version":3,"file":"SnapController.d.cts","sourceRoot":"","sources":["../../src/snaps/SnapController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SnapController.d.cts","sourceRoot":"","sources":["../../src/snaps/SnapController.ts"],"names":[],"mappings":"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"}