zksync-sso 0.0.0-beta.1

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 (300) hide show
  1. package/.gitignore +5 -0
  2. package/.lintstagedrc.js +5 -0
  3. package/.npmignore +10 -0
  4. package/README.md +3 -0
  5. package/dist/_cjs/abi/Factory.js +197 -0
  6. package/dist/_cjs/abi/Factory.js.map +1 -0
  7. package/dist/_cjs/abi/SessionKeyModule.js +1104 -0
  8. package/dist/_cjs/abi/SessionKeyModule.js.map +1 -0
  9. package/dist/_cjs/client/actions/account.js +140 -0
  10. package/dist/_cjs/client/actions/account.js.map +1 -0
  11. package/dist/_cjs/client/actions/index.js +19 -0
  12. package/dist/_cjs/client/actions/index.js.map +1 -0
  13. package/dist/_cjs/client/actions/passkey.js +122 -0
  14. package/dist/_cjs/client/actions/passkey.js.map +1 -0
  15. package/dist/_cjs/client/actions/session.js +40 -0
  16. package/dist/_cjs/client/actions/session.js.map +1 -0
  17. package/dist/_cjs/client/clients/passkey.js +46 -0
  18. package/dist/_cjs/client/clients/passkey.js.map +1 -0
  19. package/dist/_cjs/client/clients/session.js +48 -0
  20. package/dist/_cjs/client/clients/session.js.map +1 -0
  21. package/dist/_cjs/client/decorators/index.js +19 -0
  22. package/dist/_cjs/client/decorators/index.js.map +1 -0
  23. package/dist/_cjs/client/decorators/passkey.js +15 -0
  24. package/dist/_cjs/client/decorators/passkey.js.map +1 -0
  25. package/dist/_cjs/client/decorators/session.js +7 -0
  26. package/dist/_cjs/client/decorators/session.js.map +1 -0
  27. package/dist/_cjs/client/decorators/session_wallet.js +32 -0
  28. package/dist/_cjs/client/decorators/session_wallet.js.map +1 -0
  29. package/dist/_cjs/client/index.js +22 -0
  30. package/dist/_cjs/client/index.js.map +1 -0
  31. package/dist/_cjs/client/passkey.js +20 -0
  32. package/dist/_cjs/client/passkey.js.map +1 -0
  33. package/dist/_cjs/client/smart-account.js +45 -0
  34. package/dist/_cjs/client/smart-account.js.map +1 -0
  35. package/dist/_cjs/client/utils/assertEip712Transaction.js +44 -0
  36. package/dist/_cjs/client/utils/assertEip712Transaction.js.map +1 -0
  37. package/dist/_cjs/client/utils/getEip712Domain.js +57 -0
  38. package/dist/_cjs/client/utils/getEip712Domain.js.map +1 -0
  39. package/dist/_cjs/client/utils/isEip712Transaction.js +16 -0
  40. package/dist/_cjs/client/utils/isEip712Transaction.js.map +1 -0
  41. package/dist/_cjs/client-auth-server/Signer.js +264 -0
  42. package/dist/_cjs/client-auth-server/Signer.js.map +1 -0
  43. package/dist/_cjs/client-auth-server/WalletProvider.js +107 -0
  44. package/dist/_cjs/client-auth-server/WalletProvider.js.map +1 -0
  45. package/dist/_cjs/client-auth-server/index.js +20 -0
  46. package/dist/_cjs/client-auth-server/index.js.map +1 -0
  47. package/dist/_cjs/client-auth-server/interface.js +3 -0
  48. package/dist/_cjs/client-auth-server/interface.js.map +1 -0
  49. package/dist/_cjs/client-auth-server/rpc.js +3 -0
  50. package/dist/_cjs/client-auth-server/rpc.js.map +1 -0
  51. package/dist/_cjs/client-auth-server/session.js +90 -0
  52. package/dist/_cjs/client-auth-server/session.js.map +1 -0
  53. package/dist/_cjs/communicator/PopupCommunicator.js +138 -0
  54. package/dist/_cjs/communicator/PopupCommunicator.js.map +1 -0
  55. package/dist/_cjs/communicator/index.js +6 -0
  56. package/dist/_cjs/communicator/index.js.map +1 -0
  57. package/dist/_cjs/communicator/interface.js +3 -0
  58. package/dist/_cjs/communicator/interface.js.map +1 -0
  59. package/dist/_cjs/connector/index.js +148 -0
  60. package/dist/_cjs/connector/index.js.map +1 -0
  61. package/dist/_cjs/errors/constants.js +97 -0
  62. package/dist/_cjs/errors/constants.js.map +1 -0
  63. package/dist/_cjs/errors/errors.js +122 -0
  64. package/dist/_cjs/errors/errors.js.map +1 -0
  65. package/dist/_cjs/errors/index.js +10 -0
  66. package/dist/_cjs/errors/index.js.map +1 -0
  67. package/dist/_cjs/errors/serialize.js +63 -0
  68. package/dist/_cjs/errors/serialize.js.map +1 -0
  69. package/dist/_cjs/errors/utils.js +95 -0
  70. package/dist/_cjs/errors/utils.js.map +1 -0
  71. package/dist/_cjs/index.js +6 -0
  72. package/dist/_cjs/index.js.map +1 -0
  73. package/dist/_cjs/package.json +1 -0
  74. package/dist/_cjs/utils/encoding.js +32 -0
  75. package/dist/_cjs/utils/encoding.js.map +1 -0
  76. package/dist/_cjs/utils/helpers.js +43 -0
  77. package/dist/_cjs/utils/helpers.js.map +1 -0
  78. package/dist/_cjs/utils/index.js +20 -0
  79. package/dist/_cjs/utils/index.js.map +1 -0
  80. package/dist/_cjs/utils/passkey.js +243 -0
  81. package/dist/_cjs/utils/passkey.js.map +1 -0
  82. package/dist/_cjs/utils/session.js +30 -0
  83. package/dist/_cjs/utils/session.js.map +1 -0
  84. package/dist/_cjs/utils/storage.js +93 -0
  85. package/dist/_cjs/utils/storage.js.map +1 -0
  86. package/dist/_cjs/version.js +5 -0
  87. package/dist/_cjs/version.js.map +1 -0
  88. package/dist/_esm/abi/Factory.js +194 -0
  89. package/dist/_esm/abi/Factory.js.map +1 -0
  90. package/dist/_esm/abi/SessionKeyModule.js +1101 -0
  91. package/dist/_esm/abi/SessionKeyModule.js.map +1 -0
  92. package/dist/_esm/client/actions/account.js +137 -0
  93. package/dist/_esm/client/actions/account.js.map +1 -0
  94. package/dist/_esm/client/actions/index.js +3 -0
  95. package/dist/_esm/client/actions/index.js.map +1 -0
  96. package/dist/_esm/client/actions/passkey.js +121 -0
  97. package/dist/_esm/client/actions/passkey.js.map +1 -0
  98. package/dist/_esm/client/actions/session.js +36 -0
  99. package/dist/_esm/client/actions/session.js.map +1 -0
  100. package/dist/_esm/client/clients/passkey.js +43 -0
  101. package/dist/_esm/client/clients/passkey.js.map +1 -0
  102. package/dist/_esm/client/clients/session.js +45 -0
  103. package/dist/_esm/client/clients/session.js.map +1 -0
  104. package/dist/_esm/client/decorators/index.js +3 -0
  105. package/dist/_esm/client/decorators/index.js.map +1 -0
  106. package/dist/_esm/client/decorators/passkey.js +13 -0
  107. package/dist/_esm/client/decorators/passkey.js.map +1 -0
  108. package/dist/_esm/client/decorators/session.js +5 -0
  109. package/dist/_esm/client/decorators/session.js.map +1 -0
  110. package/dist/_esm/client/decorators/session_wallet.js +171 -0
  111. package/dist/_esm/client/decorators/session_wallet.js.map +1 -0
  112. package/dist/_esm/client/index.js +3 -0
  113. package/dist/_esm/client/index.js.map +1 -0
  114. package/dist/_esm/client/passkey.js +4 -0
  115. package/dist/_esm/client/passkey.js.map +1 -0
  116. package/dist/_esm/client/smart-account.js +46 -0
  117. package/dist/_esm/client/smart-account.js.map +1 -0
  118. package/dist/_esm/client/utils/assertEip712Transaction.js +39 -0
  119. package/dist/_esm/client/utils/assertEip712Transaction.js.map +1 -0
  120. package/dist/_esm/client/utils/getEip712Domain.js +57 -0
  121. package/dist/_esm/client/utils/getEip712Domain.js.map +1 -0
  122. package/dist/_esm/client/utils/isEip712Transaction.js +13 -0
  123. package/dist/_esm/client/utils/isEip712Transaction.js.map +1 -0
  124. package/dist/_esm/client-auth-server/Signer.js +262 -0
  125. package/dist/_esm/client-auth-server/Signer.js.map +1 -0
  126. package/dist/_esm/client-auth-server/WalletProvider.js +104 -0
  127. package/dist/_esm/client-auth-server/WalletProvider.js.map +1 -0
  128. package/dist/_esm/client-auth-server/index.js +4 -0
  129. package/dist/_esm/client-auth-server/index.js.map +1 -0
  130. package/dist/_esm/client-auth-server/interface.js +2 -0
  131. package/dist/_esm/client-auth-server/interface.js.map +1 -0
  132. package/dist/_esm/client-auth-server/rpc.js +2 -0
  133. package/dist/_esm/client-auth-server/rpc.js.map +1 -0
  134. package/dist/_esm/client-auth-server/session.js +91 -0
  135. package/dist/_esm/client-auth-server/session.js.map +1 -0
  136. package/dist/_esm/communicator/PopupCommunicator.js +136 -0
  137. package/dist/_esm/communicator/PopupCommunicator.js.map +1 -0
  138. package/dist/_esm/communicator/index.js +2 -0
  139. package/dist/_esm/communicator/index.js.map +1 -0
  140. package/dist/_esm/communicator/interface.js +2 -0
  141. package/dist/_esm/communicator/interface.js.map +1 -0
  142. package/dist/_esm/connector/index.js +146 -0
  143. package/dist/_esm/connector/index.js.map +1 -0
  144. package/dist/_esm/errors/constants.js +94 -0
  145. package/dist/_esm/errors/constants.js.map +1 -0
  146. package/dist/_esm/errors/errors.js +124 -0
  147. package/dist/_esm/errors/errors.js.map +1 -0
  148. package/dist/_esm/errors/index.js +4 -0
  149. package/dist/_esm/errors/index.js.map +1 -0
  150. package/dist/_esm/errors/serialize.js +69 -0
  151. package/dist/_esm/errors/serialize.js.map +1 -0
  152. package/dist/_esm/errors/utils.js +101 -0
  153. package/dist/_esm/errors/utils.js.map +1 -0
  154. package/dist/_esm/index.js +2 -0
  155. package/dist/_esm/index.js.map +1 -0
  156. package/dist/_esm/package.json +1 -0
  157. package/dist/_esm/utils/encoding.js +26 -0
  158. package/dist/_esm/utils/encoding.js.map +1 -0
  159. package/dist/_esm/utils/helpers.js +40 -0
  160. package/dist/_esm/utils/helpers.js.map +1 -0
  161. package/dist/_esm/utils/index.js +4 -0
  162. package/dist/_esm/utils/index.js.map +1 -0
  163. package/dist/_esm/utils/passkey.js +294 -0
  164. package/dist/_esm/utils/passkey.js.map +1 -0
  165. package/dist/_esm/utils/session.js +31 -0
  166. package/dist/_esm/utils/session.js.map +1 -0
  167. package/dist/_esm/utils/storage.js +89 -0
  168. package/dist/_esm/utils/storage.js.map +1 -0
  169. package/dist/_esm/version.js +2 -0
  170. package/dist/_esm/version.js.map +1 -0
  171. package/dist/_types/abi/Factory.d.ts +149 -0
  172. package/dist/_types/abi/Factory.d.ts.map +1 -0
  173. package/dist/_types/abi/SessionKeyModule.d.ts +846 -0
  174. package/dist/_types/abi/SessionKeyModule.d.ts.map +1 -0
  175. package/dist/_types/client/actions/account.d.ts +38 -0
  176. package/dist/_types/client/actions/account.d.ts.map +1 -0
  177. package/dist/_types/client/actions/index.d.ts +3 -0
  178. package/dist/_types/client/actions/index.d.ts.map +1 -0
  179. package/dist/_types/client/actions/passkey.d.ts +45 -0
  180. package/dist/_types/client/actions/passkey.d.ts.map +1 -0
  181. package/dist/_types/client/actions/session.d.ts +14 -0
  182. package/dist/_types/client/actions/session.d.ts.map +1 -0
  183. package/dist/_types/client/clients/passkey.d.ts +32 -0
  184. package/dist/_types/client/clients/passkey.d.ts.map +1 -0
  185. package/dist/_types/client/clients/session.d.ts +26 -0
  186. package/dist/_types/client/clients/session.d.ts.map +1 -0
  187. package/dist/_types/client/decorators/index.d.ts +3 -0
  188. package/dist/_types/client/decorators/index.d.ts.map +1 -0
  189. package/dist/_types/client/decorators/passkey.d.ts +8 -0
  190. package/dist/_types/client/decorators/passkey.d.ts.map +1 -0
  191. package/dist/_types/client/decorators/session.d.ts +5 -0
  192. package/dist/_types/client/decorators/session.d.ts.map +1 -0
  193. package/dist/_types/client/decorators/session_wallet.d.ts +5 -0
  194. package/dist/_types/client/decorators/session_wallet.d.ts.map +1 -0
  195. package/dist/_types/client/index.d.ts +3 -0
  196. package/dist/_types/client/index.d.ts.map +1 -0
  197. package/dist/_types/client/passkey.d.ts +4 -0
  198. package/dist/_types/client/passkey.d.ts.map +1 -0
  199. package/dist/_types/client/smart-account.d.ts +24 -0
  200. package/dist/_types/client/smart-account.d.ts.map +1 -0
  201. package/dist/_types/client/utils/assertEip712Transaction.d.ts +11 -0
  202. package/dist/_types/client/utils/assertEip712Transaction.d.ts.map +1 -0
  203. package/dist/_types/client/utils/getEip712Domain.d.ts +3 -0
  204. package/dist/_types/client/utils/getEip712Domain.d.ts.map +1 -0
  205. package/dist/_types/client/utils/isEip712Transaction.d.ts +4 -0
  206. package/dist/_types/client/utils/isEip712Transaction.d.ts.map +1 -0
  207. package/dist/_types/client-auth-server/Signer.d.ts +52 -0
  208. package/dist/_types/client-auth-server/Signer.d.ts.map +1 -0
  209. package/dist/_types/client-auth-server/WalletProvider.d.ts +27 -0
  210. package/dist/_types/client-auth-server/WalletProvider.d.ts.map +1 -0
  211. package/dist/_types/client-auth-server/index.d.ts +4 -0
  212. package/dist/_types/client-auth-server/index.d.ts.map +1 -0
  213. package/dist/_types/client-auth-server/interface.d.ts +34 -0
  214. package/dist/_types/client-auth-server/interface.d.ts.map +1 -0
  215. package/dist/_types/client-auth-server/rpc.d.ts +55 -0
  216. package/dist/_types/client-auth-server/rpc.d.ts.map +1 -0
  217. package/dist/_types/client-auth-server/session.d.ts +45 -0
  218. package/dist/_types/client-auth-server/session.d.ts.map +1 -0
  219. package/dist/_types/communicator/PopupCommunicator.d.ts +20 -0
  220. package/dist/_types/communicator/PopupCommunicator.d.ts.map +1 -0
  221. package/dist/_types/communicator/index.d.ts +3 -0
  222. package/dist/_types/communicator/index.d.ts.map +1 -0
  223. package/dist/_types/communicator/interface.d.ts +16 -0
  224. package/dist/_types/communicator/interface.d.ts.map +1 -0
  225. package/dist/_types/connector/index.d.ts +8 -0
  226. package/dist/_types/connector/index.d.ts.map +1 -0
  227. package/dist/_types/errors/constants.d.ts +96 -0
  228. package/dist/_types/errors/constants.d.ts.map +1 -0
  229. package/dist/_types/errors/errors.d.ts +48 -0
  230. package/dist/_types/errors/errors.d.ts.map +1 -0
  231. package/dist/_types/errors/index.d.ts +5 -0
  232. package/dist/_types/errors/index.d.ts.map +1 -0
  233. package/dist/_types/errors/serialize.d.ts +13 -0
  234. package/dist/_types/errors/serialize.d.ts.map +1 -0
  235. package/dist/_types/errors/utils.d.ts +30 -0
  236. package/dist/_types/errors/utils.d.ts.map +1 -0
  237. package/dist/_types/index.d.ts +4 -0
  238. package/dist/_types/index.d.ts.map +1 -0
  239. package/dist/_types/utils/encoding.d.ts +12 -0
  240. package/dist/_types/utils/encoding.d.ts.map +1 -0
  241. package/dist/_types/utils/helpers.d.ts +4 -0
  242. package/dist/_types/utils/helpers.d.ts.map +1 -0
  243. package/dist/_types/utils/index.d.ts +4 -0
  244. package/dist/_types/utils/index.d.ts.map +1 -0
  245. package/dist/_types/utils/passkey.d.ts +47 -0
  246. package/dist/_types/utils/passkey.d.ts.map +1 -0
  247. package/dist/_types/utils/session.d.ts +95 -0
  248. package/dist/_types/utils/session.d.ts.map +1 -0
  249. package/dist/_types/utils/storage.d.ts +30 -0
  250. package/dist/_types/utils/storage.d.ts.map +1 -0
  251. package/dist/_types/version.d.ts +2 -0
  252. package/dist/_types/version.d.ts.map +1 -0
  253. package/eslint.config.js +6 -0
  254. package/package.json +144 -0
  255. package/prepare-package.mjs +39 -0
  256. package/project.json +67 -0
  257. package/src/abi/Factory.ts +193 -0
  258. package/src/abi/SessionKeyModule.ts +1100 -0
  259. package/src/client/actions/account.ts +198 -0
  260. package/src/client/actions/index.ts +2 -0
  261. package/src/client/actions/passkey.ts +165 -0
  262. package/src/client/actions/session.ts +118 -0
  263. package/src/client/clients/passkey.ts +107 -0
  264. package/src/client/clients/session.ts +105 -0
  265. package/src/client/decorators/index.ts +2 -0
  266. package/src/client/decorators/passkey.ts +22 -0
  267. package/src/client/decorators/session.ts +17 -0
  268. package/src/client/decorators/session_wallet.ts +184 -0
  269. package/src/client/index.ts +2 -0
  270. package/src/client/passkey.ts +3 -0
  271. package/src/client/smart-account.ts +68 -0
  272. package/src/client/utils/assertEip712Transaction.ts +49 -0
  273. package/src/client/utils/getEip712Domain.ts +84 -0
  274. package/src/client/utils/isEip712Transaction.ts +18 -0
  275. package/src/client-auth-server/Signer.ts +260 -0
  276. package/src/client-auth-server/WalletProvider.ts +114 -0
  277. package/src/client-auth-server/index.ts +3 -0
  278. package/src/client-auth-server/interface.ts +39 -0
  279. package/src/client-auth-server/rpc.ts +69 -0
  280. package/src/client-auth-server/session.ts +139 -0
  281. package/src/communicator/PopupCommunicator.ts +111 -0
  282. package/src/communicator/index.ts +2 -0
  283. package/src/communicator/interface.ts +15 -0
  284. package/src/connector/index.ts +171 -0
  285. package/src/errors/constants.ts +119 -0
  286. package/src/errors/errors.ts +168 -0
  287. package/src/errors/index.ts +4 -0
  288. package/src/errors/serialize.ts +91 -0
  289. package/src/errors/utils.ts +152 -0
  290. package/src/index.ts +3 -0
  291. package/src/types/index.d.ts +9 -0
  292. package/src/utils/encoding.ts +36 -0
  293. package/src/utils/helpers.ts +43 -0
  294. package/src/utils/index.ts +3 -0
  295. package/src/utils/passkey.ts +344 -0
  296. package/src/utils/session.ts +103 -0
  297. package/src/utils/storage.ts +87 -0
  298. package/src/version.ts +1 -0
  299. package/tsconfig.base.json +44 -0
  300. package/tsconfig.json +11 -0
@@ -0,0 +1,20 @@
1
+ import type { Communicator, Message } from "./index.js";
2
+ export interface PopupConfigMessage extends Message {
3
+ event: "PopupLoaded" | "PopupUnload";
4
+ }
5
+ export declare class PopupCommunicator implements Communicator {
6
+ private readonly url;
7
+ private popup;
8
+ private listeners;
9
+ constructor(url: string);
10
+ postMessage: (message: Message) => Promise<void>;
11
+ postRequestAndWaitForResponse: <M extends Message>(request: Message & {
12
+ id: NonNullable<Message["id"]>;
13
+ }) => Promise<M>;
14
+ onMessage: <M extends Message>(predicate: (_: Partial<M>) => boolean) => Promise<M>;
15
+ private disconnect;
16
+ openPopup: () => Window;
17
+ waitForPopupLoaded: () => Promise<Window>;
18
+ ready: () => Promise<void>;
19
+ }
20
+ //# sourceMappingURL=PopupCommunicator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopupCommunicator.d.ts","sourceRoot":"","sources":["../../../src/communicator/PopupCommunicator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAExD,MAAM,WAAW,kBAAmB,SAAQ,OAAO;IACjD,KAAK,EAAE,aAAa,GAAG,aAAa,CAAC;CACtC;AAED,qBAAa,iBAAkB,YAAW,YAAY;IACpD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAM;IAC1B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,SAAS,CAAwE;gBAE7E,GAAG,EAAE,MAAM;IAIvB,WAAW,YAAmB,OAAO,mBAGnC;IAEF,6BAA6B,GAAU,CAAC,SAAS,OAAO,WAC7C,OAAO,GAAG;QAAE,EAAE,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;KAAE,KACpD,OAAO,CAAC,CAAC,CAAC,CAIX;IAEF,SAAS,GAAU,CAAC,SAAS,OAAO,aAAa,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,KAAG,OAAO,CAAC,CAAC,CAAC,CAgBtF;IAEF,OAAO,CAAC,UAAU,CAgBhB;IAEF,SAAS,eAoBP;IAEF,kBAAkB,QAAa,OAAO,CAAC,MAAM,CAAC,CAkB5C;IAEF,KAAK,sBAEH;CACH"}
@@ -0,0 +1,3 @@
1
+ export type { Communicator, Message } from "./interface.js";
2
+ export { PopupCommunicator, type PopupConfigMessage } from "./PopupCommunicator.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/communicator/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { UUID } from "crypto";
2
+ type MessageID = UUID;
3
+ export interface Message {
4
+ id: MessageID;
5
+ requestId?: MessageID;
6
+ }
7
+ export interface Communicator {
8
+ postMessage: (_: Message) => void;
9
+ postRequestAndWaitForResponse: <M extends Message>(_: Message & {
10
+ id: string;
11
+ }) => Promise<M>;
12
+ onMessage: <M extends Message>(_: (_: Partial<M>) => boolean) => Promise<M>;
13
+ ready: () => Promise<void>;
14
+ }
15
+ export {};
16
+ //# sourceMappingURL=interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/communicator/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEnC,KAAK,SAAS,GAAG,IAAI,CAAC;AAEtB,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,SAAS,CAAC;IACd,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,6BAA6B,EAAE,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9F,SAAS,EAAE,CAAC,CAAC,SAAS,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5E,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B"}
@@ -0,0 +1,8 @@
1
+ import { type AppMetadata, type ProviderInterface, type SessionPreferences } from "../index.js";
2
+ export type ZksyncSsoConnectorOptions = {
3
+ metadata?: Partial<AppMetadata>;
4
+ session?: SessionPreferences | (() => SessionPreferences | Promise<SessionPreferences>);
5
+ authServerUrl?: string;
6
+ };
7
+ export declare const zksyncSsoConnector: (parameters: ZksyncSsoConnectorOptions) => import("@wagmi/core").CreateConnectorFn<ProviderInterface, Record<string, unknown>, Record<string, unknown>>;
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/connector/index.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,iBAAiB,EAAE,KAAK,kBAAkB,EAAkB,MAAM,aAAa,CAAC;AAEhH,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,kBAAkB,GAAG,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACxF,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,kBAAkB,eAAgB,yBAAyB,iHAsJvE,CAAC"}
@@ -0,0 +1,96 @@
1
+ interface ErrorCodes {
2
+ readonly rpc: {
3
+ readonly invalidInput: -32000;
4
+ readonly resourceNotFound: -32001;
5
+ readonly resourceUnavailable: -32002;
6
+ readonly transactionRejected: -32003;
7
+ readonly methodNotSupported: -32004;
8
+ readonly limitExceeded: -32005;
9
+ readonly parse: -32700;
10
+ readonly invalidRequest: -32600;
11
+ readonly methodNotFound: -32601;
12
+ readonly invalidParams: -32602;
13
+ readonly internal: -32603;
14
+ };
15
+ readonly provider: {
16
+ readonly userRejectedRequest: 4001;
17
+ readonly unauthorized: 4100;
18
+ readonly unsupportedMethod: 4200;
19
+ readonly disconnected: 4900;
20
+ readonly chainDisconnected: 4901;
21
+ readonly unsupportedChain: 4902;
22
+ };
23
+ }
24
+ export declare const standardErrorCodes: ErrorCodes;
25
+ export declare const errorValues: {
26
+ "-32700": {
27
+ standard: string;
28
+ message: string;
29
+ };
30
+ "-32600": {
31
+ standard: string;
32
+ message: string;
33
+ };
34
+ "-32601": {
35
+ standard: string;
36
+ message: string;
37
+ };
38
+ "-32602": {
39
+ standard: string;
40
+ message: string;
41
+ };
42
+ "-32603": {
43
+ standard: string;
44
+ message: string;
45
+ };
46
+ "-32000": {
47
+ standard: string;
48
+ message: string;
49
+ };
50
+ "-32001": {
51
+ standard: string;
52
+ message: string;
53
+ };
54
+ "-32002": {
55
+ standard: string;
56
+ message: string;
57
+ };
58
+ "-32003": {
59
+ standard: string;
60
+ message: string;
61
+ };
62
+ "-32004": {
63
+ standard: string;
64
+ message: string;
65
+ };
66
+ "-32005": {
67
+ standard: string;
68
+ message: string;
69
+ };
70
+ 4001: {
71
+ standard: string;
72
+ message: string;
73
+ };
74
+ 4100: {
75
+ standard: string;
76
+ message: string;
77
+ };
78
+ 4200: {
79
+ standard: string;
80
+ message: string;
81
+ };
82
+ 4900: {
83
+ standard: string;
84
+ message: string;
85
+ };
86
+ 4901: {
87
+ standard: string;
88
+ message: string;
89
+ };
90
+ 4902: {
91
+ standard: string;
92
+ message: string;
93
+ };
94
+ };
95
+ export {};
96
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/errors/constants.ts"],"names":[],"mappings":"AAAA,UAAU,UAAU;IAClB,QAAQ,CAAC,GAAG,EAAE;QACZ,QAAQ,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC;QAC9B,QAAQ,CAAC,gBAAgB,EAAE,CAAC,KAAK,CAAC;QAClC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC;QACrC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC;QACrC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,KAAK,CAAC;QACpC,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC;QAC/B,QAAQ,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC;QACvB,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC;QAChC,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC;QAChC,QAAQ,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC;QAC/B,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC;KAC3B,CAAC;IACF,QAAQ,CAAC,QAAQ,EAAE;QACjB,QAAQ,CAAC,mBAAmB,EAAE,IAAI,CAAC;QACnC,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC;QAC5B,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC;QACjC,QAAQ,CAAC,YAAY,EAAE,IAAI,CAAC;QAC5B,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC;QACjC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC;KACjC,CAAC;CACH;AAED,eAAO,MAAM,kBAAkB,EAAE,UAsBhC,CAAC;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsEvB,CAAC"}
@@ -0,0 +1,48 @@
1
+ export declare const standardErrors: {
2
+ rpc: {
3
+ parse: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
4
+ invalidRequest: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
5
+ invalidParams: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
6
+ methodNotFound: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
7
+ internal: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
8
+ server: <T>(opts: ServerErrorOptions<T>) => EthereumRpcError<T>;
9
+ invalidInput: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
10
+ resourceNotFound: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
11
+ resourceUnavailable: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
12
+ transactionRejected: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
13
+ methodNotSupported: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
14
+ limitExceeded: <T>(arg?: EthErrorsArg<T>) => EthereumRpcError<T>;
15
+ };
16
+ provider: {
17
+ userRejectedRequest: <T>(arg?: EthErrorsArg<T>) => EthereumProviderError<T>;
18
+ unauthorized: <T>(arg?: EthErrorsArg<T>) => EthereumProviderError<T>;
19
+ unsupportedMethod: <T>(arg?: EthErrorsArg<T>) => EthereumProviderError<T>;
20
+ disconnected: <T>(arg?: EthErrorsArg<T>) => EthereumProviderError<T>;
21
+ chainDisconnected: <T>(arg?: EthErrorsArg<T>) => EthereumProviderError<T>;
22
+ unsupportedChain: <T>(arg?: EthErrorsArg<T>) => EthereumProviderError<T>;
23
+ custom: <T>(opts: CustomErrorArg<T>) => EthereumProviderError<T>;
24
+ };
25
+ };
26
+ interface EthereumErrorOptions<T> {
27
+ message?: string;
28
+ data?: T;
29
+ }
30
+ interface ServerErrorOptions<T> extends EthereumErrorOptions<T> {
31
+ code: number;
32
+ }
33
+ type CustomErrorArg<T> = ServerErrorOptions<T>;
34
+ type EthErrorsArg<T> = EthereumErrorOptions<T> | string;
35
+ declare class EthereumRpcError<T> extends Error {
36
+ code: number;
37
+ data?: T;
38
+ constructor(code: number, message: string, data?: T);
39
+ }
40
+ declare class EthereumProviderError<T> extends EthereumRpcError<T> {
41
+ /**
42
+ * Create an Ethereum Provider JSON-RPC error.
43
+ * `code` must be an integer in the 1000 <= 4999 range.
44
+ */
45
+ constructor(code: number, message: string, data?: T);
46
+ }
47
+ export {};
48
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/errors/errors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,cAAc;;gBAEf,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;yBAEf,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;wBAGzB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;yBAGvB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;mBAG9B,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;iBAG1B,CAAC,QAAQ,kBAAkB,CAAC,CAAC,CAAC;uBAWxB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;2BAGpB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;8BAGrB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;8BAGxB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;6BAGzB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;wBAG7B,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;;;8BAKlB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;uBAI/B,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;4BAInB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;uBAI7B,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;4BAInB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;2BAIzB,CAAC,QAAQ,YAAY,CAAC,CAAC,CAAC;iBAIlC,CAAC,QAAQ,cAAc,CAAC,CAAC,CAAC;;CAatC,CAAC;AA8BF,UAAU,oBAAoB,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;CACV;AAED,UAAU,kBAAkB,CAAC,CAAC,CAAE,SAAQ,oBAAoB,CAAC,CAAC,CAAC;IAC7D,IAAI,EAAE,MAAM,CAAC;CACd;AAED,KAAK,cAAc,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC;AAE/C,KAAK,YAAY,CAAC,CAAC,IAAI,oBAAoB,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;AAExD,cAAM,gBAAgB,CAAC,CAAC,CAAE,SAAQ,KAAK;IACrC,IAAI,EAAE,MAAM,CAAC;IAEb,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;CAcpD;AAED,cAAM,qBAAqB,CAAC,CAAC,CAAE,SAAQ,gBAAgB,CAAC,CAAC,CAAC;IACxD;;;OAGG;gBACS,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;CAOpD"}
@@ -0,0 +1,5 @@
1
+ export { standardErrorCodes } from "./constants.js";
2
+ export { standardErrors } from "./errors.js";
3
+ export { serializeError } from "./serialize.js";
4
+ export type { SerializedEthereumRpcError } from "./utils.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/errors/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { type SerializedEthereumRpcError } from "./utils.js";
2
+ /**
3
+ * Serializes an error to a format that is compatible with the Ethereum JSON RPC error format.
4
+ */
5
+ export declare function serializeError(error: unknown, requestOrMethod?: JSONRPCRequest | JSONRPCRequest[] | string): SerializedError;
6
+ interface SerializedError extends SerializedEthereumRpcError {
7
+ docUrl: string;
8
+ }
9
+ interface JSONRPCRequest {
10
+ method: string;
11
+ }
12
+ export {};
13
+ //# sourceMappingURL=serialize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../../../src/errors/serialize.ts"],"names":[],"mappings":"AAEA,OAAO,EAAa,KAAK,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAQxE;;GAEG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,OAAO,EACd,eAAe,CAAC,EAAE,cAAc,GAAG,cAAc,EAAE,GAAG,MAAM,GAC3D,eAAe,CAkBjB;AAkDD,UAAU,eAAgB,SAAQ,0BAA0B;IAC1D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,cAAc;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Gets the message for a given code, or a fallback message if the code has
3
+ * no corresponding message.
4
+ */
5
+ export declare function getMessageFromCode(code: number | undefined, fallbackMessage?: string): string;
6
+ /**
7
+ * Returns whether the given code is valid.
8
+ * A code is only valid if it has a message.
9
+ */
10
+ export declare function isValidCode(code: number): boolean;
11
+ /**
12
+ * Returns the error code from an error object.
13
+ */
14
+ export declare function getErrorCode(error: unknown): number | undefined;
15
+ /**
16
+ * Serializes the given error to an Ethereum JSON RPC-compatible error object.
17
+ * Merely copies the given error's values if it is already compatible.
18
+ * If the given error is not fully compatible, it will be preserved on the
19
+ * returned object's data.originalError property.
20
+ */
21
+ export interface SerializedEthereumRpcError {
22
+ code: number;
23
+ message: string;
24
+ data?: unknown;
25
+ stack?: string;
26
+ }
27
+ export declare function serialize(error: unknown, { shouldIncludeStack }?: {
28
+ shouldIncludeStack?: boolean | undefined;
29
+ }): SerializedEthereumRpcError;
30
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/errors/utils.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,eAAe,GAAE,MAAyB,GACzC,MAAM,CAYR;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAcjD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAQ/D;AAgBD;;;;;GAKG;AAEH,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,SAAS,CACvB,KAAK,EAAE,OAAO,EACd,EAAE,kBAA0B,EAAE;;CAAK,GAClC,0BAA0B,CAmC5B"}
@@ -0,0 +1,4 @@
1
+ export type { AppMetadata, ProviderInterface } from "./client-auth-server/interface.js";
2
+ export type { SessionPreferences } from "./client-auth-server/session.js";
3
+ export { WalletProvider, type WalletProviderConstructorOptions } from "./client-auth-server/WalletProvider.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACxF,YAAY,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,KAAK,gCAAgC,EAAE,MAAM,wCAAwC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { type Address, type Hash } from "viem";
2
+ import type { SessionConfig } from "../utils/session.js";
3
+ export declare const encodeSession: (sessionConfig: SessionConfig) => `0x${string}`;
4
+ export declare const encodePasskeyModuleParameters: (passkey: {
5
+ passkeyPublicKey: [Buffer, Buffer];
6
+ expectedOrigin: string;
7
+ }) => `0x${string}`;
8
+ export declare const encodeModuleData: (moduleData: {
9
+ address: Address;
10
+ parameters: Hash;
11
+ }) => `0x${string}`;
12
+ //# sourceMappingURL=encoding.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../../src/utils/encoding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAA2C,KAAK,IAAI,EAAuC,MAAM,MAAM,CAAC;AAG7H,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,eAAO,MAAM,aAAa,kBAAmB,aAAa,kBASzD,CAAC;AAEF,eAAO,MAAM,6BAA6B,YAAa;IAAE,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,kBAWpH,CAAC;AAEF,eAAO,MAAM,gBAAgB,eAAgB;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,UAAU,EAAE,IAAI,CAAA;CAAE,kBAMlF,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function getWebsiteName(): string | null;
2
+ export declare function getFavicon(): string | null;
3
+ export declare function noThrow<T>(fn: () => T): T | null;
4
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/utils/helpers.ts"],"names":[],"mappings":"AAAA,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAe9C;AAED,wBAAgB,UAAU,IAAI,MAAM,GAAG,IAAI,CAiB1C;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAMhD"}
@@ -0,0 +1,4 @@
1
+ export * from "./encoding.js";
2
+ export * from "./passkey.js";
3
+ export * from "./session.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { Buffer } from "buffer";
2
+ import { type Address, type Hex } from "viem";
3
+ export declare const getPublicKeyBytesFromPasskeySignature: (publicPasskey: Uint8Array) => [Buffer, Buffer];
4
+ export declare const getPasskeySignatureFromPublicKeyBytes: (coordinates: [Hex, Hex]) => Uint8Array;
5
+ /**
6
+ * Return 2 32byte words for the R & S for the EC2 signature, 0 l-trimmed
7
+ * @param signature
8
+ * @returns r & s bytes sequentially
9
+ */
10
+ export declare function unwrapEC2Signature(signature: Uint8Array): {
11
+ r: Uint8Array;
12
+ s: Uint8Array;
13
+ };
14
+ /**
15
+ * Normalizes the 's' value of an ECDSA signature to prevent signature malleability.
16
+ *
17
+ * @param {Uint8Array} sBuf - The 's' value of the signature as a Uint8Array.
18
+ * @returns {Uint8Array} The normalized 's' value as a Uint8Array.
19
+ *
20
+ * @description
21
+ * This function implements the process of normalizing the 's' value in an ECDSA signature.
22
+ * It ensures that the 's' value is always in the lower half of the curve's order,
23
+ * which helps prevent signature malleability attacks.
24
+ *
25
+ * The function uses the curve order 'n' for secp256k1:
26
+ * n = 0xFFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551
27
+ *
28
+ * If 's' is greater than half of 'n', it is subtracted from 'n' to get the lower value.
29
+ */
30
+ export declare function normalizeS(sBuf: Uint8Array): Uint8Array;
31
+ /**
32
+ * Decode from a Base64URL-encoded string to an ArrayBuffer. Best used when converting a
33
+ * credential ID from a JSON string to an ArrayBuffer, like in allowCredentials or
34
+ * excludeCredentials.
35
+ *
36
+ * @param buffer Value to decode from base64
37
+ * @param to (optional) The decoding to use, in case it's desirable to decode from base64 instead
38
+ */
39
+ export declare function base64UrlToUint8Array(base64urlString: string, isUrl?: boolean): Uint8Array;
40
+ export declare function passkeyHashSignatureResponseFormat(passkeyResponse: {
41
+ authenticatorData: string;
42
+ clientDataJSON: string;
43
+ signature: string;
44
+ }, contracts: {
45
+ passkey: Address;
46
+ }): `0x${string}`;
47
+ //# sourceMappingURL=passkey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passkey.d.ts","sourceRoot":"","sources":["../../../src/utils/passkey.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,KAAK,OAAO,EAAuB,KAAK,GAAG,EAAS,MAAM,MAAM,CAAC;AAiJ1E,eAAO,MAAM,qCAAqC,kBAAmB,UAAU,KAAG,CAAC,MAAM,EAAE,MAAM,CAMhG,CAAC;AAEF,eAAO,MAAM,qCAAqC,gBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,KAAG,UAc/E,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,UAAU,GAAG;IAAE,CAAC,EAAE,UAAU,CAAC;IAAC,CAAC,EAAE,UAAU,CAAA;CAAE,CAiB1F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAUvD;AAaD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,GAAE,OAAc,GAAG,UAAU,CAGhG;AA2DD,wBAAgB,kCAAkC,CAChD,eAAe,EAAE;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB,EACD,SAAS,EAAE;IACT,OAAO,EAAE,OAAO,CAAC;CAClB,iBA6BF"}
@@ -0,0 +1,95 @@
1
+ import { type Address, type Hash } from "viem";
2
+ export declare enum LimitType {
3
+ Unlimited = 0,
4
+ Lifetime = 1,
5
+ Allowance = 2
6
+ }
7
+ /**
8
+ * Limit is the value tracked either for a lifetime or a period on-chain
9
+ * @member limitType - Used to validate limit & period values (unlimited has no limit, lifetime has no period, allowance has both!)
10
+ * @member limit - The limit is exceeded if the tracked value is greater than this over the provided period
11
+ * @member period - The block.timestamp divisor for the limit to be enforced (eg: 60 for a minute, 86400 for a day, 604800 for a week, unset for lifetime)
12
+ */
13
+ export type Limit = {
14
+ limitType: LimitType;
15
+ limit: bigint;
16
+ period: bigint;
17
+ };
18
+ export declare const LimitUnlimited: {
19
+ limitType: LimitType;
20
+ limit: bigint;
21
+ period: bigint;
22
+ };
23
+ export declare const LimitZero: {
24
+ limitType: LimitType;
25
+ limit: bigint;
26
+ period: bigint;
27
+ };
28
+ /**
29
+ * Common logic operators to used combine multiple constraints
30
+ */
31
+ export declare enum ConstraintCondition {
32
+ Unconstrained = 0,
33
+ Equal = 1,
34
+ Greater = 2,
35
+ Less = 3,
36
+ GreaterEqual = 4,
37
+ LessEqual = 5,
38
+ NotEqual = 6
39
+ }
40
+ /**
41
+ * Constraint allows performing logic checks on any binary word (bytes32) in the transaction.
42
+ * This can let you set spend limits against functions on specific contracts
43
+ * @member index - The location of the start of the data in the transaction. This is not the index of the constraint within the containing array!
44
+ * @member condition - The kind of check to perform (None, =, >, <, >=, <=, !=)
45
+ * @member refValue - The value to compare against (as bytes32)
46
+ * @member limit - The limit to enforce on the parsed value (from index)
47
+ */
48
+ export type Constraint = {
49
+ index: bigint;
50
+ condition: ConstraintCondition;
51
+ refValue: Hash;
52
+ limit: Limit;
53
+ };
54
+ /**
55
+ * CallPolicy is a policy for a specific contract (address/function) call.
56
+ * @member target - Only one policy per target per session (unique mapping)
57
+ * @member selector - Solidity function selector (the selector directly), also unique mapping with target
58
+ * @member maxValuePerUse - Will reject transaction if value is set above this amount (for transfer or call)
59
+ * @member valueLimit - If not set, unlimited. If a number or a limit without a period, converts to a lifetime value. Also rejects transactions that have cumulative value greater than what's set here
60
+ * @member constraints - Array of conditions with specific limits for performing range and logic checks (e.g. 5 > x >= 30) on the transaction data (not value!)
61
+ */
62
+ export type CallPolicy = {
63
+ target: Address;
64
+ valueLimit: Limit;
65
+ maxValuePerUse: bigint;
66
+ selector: Hash;
67
+ constraints: Constraint[];
68
+ };
69
+ /**
70
+ * Simplified CallPolicy for transactions with less than 4 bytes of data
71
+ * @member target - Only one policy per target per session (unique mapping from CallPolicies)
72
+ * @member maxValuePerUse - Will reject transaction if value is set above this amount
73
+ * @member valueLimit - Validated from value
74
+ */
75
+ export type TransferPolicy = {
76
+ target: Address;
77
+ maxValuePerUse: bigint;
78
+ valueLimit: Limit;
79
+ };
80
+ /**
81
+ * SessionConfig is a set of policies and metadata to validate a transaction
82
+ * @member signer - The address that signs the transaction (session public key)
83
+ * @member expiresAt - The block.timestamp at which the session is no longer valid
84
+ * @member feeLimit - The maximum fee that can be paid for the transaction (maxFeePerGas * gasLimit)
85
+ * @member callPolicies - Used to validate the transaction data, has complex calldata parsing logic
86
+ * @member transferPolicies - Used to validate the transaction value when there's no additional data
87
+ */
88
+ export type SessionConfig = {
89
+ signer: Address;
90
+ expiresAt: bigint;
91
+ feeLimit: Limit;
92
+ callPolicies: CallPolicy[];
93
+ transferPolicies: TransferPolicy[];
94
+ };
95
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/utils/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,MAAM,CAAC;AAE/C,oBAAY,SAAS;IACnB,SAAS,IAAI;IACb,QAAQ,IAAI;IACZ,SAAS,IAAI;CACd;AAED;;;;;GAKG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,cAAc;;;;CAI1B,CAAC;AAEF,eAAO,MAAM,SAAS;;;;CAIrB,CAAC;AAEF;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,aAAa,IAAI;IACjB,KAAK,IAAI;IACT,OAAO,IAAI;IACX,IAAI,IAAI;IACR,YAAY,IAAI;IAChB,SAAS,IAAI;IACb,QAAQ,IAAI;CACb;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,mBAAmB,CAAC;IAC/B,QAAQ,EAAE,IAAI,CAAC;IACf,KAAK,EAAE,KAAK,CAAC;CACd,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,KAAK,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,IAAI,CAAC;IACf,WAAW,EAAE,UAAU,EAAE,CAAC;CAC3B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,KAAK,CAAC;CACnB,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC;IAChB,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,gBAAgB,EAAE,cAAc,EAAE,CAAC;CACpC,CAAC"}
@@ -0,0 +1,30 @@
1
+ interface StorageLike {
2
+ getItem(key: string): string | null;
3
+ setItem(key: string, value: string): void;
4
+ removeItem(key: string): void;
5
+ }
6
+ interface Serializer<T> {
7
+ read(value: string): T;
8
+ write(value: T): string;
9
+ }
10
+ type ChangeListener<T> = (newValue: T, oldValue: T) => void;
11
+ interface StorageItemOptions<T> {
12
+ storage?: StorageLike;
13
+ serializer?: Serializer<T>;
14
+ onChange?: ChangeListener<T>;
15
+ }
16
+ export declare class StorageItem<T> {
17
+ key: string;
18
+ defaultValue: T;
19
+ storage: StorageLike;
20
+ serializer: Serializer<T>;
21
+ private onChangeCallback?;
22
+ constructor(key: string, defaultValue: T, options?: StorageItemOptions<T>);
23
+ static scopedStorageKey: (key: string) => string;
24
+ get(): T;
25
+ set(value: T): void;
26
+ remove(): void;
27
+ private notifyChange;
28
+ }
29
+ export {};
30
+ //# sourceMappingURL=storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/utils/storage.ts"],"names":[],"mappings":"AAAA,UAAU,WAAW;IACnB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,UAAU,UAAU,CAAC,CAAC;IACpB,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,CAAC;IACvB,KAAK,CAAC,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC;CACzB;AAeD,KAAK,cAAc,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC;AAE5D,UAAU,kBAAkB,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAC3B,QAAQ,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;CAC9B;AAED,qBAAa,WAAW,CAAC,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,CAAC,CAAC;IAChB,OAAO,EAAE,WAAW,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAC1B,OAAO,CAAC,gBAAgB,CAAC,CAAoB;gBAG3C,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,CAAC,EACf,OAAO,GAAE,kBAAkB,CAAC,CAAC,CAAM;IAYrC,MAAM,CAAC,gBAAgB,QAAS,MAAM,YAAyB;IAE/D,GAAG,IAAI,CAAC;IAYR,GAAG,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI;IAOnB,MAAM,IAAI,IAAI;IAMd,OAAO,CAAC,YAAY;CAKrB"}
@@ -0,0 +1,2 @@
1
+ export declare const LIB_VERSION = "0.0.1";
2
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,UAAU,CAAC"}
@@ -0,0 +1,6 @@
1
+ import * as eslintBaseConfig from "../../eslint.config.js";
2
+
3
+ export default [
4
+ { ignores: ["**/node_modules", "**/dist", "**/temp", "**/tmp", "**/tests", "**/test"] },
5
+ ...eslintBaseConfig.default,
6
+ ];