@account-kit/wallet-client 0.1.0-alpha.4 → 0.1.0-alpha.6

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 (186) hide show
  1. package/dist/esm/capabilities/eip7702Auth.d.ts +4 -0
  2. package/dist/esm/capabilities/eip7702Auth.js +18 -0
  3. package/dist/esm/capabilities/eip7702Auth.js.map +1 -0
  4. package/dist/esm/capabilities/index.d.ts +4 -0
  5. package/dist/esm/capabilities/index.js +2 -0
  6. package/dist/esm/capabilities/index.js.map +1 -1
  7. package/dist/esm/capabilities/overrides.js +8 -8
  8. package/dist/esm/capabilities/overrides.js.map +1 -1
  9. package/dist/esm/capabilities/permissions/index.d.ts +2 -2
  10. package/dist/esm/capabilities/permissions/index.js +6 -3
  11. package/dist/esm/capabilities/permissions/index.js.map +1 -1
  12. package/dist/esm/capabilities/permissions/mav2.js +1 -0
  13. package/dist/esm/capabilities/permissions/mav2.js.map +1 -1
  14. package/dist/esm/client/actions/getCallsStatus.d.ts +1 -2
  15. package/dist/esm/client/actions/getCallsStatus.js +19 -0
  16. package/dist/esm/client/actions/getCallsStatus.js.map +1 -1
  17. package/dist/esm/client/actions/grantPermissions.d.ts +10 -65
  18. package/dist/esm/client/actions/grantPermissions.js +63 -4
  19. package/dist/esm/client/actions/grantPermissions.js.map +1 -1
  20. package/dist/esm/client/actions/prepareCalls.d.ts +4 -4
  21. package/dist/esm/client/actions/prepareCalls.js +38 -5
  22. package/dist/esm/client/actions/prepareCalls.js.map +1 -1
  23. package/dist/esm/client/actions/requestAccount.d.ts +3 -4
  24. package/dist/esm/client/actions/requestAccount.js +18 -1
  25. package/dist/esm/client/actions/requestAccount.js.map +1 -1
  26. package/dist/esm/client/actions/sendPreparedCalls.d.ts +6 -14
  27. package/dist/esm/client/actions/sendPreparedCalls.js +11 -12
  28. package/dist/esm/client/actions/sendPreparedCalls.js.map +1 -1
  29. package/dist/esm/client/actions/signMessage.d.ts +3 -3
  30. package/dist/esm/client/actions/signMessage.js +18 -0
  31. package/dist/esm/client/actions/signMessage.js.map +1 -1
  32. package/dist/esm/client/actions/signPreparedCalls.d.ts +14 -0
  33. package/dist/esm/client/actions/signPreparedCalls.js +53 -0
  34. package/dist/esm/client/actions/signPreparedCalls.js.map +1 -0
  35. package/dist/esm/client/actions/signSignatureRequest.d.ts +9 -8
  36. package/dist/esm/client/actions/signSignatureRequest.js +69 -31
  37. package/dist/esm/client/actions/signSignatureRequest.js.map +1 -1
  38. package/dist/esm/client/actions/signTypedData.d.ts +2 -2
  39. package/dist/esm/client/actions/signTypedData.js +31 -0
  40. package/dist/esm/client/actions/signTypedData.js.map +1 -1
  41. package/dist/esm/client/client.e2e-test.js +47 -44
  42. package/dist/esm/client/client.e2e-test.js.map +1 -1
  43. package/dist/esm/client/decorator.d.ts +7 -5
  44. package/dist/esm/client/decorator.js +3 -1
  45. package/dist/esm/client/decorator.js.map +1 -1
  46. package/dist/esm/client/index.d.ts +35 -10
  47. package/dist/esm/client/index.js +0 -29
  48. package/dist/esm/client/index.js.map +1 -1
  49. package/dist/esm/exports/index.d.ts +2 -1
  50. package/dist/esm/exports/index.js +2 -1
  51. package/dist/esm/exports/index.js.map +1 -1
  52. package/dist/esm/isomorphic/actions/createSession.js +15 -18
  53. package/dist/esm/isomorphic/actions/createSession.js.map +1 -1
  54. package/dist/esm/isomorphic/actions/getCallsStatus.js +62 -9
  55. package/dist/esm/isomorphic/actions/getCallsStatus.js.map +1 -1
  56. package/dist/esm/isomorphic/actions/prepareCalls.js +39 -26
  57. package/dist/esm/isomorphic/actions/prepareCalls.js.map +1 -1
  58. package/dist/esm/isomorphic/actions/sendPreparedCalls.d.ts +3 -3
  59. package/dist/esm/isomorphic/actions/sendPreparedCalls.js +77 -37
  60. package/dist/esm/isomorphic/actions/sendPreparedCalls.js.map +1 -1
  61. package/dist/esm/isomorphic/client.d.ts +139 -13
  62. package/dist/esm/isomorphic/utils/7702.d.ts +13 -6
  63. package/dist/esm/isomorphic/utils/7702.js +48 -13
  64. package/dist/esm/isomorphic/utils/7702.js.map +1 -1
  65. package/dist/esm/isomorphic/utils/createAccount.d.ts +2 -2
  66. package/dist/esm/isomorphic/utils/createAccount.js +4 -3
  67. package/dist/esm/isomorphic/utils/createAccount.js.map +1 -1
  68. package/dist/esm/isomorphic/utils/decodeSignature.d.ts +3 -0
  69. package/dist/esm/isomorphic/utils/decodeSignature.js +13 -0
  70. package/dist/esm/isomorphic/utils/decodeSignature.js.map +1 -0
  71. package/dist/esm/isomorphic/utils/parsePermissionsContext.d.ts +2 -2
  72. package/dist/esm/isomorphic/utils/parsePermissionsContext.js +8 -7
  73. package/dist/esm/isomorphic/utils/parsePermissionsContext.js.map +1 -1
  74. package/dist/esm/local/client.d.ts +2 -2
  75. package/dist/esm/local/client.js +2 -3
  76. package/dist/esm/local/client.js.map +1 -1
  77. package/dist/esm/remote/client.d.ts +8 -2
  78. package/dist/esm/remote/client.js +3 -13
  79. package/dist/esm/remote/client.js.map +1 -1
  80. package/dist/esm/rpc/examples.d.ts +3 -3
  81. package/dist/esm/rpc/examples.js +3 -3
  82. package/dist/esm/rpc/examples.js.map +1 -1
  83. package/dist/esm/rpc/request.d.ts +362 -44
  84. package/dist/esm/rpc/request.js +26 -56
  85. package/dist/esm/rpc/request.js.map +1 -1
  86. package/dist/esm/rpc/schema.d.ts +325 -49
  87. package/dist/esm/rpc/schema.js.map +1 -1
  88. package/dist/esm/schemas.d.ts +454 -14
  89. package/dist/esm/schemas.js +168 -53
  90. package/dist/esm/schemas.js.map +1 -1
  91. package/dist/esm/types.d.ts +10 -10
  92. package/dist/esm/types.js.map +1 -1
  93. package/dist/types/capabilities/eip7702Auth.d.ts +5 -0
  94. package/dist/types/capabilities/eip7702Auth.d.ts.map +1 -0
  95. package/dist/types/capabilities/index.d.ts +4 -0
  96. package/dist/types/capabilities/index.d.ts.map +1 -1
  97. package/dist/types/capabilities/permissions/index.d.ts +2 -2
  98. package/dist/types/capabilities/permissions/index.d.ts.map +1 -1
  99. package/dist/types/capabilities/permissions/mav2.d.ts.map +1 -1
  100. package/dist/types/client/actions/getCallsStatus.d.ts +1 -2
  101. package/dist/types/client/actions/getCallsStatus.d.ts.map +1 -1
  102. package/dist/types/client/actions/grantPermissions.d.ts +10 -65
  103. package/dist/types/client/actions/grantPermissions.d.ts.map +1 -1
  104. package/dist/types/client/actions/prepareCalls.d.ts +4 -4
  105. package/dist/types/client/actions/prepareCalls.d.ts.map +1 -1
  106. package/dist/types/client/actions/requestAccount.d.ts +3 -4
  107. package/dist/types/client/actions/requestAccount.d.ts.map +1 -1
  108. package/dist/types/client/actions/sendPreparedCalls.d.ts +6 -14
  109. package/dist/types/client/actions/sendPreparedCalls.d.ts.map +1 -1
  110. package/dist/types/client/actions/signMessage.d.ts +3 -3
  111. package/dist/types/client/actions/signMessage.d.ts.map +1 -1
  112. package/dist/types/client/actions/signPreparedCalls.d.ts +15 -0
  113. package/dist/types/client/actions/signPreparedCalls.d.ts.map +1 -0
  114. package/dist/types/client/actions/signSignatureRequest.d.ts +9 -8
  115. package/dist/types/client/actions/signSignatureRequest.d.ts.map +1 -1
  116. package/dist/types/client/actions/signTypedData.d.ts +2 -2
  117. package/dist/types/client/actions/signTypedData.d.ts.map +1 -1
  118. package/dist/types/client/decorator.d.ts +7 -5
  119. package/dist/types/client/decorator.d.ts.map +1 -1
  120. package/dist/types/client/index.d.ts +35 -10
  121. package/dist/types/client/index.d.ts.map +1 -1
  122. package/dist/types/exports/index.d.ts +2 -1
  123. package/dist/types/exports/index.d.ts.map +1 -1
  124. package/dist/types/isomorphic/actions/createSession.d.ts.map +1 -1
  125. package/dist/types/isomorphic/actions/getCallsStatus.d.ts.map +1 -1
  126. package/dist/types/isomorphic/actions/prepareCalls.d.ts.map +1 -1
  127. package/dist/types/isomorphic/actions/sendPreparedCalls.d.ts +3 -3
  128. package/dist/types/isomorphic/actions/sendPreparedCalls.d.ts.map +1 -1
  129. package/dist/types/isomorphic/client.d.ts +139 -13
  130. package/dist/types/isomorphic/client.d.ts.map +1 -1
  131. package/dist/types/isomorphic/utils/7702.d.ts +13 -6
  132. package/dist/types/isomorphic/utils/7702.d.ts.map +1 -1
  133. package/dist/types/isomorphic/utils/createAccount.d.ts +2 -2
  134. package/dist/types/isomorphic/utils/createAccount.d.ts.map +1 -1
  135. package/dist/types/isomorphic/utils/decodeSignature.d.ts +4 -0
  136. package/dist/types/isomorphic/utils/decodeSignature.d.ts.map +1 -0
  137. package/dist/types/isomorphic/utils/parsePermissionsContext.d.ts +2 -2
  138. package/dist/types/isomorphic/utils/parsePermissionsContext.d.ts.map +1 -1
  139. package/dist/types/local/client.d.ts +2 -2
  140. package/dist/types/local/client.d.ts.map +1 -1
  141. package/dist/types/remote/client.d.ts +8 -2
  142. package/dist/types/remote/client.d.ts.map +1 -1
  143. package/dist/types/rpc/examples.d.ts +3 -3
  144. package/dist/types/rpc/examples.d.ts.map +1 -1
  145. package/dist/types/rpc/request.d.ts +362 -44
  146. package/dist/types/rpc/request.d.ts.map +1 -1
  147. package/dist/types/rpc/schema.d.ts +325 -49
  148. package/dist/types/rpc/schema.d.ts.map +1 -1
  149. package/dist/types/schemas.d.ts +454 -14
  150. package/dist/types/schemas.d.ts.map +1 -1
  151. package/dist/types/types.d.ts +10 -10
  152. package/dist/types/types.d.ts.map +1 -1
  153. package/package.json +2 -2
  154. package/src/capabilities/eip7702Auth.ts +26 -0
  155. package/src/capabilities/index.ts +2 -0
  156. package/src/capabilities/overrides.ts +8 -8
  157. package/src/capabilities/permissions/index.ts +8 -3
  158. package/src/capabilities/permissions/mav2.ts +1 -0
  159. package/src/client/actions/getCallsStatus.ts +0 -10
  160. package/src/client/actions/grantPermissions.ts +16 -84
  161. package/src/client/actions/prepareCalls.ts +18 -23
  162. package/src/client/actions/requestAccount.ts +9 -26
  163. package/src/client/actions/sendPreparedCalls.ts +17 -17
  164. package/src/client/actions/signMessage.ts +2 -17
  165. package/src/client/actions/signPreparedCalls.ts +71 -0
  166. package/src/client/actions/signSignatureRequest.ts +51 -47
  167. package/src/client/actions/signTypedData.ts +1 -16
  168. package/src/client/client.e2e-test.ts +54 -57
  169. package/src/client/decorator.ts +19 -15
  170. package/src/client/index.ts +16 -39
  171. package/src/exports/index.ts +2 -1
  172. package/src/isomorphic/actions/createSession.ts +17 -20
  173. package/src/isomorphic/actions/getCallsStatus.ts +82 -10
  174. package/src/isomorphic/actions/prepareCalls.ts +43 -27
  175. package/src/isomorphic/actions/sendPreparedCalls.ts +105 -55
  176. package/src/isomorphic/utils/7702.ts +79 -21
  177. package/src/isomorphic/utils/createAccount.ts +5 -5
  178. package/src/isomorphic/utils/decodeSignature.ts +18 -0
  179. package/src/isomorphic/utils/parsePermissionsContext.ts +9 -9
  180. package/src/local/client.ts +5 -11
  181. package/src/remote/client.ts +7 -22
  182. package/src/rpc/examples.ts +3 -4
  183. package/src/rpc/request.ts +41 -64
  184. package/src/rpc/schema.ts +2 -2
  185. package/src/schemas.ts +232 -54
  186. package/src/types.ts +9 -21
@@ -1,5 +1,6 @@
1
1
  import { FormatRegistry, Type, } from "@sinclair/typebox";
2
- import { toHex, slice, pad, concat, hexToBigInt } from "viem";
2
+ import { yParityToV } from "ox/Signature";
3
+ import { toHex, slice, pad, concat, hexToBigInt, serializeSignature, hexToNumber, parseSignature, numberToHex, } from "viem";
3
4
  const UUID_V4_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
4
5
  FormatRegistry.Set("uuid", (value) => UUID_V4_REGEX.test(value));
5
6
  const BASE_64_URL_REGEX = /^[A-Za-z0-9_-]+$/; // Matches base64url encoded strings (without padding)
@@ -26,10 +27,10 @@ export const TypeUserOperationRequest_v6 = Type.Object({
26
27
  nonce: TypeHex(),
27
28
  initCode: Type.Union([
28
29
  TypeHex({
29
- title: "Present",
30
+ description: "Present",
30
31
  }),
31
32
  Type.Literal("0x", {
32
- title: "Absent",
33
+ description: "Absent",
33
34
  }),
34
35
  ]),
35
36
  callData: TypeHex(),
@@ -40,10 +41,10 @@ export const TypeUserOperationRequest_v6 = Type.Object({
40
41
  maxPriorityFeePerGas: TypeHex(),
41
42
  paymasterAndData: Type.Union([
42
43
  TypeHex({
43
- title: "Present",
44
+ description: "Present",
44
45
  }),
45
46
  Type.Literal("0x", {
46
- title: "Absent",
47
+ description: "Absent",
47
48
  }),
48
49
  ]),
49
50
  signature: TypeHex(),
@@ -65,19 +66,19 @@ export const TypeUserOperationRequest_v7 = Type.Object({
65
66
  paymasterPostOpGasLimit: Type.Optional(TypeHex()),
66
67
  signature: TypeHex(),
67
68
  });
68
- export const TypeEip7702AuthRequest = Type.Object({
69
- chainId: Type.Integer(),
70
- address: TypeAddress,
71
- nonce: Type.Integer(),
72
- });
73
- export const TypeEip7702AuthExtendedFields = Type.Object({
69
+ export const TypeEip7702UnsignedAuth = Type.Object({
74
70
  chainId: TypeHex(),
75
- nonce: TypeHex(),
76
71
  address: TypeAddress,
77
- r: TypeHex(),
78
- s: TypeHex(),
79
- yParity: TypeHex(),
72
+ nonce: TypeHex(),
80
73
  });
74
+ export const TypeEip7702SignedAuth = Type.Intersect([
75
+ TypeEip7702UnsignedAuth,
76
+ Type.Object({
77
+ r: TypeHex(),
78
+ s: TypeHex(),
79
+ yParity: TypeHex(),
80
+ }),
81
+ ]);
81
82
  export const TypeWebAuthnPublicKey = Type.Object({
82
83
  x: TypeU256,
83
84
  y: TypeU256,
@@ -86,10 +87,12 @@ export const TypePersistedInitcode = Type.Object({
86
87
  factoryAddress: TypeAddress,
87
88
  initcode: Type.Union([
88
89
  Type.Object({
89
- factoryType: Type.Literal("unknown", { title: "Unknown factory type" }),
90
+ factoryType: Type.Literal("unknown", {
91
+ description: "Unknown factory type",
92
+ }),
90
93
  factoryData: TypeHex({}),
91
94
  }, {
92
- title: "Unknown factory type",
95
+ description: "Unknown factory type",
93
96
  }),
94
97
  Type.Object({
95
98
  factoryType: Type.Union([
@@ -101,7 +104,7 @@ export const TypePersistedInitcode = Type.Object({
101
104
  salt: TypeU256,
102
105
  initialOwner: TypeAddress,
103
106
  }, {
104
- title: "Light Account",
107
+ description: "Light Account",
105
108
  }),
106
109
  Type.Object({
107
110
  factoryType: Type.Union([
@@ -111,7 +114,7 @@ export const TypePersistedInitcode = Type.Object({
111
114
  salt: TypeU256,
112
115
  initialOwners: Type.Array(TypeAddress),
113
116
  }, {
114
- title: "Multi-Owner Modular Account",
117
+ description: "Multi-Owner Modular Account",
115
118
  }),
116
119
  Type.Object({
117
120
  factoryType: Type.Literal("MAv1.0.0-MultiSig"),
@@ -119,7 +122,7 @@ export const TypePersistedInitcode = Type.Object({
119
122
  initialOwners: Type.Array(TypeAddress),
120
123
  threshold: TypeU256,
121
124
  }, {
122
- title: "Multi-Sig Modular Account",
125
+ description: "Multi-Sig Modular Account",
123
126
  }),
124
127
  Type.Intersect([
125
128
  Type.Object({
@@ -132,20 +135,20 @@ export const TypePersistedInitcode = Type.Object({
132
135
  initialOwner: TypeAddress,
133
136
  entityId: TypeU32,
134
137
  }, {
135
- title: "Modular Account V2 SSV",
138
+ description: "Modular Account V2 SSV",
136
139
  }),
137
140
  Type.Object({
138
141
  mav2type: Type.Literal("sma-b"),
139
142
  initialOwner: TypeAddress,
140
143
  }, {
141
- title: "Modular Account V2 SMA-B",
144
+ description: "Modular Account V2 SMA-B",
142
145
  }),
143
146
  Type.Object({
144
147
  mav2type: Type.Literal("ma-webauthn"),
145
148
  initialOwner: TypeWebAuthnPublicKey,
146
149
  entityId: TypeU32,
147
150
  }, {
148
- title: "Modular Account V2 WebAuthn",
151
+ description: "Modular Account V2 WebAuthn",
149
152
  }),
150
153
  ]),
151
154
  ]),
@@ -153,29 +156,29 @@ export const TypePersistedInitcode = Type.Object({
153
156
  });
154
157
  export const TypeSerializedInitcode = Type.Object({
155
158
  factoryType: Type.Union([
156
- Type.Literal("LightAccountV1.0.1", { title: "Light Account v1.0.1" }),
157
- Type.Literal("LightAccountV1.0.2", { title: "Light Account v1.0.2" }),
158
- Type.Literal("LightAccountV1.1.0", { title: "Light Account v1.1.0" }),
159
- Type.Literal("LightAccountV2.0.0", { title: "Light Account v2.0.0" }),
159
+ Type.Literal("LightAccountV1.0.1", { description: "Light Account v1.0.1" }),
160
+ Type.Literal("LightAccountV1.0.2", { description: "Light Account v1.0.2" }),
161
+ Type.Literal("LightAccountV1.1.0", { description: "Light Account v1.1.0" }),
162
+ Type.Literal("LightAccountV2.0.0", { description: "Light Account v2.0.0" }),
160
163
  Type.Literal("LightAccountV2.0.0-MultiOwner", {
161
- title: "Light Account v2.0.0 MultiOwner",
164
+ description: "Light Account v2.0.0 MultiOwner",
162
165
  }),
163
166
  Type.Literal("MAv1.0.0-MultiOwner", {
164
- title: "Modular Account v1.0.0 MultiOwner",
167
+ description: "Modular Account v1.0.0 MultiOwner",
165
168
  }),
166
169
  Type.Literal("MAv1.0.0-MultiSig", {
167
- title: "Modular Account v1.0.0 MultiSig",
170
+ description: "Modular Account v1.0.0 MultiSig",
168
171
  }),
169
172
  Type.Literal("MAv2.0.0-sma-b", {
170
- title: "Modular Account v2.0.0 SMA-B",
173
+ description: "Modular Account v2.0.0 SMA-B",
171
174
  }),
172
175
  Type.Literal("MAv2.0.0-ma-ssv", {
173
- title: "Modular Account v2.0.0 SSV",
176
+ description: "Modular Account v2.0.0 SSV",
174
177
  }),
175
178
  Type.Literal("MAv2.0.0-ma-webauthn", {
176
- title: "Modular Account v2.0.0 WebAuthn",
179
+ description: "Modular Account v2.0.0 WebAuthn",
177
180
  }),
178
- Type.Literal("unknown", { title: "Unknown factory type" }),
181
+ Type.Literal("unknown", { description: "Unknown factory type" }),
179
182
  ]),
180
183
  factoryAddress: TypeAddress,
181
184
  factoryData: TypeHex({}),
@@ -191,13 +194,13 @@ export const TypeCounterfactualInfo = Type.Intersect([
191
194
  }),
192
195
  TypePersistedInitcode,
193
196
  ], {
194
- title: "Smart Contract Account",
197
+ description: "Smart Contract Account",
195
198
  }),
196
199
  Type.Object({
197
200
  type: Type.Literal("7702"),
198
201
  implementationAddress: TypeAddress,
199
202
  }, {
200
- title: "7702 Account",
203
+ description: "7702 Account",
201
204
  }),
202
205
  ]),
203
206
  ]);
@@ -207,7 +210,7 @@ export const TypeCreationOptions = Type.Optional(Type.Union([
207
210
  accountType: Type.Optional(Type.Literal("sma-b")),
208
211
  salt: Type.Optional(TypeHex()),
209
212
  }, {
210
- title: "SMA-B account type",
213
+ description: "SMA-B account type",
211
214
  }),
212
215
  Type.Object({
213
216
  accountType: Type.Literal("7702"),
@@ -217,14 +220,16 @@ export const TypeCreationOptions = Type.Optional(Type.Union([
217
220
  // accounts: https://github.com/ethereum/ERCs/pull/947/files#diff-dab085f963ca621595044bcbc0922705aa38b69f5bf8770dcb3d0496a633efcfR189
218
221
  // delegation: TypeAddress,
219
222
  }, {
220
- title: "7702 account type",
223
+ description: "7702 account type",
221
224
  }),
222
225
  ]));
226
+ export const TypeSignatureType = Type.Union([
227
+ Type.Literal("secp256k1", { description: "Secp256k1" }),
228
+ Type.Literal("ecdsa", { description: "ECDSA (alias for secp256k1)" }),
229
+ Type.Literal("contract", { description: "Contract" }),
230
+ ]);
223
231
  export const KeySigner = Type.Object({
224
- type: Type.Union([
225
- Type.Literal("secp256k1", { title: "Secp256k1" }),
226
- Type.Literal("contract", { title: "Contract" }),
227
- ]),
232
+ type: TypeSignatureType,
228
233
  publicKey: TypeHex({}),
229
234
  });
230
235
  export const TTypedDataDefinition = Type.Transform(Type.Object({
@@ -258,26 +263,28 @@ export const TTypedDataDefinition = Type.Transform(Type.Object({
258
263
  message: JSON.parse(JSON.stringify(message, (_, v) => typeof v === "bigint" ? toHex(v) : v)),
259
264
  };
260
265
  });
261
- const TypePersonalSignSignatureRequest = Type.Object({
266
+ export const TypePersonalSignSignatureRequest = Type.Object({
262
267
  type: Type.Literal("personal_sign"),
263
268
  data: Type.Union([
264
- Type.String({ minLength: 1, title: "Message" }),
269
+ Type.String({ minLength: 1, description: "Message" }),
265
270
  Type.Object({
266
271
  raw: TypeHex(),
267
- }, { title: "Raw message" }),
272
+ }, { description: "Raw message" }),
268
273
  ]),
269
- }, { title: "Personal sign" });
270
- const TypeTypedDataSignatureRequest = Type.Object({
274
+ }, { description: "Personal sign" });
275
+ export const TypeTypedDataSignatureRequest = Type.Object({
271
276
  type: Type.Literal("eth_signTypedData_v4"),
272
277
  data: TTypedDataDefinition,
273
278
  }, {
274
- title: "Typed data",
279
+ description: "Typed data",
275
280
  });
276
- export const TypeSignatureRequest = Type.Intersect([
277
- Type.Union([TypePersonalSignSignatureRequest, TypeTypedDataSignatureRequest]),
278
- Type.Object({
279
- authorizationRequest: Type.Optional(TypeEip7702AuthRequest),
280
- }),
281
+ export const TypeAuthorizationSignatureRequest = Type.Object({
282
+ type: Type.Literal("eip7702Auth"),
283
+ });
284
+ export const TypeSignatureRequest = Type.Union([
285
+ TypePersonalSignSignatureRequest,
286
+ TypeTypedDataSignatureRequest,
287
+ TypeAuthorizationSignatureRequest,
281
288
  ]);
282
289
  export const TypeCallId = Type.Transform(TypeHex())
283
290
  .Decode((value) => {
@@ -290,4 +297,112 @@ export const TypeCallId = Type.Transform(TypeHex())
290
297
  const chainIdPadded = pad(chainId, { size: 32 });
291
298
  return concat([chainIdPadded, hash]);
292
299
  });
300
+ export const PreparedCall_UserOpV060 = Type.Object({
301
+ type: Type.Literal("user-operation-v060", {
302
+ description: "User Operation (Entrypoint v0.6.0)",
303
+ }),
304
+ data: Type.Omit(TypeUserOperationRequest_v6, ["signature"], {
305
+ description: "Unsigned User Operation (Entrypoint v0.6.0)",
306
+ }),
307
+ chainId: TypeHex(),
308
+ signatureRequest: Type.Union([
309
+ TypePersonalSignSignatureRequest,
310
+ TypeTypedDataSignatureRequest,
311
+ ]),
312
+ }, {
313
+ description: "Prepared User Operation (Entrypoint v0.6.0)",
314
+ });
315
+ export const PreparedCall_UserOpV070 = Type.Object({
316
+ type: Type.Literal("user-operation-v070", {
317
+ description: "User Operation (Entrypoint v0.7.0)",
318
+ }),
319
+ data: Type.Omit(TypeUserOperationRequest_v7, ["signature"], {
320
+ description: "Unsigned User Operation (Entrypoint v0.7.0)",
321
+ }),
322
+ chainId: TypeHex(),
323
+ signatureRequest: Type.Union([
324
+ TypePersonalSignSignatureRequest,
325
+ TypeTypedDataSignatureRequest,
326
+ ]),
327
+ }, {
328
+ description: "Prepared User Operation (Entrypoint v0.7.0)",
329
+ });
330
+ export const PreparedCall_Authorization = Type.Object({
331
+ type: Type.Literal("authorization", {
332
+ description: "EIP-7702 Authorization Request",
333
+ }),
334
+ data: Type.Omit(TypeEip7702UnsignedAuth, ["chainId"]),
335
+ chainId: TypeHex(),
336
+ signatureRequest: TypeAuthorizationSignatureRequest,
337
+ }, {
338
+ description: "Prepared EIP-7702 Authorization",
339
+ });
340
+ export const TypeEdcsaSigData = Type.Union([
341
+ TypeHex({
342
+ description: "Hex-encoded signature",
343
+ }),
344
+ Type.Transform(Type.Object({
345
+ r: TypeHex(),
346
+ s: TypeHex(),
347
+ yParity: TypeHex(),
348
+ }, { description: "r, s, yParity" }))
349
+ .Decode((sig) => serializeSignature({ ...sig, yParity: hexToNumber(sig.yParity) }))
350
+ .Encode((hex) => {
351
+ const parsed = parseSignature(hex);
352
+ return {
353
+ ...parsed,
354
+ yParity: numberToHex(parsed.yParity),
355
+ };
356
+ }),
357
+ Type.Transform(Type.Object({
358
+ r: TypeHex(),
359
+ s: TypeHex(),
360
+ v: TypeHex(),
361
+ }, {
362
+ description: "r, s, v",
363
+ }))
364
+ .Decode((sig) => serializeSignature({ ...sig, v: hexToBigInt(sig.v) }))
365
+ .Encode((hex) => {
366
+ const parsed = parseSignature(hex);
367
+ return {
368
+ ...parsed,
369
+ v: numberToHex(yParityToV(parsed.yParity)),
370
+ };
371
+ }),
372
+ ]);
373
+ export const TypeEcdsaSig = Type.Object({
374
+ signature: Type.Union([
375
+ Type.Object({
376
+ type: Type.Literal("secp256k1"),
377
+ data: TypeEdcsaSigData,
378
+ }, {
379
+ description: "Secp256k1 signature",
380
+ }),
381
+ Type.Object({
382
+ type: Type.Literal("ecdsa"),
383
+ data: TypeEdcsaSigData,
384
+ }, {
385
+ description: "ECDSA signature (alias for secp256k1)",
386
+ }),
387
+ ]),
388
+ });
389
+ export const TypePrepareCall_UserOpV060_Signed = Type.Intersect([Type.Omit(PreparedCall_UserOpV060, ["signatureRequest"]), TypeEcdsaSig], {
390
+ description: "Prepared User Operation (Entrypoint v0.6.0) with signature",
391
+ });
392
+ export const TypePrepareCall_UserOpV070_Signed = Type.Intersect([Type.Omit(PreparedCall_UserOpV070, ["signatureRequest"]), TypeEcdsaSig], {
393
+ description: "Prepared User Operation (Entrypoint v0.7.0) with signature",
394
+ });
395
+ export const TypePrepareCall_Authorization_Signed = Type.Intersect([Type.Omit(PreparedCall_Authorization, ["signatureRequest"]), TypeEcdsaSig], {
396
+ description: "Prepared EIP-7702 Authorization with signature",
397
+ });
398
+ export const TypeCallArray = Type.Object({
399
+ type: Type.Literal("array"),
400
+ data: Type.Array(Type.Union([
401
+ TypePrepareCall_UserOpV060_Signed,
402
+ TypePrepareCall_UserOpV070_Signed,
403
+ TypePrepareCall_Authorization_Signed,
404
+ ])),
405
+ }, {
406
+ description: "Array of prepared calls with signatures",
407
+ });
293
408
  //# sourceMappingURL=schemas.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/schemas.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n FormatRegistry,\n Type,\n type SchemaOptions,\n type Static,\n} from \"@sinclair/typebox\";\nimport { toHex, slice, pad, concat, hexToBigInt } from \"viem\";\n\nconst UUID_V4_REGEX =\n /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\nFormatRegistry.Set(\"uuid\", (value) => UUID_V4_REGEX.test(value));\n\nconst BASE_64_URL_REGEX = /^[A-Za-z0-9_-]+$/; // Matches base64url encoded strings (without padding)\nFormatRegistry.Set(\"base64url\", (value) => BASE_64_URL_REGEX.test(value));\n\nexport const TypeHex = (options?: SchemaOptions) =>\n Type.TemplateLiteral(\"0x${string}\", {\n ...options,\n });\n\nexport const TypeAddress = Type.TemplateLiteral(\"0x${string}\", {});\n\nexport const TypeUuid = Type.String({\n format: \"uuid\",\n});\n\nexport const TypeBase64UrlEncodedString = Type.String({\n format: \"base64url\",\n});\n\n// BigInt is not json-serializable, so it must be encoded as a string.\nexport const TypeU256 = Type.Transform(Type.String({}))\n .Decode((value) => BigInt(value))\n .Encode((value) => toHex(value));\n\nexport const TypeU32 = Type.Transform(Type.String({}))\n .Decode((value) => Number.parseInt(value, 16))\n .Encode((value) => toHex(value));\n\nexport const TypeUserOperationRequest_v6 = Type.Object({\n sender: TypeAddress,\n nonce: TypeHex(),\n initCode: Type.Union([\n TypeHex({\n title: \"Present\",\n }),\n Type.Literal(\"0x\", {\n title: \"Absent\",\n }),\n ]),\n callData: TypeHex(),\n callGasLimit: TypeHex(),\n verificationGasLimit: TypeHex(),\n preVerificationGas: TypeHex(),\n maxFeePerGas: TypeHex(),\n maxPriorityFeePerGas: TypeHex(),\n paymasterAndData: Type.Union([\n TypeHex({\n title: \"Present\",\n }),\n Type.Literal(\"0x\", {\n title: \"Absent\",\n }),\n ]),\n signature: TypeHex(),\n});\n\nexport const TypeUserOperationRequest_v7 = Type.Object({\n sender: TypeAddress,\n nonce: TypeHex(),\n factory: Type.Optional(TypeAddress),\n factoryData: Type.Optional(TypeHex()),\n callData: TypeHex(),\n callGasLimit: TypeHex(),\n verificationGasLimit: TypeHex(),\n preVerificationGas: TypeHex(),\n maxFeePerGas: TypeHex(),\n maxPriorityFeePerGas: TypeHex(),\n paymaster: Type.Optional(TypeAddress),\n paymasterData: Type.Optional(TypeHex()),\n paymasterVerificationGasLimit: Type.Optional(TypeHex()),\n paymasterPostOpGasLimit: Type.Optional(TypeHex()),\n signature: TypeHex(),\n});\n\nexport const TypeEip7702AuthRequest = Type.Object({\n chainId: Type.Integer(),\n address: TypeAddress,\n nonce: Type.Integer(),\n});\n\nexport const TypeEip7702AuthExtendedFields = Type.Object({\n chainId: TypeHex(),\n nonce: TypeHex(),\n address: TypeAddress,\n r: TypeHex(),\n s: TypeHex(),\n yParity: TypeHex(),\n});\n\nexport const TypeWebAuthnPublicKey = Type.Object({\n x: TypeU256,\n y: TypeU256,\n});\n\nexport const TypePersistedInitcode = Type.Object({\n factoryAddress: TypeAddress,\n initcode: Type.Union([\n Type.Object(\n {\n factoryType: Type.Literal(\"unknown\", { title: \"Unknown factory type\" }),\n factoryData: TypeHex({}),\n },\n {\n title: \"Unknown factory type\",\n },\n ),\n Type.Object(\n {\n factoryType: Type.Union([\n Type.Literal(\"LightAccountV2.0.0\"),\n Type.Literal(\"LightAccountV1.1.0\"),\n Type.Literal(\"LightAccountV1.0.2\"),\n Type.Literal(\"LightAccountV1.0.1\"),\n ]),\n salt: TypeU256,\n initialOwner: TypeAddress,\n },\n {\n title: \"Light Account\",\n },\n ),\n Type.Object(\n {\n factoryType: Type.Union([\n Type.Literal(\"MAv1.0.0-MultiOwner\"),\n Type.Literal(\"LightAccountV2.0.0-MultiOwner\"),\n ]),\n salt: TypeU256,\n initialOwners: Type.Array(TypeAddress),\n },\n {\n title: \"Multi-Owner Modular Account\",\n },\n ),\n Type.Object(\n {\n factoryType: Type.Literal(\"MAv1.0.0-MultiSig\"),\n salt: TypeU256,\n initialOwners: Type.Array(TypeAddress),\n threshold: TypeU256,\n },\n {\n title: \"Multi-Sig Modular Account\",\n },\n ),\n Type.Intersect([\n Type.Object({\n factoryType: Type.Literal(\"MAv2.0.0\"),\n salt: TypeU256,\n }),\n Type.Union([\n Type.Object(\n {\n mav2type: Type.Literal(\"ma-ssv\"),\n initialOwner: TypeAddress,\n entityId: TypeU32,\n },\n {\n title: \"Modular Account V2 SSV\",\n },\n ),\n Type.Object(\n {\n mav2type: Type.Literal(\"sma-b\"),\n initialOwner: TypeAddress,\n },\n {\n title: \"Modular Account V2 SMA-B\",\n },\n ),\n Type.Object(\n {\n mav2type: Type.Literal(\"ma-webauthn\"),\n initialOwner: TypeWebAuthnPublicKey,\n entityId: TypeU32,\n },\n {\n title: \"Modular Account V2 WebAuthn\",\n },\n ),\n ]),\n ]),\n ]),\n});\n\nexport const TypeSerializedInitcode = Type.Object({\n factoryType: Type.Union([\n Type.Literal(\"LightAccountV1.0.1\", { title: \"Light Account v1.0.1\" }),\n Type.Literal(\"LightAccountV1.0.2\", { title: \"Light Account v1.0.2\" }),\n Type.Literal(\"LightAccountV1.1.0\", { title: \"Light Account v1.1.0\" }),\n Type.Literal(\"LightAccountV2.0.0\", { title: \"Light Account v2.0.0\" }),\n Type.Literal(\"LightAccountV2.0.0-MultiOwner\", {\n title: \"Light Account v2.0.0 MultiOwner\",\n }),\n Type.Literal(\"MAv1.0.0-MultiOwner\", {\n title: \"Modular Account v1.0.0 MultiOwner\",\n }),\n Type.Literal(\"MAv1.0.0-MultiSig\", {\n title: \"Modular Account v1.0.0 MultiSig\",\n }),\n Type.Literal(\"MAv2.0.0-sma-b\", {\n title: \"Modular Account v2.0.0 SMA-B\",\n }),\n Type.Literal(\"MAv2.0.0-ma-ssv\", {\n title: \"Modular Account v2.0.0 SSV\",\n }),\n Type.Literal(\"MAv2.0.0-ma-webauthn\", {\n title: \"Modular Account v2.0.0 WebAuthn\",\n }),\n Type.Literal(\"unknown\", { title: \"Unknown factory type\" }),\n ]),\n factoryAddress: TypeAddress,\n factoryData: TypeHex({}),\n});\n\nexport const TypeCounterfactualInfo = Type.Intersect([\n Type.Object({\n accountAddress: TypeAddress,\n }),\n Type.Union([\n Type.Intersect(\n [\n Type.Object({\n type: Type.Literal(\"sca\"),\n }),\n TypePersistedInitcode,\n ],\n {\n title: \"Smart Contract Account\",\n },\n ),\n Type.Object(\n {\n type: Type.Literal(\"7702\"),\n implementationAddress: TypeAddress,\n },\n {\n title: \"7702 Account\",\n },\n ),\n ]),\n]);\nexport type TypeCounterfactualInfo = Static<typeof TypeCounterfactualInfo>;\n\nexport const TypeCreationOptions = Type.Optional(\n Type.Union([\n Type.Object(\n {\n // Optional b/c `sma-b` is the default if no accountType is specified.\n accountType: Type.Optional(Type.Literal(\"sma-b\")),\n salt: Type.Optional(TypeHex()),\n },\n {\n title: \"SMA-B account type\",\n },\n ),\n Type.Object(\n {\n accountType: Type.Literal(\"7702\"),\n // TODO: Add support for specifying a delegation address.\n // Currently we only support delegating to MAv2, and it's important\n // that wallet applications maintain a strict shortlist of well-known\n // accounts: https://github.com/ethereum/ERCs/pull/947/files#diff-dab085f963ca621595044bcbc0922705aa38b69f5bf8770dcb3d0496a633efcfR189\n // delegation: TypeAddress,\n },\n {\n title: \"7702 account type\",\n },\n ),\n ]),\n);\nexport type TypeCreationOptions = Static<typeof TypeCreationOptions>;\n\nexport type TypeAccountType = Exclude<\n Static<typeof TypeCreationOptions>,\n undefined\n>[\"accountType\"];\n\nexport const KeySigner = Type.Object({\n type: Type.Union([\n Type.Literal(\"secp256k1\", { title: \"Secp256k1\" }),\n Type.Literal(\"contract\", { title: \"Contract\" }),\n ]),\n publicKey: TypeHex({}),\n});\nexport type KeySigner = Static<typeof KeySigner>;\n\nexport const TTypedDataDefinition = Type.Transform(\n Type.Object({\n domain: Type.Optional(\n Type.Object({\n chainId: Type.Optional(Type.Integer()),\n name: Type.Optional(Type.String()),\n salt: Type.Optional(TypeHex()),\n verifyingContract: Type.Optional(TypeAddress),\n version: Type.Optional(Type.String()),\n }),\n ),\n types: Type.Record(\n Type.String(),\n Type.Array(\n Type.Object({\n name: Type.String(),\n type: Type.String(),\n }),\n ),\n ),\n primaryType: Type.String(),\n message: Type.Record(Type.String(), Type.Unknown()),\n }),\n)\n // No-op b/c Viem is happy w/ the encoded version too.\n .Decode((it) => it)\n // Encode the TypedDataDefinition into our json-serialized format.\n .Encode(({ domain, types, primaryType, message }) => {\n return {\n domain: {\n ...domain,\n chainId:\n typeof domain?.chainId === \"bigint\"\n ? Number(domain.chainId)\n : domain?.chainId,\n },\n types,\n primaryType,\n message: JSON.parse(\n JSON.stringify(message, (_, v) =>\n typeof v === \"bigint\" ? toHex(v) : v,\n ),\n ),\n };\n });\n\nconst TypePersonalSignSignatureRequest = Type.Object(\n {\n type: Type.Literal(\"personal_sign\"),\n data: Type.Union([\n Type.String({ minLength: 1, title: \"Message\" }),\n Type.Object(\n {\n raw: TypeHex(),\n },\n { title: \"Raw message\" },\n ),\n ]),\n },\n { title: \"Personal sign\" },\n);\n\nconst TypeTypedDataSignatureRequest = Type.Object(\n {\n type: Type.Literal(\"eth_signTypedData_v4\"),\n data: TTypedDataDefinition,\n },\n {\n title: \"Typed data\",\n },\n);\n\nexport const TypeSignatureRequest = Type.Intersect([\n Type.Union([TypePersonalSignSignatureRequest, TypeTypedDataSignatureRequest]),\n Type.Object({\n authorizationRequest: Type.Optional(TypeEip7702AuthRequest),\n }),\n]);\n\nexport const TypeCallId = Type.Transform(TypeHex())\n .Decode((value) => {\n return {\n chainId: toHex(hexToBigInt(slice(value, 0, 32))),\n hash: slice(value, 32),\n };\n })\n .Encode(({ chainId, hash }) => {\n const chainIdPadded = pad(chainId, { size: 32 });\n return concat([chainIdPadded, hash]);\n });\n"]}
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/schemas.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n FormatRegistry,\n Type,\n type SchemaOptions,\n type Static,\n} from \"@sinclair/typebox\";\nimport { yParityToV } from \"ox/Signature\";\nimport {\n toHex,\n slice,\n pad,\n concat,\n hexToBigInt,\n serializeSignature,\n hexToNumber,\n parseSignature,\n numberToHex,\n} from \"viem\";\n\nconst UUID_V4_REGEX =\n /^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;\nFormatRegistry.Set(\"uuid\", (value) => UUID_V4_REGEX.test(value));\n\nconst BASE_64_URL_REGEX = /^[A-Za-z0-9_-]+$/; // Matches base64url encoded strings (without padding)\nFormatRegistry.Set(\"base64url\", (value) => BASE_64_URL_REGEX.test(value));\n\nexport const TypeHex = (options?: SchemaOptions) =>\n Type.TemplateLiteral(\"0x${string}\", {\n ...options,\n });\n\nexport const TypeAddress = Type.TemplateLiteral(\"0x${string}\", {});\n\nexport const TypeUuid = Type.String({\n format: \"uuid\",\n});\n\nexport const TypeBase64UrlEncodedString = Type.String({\n format: \"base64url\",\n});\n\n// BigInt is not json-serializable, so it must be encoded as a string.\nexport const TypeU256 = Type.Transform(Type.String({}))\n .Decode((value) => BigInt(value))\n .Encode((value) => toHex(value));\n\nexport const TypeU32 = Type.Transform(Type.String({}))\n .Decode((value) => Number.parseInt(value, 16))\n .Encode((value) => toHex(value));\n\nexport const TypeUserOperationRequest_v6 = Type.Object({\n sender: TypeAddress,\n nonce: TypeHex(),\n initCode: Type.Union([\n TypeHex({\n description: \"Present\",\n }),\n Type.Literal(\"0x\", {\n description: \"Absent\",\n }),\n ]),\n callData: TypeHex(),\n callGasLimit: TypeHex(),\n verificationGasLimit: TypeHex(),\n preVerificationGas: TypeHex(),\n maxFeePerGas: TypeHex(),\n maxPriorityFeePerGas: TypeHex(),\n paymasterAndData: Type.Union([\n TypeHex({\n description: \"Present\",\n }),\n Type.Literal(\"0x\", {\n description: \"Absent\",\n }),\n ]),\n signature: TypeHex(),\n});\n\nexport const TypeUserOperationRequest_v7 = Type.Object({\n sender: TypeAddress,\n nonce: TypeHex(),\n factory: Type.Optional(TypeAddress),\n factoryData: Type.Optional(TypeHex()),\n callData: TypeHex(),\n callGasLimit: TypeHex(),\n verificationGasLimit: TypeHex(),\n preVerificationGas: TypeHex(),\n maxFeePerGas: TypeHex(),\n maxPriorityFeePerGas: TypeHex(),\n paymaster: Type.Optional(TypeAddress),\n paymasterData: Type.Optional(TypeHex()),\n paymasterVerificationGasLimit: Type.Optional(TypeHex()),\n paymasterPostOpGasLimit: Type.Optional(TypeHex()),\n signature: TypeHex(),\n});\n\nexport const TypeEip7702UnsignedAuth = Type.Object({\n chainId: TypeHex(),\n address: TypeAddress,\n nonce: TypeHex(),\n});\n\nexport const TypeEip7702SignedAuth = Type.Intersect([\n TypeEip7702UnsignedAuth,\n Type.Object({\n r: TypeHex(),\n s: TypeHex(),\n yParity: TypeHex(),\n }),\n]);\n\nexport const TypeWebAuthnPublicKey = Type.Object({\n x: TypeU256,\n y: TypeU256,\n});\n\nexport const TypePersistedInitcode = Type.Object({\n factoryAddress: TypeAddress,\n initcode: Type.Union([\n Type.Object(\n {\n factoryType: Type.Literal(\"unknown\", {\n description: \"Unknown factory type\",\n }),\n factoryData: TypeHex({}),\n },\n {\n description: \"Unknown factory type\",\n },\n ),\n Type.Object(\n {\n factoryType: Type.Union([\n Type.Literal(\"LightAccountV2.0.0\"),\n Type.Literal(\"LightAccountV1.1.0\"),\n Type.Literal(\"LightAccountV1.0.2\"),\n Type.Literal(\"LightAccountV1.0.1\"),\n ]),\n salt: TypeU256,\n initialOwner: TypeAddress,\n },\n {\n description: \"Light Account\",\n },\n ),\n Type.Object(\n {\n factoryType: Type.Union([\n Type.Literal(\"MAv1.0.0-MultiOwner\"),\n Type.Literal(\"LightAccountV2.0.0-MultiOwner\"),\n ]),\n salt: TypeU256,\n initialOwners: Type.Array(TypeAddress),\n },\n {\n description: \"Multi-Owner Modular Account\",\n },\n ),\n Type.Object(\n {\n factoryType: Type.Literal(\"MAv1.0.0-MultiSig\"),\n salt: TypeU256,\n initialOwners: Type.Array(TypeAddress),\n threshold: TypeU256,\n },\n {\n description: \"Multi-Sig Modular Account\",\n },\n ),\n Type.Intersect([\n Type.Object({\n factoryType: Type.Literal(\"MAv2.0.0\"),\n salt: TypeU256,\n }),\n Type.Union([\n Type.Object(\n {\n mav2type: Type.Literal(\"ma-ssv\"),\n initialOwner: TypeAddress,\n entityId: TypeU32,\n },\n {\n description: \"Modular Account V2 SSV\",\n },\n ),\n Type.Object(\n {\n mav2type: Type.Literal(\"sma-b\"),\n initialOwner: TypeAddress,\n },\n {\n description: \"Modular Account V2 SMA-B\",\n },\n ),\n Type.Object(\n {\n mav2type: Type.Literal(\"ma-webauthn\"),\n initialOwner: TypeWebAuthnPublicKey,\n entityId: TypeU32,\n },\n {\n description: \"Modular Account V2 WebAuthn\",\n },\n ),\n ]),\n ]),\n ]),\n});\n\nexport const TypeSerializedInitcode = Type.Object({\n factoryType: Type.Union([\n Type.Literal(\"LightAccountV1.0.1\", { description: \"Light Account v1.0.1\" }),\n Type.Literal(\"LightAccountV1.0.2\", { description: \"Light Account v1.0.2\" }),\n Type.Literal(\"LightAccountV1.1.0\", { description: \"Light Account v1.1.0\" }),\n Type.Literal(\"LightAccountV2.0.0\", { description: \"Light Account v2.0.0\" }),\n Type.Literal(\"LightAccountV2.0.0-MultiOwner\", {\n description: \"Light Account v2.0.0 MultiOwner\",\n }),\n Type.Literal(\"MAv1.0.0-MultiOwner\", {\n description: \"Modular Account v1.0.0 MultiOwner\",\n }),\n Type.Literal(\"MAv1.0.0-MultiSig\", {\n description: \"Modular Account v1.0.0 MultiSig\",\n }),\n Type.Literal(\"MAv2.0.0-sma-b\", {\n description: \"Modular Account v2.0.0 SMA-B\",\n }),\n Type.Literal(\"MAv2.0.0-ma-ssv\", {\n description: \"Modular Account v2.0.0 SSV\",\n }),\n Type.Literal(\"MAv2.0.0-ma-webauthn\", {\n description: \"Modular Account v2.0.0 WebAuthn\",\n }),\n Type.Literal(\"unknown\", { description: \"Unknown factory type\" }),\n ]),\n factoryAddress: TypeAddress,\n factoryData: TypeHex({}),\n});\n\nexport const TypeCounterfactualInfo = Type.Intersect([\n Type.Object({\n accountAddress: TypeAddress,\n }),\n Type.Union([\n Type.Intersect(\n [\n Type.Object({\n type: Type.Literal(\"sca\"),\n }),\n TypePersistedInitcode,\n ],\n {\n description: \"Smart Contract Account\",\n },\n ),\n Type.Object(\n {\n type: Type.Literal(\"7702\"),\n implementationAddress: TypeAddress,\n },\n {\n description: \"7702 Account\",\n },\n ),\n ]),\n]);\nexport type TypeCounterfactualInfo = Static<typeof TypeCounterfactualInfo>;\n\nexport const TypeCreationOptions = Type.Optional(\n Type.Union([\n Type.Object(\n {\n // Optional b/c `sma-b` is the default if no accountType is specified.\n accountType: Type.Optional(Type.Literal(\"sma-b\")),\n salt: Type.Optional(TypeHex()),\n },\n {\n description: \"SMA-B account type\",\n },\n ),\n Type.Object(\n {\n accountType: Type.Literal(\"7702\"),\n // TODO: Add support for specifying a delegation address.\n // Currently we only support delegating to MAv2, and it's important\n // that wallet applications maintain a strict shortlist of well-known\n // accounts: https://github.com/ethereum/ERCs/pull/947/files#diff-dab085f963ca621595044bcbc0922705aa38b69f5bf8770dcb3d0496a633efcfR189\n // delegation: TypeAddress,\n },\n {\n description: \"7702 account type\",\n },\n ),\n ]),\n);\nexport type TypeCreationOptions = Static<typeof TypeCreationOptions>;\n\nexport type TypeAccountType = Exclude<\n Static<typeof TypeCreationOptions>,\n undefined\n>[\"accountType\"];\n\nexport const TypeSignatureType = Type.Union([\n Type.Literal(\"secp256k1\", { description: \"Secp256k1\" }),\n Type.Literal(\"ecdsa\", { description: \"ECDSA (alias for secp256k1)\" }),\n Type.Literal(\"contract\", { description: \"Contract\" }),\n]);\nexport type TypeSignatureType = Static<typeof TypeSignatureType>;\n\nexport const KeySigner = Type.Object({\n type: TypeSignatureType,\n publicKey: TypeHex({}),\n});\nexport type KeySigner = Static<typeof KeySigner>;\n\nexport const TTypedDataDefinition = Type.Transform(\n Type.Object({\n domain: Type.Optional(\n Type.Object({\n chainId: Type.Optional(Type.Integer()),\n name: Type.Optional(Type.String()),\n salt: Type.Optional(TypeHex()),\n verifyingContract: Type.Optional(TypeAddress),\n version: Type.Optional(Type.String()),\n }),\n ),\n types: Type.Record(\n Type.String(),\n Type.Array(\n Type.Object({\n name: Type.String(),\n type: Type.String(),\n }),\n ),\n ),\n primaryType: Type.String(),\n message: Type.Record(Type.String(), Type.Unknown()),\n }),\n)\n // No-op b/c Viem is happy w/ the encoded version too.\n .Decode((it) => it)\n // Encode the TypedDataDefinition into our json-serialized format.\n .Encode(({ domain, types, primaryType, message }) => {\n return {\n domain: {\n ...domain,\n chainId:\n typeof domain?.chainId === \"bigint\"\n ? Number(domain.chainId)\n : domain?.chainId,\n },\n types,\n primaryType,\n message: JSON.parse(\n JSON.stringify(message, (_, v) =>\n typeof v === \"bigint\" ? toHex(v) : v,\n ),\n ),\n };\n });\n\nexport const TypePersonalSignSignatureRequest = Type.Object(\n {\n type: Type.Literal(\"personal_sign\"),\n data: Type.Union([\n Type.String({ minLength: 1, description: \"Message\" }),\n Type.Object(\n {\n raw: TypeHex(),\n },\n { description: \"Raw message\" },\n ),\n ]),\n },\n { description: \"Personal sign\" },\n);\n\nexport const TypeTypedDataSignatureRequest = Type.Object(\n {\n type: Type.Literal(\"eth_signTypedData_v4\"),\n data: TTypedDataDefinition,\n },\n {\n description: \"Typed data\",\n },\n);\n\nexport const TypeAuthorizationSignatureRequest = Type.Object({\n type: Type.Literal(\"eip7702Auth\"),\n});\n\nexport const TypeSignatureRequest = Type.Union([\n TypePersonalSignSignatureRequest,\n TypeTypedDataSignatureRequest,\n TypeAuthorizationSignatureRequest,\n]);\n\nexport const TypeCallId = Type.Transform(TypeHex())\n .Decode((value) => {\n return {\n chainId: toHex(hexToBigInt(slice(value, 0, 32))),\n hash: slice(value, 32),\n };\n })\n .Encode(({ chainId, hash }) => {\n const chainIdPadded = pad(chainId, { size: 32 });\n return concat([chainIdPadded, hash]);\n });\n\nexport const PreparedCall_UserOpV060 = Type.Object(\n {\n type: Type.Literal(\"user-operation-v060\", {\n description: \"User Operation (Entrypoint v0.6.0)\",\n }),\n data: Type.Omit(TypeUserOperationRequest_v6, [\"signature\"], {\n description: \"Unsigned User Operation (Entrypoint v0.6.0)\",\n }),\n chainId: TypeHex(),\n signatureRequest: Type.Union([\n TypePersonalSignSignatureRequest,\n TypeTypedDataSignatureRequest,\n ]),\n },\n {\n description: \"Prepared User Operation (Entrypoint v0.6.0)\",\n },\n);\n\nexport const PreparedCall_UserOpV070 = Type.Object(\n {\n type: Type.Literal(\"user-operation-v070\", {\n description: \"User Operation (Entrypoint v0.7.0)\",\n }),\n data: Type.Omit(TypeUserOperationRequest_v7, [\"signature\"], {\n description: \"Unsigned User Operation (Entrypoint v0.7.0)\",\n }),\n chainId: TypeHex(),\n signatureRequest: Type.Union([\n TypePersonalSignSignatureRequest,\n TypeTypedDataSignatureRequest,\n ]),\n },\n {\n description: \"Prepared User Operation (Entrypoint v0.7.0)\",\n },\n);\n\nexport const PreparedCall_Authorization = Type.Object(\n {\n type: Type.Literal(\"authorization\", {\n description: \"EIP-7702 Authorization Request\",\n }),\n data: Type.Omit(TypeEip7702UnsignedAuth, [\"chainId\"]),\n chainId: TypeHex(),\n signatureRequest: TypeAuthorizationSignatureRequest,\n },\n {\n description: \"Prepared EIP-7702 Authorization\",\n },\n);\n\nexport const TypeEdcsaSigData = Type.Union([\n TypeHex({\n description: \"Hex-encoded signature\",\n }),\n Type.Transform(\n Type.Object(\n {\n r: TypeHex(),\n s: TypeHex(),\n yParity: TypeHex(),\n },\n { description: \"r, s, yParity\" },\n ),\n )\n .Decode((sig) =>\n serializeSignature({ ...sig, yParity: hexToNumber(sig.yParity) }),\n )\n .Encode((hex) => {\n const parsed = parseSignature(hex);\n return {\n ...parsed,\n yParity: numberToHex(parsed.yParity),\n };\n }),\n Type.Transform(\n Type.Object(\n {\n r: TypeHex(),\n s: TypeHex(),\n v: TypeHex(),\n },\n {\n description: \"r, s, v\",\n },\n ),\n )\n .Decode((sig) => serializeSignature({ ...sig, v: hexToBigInt(sig.v) }))\n .Encode((hex) => {\n const parsed = parseSignature(hex);\n return {\n ...parsed,\n v: numberToHex(yParityToV(parsed.yParity)),\n };\n }),\n]);\n\nexport const TypeEcdsaSig = Type.Object({\n signature: Type.Union([\n Type.Object(\n {\n type: Type.Literal(\"secp256k1\"),\n data: TypeEdcsaSigData,\n },\n {\n description: \"Secp256k1 signature\",\n },\n ),\n Type.Object(\n {\n type: Type.Literal(\"ecdsa\"),\n data: TypeEdcsaSigData,\n },\n {\n description: \"ECDSA signature (alias for secp256k1)\",\n },\n ),\n ]),\n});\n\nexport const TypePrepareCall_UserOpV060_Signed = Type.Intersect(\n [Type.Omit(PreparedCall_UserOpV060, [\"signatureRequest\"]), TypeEcdsaSig],\n {\n description: \"Prepared User Operation (Entrypoint v0.6.0) with signature\",\n },\n);\n\nexport const TypePrepareCall_UserOpV070_Signed = Type.Intersect(\n [Type.Omit(PreparedCall_UserOpV070, [\"signatureRequest\"]), TypeEcdsaSig],\n {\n description: \"Prepared User Operation (Entrypoint v0.7.0) with signature\",\n },\n);\n\nexport const TypePrepareCall_Authorization_Signed = Type.Intersect(\n [Type.Omit(PreparedCall_Authorization, [\"signatureRequest\"]), TypeEcdsaSig],\n {\n description: \"Prepared EIP-7702 Authorization with signature\",\n },\n);\n\nexport const TypeCallArray = Type.Object(\n {\n type: Type.Literal(\"array\"),\n data: Type.Array(\n Type.Union([\n TypePrepareCall_UserOpV060_Signed,\n TypePrepareCall_UserOpV070_Signed,\n TypePrepareCall_Authorization_Signed,\n ]),\n ),\n },\n {\n description: \"Array of prepared calls with signatures\",\n },\n);\n"]}
@@ -1,23 +1,20 @@
1
1
  import type { SmartAccountSigner, SmartContractAccount } from "@aa-sdk/core";
2
2
  import type { AlchemyTransport } from "@account-kit/infra";
3
- import type { Address, Chain, Client, Hex, IsUndefined, JsonRpcAccount, Transport } from "viem";
3
+ import type { Address, Chain, Client, Hex, JsonRpcAccount, Transport } from "viem";
4
4
  import type { GrantPermissionsParams, GrantPermissionsResult } from "./client/actions/grantPermissions.ts";
5
5
  import type { RequestAccountParams } from "./client/actions/requestAccount.ts";
6
6
  import type { WalletServerViemRpcSchema } from "./rpc/schema.ts";
7
- export type CreateInnerClientParams<TAccount extends JsonRpcAccount<Address> | undefined = JsonRpcAccount<Address> | undefined> = {
7
+ export type CreateInnerClientParams<TAccount extends Address | undefined = Address | undefined> = {
8
8
  chain: Chain;
9
9
  transport: AlchemyTransport;
10
10
  policyId?: string;
11
- } & (IsUndefined<TAccount> extends true ? {
12
- account?: never;
13
- } : {
14
- account: Address;
15
- });
16
- export type InnerWalletApiClientBase<TAccount extends JsonRpcAccount<Address> | undefined = JsonRpcAccount<Address> | undefined, TExtend extends {
11
+ account?: TAccount | Address | undefined;
12
+ };
13
+ export type InnerWalletApiClientBase<TExtend extends {
17
14
  [key: string]: unknown;
18
15
  } | undefined = {
19
16
  [key: string]: unknown;
20
- } | undefined> = Client<Transport, Chain, TAccount, WalletServerViemRpcSchema, {
17
+ } | undefined> = Client<Transport, Chain, JsonRpcAccount<Address> | undefined, WalletServerViemRpcSchema, {
21
18
  policyId?: string;
22
19
  } & TExtend>;
23
20
  export type InnerClientActions = {
@@ -33,6 +30,9 @@ export type InternalState = {
33
30
  setAccount: (account: CachedAccount) => void;
34
31
  getAccount: () => CachedAccount | undefined;
35
32
  };
36
- export type InnerWalletApiClient<TAccount extends JsonRpcAccount<Address> | undefined = JsonRpcAccount<Address> | undefined> = InnerWalletApiClientBase<TAccount, InnerClientActions & {
33
+ export type InnerWalletApiClient = InnerWalletApiClientBase<InnerClientActions & {
37
34
  internal: InternalState;
38
35
  }>;
36
+ export type WithoutChainId<T> = T extends {
37
+ chainId: Hex;
38
+ } ? Omit<T, "chainId"> : T;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { SmartAccountSigner, SmartContractAccount } from \"@aa-sdk/core\";\nimport type { AlchemyTransport } from \"@account-kit/infra\";\nimport type {\n Address,\n Chain,\n Client,\n Hex,\n IsUndefined,\n JsonRpcAccount,\n Transport,\n} from \"viem\";\nimport type {\n GrantPermissionsParams,\n GrantPermissionsResult,\n} from \"./client/actions/grantPermissions.ts\";\nimport type { RequestAccountParams } from \"./client/actions/requestAccount.ts\";\nimport type { WalletServerViemRpcSchema } from \"./rpc/schema.ts\";\n\nexport type CreateInnerClientParams<\n TAccount extends JsonRpcAccount<Address> | undefined =\n | JsonRpcAccount<Address>\n | undefined,\n> = {\n chain: Chain;\n transport: AlchemyTransport;\n policyId?: string;\n} & (IsUndefined<TAccount> extends true\n ? {\n account?: never;\n }\n : {\n account: Address;\n });\n\nexport type InnerWalletApiClientBase<\n TAccount extends JsonRpcAccount<Address> | undefined =\n | JsonRpcAccount<Address>\n | undefined,\n TExtend extends { [key: string]: unknown } | undefined =\n | { [key: string]: unknown }\n | undefined,\n> = Client<\n Transport,\n Chain,\n TAccount,\n WalletServerViemRpcSchema,\n { policyId?: string } & TExtend\n>;\n\nexport type InnerClientActions = {\n grantPermissions: (\n signer: SmartAccountSigner,\n params: GrantPermissionsParams & { chainId: Hex },\n ) => Promise<GrantPermissionsResult>;\n};\n\nexport type CachedAccount = {\n account: SmartContractAccount;\n requestParams: RequestAccountParams;\n};\n\nexport type InternalState = {\n setAccount: (account: CachedAccount) => void;\n getAccount: () => CachedAccount | undefined;\n};\n\nexport type InnerWalletApiClient<\n TAccount extends JsonRpcAccount<Address> | undefined =\n | JsonRpcAccount<Address>\n | undefined,\n> = InnerWalletApiClientBase<\n TAccount,\n InnerClientActions & { internal: InternalState }\n>;\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { SmartAccountSigner, SmartContractAccount } from \"@aa-sdk/core\";\nimport type { AlchemyTransport } from \"@account-kit/infra\";\nimport type {\n Address,\n Chain,\n Client,\n Hex,\n JsonRpcAccount,\n Transport,\n} from \"viem\";\nimport type {\n GrantPermissionsParams,\n GrantPermissionsResult,\n} from \"./client/actions/grantPermissions.ts\";\nimport type { RequestAccountParams } from \"./client/actions/requestAccount.ts\";\nimport type { WalletServerViemRpcSchema } from \"./rpc/schema.ts\";\n\nexport type CreateInnerClientParams<\n TAccount extends Address | undefined = Address | undefined,\n> = {\n chain: Chain;\n transport: AlchemyTransport;\n policyId?: string;\n account?: TAccount | Address | undefined;\n};\n\nexport type InnerWalletApiClientBase<\n TExtend extends { [key: string]: unknown } | undefined =\n | { [key: string]: unknown }\n | undefined,\n> = Client<\n Transport,\n Chain,\n JsonRpcAccount<Address> | undefined,\n WalletServerViemRpcSchema,\n { policyId?: string } & TExtend\n>;\n\nexport type InnerClientActions = {\n grantPermissions: (\n signer: SmartAccountSigner,\n params: GrantPermissionsParams & { chainId: Hex },\n ) => Promise<GrantPermissionsResult>;\n};\n\nexport type CachedAccount = {\n account: SmartContractAccount;\n requestParams: RequestAccountParams;\n};\n\nexport type InternalState = {\n setAccount: (account: CachedAccount) => void;\n getAccount: () => CachedAccount | undefined;\n};\n\nexport type InnerWalletApiClient = InnerWalletApiClientBase<\n InnerClientActions & { internal: InternalState }\n>;\n\nexport type WithoutChainId<T> = T extends { chainId: Hex }\n ? Omit<T, \"chainId\">\n : T;\n"]}
@@ -0,0 +1,5 @@
1
+ export declare const Eip7702AuthCapability: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
2
+ account: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">>;
3
+ delegation: import("@sinclair/typebox").TUnion<(import("@sinclair/typebox").TLiteral<"0x69007702764179f14F51cdce752f4f775d74E139"> | import("@sinclair/typebox").TLiteral<"ModularAccountV2">)[]>;
4
+ }>, import("@sinclair/typebox").TLiteral<true>]>;
5
+ //# sourceMappingURL=eip7702Auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eip7702Auth.d.ts","sourceRoot":"","sources":["../../../src/capabilities/eip7702Auth.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,qBAAqB;;;gDAkBhC,CAAC"}
@@ -31,5 +31,9 @@ export declare const Capabilities: import("@sinclair/typebox").TObject<{
31
31
  multiplier: import("@sinclair/typebox").TNumber;
32
32
  }>]>>;
33
33
  }>>;
34
+ eip7702Auth: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
35
+ account: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">>;
36
+ delegation: import("@sinclair/typebox").TUnion<(import("@sinclair/typebox").TLiteral<"0x69007702764179f14F51cdce752f4f775d74E139"> | import("@sinclair/typebox").TLiteral<"ModularAccountV2">)[]>;
37
+ }>, import("@sinclair/typebox").TLiteral<true>]>>;
34
38
  }>;
35
39
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/capabilities/index.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIvB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/capabilities/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKvB,CAAC"}
@@ -90,9 +90,9 @@ export declare const RemotePermission: TObject<{
90
90
  }>;
91
91
  export declare const PermissionsData: TObject<{
92
92
  chainId: import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">;
93
- expiry: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
93
+ expirySec: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TInteger>;
94
94
  key: TObject<{
95
- type: import("@sinclair/typebox").TUnion<[TLiteral<"secp256k1">, TLiteral<"contract">]>;
95
+ type: import("@sinclair/typebox").TUnion<[TLiteral<"secp256k1">, TLiteral<"ecdsa">, TLiteral<"contract">]>;
96
96
  publicKey: import("@sinclair/typebox").TTemplateLiteralSyntax<"0x${string}">;
97
97
  }>;
98
98
  permissions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TUnion<[TObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/permissions/index.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,QAAQ,EAEb,KAAK,OAAO,EAEb,MAAM,mBAAmB,CAAC;AAwG3B,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAWzB,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAA8C,CAAC;AAE5E,eAAO,MAAM,kBAAkB;;EAO9B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;EAQ5B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK1B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;IAKhC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/permissions/index.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,QAAQ,EAEb,KAAK,OAAO,EAEb,MAAM,mBAAmB,CAAC;AAwG3B,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAWzB,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KAA8C,CAAC;AAE5E,eAAO,MAAM,kBAAkB;;EAO9B,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;EAQ5B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAU1B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;IAKhC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mav2.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/permissions/mav2.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAuB,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEzE,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,eAAO,MAAM,yBAAyB;;;;CAI5B,CAAC;AAKX,KAAK,yBAAyB,GAAG;IAC/B,cAAc,EAAE,MAAM,OAAO,yBAAyB,CAAC;CACxD,GAAG,CACA;IACE,cAAc,EAAE,6BAA6B,CAAC;IAC9C,SAAS,EAAE,GAAG,CAAC;IACf,SAAS,EAAE,GAAG,CAAC;IACf,cAAc,CAAC,EAAE,KAAK,CAAC;CACxB,GACD;IACE,cAAc,EAAE,4BAA4B,CAAC;IAC7C,cAAc,EAAE,GAAG,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB,GACD;IACE,cAAc,EAAE,qBAAqB,CAAC;IACtC,cAAc,CAAC,EAAE,KAAK,CAAC;IACvB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,QAAQ,EAAE,GAAG,CAAC;IACd,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CACJ,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,SAAS,yBAAyB,KACjC,GAsBF,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,YAAY,MAAM,CAAC,OAAO,qBAAqB,CAAC,KAC/C,yBA4CF,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,KAAK,GAAG,EACR,MAAM,SAAS,CAAC,MAAM,CAAC,KACtB,GASF,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,eAAe,CAAC,EAAE,aAAa,CAAC,KACxD,OAEF,CAAC"}
1
+ {"version":3,"file":"mav2.d.ts","sourceRoot":"","sources":["../../../../src/capabilities/permissions/mav2.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAuB,KAAK,GAAG,EAAE,MAAM,MAAM,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEzE,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAExC,eAAO,MAAM,yBAAyB;;;;CAI5B,CAAC;AAKX,KAAK,yBAAyB,GAAG;IAC/B,cAAc,EAAE,MAAM,OAAO,yBAAyB,CAAC;CACxD,GAAG,CACA;IACE,cAAc,EAAE,6BAA6B,CAAC;IAC9C,SAAS,EAAE,GAAG,CAAC;IACf,SAAS,EAAE,GAAG,CAAC;IACf,cAAc,CAAC,EAAE,KAAK,CAAC;CACxB,GACD;IACE,cAAc,EAAE,4BAA4B,CAAC;IAC7C,cAAc,EAAE,GAAG,CAAC;IACpB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;CACnB,GACD;IACE,cAAc,EAAE,qBAAqB,CAAC;IACtC,cAAc,CAAC,EAAE,KAAK,CAAC;IACvB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,SAAS,CAAC,EAAE,KAAK,CAAC;IAClB,QAAQ,EAAE,GAAG,CAAC;IACd,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CACJ,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,SAAS,yBAAyB,KACjC,GAsBF,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,YAAY,MAAM,CAAC,OAAO,qBAAqB,CAAC,KAC/C,yBA4CF,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,KAAK,GAAG,EACR,MAAM,SAAS,CAAC,MAAM,CAAC,KACtB,GAUF,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,eAAe,CAAC,EAAE,aAAa,CAAC,KACxD,OAEF,CAAC"}
@@ -1,4 +1,3 @@
1
- import type { Address, JsonRpcAccount } from "viem";
2
1
  import type { GetCallsStatusParams as IsomorphicGetCallsStatusParams, GetCallsStatusResponse as IsomorphicGetCallsStatusResult } from "../../isomorphic/actions/getCallsStatus.ts";
3
2
  import type { InnerWalletApiClient } from "../../types.ts";
4
3
  export type GetCallsStatusParams = IsomorphicGetCallsStatusParams;
@@ -22,5 +21,5 @@ export type GetCallsStatusResult = IsomorphicGetCallsStatusResult;
22
21
  * // Check the status of the first call ID
23
22
  * const status = await client.getCallsStatus(sendResult.preparedCallIds[0]);
24
23
  */
25
- export declare function getCallsStatus<TAccount extends JsonRpcAccount<Address> | undefined = JsonRpcAccount<Address> | undefined>(client: InnerWalletApiClient<TAccount>, params: GetCallsStatusParams): Promise<GetCallsStatusResult>;
24
+ export declare function getCallsStatus(client: InnerWalletApiClient, params: GetCallsStatusParams): Promise<GetCallsStatusResult>;
26
25
  //# sourceMappingURL=getCallsStatus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCallsStatus.d.ts","sourceRoot":"","sources":["../../../../src/client/actions/getCallsStatus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AACpD,OAAO,KAAK,EACV,oBAAoB,IAAI,8BAA8B,EACtD,sBAAsB,IAAI,8BAA8B,EACzD,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,MAAM,MAAM,oBAAoB,GAAG,8BAA8B,CAAC;AAElE,MAAM,MAAM,oBAAoB,GAAG,8BAA8B,CAAC;AAElE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,cAAc,CAClC,QAAQ,SAAS,cAAc,CAAC,OAAO,CAAC,GAAG,SAAS,GAChD,cAAc,CAAC,OAAO,CAAC,GACvB,SAAS,EAEb,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EACtC,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"getCallsStatus.d.ts","sourceRoot":"","sources":["../../../../src/client/actions/getCallsStatus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,IAAI,8BAA8B,EACtD,sBAAsB,IAAI,8BAA8B,EACzD,MAAM,4CAA4C,CAAC;AACpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,MAAM,MAAM,oBAAoB,GAAG,8BAA8B,CAAC;AAElE,MAAM,MAAM,oBAAoB,GAAG,8BAA8B,CAAC;AAElE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,oBAAoB,EAC5B,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CAK/B"}