@metamask/keyring-api 21.2.0 → 21.4.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 (227) hide show
  1. package/CHANGELOG.md +44 -1
  2. package/README.md +11 -0
  3. package/dist/api/account-options.cjs +44 -7
  4. package/dist/api/account-options.cjs.map +1 -1
  5. package/dist/api/account-options.d.cts +41 -3
  6. package/dist/api/account-options.d.cts.map +1 -1
  7. package/dist/api/account-options.d.mts +41 -3
  8. package/dist/api/account-options.d.mts.map +1 -1
  9. package/dist/api/account-options.mjs +43 -6
  10. package/dist/api/account-options.mjs.map +1 -1
  11. package/dist/api/account.cjs +15 -1
  12. package/dist/api/account.cjs.map +1 -1
  13. package/dist/api/account.d.cts +18 -0
  14. package/dist/api/account.d.cts.map +1 -1
  15. package/dist/api/account.d.mts +18 -0
  16. package/dist/api/account.d.mts.map +1 -1
  17. package/dist/api/account.mjs +14 -0
  18. package/dist/api/account.mjs.map +1 -1
  19. package/dist/api/index.cjs +1 -0
  20. package/dist/api/index.cjs.map +1 -1
  21. package/dist/api/index.d.cts +1 -0
  22. package/dist/api/index.d.cts.map +1 -1
  23. package/dist/api/index.d.mts +1 -0
  24. package/dist/api/index.d.mts.map +1 -1
  25. package/dist/api/index.mjs +1 -0
  26. package/dist/api/index.mjs.map +1 -1
  27. package/dist/api/keyring.cjs +0 -2
  28. package/dist/api/keyring.cjs.map +1 -1
  29. package/dist/api/keyring.d.cts +13 -0
  30. package/dist/api/keyring.d.cts.map +1 -1
  31. package/dist/api/keyring.d.mts +13 -0
  32. package/dist/api/keyring.d.mts.map +1 -1
  33. package/dist/api/keyring.mjs +0 -2
  34. package/dist/api/keyring.mjs.map +1 -1
  35. package/dist/api/v2/create-account/bip44.cjs +83 -0
  36. package/dist/api/v2/create-account/bip44.cjs.map +1 -0
  37. package/dist/api/v2/create-account/bip44.d.cts +129 -0
  38. package/dist/api/v2/create-account/bip44.d.cts.map +1 -0
  39. package/dist/api/v2/create-account/bip44.d.mts +129 -0
  40. package/dist/api/v2/create-account/bip44.d.mts.map +1 -0
  41. package/dist/api/v2/create-account/bip44.mjs +80 -0
  42. package/dist/api/v2/create-account/bip44.mjs.map +1 -0
  43. package/dist/api/v2/create-account/custom.cjs +14 -0
  44. package/dist/api/v2/create-account/custom.cjs.map +1 -0
  45. package/dist/api/v2/create-account/custom.d.cts +25 -0
  46. package/dist/api/v2/create-account/custom.d.cts.map +1 -0
  47. package/dist/api/v2/create-account/custom.d.mts +25 -0
  48. package/dist/api/v2/create-account/custom.d.mts.map +1 -0
  49. package/dist/api/v2/create-account/custom.mjs +11 -0
  50. package/dist/api/v2/create-account/custom.mjs.map +1 -0
  51. package/dist/api/v2/create-account/index.cjs +93 -0
  52. package/dist/api/v2/create-account/index.cjs.map +1 -0
  53. package/dist/api/v2/create-account/index.d.cts +83 -0
  54. package/dist/api/v2/create-account/index.d.cts.map +1 -0
  55. package/dist/api/v2/create-account/index.d.mts +83 -0
  56. package/dist/api/v2/create-account/index.d.mts.map +1 -0
  57. package/dist/api/v2/create-account/index.mjs +76 -0
  58. package/dist/api/v2/create-account/index.mjs.map +1 -0
  59. package/dist/api/v2/create-account/private-key.cjs +28 -0
  60. package/dist/api/v2/create-account/private-key.cjs.map +1 -0
  61. package/dist/api/v2/create-account/private-key.d.cts +45 -0
  62. package/dist/api/v2/create-account/private-key.d.cts.map +1 -0
  63. package/dist/api/v2/create-account/private-key.d.mts +45 -0
  64. package/dist/api/v2/create-account/private-key.d.mts.map +1 -0
  65. package/dist/api/v2/create-account/private-key.mjs +25 -0
  66. package/dist/api/v2/create-account/private-key.mjs.map +1 -0
  67. package/dist/api/v2/export-account/index.cjs +38 -0
  68. package/dist/api/v2/export-account/index.cjs.map +1 -0
  69. package/dist/api/v2/export-account/index.d.cts +48 -0
  70. package/dist/api/v2/export-account/index.d.cts.map +1 -0
  71. package/dist/api/v2/export-account/index.d.mts +48 -0
  72. package/dist/api/v2/export-account/index.d.mts.map +1 -0
  73. package/dist/api/v2/export-account/index.mjs +21 -0
  74. package/dist/api/v2/export-account/index.mjs.map +1 -0
  75. package/dist/api/v2/export-account/private-key.cjs +36 -0
  76. package/dist/api/v2/export-account/private-key.cjs.map +1 -0
  77. package/dist/api/v2/export-account/private-key.d.cts +53 -0
  78. package/dist/api/v2/export-account/private-key.d.cts.map +1 -0
  79. package/dist/api/v2/export-account/private-key.d.mts +53 -0
  80. package/dist/api/v2/export-account/private-key.d.mts.map +1 -0
  81. package/dist/api/v2/export-account/private-key.mjs +33 -0
  82. package/dist/api/v2/export-account/private-key.mjs.map +1 -0
  83. package/dist/api/v2/index.cjs +23 -0
  84. package/dist/api/v2/index.cjs.map +1 -0
  85. package/dist/api/v2/index.d.cts +8 -0
  86. package/dist/api/v2/index.d.cts.map +1 -0
  87. package/dist/api/v2/index.d.mts +8 -0
  88. package/dist/api/v2/index.d.mts.map +1 -0
  89. package/dist/api/v2/index.mjs +7 -0
  90. package/dist/api/v2/index.mjs.map +1 -0
  91. package/dist/api/v2/keyring-capabilities.cjs +60 -0
  92. package/dist/api/v2/keyring-capabilities.cjs.map +1 -0
  93. package/dist/api/v2/keyring-capabilities.d.cts +150 -0
  94. package/dist/api/v2/keyring-capabilities.d.cts.map +1 -0
  95. package/dist/api/v2/keyring-capabilities.d.mts +150 -0
  96. package/dist/api/v2/keyring-capabilities.d.mts.map +1 -0
  97. package/dist/api/v2/keyring-capabilities.mjs +57 -0
  98. package/dist/api/v2/keyring-capabilities.mjs.map +1 -0
  99. package/dist/api/v2/keyring-type.cjs +44 -0
  100. package/dist/api/v2/keyring-type.cjs.map +1 -0
  101. package/dist/api/v2/keyring-type.d.cts +40 -0
  102. package/dist/api/v2/keyring-type.d.cts.map +1 -0
  103. package/dist/api/v2/keyring-type.d.mts +40 -0
  104. package/dist/api/v2/keyring-type.d.mts.map +1 -0
  105. package/dist/api/v2/keyring-type.mjs +41 -0
  106. package/dist/api/v2/keyring-type.mjs.map +1 -0
  107. package/dist/api/v2/keyring.cjs +3 -0
  108. package/dist/api/v2/keyring.cjs.map +1 -0
  109. package/dist/api/v2/keyring.d.cts +107 -0
  110. package/dist/api/v2/keyring.d.cts.map +1 -0
  111. package/dist/api/v2/keyring.d.mts +107 -0
  112. package/dist/api/v2/keyring.d.mts.map +1 -0
  113. package/dist/api/v2/keyring.mjs +2 -0
  114. package/dist/api/v2/keyring.mjs.map +1 -0
  115. package/dist/api/v2/private-key.cjs +53 -0
  116. package/dist/api/v2/private-key.cjs.map +1 -0
  117. package/dist/api/v2/private-key.d.cts +77 -0
  118. package/dist/api/v2/private-key.d.cts.map +1 -0
  119. package/dist/api/v2/private-key.d.mts +77 -0
  120. package/dist/api/v2/private-key.d.mts.map +1 -0
  121. package/dist/api/v2/private-key.mjs +50 -0
  122. package/dist/api/v2/private-key.mjs.map +1 -0
  123. package/dist/api/v2/wrapper/index.cjs +19 -0
  124. package/dist/api/v2/wrapper/index.cjs.map +1 -0
  125. package/dist/api/v2/wrapper/index.d.cts +3 -0
  126. package/dist/api/v2/wrapper/index.d.cts.map +1 -0
  127. package/dist/api/v2/wrapper/index.d.mts +3 -0
  128. package/dist/api/v2/wrapper/index.d.mts.map +1 -0
  129. package/dist/api/v2/wrapper/index.mjs +3 -0
  130. package/dist/api/v2/wrapper/index.mjs.map +1 -0
  131. package/dist/api/v2/wrapper/keyring-account-registry.cjs +135 -0
  132. package/dist/api/v2/wrapper/keyring-account-registry.cjs.map +1 -0
  133. package/dist/api/v2/wrapper/keyring-account-registry.d.cts +88 -0
  134. package/dist/api/v2/wrapper/keyring-account-registry.d.cts.map +1 -0
  135. package/dist/api/v2/wrapper/keyring-account-registry.d.mts +88 -0
  136. package/dist/api/v2/wrapper/keyring-account-registry.d.mts.map +1 -0
  137. package/dist/api/v2/wrapper/keyring-account-registry.mjs +131 -0
  138. package/dist/api/v2/wrapper/keyring-account-registry.mjs.map +1 -0
  139. package/dist/api/v2/wrapper/keyring-wrapper.cjs +134 -0
  140. package/dist/api/v2/wrapper/keyring-wrapper.cjs.map +1 -0
  141. package/dist/api/v2/wrapper/keyring-wrapper.d.cts +154 -0
  142. package/dist/api/v2/wrapper/keyring-wrapper.d.cts.map +1 -0
  143. package/dist/api/v2/wrapper/keyring-wrapper.d.mts +154 -0
  144. package/dist/api/v2/wrapper/keyring-wrapper.d.mts.map +1 -0
  145. package/dist/api/v2/wrapper/keyring-wrapper.mjs +130 -0
  146. package/dist/api/v2/wrapper/keyring-wrapper.mjs.map +1 -0
  147. package/dist/btc/types.d.cts +16 -0
  148. package/dist/btc/types.d.cts.map +1 -1
  149. package/dist/btc/types.d.mts +16 -0
  150. package/dist/btc/types.d.mts.map +1 -1
  151. package/dist/eth/erc4337/types.d.cts +4 -4
  152. package/dist/eth/erc4337/types.d.mts +4 -4
  153. package/dist/eth/index.cjs +2 -0
  154. package/dist/eth/index.cjs.map +1 -1
  155. package/dist/eth/index.d.cts +2 -0
  156. package/dist/eth/index.d.cts.map +1 -1
  157. package/dist/eth/index.d.mts +2 -0
  158. package/dist/eth/index.d.mts.map +1 -1
  159. package/dist/eth/index.mjs +2 -0
  160. package/dist/eth/index.mjs.map +1 -1
  161. package/dist/eth/rpc/index.cjs +18 -0
  162. package/dist/eth/rpc/index.cjs.map +1 -0
  163. package/dist/eth/rpc/index.d.cts +2 -0
  164. package/dist/eth/rpc/index.d.cts.map +1 -0
  165. package/dist/eth/rpc/index.d.mts +2 -0
  166. package/dist/eth/rpc/index.d.mts.map +1 -0
  167. package/dist/eth/rpc/index.mjs +2 -0
  168. package/dist/eth/rpc/index.mjs.map +1 -0
  169. package/dist/eth/rpc/params.cjs +151 -0
  170. package/dist/eth/rpc/params.cjs.map +1 -0
  171. package/dist/eth/rpc/params.d.cts +215 -0
  172. package/dist/eth/rpc/params.d.cts.map +1 -0
  173. package/dist/eth/rpc/params.d.mts +215 -0
  174. package/dist/eth/rpc/params.d.mts.map +1 -0
  175. package/dist/eth/rpc/params.mjs +148 -0
  176. package/dist/eth/rpc/params.mjs.map +1 -0
  177. package/dist/eth/types.cjs.map +1 -1
  178. package/dist/eth/types.d.cts +13 -5
  179. package/dist/eth/types.d.cts.map +1 -1
  180. package/dist/eth/types.d.mts +13 -5
  181. package/dist/eth/types.d.mts.map +1 -1
  182. package/dist/eth/types.mjs.map +1 -1
  183. package/dist/eth/v2/eth-keyring-wrapper.cjs +165 -0
  184. package/dist/eth/v2/eth-keyring-wrapper.cjs.map +1 -0
  185. package/dist/eth/v2/eth-keyring-wrapper.d.cts +54 -0
  186. package/dist/eth/v2/eth-keyring-wrapper.d.cts.map +1 -0
  187. package/dist/eth/v2/eth-keyring-wrapper.d.mts +54 -0
  188. package/dist/eth/v2/eth-keyring-wrapper.d.mts.map +1 -0
  189. package/dist/eth/v2/eth-keyring-wrapper.mjs +161 -0
  190. package/dist/eth/v2/eth-keyring-wrapper.mjs.map +1 -0
  191. package/dist/eth/v2/index.cjs +18 -0
  192. package/dist/eth/v2/index.cjs.map +1 -0
  193. package/dist/eth/v2/index.d.cts +2 -0
  194. package/dist/eth/v2/index.d.cts.map +1 -0
  195. package/dist/eth/v2/index.d.mts +2 -0
  196. package/dist/eth/v2/index.d.mts.map +1 -0
  197. package/dist/eth/v2/index.mjs +2 -0
  198. package/dist/eth/v2/index.mjs.map +1 -0
  199. package/dist/events.cjs +0 -2
  200. package/dist/events.cjs.map +1 -1
  201. package/dist/events.d.cts +16 -0
  202. package/dist/events.d.cts.map +1 -1
  203. package/dist/events.d.mts +16 -0
  204. package/dist/events.d.mts.map +1 -1
  205. package/dist/events.mjs +0 -2
  206. package/dist/events.mjs.map +1 -1
  207. package/dist/rpc.cjs +27 -12
  208. package/dist/rpc.cjs.map +1 -1
  209. package/dist/rpc.d.cts +200 -12
  210. package/dist/rpc.d.cts.map +1 -1
  211. package/dist/rpc.d.mts +200 -12
  212. package/dist/rpc.d.mts.map +1 -1
  213. package/dist/rpc.mjs +27 -12
  214. package/dist/rpc.mjs.map +1 -1
  215. package/dist/sol/types.d.cts +4 -0
  216. package/dist/sol/types.d.cts.map +1 -1
  217. package/dist/sol/types.d.mts +4 -0
  218. package/dist/sol/types.d.mts.map +1 -1
  219. package/dist/trx/types.cjs +4 -0
  220. package/dist/trx/types.cjs.map +1 -1
  221. package/dist/trx/types.d.cts +8 -0
  222. package/dist/trx/types.d.cts.map +1 -1
  223. package/dist/trx/types.d.mts +8 -0
  224. package/dist/trx/types.d.mts.map +1 -1
  225. package/dist/trx/types.mjs +4 -0
  226. package/dist/trx/types.mjs.map +1 -1
  227. package/package.json +9 -4
@@ -0,0 +1,129 @@
1
+ import { type Infer } from "@metamask/superstruct";
2
+ /**
3
+ * Struct for {@link CreateAccountBip44DerivePathOptions}.
4
+ */
5
+ export declare const CreateAccountBip44DerivePathOptionsStruct: import("@metamask/superstruct").Struct<{
6
+ type: "bip44:derive-path";
7
+ derivationPath: `m/${string}`;
8
+ entropySource: string;
9
+ }, {
10
+ /**
11
+ * Type of the options.
12
+ */
13
+ type: import("@metamask/superstruct").Struct<"bip44:derive-path", "bip44:derive-path">;
14
+ /**
15
+ * ID of the entropy source to be used to derive the account.
16
+ */
17
+ entropySource: import("@metamask/superstruct").Struct<string, null>;
18
+ /**
19
+ * BIP-44 derivation path to be used to derive the account.
20
+ */
21
+ derivationPath: import("@metamask/superstruct").Struct<`m/${string}`, null>;
22
+ }>;
23
+ /**
24
+ * Options for creating an account using the given BIP-44 derivation path.
25
+ */
26
+ export type CreateAccountBip44DerivePathOptions = Infer<typeof CreateAccountBip44DerivePathOptionsStruct>;
27
+ /**
28
+ * Struct for {@link CreateAccountBip44DeriveIndexOptions}.
29
+ */
30
+ export declare const CreateAccountBip44DeriveIndexOptionsStruct: import("@metamask/superstruct").Struct<{
31
+ type: "bip44:derive-index";
32
+ groupIndex: number;
33
+ entropySource: string;
34
+ }, {
35
+ /**
36
+ * The type of the options.
37
+ */
38
+ type: import("@metamask/superstruct").Struct<"bip44:derive-index", "bip44:derive-index">;
39
+ /**
40
+ * ID of the entropy source to be used to derive the account.
41
+ */
42
+ entropySource: import("@metamask/superstruct").Struct<string, null>;
43
+ /**
44
+ * The index of the account group to be derived.
45
+ */
46
+ groupIndex: import("@metamask/superstruct").Struct<number, null>;
47
+ }>;
48
+ /**
49
+ * Options for creating an account using the given BIP-44 account group index.
50
+ *
51
+ * Note that the keyring can support non-standard BIP-44 paths for
52
+ * compatibility with other wallets.
53
+ */
54
+ export type CreateAccountBip44DeriveIndexOptions = Infer<typeof CreateAccountBip44DeriveIndexOptionsStruct>;
55
+ /**
56
+ * Struct for {@link CreateAccountBip44DiscoverOptions}.
57
+ */
58
+ export declare const CreateAccountBip44DiscoverOptionsStruct: import("@metamask/superstruct").Struct<{
59
+ type: "bip44:discover";
60
+ groupIndex: number;
61
+ entropySource: string;
62
+ }, {
63
+ /**
64
+ * The type of the options.
65
+ */
66
+ type: import("@metamask/superstruct").Struct<"bip44:discover", "bip44:discover">;
67
+ /**
68
+ * ID of the entropy source to be used to derive the account.
69
+ */
70
+ entropySource: import("@metamask/superstruct").Struct<string, null>;
71
+ /**
72
+ * The index of the account group to be derived.
73
+ */
74
+ groupIndex: import("@metamask/superstruct").Struct<number, null>;
75
+ }>;
76
+ /**
77
+ * Options for creating accounts by performing a BIP-44 account discovery.
78
+ *
79
+ * Note that the keyring can support non-standard BIP-44 paths for
80
+ * compatibility with other wallets.
81
+ */
82
+ export type CreateAccountBip44DiscoverOptions = Infer<typeof CreateAccountBip44DiscoverOptionsStruct>;
83
+ /**
84
+ * Struct for {@link CreateAccountBip44DeriveIndexRangeOptions}.
85
+ */
86
+ export declare const CreateAccountBip44DeriveIndexRangeOptionsStruct: import("@metamask/superstruct").Struct<{
87
+ type: "bip44:derive-index-range";
88
+ range: {
89
+ from: number;
90
+ to: number;
91
+ };
92
+ entropySource: string;
93
+ }, {
94
+ /**
95
+ * The type of the options.
96
+ */
97
+ type: import("@metamask/superstruct").Struct<"bip44:derive-index-range", "bip44:derive-index-range">;
98
+ /**
99
+ * ID of the entropy source to be used to derive the accounts.
100
+ */
101
+ entropySource: import("@metamask/superstruct").Struct<string, null>;
102
+ /**
103
+ * The range of account group indices to derive (inclusive on both ends).
104
+ */
105
+ range: import("@metamask/superstruct").Struct<{
106
+ from: number;
107
+ to: number;
108
+ }, {
109
+ /**
110
+ * The starting index of the account group range (inclusive).
111
+ */
112
+ from: import("@metamask/superstruct").Struct<number, null>;
113
+ /**
114
+ * The ending index of the account group range (inclusive).
115
+ */
116
+ to: import("@metamask/superstruct").Struct<number, null>;
117
+ }>;
118
+ }>;
119
+ /**
120
+ * Options for creating accounts by deriving a range of BIP-44 account indices.
121
+ *
122
+ * The range is inclusive on both ends, meaning range.from=0 and range.to=5
123
+ * will create accounts for group indices 0, 1, 2, 3, 4, and 5.
124
+ *
125
+ * Note that the keyring can support non-standard BIP-44 paths for
126
+ * compatibility with other wallets.
127
+ */
128
+ export type CreateAccountBip44DeriveIndexRangeOptions = Infer<typeof CreateAccountBip44DeriveIndexRangeOptionsStruct>;
129
+ //# sourceMappingURL=bip44.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bip44.d.mts","sourceRoot":"","sources":["../../../../src/api/v2/create-account/bip44.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,KAAK,EACX,8BAA8B;AAI/B;;GAEG;AACH,eAAO,MAAM,yCAAyC;;;;;IACpD;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,mCAAmC,GAAG,KAAK,CACrD,OAAO,yCAAyC,CACjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0CAA0C;;;;;IACrD;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AAEH;;;;;GAKG;AACH,MAAM,MAAM,oCAAoC,GAAG,KAAK,CACtD,OAAO,0CAA0C,CAClD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uCAAuC;;;;;IAClD;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;EAEH,CAAC;AAEH;;;;;GAKG;AACH,MAAM,MAAM,iCAAiC,GAAG,KAAK,CACnD,OAAO,uCAAuC,CAC/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,+CAA+C;;;;;;;;IAC1D;;OAEG;;IAEH;;OAEG;;IAEH;;OAEG;;;;;QAED;;WAEG;;QAEH;;WAEG;;;EAGL,CAAC;AAEH;;;;;;;;GAQG;AACH,MAAM,MAAM,yCAAyC,GAAG,KAAK,CAC3D,OAAO,+CAA+C,CACvD,CAAC"}
@@ -0,0 +1,80 @@
1
+ import { literal, number, object, string } from "@metamask/superstruct";
2
+ import { DerivationPathStruct } from "../../derivation.mjs";
3
+ /**
4
+ * Struct for {@link CreateAccountBip44DerivePathOptions}.
5
+ */
6
+ export const CreateAccountBip44DerivePathOptionsStruct = object({
7
+ /**
8
+ * Type of the options.
9
+ */
10
+ type: literal('bip44:derive-path'),
11
+ /**
12
+ * ID of the entropy source to be used to derive the account.
13
+ */
14
+ entropySource: string(),
15
+ /**
16
+ * BIP-44 derivation path to be used to derive the account.
17
+ */
18
+ derivationPath: DerivationPathStruct,
19
+ });
20
+ /**
21
+ * Struct for {@link CreateAccountBip44DeriveIndexOptions}.
22
+ */
23
+ export const CreateAccountBip44DeriveIndexOptionsStruct = object({
24
+ /**
25
+ * The type of the options.
26
+ */
27
+ type: literal('bip44:derive-index'),
28
+ /**
29
+ * ID of the entropy source to be used to derive the account.
30
+ */
31
+ entropySource: string(),
32
+ /**
33
+ * The index of the account group to be derived.
34
+ */
35
+ groupIndex: number(),
36
+ });
37
+ /**
38
+ * Struct for {@link CreateAccountBip44DiscoverOptions}.
39
+ */
40
+ export const CreateAccountBip44DiscoverOptionsStruct = object({
41
+ /**
42
+ * The type of the options.
43
+ */
44
+ type: literal('bip44:discover'),
45
+ /**
46
+ * ID of the entropy source to be used to derive the account.
47
+ */
48
+ entropySource: string(),
49
+ /**
50
+ * The index of the account group to be derived.
51
+ */
52
+ groupIndex: number(),
53
+ });
54
+ /**
55
+ * Struct for {@link CreateAccountBip44DeriveIndexRangeOptions}.
56
+ */
57
+ export const CreateAccountBip44DeriveIndexRangeOptionsStruct = object({
58
+ /**
59
+ * The type of the options.
60
+ */
61
+ type: literal('bip44:derive-index-range'),
62
+ /**
63
+ * ID of the entropy source to be used to derive the accounts.
64
+ */
65
+ entropySource: string(),
66
+ /**
67
+ * The range of account group indices to derive (inclusive on both ends).
68
+ */
69
+ range: object({
70
+ /**
71
+ * The starting index of the account group range (inclusive).
72
+ */
73
+ from: number(),
74
+ /**
75
+ * The ending index of the account group range (inclusive).
76
+ */
77
+ to: number(),
78
+ }),
79
+ });
80
+ //# sourceMappingURL=bip44.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bip44.mjs","sourceRoot":"","sources":["../../../../src/api/v2/create-account/bip44.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,MAAM,EACN,MAAM,EACN,MAAM,EAEP,8BAA8B;AAE/B,OAAO,EAAE,oBAAoB,EAAE,6BAAyB;AAExD;;GAEG;AACH,MAAM,CAAC,MAAM,yCAAyC,GAAG,MAAM,CAAC;IAC9D;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC,mBAAmB,CAAC;IAClC;;OAEG;IACH,aAAa,EAAE,MAAM,EAAE;IACvB;;OAEG;IACH,cAAc,EAAE,oBAAoB;CACrC,CAAC,CAAC;AASH;;GAEG;AACH,MAAM,CAAC,MAAM,0CAA0C,GAAG,MAAM,CAAC;IAC/D;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC,oBAAoB,CAAC;IACnC;;OAEG;IACH,aAAa,EAAE,MAAM,EAAE;IACvB;;OAEG;IACH,UAAU,EAAE,MAAM,EAAE;CACrB,CAAC,CAAC;AAYH;;GAEG;AACH,MAAM,CAAC,MAAM,uCAAuC,GAAG,MAAM,CAAC;IAC5D;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC;IAC/B;;OAEG;IACH,aAAa,EAAE,MAAM,EAAE;IACvB;;OAEG;IACH,UAAU,EAAE,MAAM,EAAE;CACrB,CAAC,CAAC;AAYH;;GAEG;AACH,MAAM,CAAC,MAAM,+CAA+C,GAAG,MAAM,CAAC;IACpE;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC,0BAA0B,CAAC;IACzC;;OAEG;IACH,aAAa,EAAE,MAAM,EAAE;IACvB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;QACZ;;WAEG;QACH,IAAI,EAAE,MAAM,EAAE;QACd;;WAEG;QACH,EAAE,EAAE,MAAM,EAAE;KACb,CAAC;CACH,CAAC,CAAC","sourcesContent":["import {\n literal,\n number,\n object,\n string,\n type Infer,\n} from '@metamask/superstruct';\n\nimport { DerivationPathStruct } from '../../derivation';\n\n/**\n * Struct for {@link CreateAccountBip44DerivePathOptions}.\n */\nexport const CreateAccountBip44DerivePathOptionsStruct = object({\n /**\n * Type of the options.\n */\n type: literal('bip44:derive-path'),\n /**\n * ID of the entropy source to be used to derive the account.\n */\n entropySource: string(),\n /**\n * BIP-44 derivation path to be used to derive the account.\n */\n derivationPath: DerivationPathStruct,\n});\n\n/**\n * Options for creating an account using the given BIP-44 derivation path.\n */\nexport type CreateAccountBip44DerivePathOptions = Infer<\n typeof CreateAccountBip44DerivePathOptionsStruct\n>;\n\n/**\n * Struct for {@link CreateAccountBip44DeriveIndexOptions}.\n */\nexport const CreateAccountBip44DeriveIndexOptionsStruct = object({\n /**\n * The type of the options.\n */\n type: literal('bip44:derive-index'),\n /**\n * ID of the entropy source to be used to derive the account.\n */\n entropySource: string(),\n /**\n * The index of the account group to be derived.\n */\n groupIndex: number(),\n});\n\n/**\n * Options for creating an account using the given BIP-44 account group index.\n *\n * Note that the keyring can support non-standard BIP-44 paths for\n * compatibility with other wallets.\n */\nexport type CreateAccountBip44DeriveIndexOptions = Infer<\n typeof CreateAccountBip44DeriveIndexOptionsStruct\n>;\n\n/**\n * Struct for {@link CreateAccountBip44DiscoverOptions}.\n */\nexport const CreateAccountBip44DiscoverOptionsStruct = object({\n /**\n * The type of the options.\n */\n type: literal('bip44:discover'),\n /**\n * ID of the entropy source to be used to derive the account.\n */\n entropySource: string(),\n /**\n * The index of the account group to be derived.\n */\n groupIndex: number(),\n});\n\n/**\n * Options for creating accounts by performing a BIP-44 account discovery.\n *\n * Note that the keyring can support non-standard BIP-44 paths for\n * compatibility with other wallets.\n */\nexport type CreateAccountBip44DiscoverOptions = Infer<\n typeof CreateAccountBip44DiscoverOptionsStruct\n>;\n\n/**\n * Struct for {@link CreateAccountBip44DeriveIndexRangeOptions}.\n */\nexport const CreateAccountBip44DeriveIndexRangeOptionsStruct = object({\n /**\n * The type of the options.\n */\n type: literal('bip44:derive-index-range'),\n /**\n * ID of the entropy source to be used to derive the accounts.\n */\n entropySource: string(),\n /**\n * The range of account group indices to derive (inclusive on both ends).\n */\n range: object({\n /**\n * The starting index of the account group range (inclusive).\n */\n from: number(),\n /**\n * The ending index of the account group range (inclusive).\n */\n to: number(),\n }),\n});\n\n/**\n * Options for creating accounts by deriving a range of BIP-44 account indices.\n *\n * The range is inclusive on both ends, meaning range.from=0 and range.to=5\n * will create accounts for group indices 0, 1, 2, 3, 4, and 5.\n *\n * Note that the keyring can support non-standard BIP-44 paths for\n * compatibility with other wallets.\n */\nexport type CreateAccountBip44DeriveIndexRangeOptions = Infer<\n typeof CreateAccountBip44DeriveIndexRangeOptionsStruct\n>;\n"]}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CreateAccountCustomOptionsStruct = void 0;
4
+ const superstruct_1 = require("@metamask/superstruct");
5
+ /**
6
+ * Struct for {@link CreateAccountCustomOptions}.
7
+ */
8
+ exports.CreateAccountCustomOptionsStruct = (0, superstruct_1.type)({
9
+ /**
10
+ * The type of the options.
11
+ */
12
+ type: (0, superstruct_1.literal)('custom'),
13
+ });
14
+ //# sourceMappingURL=custom.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom.cjs","sourceRoot":"","sources":["../../../../src/api/v2/create-account/custom.ts"],"names":[],"mappings":";;;AAAA,uDAAkE;AAElE;;GAEG;AACU,QAAA,gCAAgC,GAAG,IAAA,kBAAI,EAAC;IACnD;;OAEG;IACH,IAAI,EAAE,IAAA,qBAAO,EAAC,QAAQ,CAAC;CACxB,CAAC,CAAC","sourcesContent":["import { literal, type, type Infer } from '@metamask/superstruct';\n\n/**\n * Struct for {@link CreateAccountCustomOptions}.\n */\nexport const CreateAccountCustomOptionsStruct = type({\n /**\n * The type of the options.\n */\n type: literal('custom'),\n});\n\n/**\n * Options for creating an account using a custom, keyring-specific method.\n *\n * This is an opaque type that allows keyrings with non-standard account\n * creation flows to define their own options. Keyrings using this type\n * should declare `custom.createAccounts: true` in their capabilities.\n *\n * The actual options accepted by the keyring are implementation-specific\n * and not validated by this struct beyond the `type` field. Adaptors should\n * handle any additional options as needed and add type intersections as necessary.\n */\nexport type CreateAccountCustomOptions = Infer<\n typeof CreateAccountCustomOptionsStruct\n>;\n"]}
@@ -0,0 +1,25 @@
1
+ import { type Infer } from "@metamask/superstruct";
2
+ /**
3
+ * Struct for {@link CreateAccountCustomOptions}.
4
+ */
5
+ export declare const CreateAccountCustomOptionsStruct: import("@metamask/superstruct").Struct<{
6
+ type: "custom";
7
+ }, {
8
+ /**
9
+ * The type of the options.
10
+ */
11
+ type: import("@metamask/superstruct").Struct<"custom", "custom">;
12
+ }>;
13
+ /**
14
+ * Options for creating an account using a custom, keyring-specific method.
15
+ *
16
+ * This is an opaque type that allows keyrings with non-standard account
17
+ * creation flows to define their own options. Keyrings using this type
18
+ * should declare `custom.createAccounts: true` in their capabilities.
19
+ *
20
+ * The actual options accepted by the keyring are implementation-specific
21
+ * and not validated by this struct beyond the `type` field. Adaptors should
22
+ * handle any additional options as needed and add type intersections as necessary.
23
+ */
24
+ export type CreateAccountCustomOptions = Infer<typeof CreateAccountCustomOptionsStruct>;
25
+ //# sourceMappingURL=custom.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom.d.cts","sourceRoot":"","sources":["../../../../src/api/v2/create-account/custom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,KAAK,EAAE,8BAA8B;AAElE;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;IAC3C;;OAEG;;EAEH,CAAC;AAEH;;;;;;;;;;GAUG;AACH,MAAM,MAAM,0BAA0B,GAAG,KAAK,CAC5C,OAAO,gCAAgC,CACxC,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { type Infer } from "@metamask/superstruct";
2
+ /**
3
+ * Struct for {@link CreateAccountCustomOptions}.
4
+ */
5
+ export declare const CreateAccountCustomOptionsStruct: import("@metamask/superstruct").Struct<{
6
+ type: "custom";
7
+ }, {
8
+ /**
9
+ * The type of the options.
10
+ */
11
+ type: import("@metamask/superstruct").Struct<"custom", "custom">;
12
+ }>;
13
+ /**
14
+ * Options for creating an account using a custom, keyring-specific method.
15
+ *
16
+ * This is an opaque type that allows keyrings with non-standard account
17
+ * creation flows to define their own options. Keyrings using this type
18
+ * should declare `custom.createAccounts: true` in their capabilities.
19
+ *
20
+ * The actual options accepted by the keyring are implementation-specific
21
+ * and not validated by this struct beyond the `type` field. Adaptors should
22
+ * handle any additional options as needed and add type intersections as necessary.
23
+ */
24
+ export type CreateAccountCustomOptions = Infer<typeof CreateAccountCustomOptionsStruct>;
25
+ //# sourceMappingURL=custom.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom.d.mts","sourceRoot":"","sources":["../../../../src/api/v2/create-account/custom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,KAAK,EAAE,8BAA8B;AAElE;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;IAC3C;;OAEG;;EAEH,CAAC;AAEH;;;;;;;;;;GAUG;AACH,MAAM,MAAM,0BAA0B,GAAG,KAAK,CAC5C,OAAO,gCAAgC,CACxC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { literal, type } from "@metamask/superstruct";
2
+ /**
3
+ * Struct for {@link CreateAccountCustomOptions}.
4
+ */
5
+ export const CreateAccountCustomOptionsStruct = type({
6
+ /**
7
+ * The type of the options.
8
+ */
9
+ type: literal('custom'),
10
+ });
11
+ //# sourceMappingURL=custom.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom.mjs","sourceRoot":"","sources":["../../../../src/api/v2/create-account/custom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAc,8BAA8B;AAElE;;GAEG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,IAAI,CAAC;IACnD;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC,QAAQ,CAAC;CACxB,CAAC,CAAC","sourcesContent":["import { literal, type, type Infer } from '@metamask/superstruct';\n\n/**\n * Struct for {@link CreateAccountCustomOptions}.\n */\nexport const CreateAccountCustomOptionsStruct = type({\n /**\n * The type of the options.\n */\n type: literal('custom'),\n});\n\n/**\n * Options for creating an account using a custom, keyring-specific method.\n *\n * This is an opaque type that allows keyrings with non-standard account\n * creation flows to define their own options. Keyrings using this type\n * should declare `custom.createAccounts: true` in their capabilities.\n *\n * The actual options accepted by the keyring are implementation-specific\n * and not validated by this struct beyond the `type` field. Adaptors should\n * handle any additional options as needed and add type intersections as necessary.\n */\nexport type CreateAccountCustomOptions = Infer<\n typeof CreateAccountCustomOptionsStruct\n>;\n"]}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.CreateAccountOptionsStruct = exports.AccountCreationType = void 0;
18
+ const keyring_utils_1 = require("@metamask/keyring-utils");
19
+ const bip44_1 = require("./bip44.cjs");
20
+ const custom_1 = require("./custom.cjs");
21
+ const private_key_1 = require("./private-key.cjs");
22
+ __exportStar(require("./bip44.cjs"), exports);
23
+ __exportStar(require("./custom.cjs"), exports);
24
+ __exportStar(require("./private-key.cjs"), exports);
25
+ /**
26
+ * Enum representing the different ways an account can be created.
27
+ */
28
+ var AccountCreationType;
29
+ (function (AccountCreationType) {
30
+ /**
31
+ * Represents an account created using a BIP-44 derivation path.
32
+ */
33
+ AccountCreationType["Bip44DerivePath"] = "bip44:derive-path";
34
+ /**
35
+ * Represents accounts created using a BIP-44 account index.
36
+ *
37
+ * More than one account can be created, for example, the keyring can create
38
+ * multiple account types (e.g., P2PKH, P2TR, P2WPKH) for the same account
39
+ * index.
40
+ */
41
+ AccountCreationType["Bip44DeriveIndex"] = "bip44:derive-index";
42
+ /**
43
+ * Represents accounts created by deriving a range of BIP-44 account indices.
44
+ *
45
+ * More than one account can be created per index, for example, the keyring
46
+ * can create multiple account types (e.g., P2PKH, P2TR, P2WPKH) for each
47
+ * account index in the range.
48
+ */
49
+ AccountCreationType["Bip44DeriveIndexRange"] = "bip44:derive-index-range";
50
+ /**
51
+ * Represents accounts created through BIP-44 account discovery.
52
+ *
53
+ * More than one account can be created, for example, the keyring can create
54
+ * multiple account types (e.g., P2PKH, P2TR, P2WPKH) for the same account
55
+ * index.
56
+ */
57
+ AccountCreationType["Bip44Discover"] = "bip44:discover";
58
+ /**
59
+ * Represents an account imported from a private key.
60
+ */
61
+ AccountCreationType["PrivateKeyImport"] = "private-key:import";
62
+ /**
63
+ * Represents an account created using a custom, keyring-specific method.
64
+ *
65
+ * This is used by keyrings that have non-standard account creation flows
66
+ * and declare `custom.createAccounts: true` in their capabilities.
67
+ */
68
+ AccountCreationType["Custom"] = "custom";
69
+ })(AccountCreationType || (exports.AccountCreationType = AccountCreationType = {}));
70
+ /**
71
+ * Struct for {@link CreateAccountOptions}.
72
+ */
73
+ exports.CreateAccountOptionsStruct = (0, keyring_utils_1.selectiveUnion)((value) => {
74
+ const accountCreationType = value?.type;
75
+ switch (accountCreationType) {
76
+ case AccountCreationType.Bip44DerivePath:
77
+ return bip44_1.CreateAccountBip44DerivePathOptionsStruct;
78
+ case AccountCreationType.Bip44DeriveIndex:
79
+ return bip44_1.CreateAccountBip44DeriveIndexOptionsStruct;
80
+ case AccountCreationType.Bip44DeriveIndexRange:
81
+ return bip44_1.CreateAccountBip44DeriveIndexRangeOptionsStruct;
82
+ case AccountCreationType.Bip44Discover:
83
+ return bip44_1.CreateAccountBip44DiscoverOptionsStruct;
84
+ case AccountCreationType.PrivateKeyImport:
85
+ return private_key_1.CreateAccountPrivateKeyOptionsStruct;
86
+ case AccountCreationType.Custom:
87
+ return custom_1.CreateAccountCustomOptionsStruct;
88
+ default:
89
+ // Return first struct as fallback - validation will fail with proper error indicating the type mismatch
90
+ return bip44_1.CreateAccountBip44DerivePathOptionsStruct;
91
+ }
92
+ });
93
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../../src/api/v2/create-account/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2DAAyD;AAGzD,uCAKiB;AACjB,yCAA4D;AAC5D,mDAAqE;AAErE,8CAAwB;AACxB,+CAAyB;AACzB,oDAA8B;AAE9B;;GAEG;AACH,IAAY,mBA6CX;AA7CD,WAAY,mBAAmB;IAC7B;;OAEG;IACH,4DAAqC,CAAA;IAErC;;;;;;OAMG;IACH,8DAAuC,CAAA;IAEvC;;;;;;OAMG;IACH,yEAAkD,CAAA;IAElD;;;;;;OAMG;IACH,uDAAgC,CAAA;IAEhC;;OAEG;IACH,8DAAuC,CAAA;IAEvC;;;;;OAKG;IACH,wCAAiB,CAAA;AACnB,CAAC,EA7CW,mBAAmB,mCAAnB,mBAAmB,QA6C9B;AAED;;GAEG;AACU,QAAA,0BAA0B,GAAG,IAAA,8BAAc,EAAC,CAAC,KAAU,EAAE,EAAE;IACtE,MAAM,mBAAmB,GAAG,KAAK,EAAE,IAA2B,CAAC;IAC/D,QAAQ,mBAAmB,EAAE,CAAC;QAC5B,KAAK,mBAAmB,CAAC,eAAe;YACtC,OAAO,iDAAyC,CAAC;QACnD,KAAK,mBAAmB,CAAC,gBAAgB;YACvC,OAAO,kDAA0C,CAAC;QACpD,KAAK,mBAAmB,CAAC,qBAAqB;YAC5C,OAAO,uDAA+C,CAAC;QACzD,KAAK,mBAAmB,CAAC,aAAa;YACpC,OAAO,+CAAuC,CAAC;QACjD,KAAK,mBAAmB,CAAC,gBAAgB;YACvC,OAAO,kDAAoC,CAAC;QAC9C,KAAK,mBAAmB,CAAC,MAAM;YAC7B,OAAO,yCAAgC,CAAC;QAC1C;YACE,wGAAwG;YACxG,OAAO,iDAAyC,CAAC;IACrD,CAAC;AACH,CAAC,CAAC,CAAC","sourcesContent":["import { selectiveUnion } from '@metamask/keyring-utils';\nimport { type Infer } from '@metamask/superstruct';\n\nimport {\n CreateAccountBip44DiscoverOptionsStruct,\n CreateAccountBip44DeriveIndexOptionsStruct,\n CreateAccountBip44DeriveIndexRangeOptionsStruct,\n CreateAccountBip44DerivePathOptionsStruct,\n} from './bip44';\nimport { CreateAccountCustomOptionsStruct } from './custom';\nimport { CreateAccountPrivateKeyOptionsStruct } from './private-key';\n\nexport * from './bip44';\nexport * from './custom';\nexport * from './private-key';\n\n/**\n * Enum representing the different ways an account can be created.\n */\nexport enum AccountCreationType {\n /**\n * Represents an account created using a BIP-44 derivation path.\n */\n Bip44DerivePath = 'bip44:derive-path',\n\n /**\n * Represents accounts created using a BIP-44 account index.\n *\n * More than one account can be created, for example, the keyring can create\n * multiple account types (e.g., P2PKH, P2TR, P2WPKH) for the same account\n * index.\n */\n Bip44DeriveIndex = 'bip44:derive-index',\n\n /**\n * Represents accounts created by deriving a range of BIP-44 account indices.\n *\n * More than one account can be created per index, for example, the keyring\n * can create multiple account types (e.g., P2PKH, P2TR, P2WPKH) for each\n * account index in the range.\n */\n Bip44DeriveIndexRange = 'bip44:derive-index-range',\n\n /**\n * Represents accounts created through BIP-44 account discovery.\n *\n * More than one account can be created, for example, the keyring can create\n * multiple account types (e.g., P2PKH, P2TR, P2WPKH) for the same account\n * index.\n */\n Bip44Discover = 'bip44:discover',\n\n /**\n * Represents an account imported from a private key.\n */\n PrivateKeyImport = 'private-key:import',\n\n /**\n * Represents an account created using a custom, keyring-specific method.\n *\n * This is used by keyrings that have non-standard account creation flows\n * and declare `custom.createAccounts: true` in their capabilities.\n */\n Custom = 'custom',\n}\n\n/**\n * Struct for {@link CreateAccountOptions}.\n */\nexport const CreateAccountOptionsStruct = selectiveUnion((value: any) => {\n const accountCreationType = value?.type as AccountCreationType;\n switch (accountCreationType) {\n case AccountCreationType.Bip44DerivePath:\n return CreateAccountBip44DerivePathOptionsStruct;\n case AccountCreationType.Bip44DeriveIndex:\n return CreateAccountBip44DeriveIndexOptionsStruct;\n case AccountCreationType.Bip44DeriveIndexRange:\n return CreateAccountBip44DeriveIndexRangeOptionsStruct;\n case AccountCreationType.Bip44Discover:\n return CreateAccountBip44DiscoverOptionsStruct;\n case AccountCreationType.PrivateKeyImport:\n return CreateAccountPrivateKeyOptionsStruct;\n case AccountCreationType.Custom:\n return CreateAccountCustomOptionsStruct;\n default:\n // Return first struct as fallback - validation will fail with proper error indicating the type mismatch\n return CreateAccountBip44DerivePathOptionsStruct;\n }\n});\n\n/**\n * Represents the available options for creating a new account.\n */\nexport type CreateAccountOptions = Infer<typeof CreateAccountOptionsStruct>;\n"]}
@@ -0,0 +1,83 @@
1
+ import { type Infer } from "@metamask/superstruct";
2
+ export * from "./bip44.cjs";
3
+ export * from "./custom.cjs";
4
+ export * from "./private-key.cjs";
5
+ /**
6
+ * Enum representing the different ways an account can be created.
7
+ */
8
+ export declare enum AccountCreationType {
9
+ /**
10
+ * Represents an account created using a BIP-44 derivation path.
11
+ */
12
+ Bip44DerivePath = "bip44:derive-path",
13
+ /**
14
+ * Represents accounts created using a BIP-44 account index.
15
+ *
16
+ * More than one account can be created, for example, the keyring can create
17
+ * multiple account types (e.g., P2PKH, P2TR, P2WPKH) for the same account
18
+ * index.
19
+ */
20
+ Bip44DeriveIndex = "bip44:derive-index",
21
+ /**
22
+ * Represents accounts created by deriving a range of BIP-44 account indices.
23
+ *
24
+ * More than one account can be created per index, for example, the keyring
25
+ * can create multiple account types (e.g., P2PKH, P2TR, P2WPKH) for each
26
+ * account index in the range.
27
+ */
28
+ Bip44DeriveIndexRange = "bip44:derive-index-range",
29
+ /**
30
+ * Represents accounts created through BIP-44 account discovery.
31
+ *
32
+ * More than one account can be created, for example, the keyring can create
33
+ * multiple account types (e.g., P2PKH, P2TR, P2WPKH) for the same account
34
+ * index.
35
+ */
36
+ Bip44Discover = "bip44:discover",
37
+ /**
38
+ * Represents an account imported from a private key.
39
+ */
40
+ PrivateKeyImport = "private-key:import",
41
+ /**
42
+ * Represents an account created using a custom, keyring-specific method.
43
+ *
44
+ * This is used by keyrings that have non-standard account creation flows
45
+ * and declare `custom.createAccounts: true` in their capabilities.
46
+ */
47
+ Custom = "custom"
48
+ }
49
+ /**
50
+ * Struct for {@link CreateAccountOptions}.
51
+ */
52
+ export declare const CreateAccountOptionsStruct: import("@metamask/superstruct").Struct<{
53
+ type: "bip44:derive-path";
54
+ derivationPath: `m/${string}`;
55
+ entropySource: string;
56
+ } | {
57
+ type: "bip44:derive-index";
58
+ groupIndex: number;
59
+ entropySource: string;
60
+ } | {
61
+ type: "bip44:discover";
62
+ groupIndex: number;
63
+ entropySource: string;
64
+ } | {
65
+ type: "bip44:derive-index-range";
66
+ range: {
67
+ from: number;
68
+ to: number;
69
+ };
70
+ entropySource: string;
71
+ } | {
72
+ type: "custom";
73
+ } | {
74
+ type: "private-key:import";
75
+ encoding: "hexadecimal" | "base58";
76
+ privateKey: string;
77
+ accountType?: "eip155:eoa" | "eip155:erc4337" | "bip122:p2pkh" | "bip122:p2sh" | "bip122:p2wpkh" | "bip122:p2tr" | "solana:data-account" | "tron:eoa" | "any:account";
78
+ }, null>;
79
+ /**
80
+ * Represents the available options for creating a new account.
81
+ */
82
+ export type CreateAccountOptions = Infer<typeof CreateAccountOptionsStruct>;
83
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../../src/api/v2/create-account/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAE,8BAA8B;AAWnD,4BAAwB;AACxB,6BAAyB;AACzB,kCAA8B;AAE9B;;GAEG;AACH,oBAAY,mBAAmB;IAC7B;;OAEG;IACH,eAAe,sBAAsB;IAErC;;;;;;OAMG;IACH,gBAAgB,uBAAuB;IAEvC;;;;;;OAMG;IACH,qBAAqB,6BAA6B;IAElD;;;;;;OAMG;IACH,aAAa,mBAAmB;IAEhC;;OAEG;IACH,gBAAgB,uBAAuB;IAEvC;;;;;OAKG;IACH,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;QAmBrC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}
@@ -0,0 +1,83 @@
1
+ import { type Infer } from "@metamask/superstruct";
2
+ export * from "./bip44.mjs";
3
+ export * from "./custom.mjs";
4
+ export * from "./private-key.mjs";
5
+ /**
6
+ * Enum representing the different ways an account can be created.
7
+ */
8
+ export declare enum AccountCreationType {
9
+ /**
10
+ * Represents an account created using a BIP-44 derivation path.
11
+ */
12
+ Bip44DerivePath = "bip44:derive-path",
13
+ /**
14
+ * Represents accounts created using a BIP-44 account index.
15
+ *
16
+ * More than one account can be created, for example, the keyring can create
17
+ * multiple account types (e.g., P2PKH, P2TR, P2WPKH) for the same account
18
+ * index.
19
+ */
20
+ Bip44DeriveIndex = "bip44:derive-index",
21
+ /**
22
+ * Represents accounts created by deriving a range of BIP-44 account indices.
23
+ *
24
+ * More than one account can be created per index, for example, the keyring
25
+ * can create multiple account types (e.g., P2PKH, P2TR, P2WPKH) for each
26
+ * account index in the range.
27
+ */
28
+ Bip44DeriveIndexRange = "bip44:derive-index-range",
29
+ /**
30
+ * Represents accounts created through BIP-44 account discovery.
31
+ *
32
+ * More than one account can be created, for example, the keyring can create
33
+ * multiple account types (e.g., P2PKH, P2TR, P2WPKH) for the same account
34
+ * index.
35
+ */
36
+ Bip44Discover = "bip44:discover",
37
+ /**
38
+ * Represents an account imported from a private key.
39
+ */
40
+ PrivateKeyImport = "private-key:import",
41
+ /**
42
+ * Represents an account created using a custom, keyring-specific method.
43
+ *
44
+ * This is used by keyrings that have non-standard account creation flows
45
+ * and declare `custom.createAccounts: true` in their capabilities.
46
+ */
47
+ Custom = "custom"
48
+ }
49
+ /**
50
+ * Struct for {@link CreateAccountOptions}.
51
+ */
52
+ export declare const CreateAccountOptionsStruct: import("@metamask/superstruct").Struct<{
53
+ type: "bip44:derive-path";
54
+ derivationPath: `m/${string}`;
55
+ entropySource: string;
56
+ } | {
57
+ type: "bip44:derive-index";
58
+ groupIndex: number;
59
+ entropySource: string;
60
+ } | {
61
+ type: "bip44:discover";
62
+ groupIndex: number;
63
+ entropySource: string;
64
+ } | {
65
+ type: "bip44:derive-index-range";
66
+ range: {
67
+ from: number;
68
+ to: number;
69
+ };
70
+ entropySource: string;
71
+ } | {
72
+ type: "custom";
73
+ } | {
74
+ type: "private-key:import";
75
+ encoding: "hexadecimal" | "base58";
76
+ privateKey: string;
77
+ accountType?: "eip155:eoa" | "eip155:erc4337" | "bip122:p2pkh" | "bip122:p2sh" | "bip122:p2wpkh" | "bip122:p2tr" | "solana:data-account" | "tron:eoa" | "any:account";
78
+ }, null>;
79
+ /**
80
+ * Represents the available options for creating a new account.
81
+ */
82
+ export type CreateAccountOptions = Infer<typeof CreateAccountOptionsStruct>;
83
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../../src/api/v2/create-account/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,KAAK,EAAE,8BAA8B;AAWnD,4BAAwB;AACxB,6BAAyB;AACzB,kCAA8B;AAE9B;;GAEG;AACH,oBAAY,mBAAmB;IAC7B;;OAEG;IACH,eAAe,sBAAsB;IAErC;;;;;;OAMG;IACH,gBAAgB,uBAAuB;IAEvC;;;;;;OAMG;IACH,qBAAqB,6BAA6B;IAElD;;;;;;OAMG;IACH,aAAa,mBAAmB;IAEhC;;OAEG;IACH,gBAAgB,uBAAuB;IAEvC;;;;;OAKG;IACH,MAAM,WAAW;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;QAmBrC,CAAC;AAEH;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC"}