@better-auth/core 1.7.0-beta.4 → 1.7.0-beta.5

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 (150) hide show
  1. package/dist/api/index.d.mts +3 -3
  2. package/dist/context/global.mjs +1 -1
  3. package/dist/db/adapter/factory.mjs +2 -2
  4. package/dist/db/get-tables.mjs +3 -3
  5. package/dist/db/schema/account.d.mts +1 -1
  6. package/dist/db/schema/account.mjs +1 -1
  7. package/dist/env/env-impl.mjs +1 -1
  8. package/dist/error/codes.d.mts +5 -0
  9. package/dist/error/codes.mjs +5 -0
  10. package/dist/index.d.mts +2 -2
  11. package/dist/instrumentation/tracer.mjs +1 -1
  12. package/dist/oauth2/create-authorization-url.d.mts +4 -1
  13. package/dist/oauth2/create-authorization-url.mjs +5 -2
  14. package/dist/oauth2/index.d.mts +4 -2
  15. package/dist/oauth2/index.mjs +3 -1
  16. package/dist/oauth2/oauth-provider.d.mts +128 -9
  17. package/dist/oauth2/refresh-access-token.mjs +1 -1
  18. package/dist/oauth2/scopes.d.mts +76 -0
  19. package/dist/oauth2/scopes.mjs +96 -0
  20. package/dist/oauth2/utils.mjs +2 -1
  21. package/dist/oauth2/verify-id-token.d.mts +26 -0
  22. package/dist/oauth2/verify-id-token.mjs +62 -0
  23. package/dist/oauth2/verify.d.mts +14 -0
  24. package/dist/oauth2/verify.mjs +23 -7
  25. package/dist/social-providers/apple.d.mts +14 -2
  26. package/dist/social-providers/apple.mjs +12 -36
  27. package/dist/social-providers/atlassian.d.mts +5 -1
  28. package/dist/social-providers/atlassian.mjs +4 -4
  29. package/dist/social-providers/cognito.d.mts +13 -2
  30. package/dist/social-providers/cognito.mjs +24 -32
  31. package/dist/social-providers/discord.d.mts +5 -1
  32. package/dist/social-providers/discord.mjs +7 -6
  33. package/dist/social-providers/dropbox.d.mts +5 -1
  34. package/dist/social-providers/dropbox.mjs +5 -5
  35. package/dist/social-providers/facebook.d.mts +21 -2
  36. package/dist/social-providers/facebook.mjs +46 -22
  37. package/dist/social-providers/figma.d.mts +5 -1
  38. package/dist/social-providers/figma.mjs +5 -5
  39. package/dist/social-providers/github.d.mts +5 -1
  40. package/dist/social-providers/github.mjs +4 -4
  41. package/dist/social-providers/gitlab.d.mts +5 -1
  42. package/dist/social-providers/gitlab.mjs +6 -6
  43. package/dist/social-providers/google.d.mts +29 -3
  44. package/dist/social-providers/google.mjs +24 -30
  45. package/dist/social-providers/huggingface.d.mts +5 -1
  46. package/dist/social-providers/huggingface.mjs +8 -8
  47. package/dist/social-providers/index.d.mts +221 -42
  48. package/dist/social-providers/kakao.d.mts +5 -1
  49. package/dist/social-providers/kakao.mjs +8 -8
  50. package/dist/social-providers/kick.d.mts +5 -1
  51. package/dist/social-providers/kick.mjs +4 -4
  52. package/dist/social-providers/line.d.mts +8 -2
  53. package/dist/social-providers/line.mjs +12 -14
  54. package/dist/social-providers/linear.d.mts +5 -1
  55. package/dist/social-providers/linear.mjs +4 -4
  56. package/dist/social-providers/linkedin.d.mts +5 -1
  57. package/dist/social-providers/linkedin.mjs +10 -10
  58. package/dist/social-providers/microsoft-entra-id.d.mts +31 -6
  59. package/dist/social-providers/microsoft-entra-id.mjs +26 -37
  60. package/dist/social-providers/naver.d.mts +5 -1
  61. package/dist/social-providers/naver.mjs +4 -4
  62. package/dist/social-providers/notion.d.mts +5 -1
  63. package/dist/social-providers/notion.mjs +4 -4
  64. package/dist/social-providers/paybin.d.mts +5 -1
  65. package/dist/social-providers/paybin.mjs +10 -10
  66. package/dist/social-providers/paypal.d.mts +5 -2
  67. package/dist/social-providers/paypal.mjs +8 -13
  68. package/dist/social-providers/polar.d.mts +5 -1
  69. package/dist/social-providers/polar.mjs +8 -8
  70. package/dist/social-providers/railway.d.mts +5 -1
  71. package/dist/social-providers/railway.mjs +9 -9
  72. package/dist/social-providers/reddit.d.mts +5 -1
  73. package/dist/social-providers/reddit.mjs +9 -8
  74. package/dist/social-providers/roblox.d.mts +5 -1
  75. package/dist/social-providers/roblox.mjs +5 -5
  76. package/dist/social-providers/salesforce.d.mts +5 -1
  77. package/dist/social-providers/salesforce.mjs +8 -8
  78. package/dist/social-providers/slack.d.mts +5 -1
  79. package/dist/social-providers/slack.mjs +9 -9
  80. package/dist/social-providers/spotify.d.mts +5 -1
  81. package/dist/social-providers/spotify.mjs +5 -5
  82. package/dist/social-providers/tiktok.d.mts +5 -1
  83. package/dist/social-providers/tiktok.mjs +9 -5
  84. package/dist/social-providers/twitch.d.mts +5 -1
  85. package/dist/social-providers/twitch.mjs +4 -4
  86. package/dist/social-providers/twitter.d.mts +6 -4
  87. package/dist/social-providers/twitter.mjs +9 -9
  88. package/dist/social-providers/vercel.d.mts +5 -1
  89. package/dist/social-providers/vercel.mjs +4 -7
  90. package/dist/social-providers/vk.d.mts +5 -1
  91. package/dist/social-providers/vk.mjs +5 -5
  92. package/dist/social-providers/wechat.d.mts +5 -1
  93. package/dist/social-providers/wechat.mjs +9 -5
  94. package/dist/social-providers/zoom.d.mts +6 -1
  95. package/dist/social-providers/zoom.mjs +15 -9
  96. package/dist/types/context.d.mts +10 -8
  97. package/dist/types/index.d.mts +1 -1
  98. package/dist/types/init-options.d.mts +92 -1
  99. package/package.json +5 -5
  100. package/src/db/adapter/factory.ts +10 -2
  101. package/src/db/get-tables.ts +8 -3
  102. package/src/db/schema/account.ts +14 -2
  103. package/src/env/env-impl.ts +1 -2
  104. package/src/error/codes.ts +5 -0
  105. package/src/oauth2/create-authorization-url.ts +2 -2
  106. package/src/oauth2/index.ts +17 -1
  107. package/src/oauth2/oauth-provider.ts +140 -10
  108. package/src/oauth2/refresh-access-token.ts +2 -2
  109. package/src/oauth2/scopes.ts +118 -0
  110. package/src/oauth2/utils.ts +2 -5
  111. package/src/oauth2/verify-id-token.ts +111 -0
  112. package/src/oauth2/verify.ts +62 -11
  113. package/src/social-providers/apple.ts +24 -61
  114. package/src/social-providers/atlassian.ts +12 -8
  115. package/src/social-providers/cognito.ts +25 -47
  116. package/src/social-providers/discord.ts +19 -8
  117. package/src/social-providers/dropbox.ts +13 -7
  118. package/src/social-providers/facebook.ts +97 -51
  119. package/src/social-providers/figma.ts +13 -9
  120. package/src/social-providers/github.ts +12 -8
  121. package/src/social-providers/gitlab.ts +14 -8
  122. package/src/social-providers/google.ts +66 -47
  123. package/src/social-providers/huggingface.ts +12 -8
  124. package/src/social-providers/kakao.ts +16 -8
  125. package/src/social-providers/kick.ts +12 -7
  126. package/src/social-providers/line.ts +37 -37
  127. package/src/social-providers/linear.ts +12 -6
  128. package/src/social-providers/linkedin.ts +14 -10
  129. package/src/social-providers/microsoft-entra-id.ts +65 -64
  130. package/src/social-providers/naver.ts +12 -6
  131. package/src/social-providers/notion.ts +12 -6
  132. package/src/social-providers/paybin.ts +14 -11
  133. package/src/social-providers/paypal.ts +6 -25
  134. package/src/social-providers/polar.ts +12 -8
  135. package/src/social-providers/railway.ts +13 -9
  136. package/src/social-providers/reddit.ts +21 -10
  137. package/src/social-providers/roblox.ts +18 -7
  138. package/src/social-providers/salesforce.ts +12 -8
  139. package/src/social-providers/slack.ts +18 -9
  140. package/src/social-providers/spotify.ts +13 -7
  141. package/src/social-providers/tiktok.ts +13 -7
  142. package/src/social-providers/twitch.ts +12 -8
  143. package/src/social-providers/twitter.ts +17 -8
  144. package/src/social-providers/vercel.ts +16 -10
  145. package/src/social-providers/vk.ts +13 -7
  146. package/src/social-providers/wechat.ts +20 -8
  147. package/src/social-providers/zoom.ts +19 -6
  148. package/src/types/context.ts +8 -8
  149. package/src/types/index.ts +7 -0
  150. package/src/types/init-options.ts +119 -0
@@ -36,12 +36,14 @@ import { WeChatOptions, WeChatProfile, wechat } from "./wechat.mjs";
36
36
  import { AwaitableFunction } from "../types/helper.mjs";
37
37
  import { OAuth2Tokens } from "../oauth2/oauth-provider.mjs";
38
38
  import * as z from "zod";
39
+ import * as jose from "jose";
39
40
 
40
41
  //#region src/social-providers/index.d.ts
41
42
  declare const socialProviders: {
42
43
  apple: (options: AppleOptions) => {
43
44
  id: "apple";
44
45
  name: string;
46
+ callbackPath: string;
45
47
  createAuthorizationURL({
46
48
  state,
47
49
  scopes,
@@ -55,7 +57,10 @@ declare const socialProviders: {
55
57
  display?: string | undefined;
56
58
  loginHint?: string | undefined;
57
59
  additionalParams?: Record<string, string> | undefined;
58
- }): Promise<URL>;
60
+ }): Promise<{
61
+ url: URL;
62
+ requestedScopes: string[];
63
+ }>;
59
64
  validateAuthorizationCode: ({
60
65
  code,
61
66
  codeVerifier,
@@ -66,7 +71,13 @@ declare const socialProviders: {
66
71
  codeVerifier?: string | undefined;
67
72
  deviceId?: string | undefined;
68
73
  }) => Promise<OAuth2Tokens>;
69
- verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
74
+ idToken: {
75
+ jwks: (header: jose.JWTHeaderParameters) => Promise<Uint8Array<ArrayBufferLike> | CryptoKey>;
76
+ issuer: string;
77
+ audience: string | string[];
78
+ maxTokenAge: string;
79
+ nonceComparison: "exact-or-sha256";
80
+ };
70
81
  refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
71
82
  getUserInfo(token: OAuth2Tokens & {
72
83
  user?: {
@@ -92,6 +103,7 @@ declare const socialProviders: {
92
103
  atlassian: (options: AtlassianOptions) => {
93
104
  id: "atlassian";
94
105
  name: string;
106
+ callbackPath: string;
95
107
  createAuthorizationURL({
96
108
  state,
97
109
  scopes,
@@ -106,7 +118,10 @@ declare const socialProviders: {
106
118
  display?: string | undefined;
107
119
  loginHint?: string | undefined;
108
120
  additionalParams?: Record<string, string> | undefined;
109
- }): Promise<URL>;
121
+ }): Promise<{
122
+ url: URL;
123
+ requestedScopes: string[];
124
+ }>;
110
125
  validateAuthorizationCode: ({
111
126
  code,
112
127
  codeVerifier,
@@ -142,6 +157,7 @@ declare const socialProviders: {
142
157
  cognito: (options: CognitoOptions) => {
143
158
  id: "cognito";
144
159
  name: string;
160
+ callbackPath: string;
145
161
  createAuthorizationURL({
146
162
  state,
147
163
  scopes,
@@ -156,7 +172,10 @@ declare const socialProviders: {
156
172
  display?: string | undefined;
157
173
  loginHint?: string | undefined;
158
174
  additionalParams?: Record<string, string> | undefined;
159
- }): Promise<URL>;
175
+ }): Promise<{
176
+ url: URL;
177
+ requestedScopes: string[];
178
+ }>;
160
179
  validateAuthorizationCode: ({
161
180
  code,
162
181
  codeVerifier,
@@ -168,7 +187,12 @@ declare const socialProviders: {
168
187
  deviceId?: string | undefined;
169
188
  }) => Promise<OAuth2Tokens>;
170
189
  refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
171
- verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
190
+ idToken: {
191
+ jwks: (header: jose.JWTHeaderParameters) => Promise<Uint8Array<ArrayBufferLike> | CryptoKey>;
192
+ issuer: string;
193
+ audience: string | string[];
194
+ maxTokenAge: string;
195
+ };
172
196
  getUserInfo(token: OAuth2Tokens & {
173
197
  user?: {
174
198
  name?: {
@@ -193,6 +217,7 @@ declare const socialProviders: {
193
217
  discord: (options: DiscordOptions) => {
194
218
  id: "discord";
195
219
  name: string;
220
+ callbackPath: string;
196
221
  createAuthorizationURL({
197
222
  state,
198
223
  scopes,
@@ -206,7 +231,10 @@ declare const socialProviders: {
206
231
  display?: string | undefined;
207
232
  loginHint?: string | undefined;
208
233
  additionalParams?: Record<string, string> | undefined;
209
- }): Promise<URL>;
234
+ }): Promise<{
235
+ url: URL;
236
+ requestedScopes: string[];
237
+ }>;
210
238
  validateAuthorizationCode: ({
211
239
  code,
212
240
  redirectURI
@@ -241,6 +269,7 @@ declare const socialProviders: {
241
269
  facebook: (options: FacebookOptions) => {
242
270
  id: "facebook";
243
271
  name: string;
272
+ callbackPath: string;
244
273
  createAuthorizationURL({
245
274
  state,
246
275
  scopes,
@@ -255,7 +284,10 @@ declare const socialProviders: {
255
284
  display?: string | undefined;
256
285
  loginHint?: string | undefined;
257
286
  additionalParams?: Record<string, string> | undefined;
258
- }): Promise<URL>;
287
+ }): Promise<{
288
+ url: URL;
289
+ requestedScopes: string[];
290
+ }>;
259
291
  validateAuthorizationCode: ({
260
292
  code,
261
293
  redirectURI
@@ -265,7 +297,20 @@ declare const socialProviders: {
265
297
  codeVerifier?: string | undefined;
266
298
  deviceId?: string | undefined;
267
299
  }) => Promise<OAuth2Tokens>;
268
- verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
300
+ idToken: {
301
+ jwks: {
302
+ (protectedHeader?: jose.JWSHeaderParameters, token?: jose.FlattenedJWSInput): Promise<jose.CryptoKey>;
303
+ coolingDown: boolean;
304
+ fresh: boolean;
305
+ reloading: boolean;
306
+ reload: () => Promise<void>;
307
+ jwks: () => jose.JSONWebKeySet | undefined;
308
+ };
309
+ issuer: string;
310
+ audience: string | string[];
311
+ algorithms: string[];
312
+ allowOpaqueToken: true;
313
+ };
269
314
  refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
270
315
  getUserInfo(token: OAuth2Tokens & {
271
316
  user?: {
@@ -291,6 +336,7 @@ declare const socialProviders: {
291
336
  figma: (options: FigmaOptions) => {
292
337
  id: "figma";
293
338
  name: string;
339
+ callbackPath: string;
294
340
  createAuthorizationURL({
295
341
  state,
296
342
  scopes,
@@ -305,7 +351,10 @@ declare const socialProviders: {
305
351
  display?: string | undefined;
306
352
  loginHint?: string | undefined;
307
353
  additionalParams?: Record<string, string> | undefined;
308
- }): Promise<URL>;
354
+ }): Promise<{
355
+ url: URL;
356
+ requestedScopes: string[];
357
+ }>;
309
358
  validateAuthorizationCode: ({
310
359
  code,
311
360
  codeVerifier,
@@ -341,6 +390,7 @@ declare const socialProviders: {
341
390
  github: (options: GithubOptions) => {
342
391
  id: "github";
343
392
  name: string;
393
+ callbackPath: string;
344
394
  createAuthorizationURL({
345
395
  state,
346
396
  scopes,
@@ -356,7 +406,10 @@ declare const socialProviders: {
356
406
  display?: string | undefined;
357
407
  loginHint?: string | undefined;
358
408
  additionalParams?: Record<string, string> | undefined;
359
- }): Promise<URL>;
409
+ }): Promise<{
410
+ url: URL;
411
+ requestedScopes: string[];
412
+ }>;
360
413
  validateAuthorizationCode: ({
361
414
  code,
362
415
  codeVerifier,
@@ -392,6 +445,7 @@ declare const socialProviders: {
392
445
  microsoft: (options: MicrosoftOptions) => {
393
446
  id: "microsoft";
394
447
  name: string;
448
+ callbackPath: string;
395
449
  createAuthorizationURL(data: {
396
450
  state: string;
397
451
  codeVerifier: string;
@@ -400,7 +454,10 @@ declare const socialProviders: {
400
454
  display?: string | undefined;
401
455
  loginHint?: string | undefined;
402
456
  additionalParams?: Record<string, string> | undefined;
403
- }): Promise<URL>;
457
+ }): Promise<{
458
+ url: URL;
459
+ requestedScopes: string[];
460
+ }>;
404
461
  validateAuthorizationCode({
405
462
  code,
406
463
  codeVerifier,
@@ -411,7 +468,12 @@ declare const socialProviders: {
411
468
  codeVerifier?: string | undefined;
412
469
  deviceId?: string | undefined;
413
470
  }): Promise<OAuth2Tokens>;
414
- verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
471
+ idToken: {
472
+ jwks: (header: jose.JWTHeaderParameters) => Promise<Uint8Array<ArrayBufferLike> | CryptoKey>;
473
+ audience: string | string[];
474
+ maxTokenAge: string;
475
+ issuer: string | undefined;
476
+ };
415
477
  getUserInfo(token: OAuth2Tokens & {
416
478
  user?: {
417
479
  name?: {
@@ -437,6 +499,8 @@ declare const socialProviders: {
437
499
  google: (options: GoogleOptions) => {
438
500
  id: "google";
439
501
  name: string;
502
+ callbackPath: string;
503
+ grantAuthority: "full-grant" | "projection";
440
504
  createAuthorizationURL({
441
505
  state,
442
506
  scopes,
@@ -453,7 +517,10 @@ declare const socialProviders: {
453
517
  display?: string | undefined;
454
518
  loginHint?: string | undefined;
455
519
  additionalParams?: Record<string, string> | undefined;
456
- }): Promise<URL>;
520
+ }): Promise<{
521
+ url: URL;
522
+ requestedScopes: string[];
523
+ }>;
457
524
  validateAuthorizationCode: ({
458
525
  code,
459
526
  codeVerifier,
@@ -465,7 +532,13 @@ declare const socialProviders: {
465
532
  deviceId?: string | undefined;
466
533
  }) => Promise<OAuth2Tokens>;
467
534
  refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
468
- verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
535
+ idToken: {
536
+ jwks: (header: jose.JWTHeaderParameters) => Promise<Uint8Array<ArrayBufferLike> | CryptoKey>;
537
+ issuer: string[];
538
+ audience: string | string[];
539
+ maxTokenAge: string;
540
+ verifyClaims: ((claims: Record<string, unknown>) => boolean) | undefined;
541
+ };
469
542
  getUserInfo(token: OAuth2Tokens & {
470
543
  user?: {
471
544
  name?: {
@@ -490,6 +563,7 @@ declare const socialProviders: {
490
563
  huggingface: (options: HuggingFaceOptions) => {
491
564
  id: "huggingface";
492
565
  name: string;
566
+ callbackPath: string;
493
567
  createAuthorizationURL({
494
568
  state,
495
569
  scopes,
@@ -504,7 +578,10 @@ declare const socialProviders: {
504
578
  display?: string | undefined;
505
579
  loginHint?: string | undefined;
506
580
  additionalParams?: Record<string, string> | undefined;
507
- }): Promise<URL>;
581
+ }): Promise<{
582
+ url: URL;
583
+ requestedScopes: string[];
584
+ }>;
508
585
  validateAuthorizationCode: ({
509
586
  code,
510
587
  codeVerifier,
@@ -540,6 +617,7 @@ declare const socialProviders: {
540
617
  slack: (options: SlackOptions) => {
541
618
  id: "slack";
542
619
  name: string;
620
+ callbackPath: string;
543
621
  createAuthorizationURL({
544
622
  state,
545
623
  scopes,
@@ -553,7 +631,10 @@ declare const socialProviders: {
553
631
  display?: string | undefined;
554
632
  loginHint?: string | undefined;
555
633
  additionalParams?: Record<string, string> | undefined;
556
- }): Promise<URL>;
634
+ }): Promise<{
635
+ url: URL;
636
+ requestedScopes: string[];
637
+ }>;
557
638
  validateAuthorizationCode: ({
558
639
  code,
559
640
  redirectURI
@@ -588,6 +669,7 @@ declare const socialProviders: {
588
669
  spotify: (options: SpotifyOptions) => {
589
670
  id: "spotify";
590
671
  name: string;
672
+ callbackPath: string;
591
673
  createAuthorizationURL({
592
674
  state,
593
675
  scopes,
@@ -602,7 +684,10 @@ declare const socialProviders: {
602
684
  display?: string | undefined;
603
685
  loginHint?: string | undefined;
604
686
  additionalParams?: Record<string, string> | undefined;
605
- }): Promise<URL>;
687
+ }): Promise<{
688
+ url: URL;
689
+ requestedScopes: string[];
690
+ }>;
606
691
  validateAuthorizationCode: ({
607
692
  code,
608
693
  codeVerifier,
@@ -638,6 +723,7 @@ declare const socialProviders: {
638
723
  twitch: (options: TwitchOptions) => {
639
724
  id: "twitch";
640
725
  name: string;
726
+ callbackPath: string;
641
727
  createAuthorizationURL({
642
728
  state,
643
729
  scopes,
@@ -651,7 +737,10 @@ declare const socialProviders: {
651
737
  display?: string | undefined;
652
738
  loginHint?: string | undefined;
653
739
  additionalParams?: Record<string, string> | undefined;
654
- }): Promise<URL>;
740
+ }): Promise<{
741
+ url: URL;
742
+ requestedScopes: string[];
743
+ }>;
655
744
  validateAuthorizationCode: ({
656
745
  code,
657
746
  redirectURI
@@ -686,6 +775,7 @@ declare const socialProviders: {
686
775
  twitter: (options: TwitterOption) => {
687
776
  id: "twitter";
688
777
  name: string;
778
+ callbackPath: string;
689
779
  createAuthorizationURL(data: {
690
780
  state: string;
691
781
  codeVerifier: string;
@@ -694,7 +784,10 @@ declare const socialProviders: {
694
784
  display?: string | undefined;
695
785
  loginHint?: string | undefined;
696
786
  additionalParams?: Record<string, string> | undefined;
697
- }): Promise<URL>;
787
+ }): Promise<{
788
+ url: URL;
789
+ requestedScopes: string[];
790
+ }>;
698
791
  validateAuthorizationCode: ({
699
792
  code,
700
793
  codeVerifier,
@@ -730,6 +823,7 @@ declare const socialProviders: {
730
823
  dropbox: (options: DropboxOptions) => {
731
824
  id: "dropbox";
732
825
  name: string;
826
+ callbackPath: string;
733
827
  createAuthorizationURL: ({
734
828
  state,
735
829
  scopes,
@@ -744,7 +838,10 @@ declare const socialProviders: {
744
838
  display?: string | undefined;
745
839
  loginHint?: string | undefined;
746
840
  additionalParams?: Record<string, string> | undefined;
747
- }) => Promise<URL>;
841
+ }) => Promise<{
842
+ url: URL;
843
+ requestedScopes: string[];
844
+ }>;
748
845
  validateAuthorizationCode: ({
749
846
  code,
750
847
  codeVerifier,
@@ -780,6 +877,7 @@ declare const socialProviders: {
780
877
  kick: (options: KickOptions) => {
781
878
  id: "kick";
782
879
  name: string;
880
+ callbackPath: string;
783
881
  createAuthorizationURL({
784
882
  state,
785
883
  scopes,
@@ -794,7 +892,10 @@ declare const socialProviders: {
794
892
  display?: string | undefined;
795
893
  loginHint?: string | undefined;
796
894
  additionalParams?: Record<string, string> | undefined;
797
- }): Promise<URL>;
895
+ }): Promise<{
896
+ url: URL;
897
+ requestedScopes: string[];
898
+ }>;
798
899
  validateAuthorizationCode({
799
900
  code,
800
901
  redirectURI,
@@ -830,6 +931,7 @@ declare const socialProviders: {
830
931
  linear: (options: LinearOptions) => {
831
932
  id: "linear";
832
933
  name: string;
934
+ callbackPath: string;
833
935
  createAuthorizationURL({
834
936
  state,
835
937
  scopes,
@@ -844,7 +946,10 @@ declare const socialProviders: {
844
946
  display?: string | undefined;
845
947
  loginHint?: string | undefined;
846
948
  additionalParams?: Record<string, string> | undefined;
847
- }): Promise<URL>;
949
+ }): Promise<{
950
+ url: URL;
951
+ requestedScopes: string[];
952
+ }>;
848
953
  validateAuthorizationCode: ({
849
954
  code,
850
955
  redirectURI
@@ -879,6 +984,7 @@ declare const socialProviders: {
879
984
  linkedin: (options: LinkedInOptions) => {
880
985
  id: "linkedin";
881
986
  name: string;
987
+ callbackPath: string;
882
988
  createAuthorizationURL: ({
883
989
  state,
884
990
  scopes,
@@ -893,7 +999,10 @@ declare const socialProviders: {
893
999
  display?: string | undefined;
894
1000
  loginHint?: string | undefined;
895
1001
  additionalParams?: Record<string, string> | undefined;
896
- }) => Promise<URL>;
1002
+ }) => Promise<{
1003
+ url: URL;
1004
+ requestedScopes: string[];
1005
+ }>;
897
1006
  validateAuthorizationCode: ({
898
1007
  code,
899
1008
  redirectURI
@@ -928,6 +1037,7 @@ declare const socialProviders: {
928
1037
  gitlab: (options: GitlabOptions) => {
929
1038
  id: "gitlab";
930
1039
  name: string;
1040
+ callbackPath: string;
931
1041
  createAuthorizationURL: ({
932
1042
  state,
933
1043
  scopes,
@@ -943,7 +1053,10 @@ declare const socialProviders: {
943
1053
  display?: string | undefined;
944
1054
  loginHint?: string | undefined;
945
1055
  additionalParams?: Record<string, string> | undefined;
946
- }) => Promise<URL>;
1056
+ }) => Promise<{
1057
+ url: URL;
1058
+ requestedScopes: string[];
1059
+ }>;
947
1060
  validateAuthorizationCode: ({
948
1061
  code,
949
1062
  redirectURI,
@@ -1000,6 +1113,7 @@ declare const socialProviders: {
1000
1113
  tiktok: (options: TiktokOptions) => {
1001
1114
  id: "tiktok";
1002
1115
  name: string;
1116
+ callbackPath: string;
1003
1117
  createAuthorizationURL({
1004
1118
  state,
1005
1119
  scopes,
@@ -1013,7 +1127,10 @@ declare const socialProviders: {
1013
1127
  display?: string | undefined;
1014
1128
  loginHint?: string | undefined;
1015
1129
  additionalParams?: Record<string, string> | undefined;
1016
- }): URL;
1130
+ }): {
1131
+ url: URL;
1132
+ requestedScopes: string[];
1133
+ };
1017
1134
  validateAuthorizationCode: ({
1018
1135
  code,
1019
1136
  redirectURI
@@ -1048,6 +1165,7 @@ declare const socialProviders: {
1048
1165
  reddit: (options: RedditOptions) => {
1049
1166
  id: "reddit";
1050
1167
  name: string;
1168
+ callbackPath: string;
1051
1169
  createAuthorizationURL({
1052
1170
  state,
1053
1171
  scopes,
@@ -1061,7 +1179,10 @@ declare const socialProviders: {
1061
1179
  display?: string | undefined;
1062
1180
  loginHint?: string | undefined;
1063
1181
  additionalParams?: Record<string, string> | undefined;
1064
- }): Promise<URL>;
1182
+ }): Promise<{
1183
+ url: URL;
1184
+ requestedScopes: string[];
1185
+ }>;
1065
1186
  validateAuthorizationCode: ({
1066
1187
  code,
1067
1188
  redirectURI
@@ -1096,6 +1217,7 @@ declare const socialProviders: {
1096
1217
  roblox: (options: RobloxOptions) => {
1097
1218
  id: "roblox";
1098
1219
  name: string;
1220
+ callbackPath: string;
1099
1221
  createAuthorizationURL({
1100
1222
  state,
1101
1223
  scopes,
@@ -1109,7 +1231,10 @@ declare const socialProviders: {
1109
1231
  display?: string | undefined;
1110
1232
  loginHint?: string | undefined;
1111
1233
  additionalParams?: Record<string, string> | undefined;
1112
- }): Promise<URL>;
1234
+ }): Promise<{
1235
+ url: URL;
1236
+ requestedScopes: string[];
1237
+ }>;
1113
1238
  validateAuthorizationCode: ({
1114
1239
  code,
1115
1240
  redirectURI
@@ -1144,6 +1269,7 @@ declare const socialProviders: {
1144
1269
  salesforce: (options: SalesforceOptions) => {
1145
1270
  id: "salesforce";
1146
1271
  name: string;
1272
+ callbackPath: string;
1147
1273
  createAuthorizationURL({
1148
1274
  state,
1149
1275
  scopes,
@@ -1158,7 +1284,10 @@ declare const socialProviders: {
1158
1284
  display?: string | undefined;
1159
1285
  loginHint?: string | undefined;
1160
1286
  additionalParams?: Record<string, string> | undefined;
1161
- }): Promise<URL>;
1287
+ }): Promise<{
1288
+ url: URL;
1289
+ requestedScopes: string[];
1290
+ }>;
1162
1291
  validateAuthorizationCode: ({
1163
1292
  code,
1164
1293
  codeVerifier,
@@ -1194,6 +1323,7 @@ declare const socialProviders: {
1194
1323
  vk: (options: VkOption) => {
1195
1324
  id: "vk";
1196
1325
  name: string;
1326
+ callbackPath: string;
1197
1327
  createAuthorizationURL({
1198
1328
  state,
1199
1329
  scopes,
@@ -1208,7 +1338,10 @@ declare const socialProviders: {
1208
1338
  display?: string | undefined;
1209
1339
  loginHint?: string | undefined;
1210
1340
  additionalParams?: Record<string, string> | undefined;
1211
- }): Promise<URL>;
1341
+ }): Promise<{
1342
+ url: URL;
1343
+ requestedScopes: string[];
1344
+ }>;
1212
1345
  validateAuthorizationCode: ({
1213
1346
  code,
1214
1347
  codeVerifier,
@@ -1245,8 +1378,10 @@ declare const socialProviders: {
1245
1378
  zoom: (userOptions: ZoomOptions) => {
1246
1379
  id: "zoom";
1247
1380
  name: string;
1381
+ callbackPath: string;
1248
1382
  createAuthorizationURL: ({
1249
1383
  state,
1384
+ scopes,
1250
1385
  redirectURI,
1251
1386
  codeVerifier,
1252
1387
  additionalParams
@@ -1258,7 +1393,10 @@ declare const socialProviders: {
1258
1393
  display?: string | undefined;
1259
1394
  loginHint?: string | undefined;
1260
1395
  additionalParams?: Record<string, string> | undefined;
1261
- }) => Promise<URL>;
1396
+ }) => Promise<{
1397
+ url: URL;
1398
+ requestedScopes: string[];
1399
+ }>;
1262
1400
  validateAuthorizationCode: ({
1263
1401
  code,
1264
1402
  redirectURI,
@@ -1293,6 +1431,7 @@ declare const socialProviders: {
1293
1431
  notion: (options: NotionOptions) => {
1294
1432
  id: "notion";
1295
1433
  name: string;
1434
+ callbackPath: string;
1296
1435
  createAuthorizationURL({
1297
1436
  state,
1298
1437
  scopes,
@@ -1307,7 +1446,10 @@ declare const socialProviders: {
1307
1446
  display?: string | undefined;
1308
1447
  loginHint?: string | undefined;
1309
1448
  additionalParams?: Record<string, string> | undefined;
1310
- }): Promise<URL>;
1449
+ }): Promise<{
1450
+ url: URL;
1451
+ requestedScopes: string[];
1452
+ }>;
1311
1453
  validateAuthorizationCode: ({
1312
1454
  code,
1313
1455
  redirectURI
@@ -1342,6 +1484,7 @@ declare const socialProviders: {
1342
1484
  kakao: (options: KakaoOptions) => {
1343
1485
  id: "kakao";
1344
1486
  name: string;
1487
+ callbackPath: string;
1345
1488
  createAuthorizationURL({
1346
1489
  state,
1347
1490
  scopes,
@@ -1355,7 +1498,10 @@ declare const socialProviders: {
1355
1498
  display?: string | undefined;
1356
1499
  loginHint?: string | undefined;
1357
1500
  additionalParams?: Record<string, string> | undefined;
1358
- }): Promise<URL>;
1501
+ }): Promise<{
1502
+ url: URL;
1503
+ requestedScopes: string[];
1504
+ }>;
1359
1505
  validateAuthorizationCode: ({
1360
1506
  code,
1361
1507
  redirectURI
@@ -1411,6 +1557,7 @@ declare const socialProviders: {
1411
1557
  naver: (options: NaverOptions) => {
1412
1558
  id: "naver";
1413
1559
  name: string;
1560
+ callbackPath: string;
1414
1561
  createAuthorizationURL({
1415
1562
  state,
1416
1563
  scopes,
@@ -1424,7 +1571,10 @@ declare const socialProviders: {
1424
1571
  display?: string | undefined;
1425
1572
  loginHint?: string | undefined;
1426
1573
  additionalParams?: Record<string, string> | undefined;
1427
- }): Promise<URL>;
1574
+ }): Promise<{
1575
+ url: URL;
1576
+ requestedScopes: string[];
1577
+ }>;
1428
1578
  validateAuthorizationCode: ({
1429
1579
  code,
1430
1580
  redirectURI
@@ -1480,6 +1630,7 @@ declare const socialProviders: {
1480
1630
  line: (options: LineOptions) => {
1481
1631
  id: "line";
1482
1632
  name: string;
1633
+ callbackPath: string;
1483
1634
  createAuthorizationURL({
1484
1635
  state,
1485
1636
  scopes,
@@ -1495,7 +1646,10 @@ declare const socialProviders: {
1495
1646
  display?: string | undefined;
1496
1647
  loginHint?: string | undefined;
1497
1648
  additionalParams?: Record<string, string> | undefined;
1498
- }): Promise<URL>;
1649
+ }): Promise<{
1650
+ url: URL;
1651
+ requestedScopes: string[];
1652
+ }>;
1499
1653
  validateAuthorizationCode: ({
1500
1654
  code,
1501
1655
  codeVerifier,
@@ -1507,7 +1661,9 @@ declare const socialProviders: {
1507
1661
  deviceId?: string | undefined;
1508
1662
  }) => Promise<OAuth2Tokens>;
1509
1663
  refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1510
- verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
1664
+ idToken: {
1665
+ verify: (token: string, nonce: string | undefined) => Promise<boolean>;
1666
+ };
1511
1667
  getUserInfo(token: OAuth2Tokens & {
1512
1668
  user?: {
1513
1669
  name?: {
@@ -1553,6 +1709,7 @@ declare const socialProviders: {
1553
1709
  paybin: (options: PaybinOptions) => {
1554
1710
  id: "paybin";
1555
1711
  name: string;
1712
+ callbackPath: string;
1556
1713
  createAuthorizationURL({
1557
1714
  state,
1558
1715
  scopes,
@@ -1568,7 +1725,10 @@ declare const socialProviders: {
1568
1725
  display?: string | undefined;
1569
1726
  loginHint?: string | undefined;
1570
1727
  additionalParams?: Record<string, string> | undefined;
1571
- }): Promise<URL>;
1728
+ }): Promise<{
1729
+ url: URL;
1730
+ requestedScopes: string[];
1731
+ }>;
1572
1732
  validateAuthorizationCode: ({
1573
1733
  code,
1574
1734
  codeVerifier,
@@ -1604,6 +1764,7 @@ declare const socialProviders: {
1604
1764
  paypal: (options: PayPalOptions) => {
1605
1765
  id: "paypal";
1606
1766
  name: string;
1767
+ callbackPath: string;
1607
1768
  createAuthorizationURL({
1608
1769
  state,
1609
1770
  codeVerifier,
@@ -1617,7 +1778,10 @@ declare const socialProviders: {
1617
1778
  display?: string | undefined;
1618
1779
  loginHint?: string | undefined;
1619
1780
  additionalParams?: Record<string, string> | undefined;
1620
- }): Promise<URL>;
1781
+ }): Promise<{
1782
+ url: URL;
1783
+ requestedScopes: string[];
1784
+ }>;
1621
1785
  validateAuthorizationCode: ({
1622
1786
  code,
1623
1787
  redirectURI
@@ -1637,7 +1801,6 @@ declare const socialProviders: {
1637
1801
  refreshToken: any;
1638
1802
  accessTokenExpiresAt: Date | undefined;
1639
1803
  }>);
1640
- verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
1641
1804
  getUserInfo(token: OAuth2Tokens & {
1642
1805
  user?: {
1643
1806
  name?: {
@@ -1683,6 +1846,7 @@ declare const socialProviders: {
1683
1846
  polar: (options: PolarOptions) => {
1684
1847
  id: "polar";
1685
1848
  name: string;
1849
+ callbackPath: string;
1686
1850
  createAuthorizationURL({
1687
1851
  state,
1688
1852
  scopes,
@@ -1697,7 +1861,10 @@ declare const socialProviders: {
1697
1861
  display?: string | undefined;
1698
1862
  loginHint?: string | undefined;
1699
1863
  additionalParams?: Record<string, string> | undefined;
1700
- }): Promise<URL>;
1864
+ }): Promise<{
1865
+ url: URL;
1866
+ requestedScopes: string[];
1867
+ }>;
1701
1868
  validateAuthorizationCode: ({
1702
1869
  code,
1703
1870
  codeVerifier,
@@ -1733,6 +1900,7 @@ declare const socialProviders: {
1733
1900
  railway: (options: RailwayOptions) => {
1734
1901
  id: "railway";
1735
1902
  name: string;
1903
+ callbackPath: string;
1736
1904
  createAuthorizationURL({
1737
1905
  state,
1738
1906
  scopes,
@@ -1747,7 +1915,10 @@ declare const socialProviders: {
1747
1915
  display?: string | undefined;
1748
1916
  loginHint?: string | undefined;
1749
1917
  additionalParams?: Record<string, string> | undefined;
1750
- }): Promise<URL>;
1918
+ }): Promise<{
1919
+ url: URL;
1920
+ requestedScopes: string[];
1921
+ }>;
1751
1922
  validateAuthorizationCode: ({
1752
1923
  code,
1753
1924
  codeVerifier,
@@ -1783,6 +1954,7 @@ declare const socialProviders: {
1783
1954
  vercel: (options: VercelOptions) => {
1784
1955
  id: "vercel";
1785
1956
  name: string;
1957
+ callbackPath: string;
1786
1958
  createAuthorizationURL({
1787
1959
  state,
1788
1960
  scopes,
@@ -1797,7 +1969,10 @@ declare const socialProviders: {
1797
1969
  display?: string | undefined;
1798
1970
  loginHint?: string | undefined;
1799
1971
  additionalParams?: Record<string, string> | undefined;
1800
- }): Promise<URL>;
1972
+ }): Promise<{
1973
+ url: URL;
1974
+ requestedScopes: string[];
1975
+ }>;
1801
1976
  validateAuthorizationCode: ({
1802
1977
  code,
1803
1978
  codeVerifier,
@@ -1832,6 +2007,7 @@ declare const socialProviders: {
1832
2007
  wechat: (options: WeChatOptions) => {
1833
2008
  id: "wechat";
1834
2009
  name: string;
2010
+ callbackPath: string;
1835
2011
  createAuthorizationURL({
1836
2012
  state,
1837
2013
  scopes,
@@ -1845,7 +2021,10 @@ declare const socialProviders: {
1845
2021
  display?: string | undefined;
1846
2022
  loginHint?: string | undefined;
1847
2023
  additionalParams?: Record<string, string> | undefined;
1848
- }): URL;
2024
+ }): {
2025
+ url: URL;
2026
+ requestedScopes: string[];
2027
+ };
1849
2028
  validateAuthorizationCode: ({
1850
2029
  code
1851
2030
  }: {