mulguard 1.1.7 → 1.1.8

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 (546) hide show
  1. package/README.md +21 -582
  2. package/adapters.d.ts +2 -0
  3. package/adapters.d.ts.map +1 -0
  4. package/adapters.js +1 -0
  5. package/index.d.ts +329 -0
  6. package/index.d.ts.map +1 -0
  7. package/index.js +145 -0
  8. package/jwt.d.ts +9 -0
  9. package/jwt.d.ts.map +1 -0
  10. package/jwt.js +8 -0
  11. package/lib/actions.d.ts +13 -0
  12. package/lib/actions.d.ts.map +1 -0
  13. package/lib/actions.js +86 -0
  14. package/lib/client.d.ts +104 -0
  15. package/lib/client.d.ts.map +1 -0
  16. package/lib/client.js +95 -0
  17. package/lib/env.d.ts +12 -0
  18. package/lib/env.d.ts.map +1 -0
  19. package/lib/env.js +38 -0
  20. package/lib/index.d.ts +56 -0
  21. package/lib/index.d.ts.map +1 -0
  22. package/lib/index.js +187 -0
  23. package/lib/types.d.ts +24 -0
  24. package/lib/types.d.ts.map +1 -0
  25. package/lib/types.js +1 -0
  26. package/middleware.d.ts +9 -0
  27. package/middleware.d.ts.map +1 -0
  28. package/middleware.js +12 -0
  29. package/next.d.ts +9 -0
  30. package/next.d.ts.map +1 -0
  31. package/next.js +12 -0
  32. package/package.json +117 -126
  33. package/providers/42-school.d.ts +3 -0
  34. package/providers/42-school.d.ts.map +1 -0
  35. package/providers/42-school.js +2 -0
  36. package/providers/apple.d.ts +3 -0
  37. package/providers/apple.d.ts.map +1 -0
  38. package/providers/apple.js +2 -0
  39. package/providers/asgardeo.d.ts +3 -0
  40. package/providers/asgardeo.d.ts.map +1 -0
  41. package/providers/asgardeo.js +2 -0
  42. package/providers/atlassian.d.ts +3 -0
  43. package/providers/atlassian.d.ts.map +1 -0
  44. package/providers/atlassian.js +2 -0
  45. package/providers/auth0.d.ts +3 -0
  46. package/providers/auth0.d.ts.map +1 -0
  47. package/providers/auth0.js +2 -0
  48. package/providers/authentik.d.ts +3 -0
  49. package/providers/authentik.d.ts.map +1 -0
  50. package/providers/authentik.js +2 -0
  51. package/providers/azure-ad-b2c.d.ts +3 -0
  52. package/providers/azure-ad-b2c.d.ts.map +1 -0
  53. package/providers/azure-ad-b2c.js +2 -0
  54. package/providers/azure-ad.d.ts +3 -0
  55. package/providers/azure-ad.d.ts.map +1 -0
  56. package/providers/azure-ad.js +2 -0
  57. package/providers/azure-devops.d.ts +3 -0
  58. package/providers/azure-devops.d.ts.map +1 -0
  59. package/providers/azure-devops.js +2 -0
  60. package/providers/bankid-no.d.ts +3 -0
  61. package/providers/bankid-no.d.ts.map +1 -0
  62. package/providers/bankid-no.js +2 -0
  63. package/providers/battlenet.d.ts +3 -0
  64. package/providers/battlenet.d.ts.map +1 -0
  65. package/providers/battlenet.js +2 -0
  66. package/providers/beyondidentity.d.ts +3 -0
  67. package/providers/beyondidentity.d.ts.map +1 -0
  68. package/providers/beyondidentity.js +2 -0
  69. package/providers/bitbucket.d.ts +3 -0
  70. package/providers/bitbucket.d.ts.map +1 -0
  71. package/providers/bitbucket.js +2 -0
  72. package/providers/box.d.ts +3 -0
  73. package/providers/box.d.ts.map +1 -0
  74. package/providers/box.js +2 -0
  75. package/providers/boxyhq-saml.d.ts +3 -0
  76. package/providers/boxyhq-saml.d.ts.map +1 -0
  77. package/providers/boxyhq-saml.js +2 -0
  78. package/providers/bungie.d.ts +3 -0
  79. package/providers/bungie.d.ts.map +1 -0
  80. package/providers/bungie.js +2 -0
  81. package/providers/click-up.d.ts +3 -0
  82. package/providers/click-up.d.ts.map +1 -0
  83. package/providers/click-up.js +2 -0
  84. package/providers/cognito.d.ts +3 -0
  85. package/providers/cognito.d.ts.map +1 -0
  86. package/providers/cognito.js +2 -0
  87. package/providers/coinbase.d.ts +3 -0
  88. package/providers/coinbase.d.ts.map +1 -0
  89. package/providers/coinbase.js +2 -0
  90. package/providers/concept2.d.ts +3 -0
  91. package/providers/concept2.d.ts.map +1 -0
  92. package/providers/concept2.js +2 -0
  93. package/providers/credentials.d.ts +3 -0
  94. package/providers/credentials.d.ts.map +1 -0
  95. package/providers/credentials.js +2 -0
  96. package/providers/descope.d.ts +3 -0
  97. package/providers/descope.d.ts.map +1 -0
  98. package/providers/descope.js +2 -0
  99. package/providers/discord.d.ts +3 -0
  100. package/providers/discord.d.ts.map +1 -0
  101. package/providers/discord.js +2 -0
  102. package/providers/dribbble.d.ts +3 -0
  103. package/providers/dribbble.d.ts.map +1 -0
  104. package/providers/dribbble.js +2 -0
  105. package/providers/dropbox.d.ts +3 -0
  106. package/providers/dropbox.d.ts.map +1 -0
  107. package/providers/dropbox.js +2 -0
  108. package/providers/duende-identity-server6.d.ts +3 -0
  109. package/providers/duende-identity-server6.d.ts.map +1 -0
  110. package/providers/duende-identity-server6.js +2 -0
  111. package/providers/email.d.ts +3 -0
  112. package/providers/email.d.ts.map +1 -0
  113. package/providers/email.js +2 -0
  114. package/providers/eventbrite.d.ts +3 -0
  115. package/providers/eventbrite.d.ts.map +1 -0
  116. package/providers/eventbrite.js +2 -0
  117. package/providers/eveonline.d.ts +3 -0
  118. package/providers/eveonline.d.ts.map +1 -0
  119. package/providers/eveonline.js +2 -0
  120. package/providers/facebook.d.ts +3 -0
  121. package/providers/facebook.d.ts.map +1 -0
  122. package/providers/facebook.js +2 -0
  123. package/providers/faceit.d.ts +3 -0
  124. package/providers/faceit.d.ts.map +1 -0
  125. package/providers/faceit.js +2 -0
  126. package/providers/figma.d.ts +3 -0
  127. package/providers/figma.d.ts.map +1 -0
  128. package/providers/figma.js +2 -0
  129. package/providers/forwardemail.d.ts +3 -0
  130. package/providers/forwardemail.d.ts.map +1 -0
  131. package/providers/forwardemail.js +2 -0
  132. package/providers/foursquare.d.ts +3 -0
  133. package/providers/foursquare.d.ts.map +1 -0
  134. package/providers/foursquare.js +2 -0
  135. package/providers/freshbooks.d.ts +3 -0
  136. package/providers/freshbooks.d.ts.map +1 -0
  137. package/providers/freshbooks.js +2 -0
  138. package/providers/frontegg.d.ts +3 -0
  139. package/providers/frontegg.d.ts.map +1 -0
  140. package/providers/frontegg.js +2 -0
  141. package/providers/fusionauth.d.ts +3 -0
  142. package/providers/fusionauth.d.ts.map +1 -0
  143. package/providers/fusionauth.js +2 -0
  144. package/providers/github.d.ts +3 -0
  145. package/providers/github.d.ts.map +1 -0
  146. package/providers/github.js +2 -0
  147. package/providers/gitlab.d.ts +3 -0
  148. package/providers/gitlab.d.ts.map +1 -0
  149. package/providers/gitlab.js +2 -0
  150. package/providers/google.d.ts +3 -0
  151. package/providers/google.d.ts.map +1 -0
  152. package/providers/google.js +2 -0
  153. package/providers/hubspot.d.ts +3 -0
  154. package/providers/hubspot.d.ts.map +1 -0
  155. package/providers/hubspot.js +2 -0
  156. package/providers/huggingface.d.ts +3 -0
  157. package/providers/huggingface.d.ts.map +1 -0
  158. package/providers/huggingface.js +2 -0
  159. package/providers/identity-server4.d.ts +3 -0
  160. package/providers/identity-server4.d.ts.map +1 -0
  161. package/providers/identity-server4.js +2 -0
  162. package/providers/index.d.ts +2 -0
  163. package/providers/index.d.ts.map +1 -0
  164. package/providers/index.js +1 -0
  165. package/providers/instagram.d.ts +3 -0
  166. package/providers/instagram.d.ts.map +1 -0
  167. package/providers/instagram.js +2 -0
  168. package/providers/kakao.d.ts +3 -0
  169. package/providers/kakao.d.ts.map +1 -0
  170. package/providers/kakao.js +2 -0
  171. package/providers/keycloak.d.ts +3 -0
  172. package/providers/keycloak.d.ts.map +1 -0
  173. package/providers/keycloak.js +2 -0
  174. package/providers/kinde.d.ts +3 -0
  175. package/providers/kinde.d.ts.map +1 -0
  176. package/providers/kinde.js +2 -0
  177. package/providers/line.d.ts +3 -0
  178. package/providers/line.d.ts.map +1 -0
  179. package/providers/line.js +2 -0
  180. package/providers/linkedin.d.ts +3 -0
  181. package/providers/linkedin.d.ts.map +1 -0
  182. package/providers/linkedin.js +2 -0
  183. package/providers/logto.d.ts +3 -0
  184. package/providers/logto.d.ts.map +1 -0
  185. package/providers/logto.js +2 -0
  186. package/providers/loops.d.ts +3 -0
  187. package/providers/loops.d.ts.map +1 -0
  188. package/providers/loops.js +2 -0
  189. package/providers/mailchimp.d.ts +3 -0
  190. package/providers/mailchimp.d.ts.map +1 -0
  191. package/providers/mailchimp.js +2 -0
  192. package/providers/mailgun.d.ts +3 -0
  193. package/providers/mailgun.d.ts.map +1 -0
  194. package/providers/mailgun.js +2 -0
  195. package/providers/mailru.d.ts +3 -0
  196. package/providers/mailru.d.ts.map +1 -0
  197. package/providers/mailru.js +2 -0
  198. package/providers/mastodon.d.ts +3 -0
  199. package/providers/mastodon.d.ts.map +1 -0
  200. package/providers/mastodon.js +2 -0
  201. package/providers/mattermost.d.ts +3 -0
  202. package/providers/mattermost.d.ts.map +1 -0
  203. package/providers/mattermost.js +2 -0
  204. package/providers/medium.d.ts +3 -0
  205. package/providers/medium.d.ts.map +1 -0
  206. package/providers/medium.js +2 -0
  207. package/providers/microsoft-entra-id.d.ts +3 -0
  208. package/providers/microsoft-entra-id.d.ts.map +1 -0
  209. package/providers/microsoft-entra-id.js +2 -0
  210. package/providers/naver.d.ts +3 -0
  211. package/providers/naver.d.ts.map +1 -0
  212. package/providers/naver.js +2 -0
  213. package/providers/netlify.d.ts +3 -0
  214. package/providers/netlify.d.ts.map +1 -0
  215. package/providers/netlify.js +2 -0
  216. package/providers/netsuite.d.ts +3 -0
  217. package/providers/netsuite.d.ts.map +1 -0
  218. package/providers/netsuite.js +2 -0
  219. package/providers/nextcloud.d.ts +3 -0
  220. package/providers/nextcloud.d.ts.map +1 -0
  221. package/providers/nextcloud.js +2 -0
  222. package/providers/nodemailer.d.ts +3 -0
  223. package/providers/nodemailer.d.ts.map +1 -0
  224. package/providers/nodemailer.js +2 -0
  225. package/providers/notion.d.ts +3 -0
  226. package/providers/notion.d.ts.map +1 -0
  227. package/providers/notion.js +2 -0
  228. package/providers/okta.d.ts +3 -0
  229. package/providers/okta.d.ts.map +1 -0
  230. package/providers/okta.js +2 -0
  231. package/providers/onelogin.d.ts +3 -0
  232. package/providers/onelogin.d.ts.map +1 -0
  233. package/providers/onelogin.js +2 -0
  234. package/providers/ory-hydra.d.ts +3 -0
  235. package/providers/ory-hydra.d.ts.map +1 -0
  236. package/providers/ory-hydra.js +2 -0
  237. package/providers/osso.d.ts +3 -0
  238. package/providers/osso.d.ts.map +1 -0
  239. package/providers/osso.js +2 -0
  240. package/providers/osu.d.ts +3 -0
  241. package/providers/osu.d.ts.map +1 -0
  242. package/providers/osu.js +2 -0
  243. package/providers/passage.d.ts +3 -0
  244. package/providers/passage.d.ts.map +1 -0
  245. package/providers/passage.js +2 -0
  246. package/providers/passkey.d.ts +3 -0
  247. package/providers/passkey.d.ts.map +1 -0
  248. package/providers/passkey.js +2 -0
  249. package/providers/patreon.d.ts +3 -0
  250. package/providers/patreon.d.ts.map +1 -0
  251. package/providers/patreon.js +2 -0
  252. package/providers/ping-id.d.ts +3 -0
  253. package/providers/ping-id.d.ts.map +1 -0
  254. package/providers/ping-id.js +2 -0
  255. package/providers/pinterest.d.ts +3 -0
  256. package/providers/pinterest.d.ts.map +1 -0
  257. package/providers/pinterest.js +2 -0
  258. package/providers/pipedrive.d.ts +3 -0
  259. package/providers/pipedrive.d.ts.map +1 -0
  260. package/providers/pipedrive.js +2 -0
  261. package/providers/postmark.d.ts +3 -0
  262. package/providers/postmark.d.ts.map +1 -0
  263. package/providers/postmark.js +2 -0
  264. package/providers/reddit.d.ts +3 -0
  265. package/providers/reddit.d.ts.map +1 -0
  266. package/providers/reddit.js +2 -0
  267. package/providers/resend.d.ts +3 -0
  268. package/providers/resend.d.ts.map +1 -0
  269. package/providers/resend.js +2 -0
  270. package/providers/roblox.d.ts +3 -0
  271. package/providers/roblox.d.ts.map +1 -0
  272. package/providers/roblox.js +2 -0
  273. package/providers/salesforce.d.ts +3 -0
  274. package/providers/salesforce.d.ts.map +1 -0
  275. package/providers/salesforce.js +2 -0
  276. package/providers/sendgrid.d.ts +3 -0
  277. package/providers/sendgrid.d.ts.map +1 -0
  278. package/providers/sendgrid.js +2 -0
  279. package/providers/simplelogin.d.ts +3 -0
  280. package/providers/simplelogin.d.ts.map +1 -0
  281. package/providers/simplelogin.js +2 -0
  282. package/providers/slack.d.ts +3 -0
  283. package/providers/slack.d.ts.map +1 -0
  284. package/providers/slack.js +2 -0
  285. package/providers/spotify.d.ts +3 -0
  286. package/providers/spotify.d.ts.map +1 -0
  287. package/providers/spotify.js +2 -0
  288. package/providers/strava.d.ts +3 -0
  289. package/providers/strava.d.ts.map +1 -0
  290. package/providers/strava.js +2 -0
  291. package/providers/threads.d.ts +3 -0
  292. package/providers/threads.d.ts.map +1 -0
  293. package/providers/threads.js +2 -0
  294. package/providers/tiktok.d.ts +3 -0
  295. package/providers/tiktok.d.ts.map +1 -0
  296. package/providers/tiktok.js +2 -0
  297. package/providers/todoist.d.ts +3 -0
  298. package/providers/todoist.d.ts.map +1 -0
  299. package/providers/todoist.js +2 -0
  300. package/providers/trakt.d.ts +3 -0
  301. package/providers/trakt.d.ts.map +1 -0
  302. package/providers/trakt.js +2 -0
  303. package/providers/twitch.d.ts +3 -0
  304. package/providers/twitch.d.ts.map +1 -0
  305. package/providers/twitch.js +2 -0
  306. package/providers/twitter.d.ts +3 -0
  307. package/providers/twitter.d.ts.map +1 -0
  308. package/providers/twitter.js +2 -0
  309. package/providers/united-effects.d.ts +3 -0
  310. package/providers/united-effects.d.ts.map +1 -0
  311. package/providers/united-effects.js +2 -0
  312. package/providers/vipps.d.ts +3 -0
  313. package/providers/vipps.d.ts.map +1 -0
  314. package/providers/vipps.js +2 -0
  315. package/providers/vk.d.ts +3 -0
  316. package/providers/vk.d.ts.map +1 -0
  317. package/providers/vk.js +2 -0
  318. package/providers/webauthn.d.ts +3 -0
  319. package/providers/webauthn.d.ts.map +1 -0
  320. package/providers/webauthn.js +2 -0
  321. package/providers/webex.d.ts +3 -0
  322. package/providers/webex.d.ts.map +1 -0
  323. package/providers/webex.js +2 -0
  324. package/providers/wechat.d.ts +3 -0
  325. package/providers/wechat.d.ts.map +1 -0
  326. package/providers/wechat.js +2 -0
  327. package/providers/wikimedia.d.ts +3 -0
  328. package/providers/wikimedia.d.ts.map +1 -0
  329. package/providers/wikimedia.js +2 -0
  330. package/providers/wordpress.d.ts +3 -0
  331. package/providers/wordpress.d.ts.map +1 -0
  332. package/providers/wordpress.js +2 -0
  333. package/providers/workos.d.ts +3 -0
  334. package/providers/workos.d.ts.map +1 -0
  335. package/providers/workos.js +2 -0
  336. package/providers/yandex.d.ts +3 -0
  337. package/providers/yandex.d.ts.map +1 -0
  338. package/providers/yandex.js +2 -0
  339. package/providers/zitadel.d.ts +3 -0
  340. package/providers/zitadel.d.ts.map +1 -0
  341. package/providers/zitadel.js +2 -0
  342. package/providers/zoho.d.ts +3 -0
  343. package/providers/zoho.d.ts.map +1 -0
  344. package/providers/zoho.js +2 -0
  345. package/providers/zoom.d.ts +3 -0
  346. package/providers/zoom.d.ts.map +1 -0
  347. package/providers/zoom.js +2 -0
  348. package/react.d.ts +102 -0
  349. package/react.d.ts.map +1 -0
  350. package/react.js +361 -0
  351. package/src/adapters.ts +1 -0
  352. package/src/index.ts +430 -0
  353. package/src/jwt.ts +9 -0
  354. package/src/lib/actions.ts +144 -0
  355. package/src/lib/client.ts +245 -0
  356. package/src/lib/env.ts +36 -0
  357. package/src/lib/index.ts +313 -0
  358. package/src/lib/types.ts +30 -0
  359. package/src/middleware.ts +16 -0
  360. package/src/next.ts +16 -0
  361. package/src/providers/42-school.ts +2 -0
  362. package/src/providers/apple.ts +2 -0
  363. package/src/providers/asgardeo.ts +2 -0
  364. package/src/providers/atlassian.ts +2 -0
  365. package/src/providers/auth0.ts +2 -0
  366. package/src/providers/authentik.ts +2 -0
  367. package/src/providers/azure-ad-b2c.ts +2 -0
  368. package/src/providers/azure-ad.ts +2 -0
  369. package/src/providers/azure-devops.ts +2 -0
  370. package/src/providers/bankid-no.ts +2 -0
  371. package/src/providers/battlenet.ts +2 -0
  372. package/src/providers/beyondidentity.ts +2 -0
  373. package/src/providers/bitbucket.ts +2 -0
  374. package/src/providers/box.ts +2 -0
  375. package/src/providers/boxyhq-saml.ts +2 -0
  376. package/src/providers/bungie.ts +2 -0
  377. package/src/providers/click-up.ts +2 -0
  378. package/src/providers/cognito.ts +2 -0
  379. package/src/providers/coinbase.ts +2 -0
  380. package/src/providers/concept2.ts +2 -0
  381. package/src/providers/credentials.ts +2 -0
  382. package/src/providers/descope.ts +2 -0
  383. package/src/providers/discord.ts +2 -0
  384. package/src/providers/dribbble.ts +2 -0
  385. package/src/providers/dropbox.ts +2 -0
  386. package/src/providers/duende-identity-server6.ts +2 -0
  387. package/src/providers/email.ts +2 -0
  388. package/src/providers/eventbrite.ts +2 -0
  389. package/src/providers/eveonline.ts +2 -0
  390. package/src/providers/facebook.ts +2 -0
  391. package/src/providers/faceit.ts +2 -0
  392. package/src/providers/figma.ts +2 -0
  393. package/src/providers/forwardemail.ts +2 -0
  394. package/src/providers/foursquare.ts +2 -0
  395. package/src/providers/freshbooks.ts +2 -0
  396. package/src/providers/frontegg.ts +2 -0
  397. package/src/providers/fusionauth.ts +2 -0
  398. package/src/providers/github.ts +2 -0
  399. package/src/providers/gitlab.ts +2 -0
  400. package/src/providers/google.ts +2 -0
  401. package/src/providers/hubspot.ts +2 -0
  402. package/src/providers/huggingface.ts +2 -0
  403. package/src/providers/identity-server4.ts +2 -0
  404. package/src/providers/index.ts +1 -0
  405. package/src/providers/instagram.ts +2 -0
  406. package/src/providers/kakao.ts +2 -0
  407. package/src/providers/keycloak.ts +2 -0
  408. package/src/providers/kinde.ts +2 -0
  409. package/src/providers/line.ts +2 -0
  410. package/src/providers/linkedin.ts +2 -0
  411. package/src/providers/logto.ts +2 -0
  412. package/src/providers/loops.ts +2 -0
  413. package/src/providers/mailchimp.ts +2 -0
  414. package/src/providers/mailgun.ts +2 -0
  415. package/src/providers/mailru.ts +2 -0
  416. package/src/providers/mastodon.ts +2 -0
  417. package/src/providers/mattermost.ts +2 -0
  418. package/src/providers/medium.ts +2 -0
  419. package/src/providers/microsoft-entra-id.ts +2 -0
  420. package/src/providers/naver.ts +2 -0
  421. package/src/providers/netlify.ts +2 -0
  422. package/src/providers/netsuite.ts +2 -0
  423. package/src/providers/nextcloud.ts +2 -0
  424. package/src/providers/nodemailer.ts +2 -0
  425. package/src/providers/notion.ts +2 -0
  426. package/src/providers/okta.ts +2 -0
  427. package/src/providers/onelogin.ts +2 -0
  428. package/src/providers/ory-hydra.ts +2 -0
  429. package/src/providers/osso.ts +2 -0
  430. package/src/providers/osu.ts +2 -0
  431. package/src/providers/passage.ts +2 -0
  432. package/src/providers/passkey.ts +2 -0
  433. package/src/providers/patreon.ts +2 -0
  434. package/src/providers/ping-id.ts +2 -0
  435. package/src/providers/pinterest.ts +2 -0
  436. package/src/providers/pipedrive.ts +2 -0
  437. package/src/providers/postmark.ts +2 -0
  438. package/src/providers/reddit.ts +2 -0
  439. package/src/providers/resend.ts +2 -0
  440. package/src/providers/roblox.ts +2 -0
  441. package/src/providers/salesforce.ts +2 -0
  442. package/src/providers/sendgrid.ts +2 -0
  443. package/src/providers/simplelogin.ts +2 -0
  444. package/src/providers/slack.ts +2 -0
  445. package/src/providers/spotify.ts +2 -0
  446. package/src/providers/strava.ts +2 -0
  447. package/src/providers/threads.ts +2 -0
  448. package/src/providers/tiktok.ts +2 -0
  449. package/src/providers/todoist.ts +2 -0
  450. package/src/providers/trakt.ts +2 -0
  451. package/src/providers/twitch.ts +2 -0
  452. package/src/providers/twitter.ts +2 -0
  453. package/src/providers/united-effects.ts +2 -0
  454. package/src/providers/vipps.ts +2 -0
  455. package/src/providers/vk.ts +2 -0
  456. package/src/providers/webauthn.ts +2 -0
  457. package/src/providers/webex.ts +2 -0
  458. package/src/providers/wechat.ts +2 -0
  459. package/src/providers/wikimedia.ts +2 -0
  460. package/src/providers/wordpress.ts +2 -0
  461. package/src/providers/workos.ts +2 -0
  462. package/src/providers/yandex.ts +2 -0
  463. package/src/providers/zitadel.ts +2 -0
  464. package/src/providers/zoho.ts +2 -0
  465. package/src/providers/zoom.ts +2 -0
  466. package/src/react.tsx +546 -0
  467. package/src/webauthn.ts +152 -0
  468. package/webauthn.d.ts +9 -0
  469. package/webauthn.d.ts.map +1 -0
  470. package/webauthn.js +92 -0
  471. package/LICENSE +0 -70
  472. package/dist/actions-CMtg7FGv.js +0 -1
  473. package/dist/actions-CjQUKaXF.mjs +0 -200
  474. package/dist/client/index.js +0 -1
  475. package/dist/client/index.mjs +0 -484
  476. package/dist/components/AccountPicker.d.ts +0 -11
  477. package/dist/components/OAuthButton.d.ts +0 -11
  478. package/dist/components/PassKeyButton.d.ts +0 -11
  479. package/dist/components/PassKeyRegister.d.ts +0 -10
  480. package/dist/components/TwoFactorSetup.d.ts +0 -8
  481. package/dist/components/TwoFactorVerify.d.ts +0 -9
  482. package/dist/core/account-picker/encryption.d.ts +0 -22
  483. package/dist/core/account-picker/index.d.ts +0 -22
  484. package/dist/core/auth/email-password.d.ts +0 -145
  485. package/dist/core/auth/oauth/index.d.ts +0 -14
  486. package/dist/core/auth/oauth/oauth-handler.d.ts +0 -172
  487. package/dist/core/auth/oauth/pkce.d.ts +0 -168
  488. package/dist/core/auth/oauth/providers.d.ts +0 -198
  489. package/dist/core/auth/oauth/state-store-cookie.d.ts +0 -83
  490. package/dist/core/auth/oauth/state-store-redis.d.ts +0 -25
  491. package/dist/core/auth/oauth/state-store.d.ts +0 -48
  492. package/dist/core/auth/otp.d.ts +0 -184
  493. package/dist/core/auth/passkey.d.ts +0 -35
  494. package/dist/core/auth/password.d.ts +0 -22
  495. package/dist/core/auth/signin-unified.d.ts +0 -33
  496. package/dist/core/auth/two-factor.d.ts +0 -28
  497. package/dist/core/client/index.d.ts +0 -132
  498. package/dist/core/client/token-refresh-manager.d.ts +0 -48
  499. package/dist/core/errors/index.d.ts +0 -269
  500. package/dist/core/index.d.ts +0 -9
  501. package/dist/core/logger/index.d.ts +0 -147
  502. package/dist/core/mulguard/auth-handlers.d.ts +0 -100
  503. package/dist/core/mulguard/defaults.d.ts +0 -58
  504. package/dist/core/mulguard/index.d.ts +0 -9
  505. package/dist/core/mulguard/integration.d.ts +0 -104
  506. package/dist/core/mulguard/oauth-handler.d.ts +0 -93
  507. package/dist/core/mulguard/session-manager.d.ts +0 -94
  508. package/dist/core/security/csrf.d.ts +0 -46
  509. package/dist/core/security/headers.d.ts +0 -24
  510. package/dist/core/security/index.d.ts +0 -132
  511. package/dist/core/security/rate-limit.d.ts +0 -39
  512. package/dist/core/security/security-manager.d.ts +0 -236
  513. package/dist/core/security/validation.d.ts +0 -251
  514. package/dist/core/security/xss.d.ts +0 -20
  515. package/dist/core/session/index.d.ts +0 -35
  516. package/dist/core/session/session-manager.d.ts +0 -235
  517. package/dist/core/types/auth.d.ts +0 -290
  518. package/dist/core/types/errors.d.ts +0 -200
  519. package/dist/core/types/index.d.ts +0 -484
  520. package/dist/core/utils/auth-helpers.d.ts +0 -136
  521. package/dist/core/utils/logger.d.ts +0 -121
  522. package/dist/index/index.js +0 -1
  523. package/dist/index/index.mjs +0 -2736
  524. package/dist/index.d.ts +0 -18
  525. package/dist/mulguard.d.ts +0 -373
  526. package/dist/nextjs/client/hooks.d.ts +0 -122
  527. package/dist/nextjs/client/index.d.ts +0 -13
  528. package/dist/nextjs/client/provider.d.ts +0 -69
  529. package/dist/nextjs/client/server-actions-helper.d.ts +0 -22
  530. package/dist/nextjs/handlers/api.d.ts +0 -10
  531. package/dist/nextjs/handlers/index.d.ts +0 -9
  532. package/dist/nextjs/handlers/route.d.ts +0 -76
  533. package/dist/nextjs/index.d.ts +0 -15
  534. package/dist/nextjs/proxy/index.d.ts +0 -149
  535. package/dist/nextjs/proxy/security.d.ts +0 -9
  536. package/dist/nextjs/server/actions.d.ts +0 -30
  537. package/dist/nextjs/server/auth.d.ts +0 -65
  538. package/dist/nextjs/server/cookies.d.ts +0 -41
  539. package/dist/nextjs/server/index.d.ts +0 -18
  540. package/dist/nextjs/server/oauth-state.d.ts +0 -32
  541. package/dist/nextjs/server/session-helpers.d.ts +0 -24
  542. package/dist/nextjs/server/session.d.ts +0 -144
  543. package/dist/oauth-state-Drwz6fES.js +0 -1
  544. package/dist/oauth-state-pdypStuS.mjs +0 -210
  545. package/dist/server/index.js +0 -1
  546. package/dist/server/index.mjs +0 -29
@@ -1,484 +0,0 @@
1
- import { useState as p, useCallback as l, useEffect as h, createContext as x, useContext as N } from "react";
2
- import { jsx as _ } from "react/jsx-runtime";
3
- function E() {
4
- return typeof window > "u";
5
- }
6
- async function S() {
7
- try {
8
- return await import("../actions-CjQUKaXF.mjs").then((a) => a.h);
9
- } catch {
10
- return null;
11
- }
12
- }
13
- async function b(e, a) {
14
- if (E())
15
- return e.verify2FA ? e.verify2FA(a) : {
16
- success: !1,
17
- error: "2FA verification is not configured"
18
- };
19
- try {
20
- const r = await S();
21
- if (r)
22
- return await r.verify2FAAction(e, a);
23
- } catch {
24
- }
25
- try {
26
- const r = await fetch("/api/auth/verify-2fa", {
27
- method: "POST",
28
- headers: {
29
- "Content-Type": "application/json"
30
- },
31
- credentials: "include",
32
- body: JSON.stringify(a)
33
- });
34
- if (!r.ok) {
35
- const c = await r.json().catch(() => ({}));
36
- return {
37
- success: !1,
38
- error: c.error || "2FA verification failed",
39
- errorCode: c.errorCode
40
- };
41
- }
42
- return await r.json();
43
- } catch (r) {
44
- return {
45
- success: !1,
46
- error: r instanceof Error ? r.message : "2FA verification failed"
47
- };
48
- }
49
- }
50
- async function D(e, a) {
51
- var r;
52
- if (E())
53
- return (r = e.signIn) != null && r.email ? e.signIn.email(a) : {
54
- success: !1,
55
- error: "Email sign in is not configured"
56
- };
57
- try {
58
- const c = await S();
59
- if (c)
60
- return await c.signInEmailAction(e, a);
61
- } catch {
62
- }
63
- try {
64
- const c = await fetch("/api/auth/sign-in", {
65
- method: "POST",
66
- headers: {
67
- "Content-Type": "application/json"
68
- },
69
- credentials: "include",
70
- body: JSON.stringify({ provider: "email", credentials: a })
71
- });
72
- if (!c.ok) {
73
- const f = await c.json().catch(() => ({}));
74
- return {
75
- success: !1,
76
- error: f.error || "Sign in failed",
77
- errorCode: f.errorCode
78
- };
79
- }
80
- return await c.json();
81
- } catch (c) {
82
- return {
83
- success: !1,
84
- error: c instanceof Error ? c.message : "Sign in failed"
85
- };
86
- }
87
- }
88
- async function L(e, a) {
89
- if (E())
90
- return e.signUp ? e.signUp(a) : {
91
- success: !1,
92
- error: "Sign up is not configured"
93
- };
94
- try {
95
- const r = await S();
96
- if (r)
97
- return await r.signUpAction(e, a);
98
- } catch {
99
- }
100
- try {
101
- const r = await fetch("/api/auth/sign-up", {
102
- method: "POST",
103
- headers: {
104
- "Content-Type": "application/json"
105
- },
106
- credentials: "include",
107
- body: JSON.stringify(a)
108
- });
109
- if (!r.ok) {
110
- const c = await r.json().catch(() => ({}));
111
- return {
112
- success: !1,
113
- error: c.error || "Sign up failed",
114
- errorCode: c.errorCode
115
- };
116
- }
117
- return await r.json();
118
- } catch (r) {
119
- return {
120
- success: !1,
121
- error: r instanceof Error ? r.message : "Sign up failed"
122
- };
123
- }
124
- }
125
- function M(e) {
126
- const [a, r] = p(null), [c, f] = p(!0), t = l(async (n = !1) => {
127
- f(!0);
128
- try {
129
- const s = "/api/auth/session" + (n ? `?t=${Date.now()}` : ""), i = await fetch(s, {
130
- method: "GET",
131
- credentials: "include",
132
- // Include cookies in request
133
- headers: {
134
- "Content-Type": "application/json",
135
- "Cache-Control": "no-cache, no-store, must-revalidate",
136
- // ✅ FIX: Prevent caching
137
- Pragma: "no-cache",
138
- Expires: "0"
139
- },
140
- cache: "no-store"
141
- // ✅ FIX: Prevent caching
142
- });
143
- if (i.status === 401 || i.status === 403) {
144
- r(null);
145
- return;
146
- }
147
- if (i.ok) {
148
- const o = await i.json();
149
- o.session ? r(o.session) : r(null);
150
- } else
151
- r(null);
152
- } catch (s) {
153
- process.env.NODE_ENV === "development" && console.error("Failed to load session:", s), r(null);
154
- } finally {
155
- f(!1);
156
- }
157
- }, [e]), g = l((n) => {
158
- if (!n || !n.expiresAt || !e.refreshSession)
159
- return () => {
160
- };
161
- const s = new Date(n.expiresAt), i = /* @__PURE__ */ new Date(), o = s.getTime() - i.getTime(), u = 5 * 60 * 1e3;
162
- if (o > 0 && o < u)
163
- return e.refreshSession().catch(() => {
164
- }), () => {
165
- };
166
- if (o > u) {
167
- const m = o - u, A = setTimeout(() => {
168
- var I;
169
- (I = e.refreshSession) == null || I.call(e).catch(() => {
170
- });
171
- }, m);
172
- return () => clearTimeout(A);
173
- }
174
- return () => {
175
- };
176
- }, [e]);
177
- h(() => {
178
- let n = null;
179
- (async () => {
180
- await t();
181
- try {
182
- const o = await fetch("/api/auth/session", {
183
- method: "GET",
184
- credentials: "include",
185
- headers: {
186
- "Content-Type": "application/json"
187
- },
188
- cache: "no-store"
189
- // ✅ FIX: Prevent caching
190
- });
191
- if (o.ok) {
192
- const u = await o.json();
193
- u.session ? n = g(u.session) : r(null);
194
- } else
195
- r(null);
196
- } catch (o) {
197
- process.env.NODE_ENV === "development" && console.debug("Failed to schedule proactive refresh:", o), r(null);
198
- }
199
- })();
200
- const i = setInterval(() => {
201
- fetch("/api/auth/session", {
202
- method: "GET",
203
- credentials: "include",
204
- headers: {
205
- "Content-Type": "application/json"
206
- },
207
- cache: "no-store"
208
- // ✅ FIX: Prevent caching
209
- }).then((o) => o.status === 401 || o.status === 403 ? (r(null), n && (n(), n = null), typeof window < "u" && window.location.pathname !== "/auth/login" && window.location.replace("/auth/login?reason=session_expired"), null) : o.json()).then((o) => {
210
- o && (o.session ? (r(o.session), n && n(), n = g(o.session)) : (r(null), n && (n(), n = null)));
211
- }).catch(() => {
212
- r(null), n && (n(), n = null);
213
- });
214
- }, 60 * 1e3);
215
- return () => {
216
- clearInterval(i), n && n();
217
- };
218
- }, [t, g]);
219
- const y = l(
220
- async (n) => {
221
- try {
222
- const s = await D(e, n);
223
- return s.success && await t(), s;
224
- } catch (s) {
225
- return {
226
- success: !1,
227
- error: s instanceof Error ? s.message : "Sign in failed"
228
- };
229
- }
230
- },
231
- [e, t]
232
- ), w = l(
233
- async (n) => {
234
- if (!e.signIn.oauth)
235
- throw new Error("OAuth sign in is not configured");
236
- return e.signIn.oauth(n);
237
- },
238
- [e]
239
- ), d = l(
240
- async (n) => {
241
- if (!e.signIn.passkey)
242
- return {
243
- success: !1,
244
- error: "PassKey sign in is not configured"
245
- };
246
- try {
247
- const s = await e.signIn.passkey(n);
248
- return s.success && await t(), s;
249
- } catch (s) {
250
- return {
251
- success: !1,
252
- error: s instanceof Error ? s.message : "PassKey authentication failed"
253
- };
254
- }
255
- },
256
- [e, t]
257
- ), v = l(
258
- async (n) => {
259
- if (!e.signUp)
260
- return {
261
- success: !1,
262
- error: "Sign up is not configured"
263
- };
264
- try {
265
- const s = await L(e, n);
266
- return s.success && await t(), s;
267
- } catch (s) {
268
- return {
269
- success: !1,
270
- error: s instanceof Error ? s.message : "Sign up failed"
271
- };
272
- }
273
- },
274
- [e, t]
275
- ), C = l(async () => {
276
- var n, s;
277
- try {
278
- if (r(null), f(!0), typeof window < "u") {
279
- try {
280
- window.sessionStorage.clear();
281
- } catch {
282
- }
283
- try {
284
- const i = (n = e._getSessionConfig) == null ? void 0 : n.call(e), o = (i == null ? void 0 : i.cookieName) || "__mulguard_session";
285
- try {
286
- window.localStorage.removeItem(o);
287
- } catch {
288
- }
289
- } catch {
290
- }
291
- }
292
- if (await e.signOut(), await t(!0), r(null), f(!1), typeof window < "u") {
293
- const i = "/auth/login", o = window.location.pathname, u = window.location.search;
294
- if (o === i || o.startsWith("/auth/")) {
295
- window.location.reload();
296
- return;
297
- }
298
- const m = new URL(i, window.location.origin);
299
- o && o !== "/" && m.searchParams.set("redirect", o + u), window.location.replace(m.toString());
300
- }
301
- } catch (i) {
302
- if (process.env.NODE_ENV === "development" && console.error("Sign out error:", i), r(null), f(!1), typeof window < "u") {
303
- try {
304
- window.sessionStorage.clear();
305
- const u = (s = e._getSessionConfig) == null ? void 0 : s.call(e), m = (u == null ? void 0 : u.cookieName) || "__mulguard_session";
306
- try {
307
- window.localStorage.removeItem(m);
308
- } catch {
309
- }
310
- } catch {
311
- }
312
- const o = "/auth/login";
313
- window.location.pathname !== o && !window.location.pathname.startsWith("/auth/") ? window.location.replace(o) : window.location.reload();
314
- }
315
- }
316
- }, [e, t]), U = l(
317
- async (n) => {
318
- if (!e.resetPassword)
319
- throw new Error("Password reset is not configured");
320
- return e.resetPassword(n);
321
- },
322
- [e]
323
- ), T = l(
324
- async (n) => {
325
- if (!e.verifyEmail)
326
- throw new Error("Email verification is not configured");
327
- return e.verifyEmail(n);
328
- },
329
- [e]
330
- ), F = l(
331
- async (n) => {
332
- if (!e.verify2FA)
333
- return {
334
- success: !1,
335
- error: "2FA verification is not configured"
336
- };
337
- try {
338
- const s = await b(e, n);
339
- return s.success && (await new Promise((i) => setTimeout(i, 100)), await t()), s;
340
- } catch (s) {
341
- return {
342
- success: !1,
343
- error: s instanceof Error ? s.message : "2FA verification failed"
344
- };
345
- }
346
- },
347
- [e, t]
348
- ), j = l(
349
- async (n, s) => n === "credentials" ? !s || !("email" in s) || !("password" in s) ? {
350
- success: !1,
351
- error: "Credentials are required"
352
- } : e.signIn("credentials", s) : n === "otp" ? !s || !("email" in s) ? {
353
- success: !1,
354
- error: "Email is required"
355
- } : e.signIn("otp", s) : n === "passkey" ? e.signIn("passkey", s) : e.signIn(n),
356
- [e]
357
- );
358
- return {
359
- session: a,
360
- isLoading: c,
361
- signIn: j,
362
- signInMethods: {
363
- email: y,
364
- oauth: w,
365
- passkey: d,
366
- otp: l(
367
- async (n, s) => {
368
- if (!e.signIn.otp)
369
- return {
370
- success: !1,
371
- error: "OTP sign in is not configured"
372
- };
373
- try {
374
- const i = await e.signIn.otp(n, s);
375
- return i.success && await t(), i;
376
- } catch (i) {
377
- return {
378
- success: !1,
379
- error: i instanceof Error ? i.message : "OTP sign in failed"
380
- };
381
- }
382
- },
383
- [e, t]
384
- )
385
- },
386
- signUp: v,
387
- signOut: C,
388
- resetPassword: U,
389
- verifyEmail: T,
390
- verify2FA: F
391
- };
392
- }
393
- function W(e) {
394
- const [a, r] = p(null), [c, f] = p(!0), [t, g] = p(null), y = l(async () => {
395
- f(!0), g(null);
396
- try {
397
- const w = await e.getSession();
398
- r(w);
399
- } catch (w) {
400
- const d = w instanceof Error ? w : new Error("Failed to load session");
401
- g(d), r(null);
402
- } finally {
403
- f(!1);
404
- }
405
- }, [e]);
406
- return h(() => {
407
- y();
408
- const w = setInterval(() => {
409
- y();
410
- }, 5 * 60 * 1e3);
411
- return () => clearInterval(w);
412
- }, [y]), {
413
- session: a,
414
- isLoading: c,
415
- error: t
416
- };
417
- }
418
- function R(e) {
419
- const [a, r] = p([]), [c, f] = p(!0), t = l(async () => {
420
- if (!e.accountPicker) {
421
- r([]), f(!1);
422
- return;
423
- }
424
- f(!0);
425
- try {
426
- const d = await e.accountPicker.getLastUsers();
427
- r(d);
428
- } catch (d) {
429
- process.env.NODE_ENV === "development" && console.error("Failed to load last users:", d), r([]);
430
- } finally {
431
- f(!1);
432
- }
433
- }, [e]);
434
- h(() => {
435
- t();
436
- }, [t]);
437
- const g = l(
438
- async (d, v) => {
439
- e.accountPicker && (await e.accountPicker.rememberUser(d, v), await t());
440
- },
441
- [e, t]
442
- ), y = l(
443
- async (d) => {
444
- e.accountPicker && (await e.accountPicker.clearUser(d), await t());
445
- },
446
- [e, t]
447
- ), w = l(async () => {
448
- e.accountPicker && (await e.accountPicker.clearAll(), await t());
449
- }, [e, t]);
450
- return {
451
- lastUsers: a,
452
- isLoading: c,
453
- rememberUser: g,
454
- clearUser: y,
455
- clearAll: w,
456
- refresh: t
457
- };
458
- }
459
- const P = x(null);
460
- function V({ auth: e, children: a }) {
461
- const r = W(e), c = R(e);
462
- return /* @__PURE__ */ _(P.Provider, { value: { auth: e, session: r, accountPicker: c }, children: a });
463
- }
464
- function k() {
465
- const e = N(P);
466
- if (!e)
467
- throw new Error("useMulguardContext must be used within MulguardProvider");
468
- return e;
469
- }
470
- function q() {
471
- const { auth: e } = k();
472
- return M(e);
473
- }
474
- const z = V, K = k;
475
- export {
476
- z as AuthProvider,
477
- V as MulguardProvider,
478
- R as useAccountPicker,
479
- M as useAuth,
480
- K as useAuthContext,
481
- q as useAuthFromContext,
482
- k as useMulguardContext,
483
- W as useSession
484
- };
@@ -1,11 +0,0 @@
1
- import { MulguardInstance } from '../mulguard';
2
- import { RememberedUser } from '../core/types';
3
- interface AccountPickerProps {
4
- auth: MulguardInstance;
5
- onSelectUser?: (user: RememberedUser) => void;
6
- onUseDifferentAccount?: () => void;
7
- maxDisplay?: number;
8
- className?: string;
9
- }
10
- export declare function AccountPicker({ auth, onSelectUser, onUseDifferentAccount, maxDisplay, className, }: AccountPickerProps): import("react/jsx-runtime").JSX.Element | null;
11
- export {};
@@ -1,11 +0,0 @@
1
- import { MulguardInstance } from '../mulguard';
2
- interface OAuthButtonProps {
3
- auth: MulguardInstance;
4
- provider: string;
5
- children?: React.ReactNode;
6
- className?: string;
7
- onSuccess?: () => void;
8
- onError?: (error: string) => void;
9
- }
10
- export declare function OAuthButton({ auth, provider, children, className, onSuccess, onError, }: OAuthButtonProps): import("react/jsx-runtime").JSX.Element;
11
- export {};
@@ -1,11 +0,0 @@
1
- import { MulguardInstance } from '../mulguard';
2
- interface PassKeyButtonProps {
3
- auth: MulguardInstance;
4
- children?: React.ReactNode;
5
- className?: string;
6
- onSuccess?: () => void;
7
- onError?: (error: string) => void;
8
- userId?: string;
9
- }
10
- export declare function PassKeyButton({ auth, children, className, onSuccess, onError, userId, }: PassKeyButtonProps): import("react/jsx-runtime").JSX.Element;
11
- export {};
@@ -1,10 +0,0 @@
1
- import { MulguardInstance } from '../mulguard';
2
- interface PassKeyRegisterProps {
3
- auth: MulguardInstance;
4
- onSuccess?: (passkeyId: string) => void;
5
- onError?: (error: string) => void;
6
- userId?: string;
7
- defaultName?: string;
8
- }
9
- export declare function PassKeyRegister({ auth, onSuccess, onError, userId, defaultName, }: PassKeyRegisterProps): import("react/jsx-runtime").JSX.Element;
10
- export {};
@@ -1,8 +0,0 @@
1
- import { MulguardInstance } from '../mulguard';
2
- interface TwoFactorSetupProps {
3
- auth: MulguardInstance;
4
- onSuccess?: () => void;
5
- onError?: (error: string) => void;
6
- }
7
- export declare function TwoFactorSetup({ auth, onSuccess, onError }: TwoFactorSetupProps): import("react/jsx-runtime").JSX.Element | null;
8
- export {};
@@ -1,9 +0,0 @@
1
- import { MulguardInstance } from '../mulguard';
2
- interface TwoFactorVerifyProps {
3
- auth: MulguardInstance;
4
- onSuccess?: () => void;
5
- onError?: (error: string) => void;
6
- onUseBackupCode?: () => void;
7
- }
8
- export declare function TwoFactorVerify({ auth, onSuccess, onError, onUseBackupCode }: TwoFactorVerifyProps): import("react/jsx-runtime").JSX.Element;
9
- export {};
@@ -1,22 +0,0 @@
1
- /**
2
- * Account Picker Encryption Utilities
3
- * Supports multiple encryption methods for account picker storage
4
- */
5
- export type EncryptionMethod = 'none' | 'base64' | 'aes-gcm';
6
- /**
7
- * Encryption result with metadata
8
- */
9
- interface EncryptionResult {
10
- data: string;
11
- method: EncryptionMethod;
12
- iv?: string;
13
- }
14
- /**
15
- * Encrypt data based on method
16
- */
17
- export declare function encryptData(data: string, method?: EncryptionMethod): Promise<EncryptionResult>;
18
- /**
19
- * Decrypt data - auto-detects method from stored data or uses provided method
20
- */
21
- export declare function decryptData(encrypted: string, method?: EncryptionMethod): Promise<string>;
22
- export {};
@@ -1,22 +0,0 @@
1
- import { RememberedUser, User } from '../types';
2
- import { EncryptionMethod } from './encryption';
3
- export type { EncryptionMethod } from './encryption';
4
- export interface AccountPickerConfig {
5
- enabled: boolean;
6
- maxAccounts?: number;
7
- /** @deprecated Use encryptionMethod instead. If true, defaults to 'base64' */
8
- encryptStorage?: boolean;
9
- /** Encryption method: 'none' | 'base64' | 'aes-gcm' (default: 'base64' for backward compatibility) */
10
- encryptionMethod?: EncryptionMethod;
11
- storageKey?: string;
12
- }
13
- export interface AccountPickerMethods {
14
- getLastUsers(): Promise<RememberedUser[]>;
15
- rememberUser(user: User, provider?: 'email' | 'oauth' | 'passkey'): Promise<void>;
16
- clearUser(userId: string): Promise<void>;
17
- clearAll(): Promise<void>;
18
- }
19
- /**
20
- * Create Account Picker methods
21
- */
22
- export declare function createAccountPickerMethods(config: AccountPickerConfig): AccountPickerMethods;