@better-auth/core 1.4.12-beta.2 → 1.4.13

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 (185) hide show
  1. package/.turbo/turbo-build.log +172 -35
  2. package/dist/api/index.d.mts +178 -1
  3. package/dist/api/index.mjs +2 -1
  4. package/dist/context/endpoint-context.d.mts +19 -0
  5. package/dist/context/endpoint-context.mjs +31 -0
  6. package/dist/context/global.d.mts +7 -0
  7. package/dist/context/global.mjs +37 -0
  8. package/dist/context/index.d.mts +5 -53
  9. package/dist/context/index.mjs +5 -2
  10. package/dist/context/request-state.d.mts +27 -0
  11. package/dist/context/request-state.mjs +49 -0
  12. package/dist/context/transaction.d.mts +16 -0
  13. package/dist/context/transaction.mjs +52 -0
  14. package/dist/db/adapter/factory.d.mts +27 -0
  15. package/dist/db/adapter/factory.mjs +738 -0
  16. package/dist/db/adapter/get-default-field-name.d.mts +18 -0
  17. package/dist/db/adapter/get-default-field-name.mjs +38 -0
  18. package/dist/db/adapter/get-default-model-name.d.mts +12 -0
  19. package/dist/db/adapter/get-default-model-name.mjs +32 -0
  20. package/dist/db/adapter/get-field-attributes.d.mts +29 -0
  21. package/dist/db/adapter/get-field-attributes.mjs +39 -0
  22. package/dist/db/adapter/get-field-name.d.mts +18 -0
  23. package/dist/db/adapter/get-field-name.mjs +33 -0
  24. package/dist/db/adapter/get-id-field.d.mts +39 -0
  25. package/dist/db/adapter/get-id-field.mjs +68 -0
  26. package/dist/db/adapter/get-model-name.d.mts +12 -0
  27. package/dist/db/adapter/get-model-name.mjs +23 -0
  28. package/dist/db/adapter/index.d.mts +513 -1
  29. package/dist/db/adapter/index.mjs +8 -970
  30. package/dist/db/adapter/types.d.mts +139 -0
  31. package/dist/db/adapter/utils.d.mts +7 -0
  32. package/dist/db/adapter/utils.mjs +38 -0
  33. package/dist/db/get-tables.d.mts +8 -0
  34. package/dist/{get-tables-CMc_Emww.mjs → db/get-tables.mjs} +1 -1
  35. package/dist/db/index.d.mts +10 -2
  36. package/dist/db/index.mjs +7 -60
  37. package/dist/db/plugin.d.mts +12 -0
  38. package/dist/db/schema/account.d.mts +26 -0
  39. package/dist/db/schema/account.mjs +19 -0
  40. package/dist/db/schema/rate-limit.d.mts +14 -0
  41. package/dist/db/schema/rate-limit.mjs +11 -0
  42. package/dist/db/schema/session.d.mts +21 -0
  43. package/dist/db/schema/session.mjs +14 -0
  44. package/dist/db/schema/shared.d.mts +10 -0
  45. package/dist/db/schema/shared.mjs +11 -0
  46. package/dist/db/schema/user.d.mts +20 -0
  47. package/dist/db/schema/user.mjs +13 -0
  48. package/dist/db/schema/verification.d.mts +19 -0
  49. package/dist/db/schema/verification.mjs +12 -0
  50. package/dist/db/type.d.mts +143 -0
  51. package/dist/env/color-depth.d.mts +4 -0
  52. package/dist/env/color-depth.mjs +88 -0
  53. package/dist/env/env-impl.d.mts +32 -0
  54. package/dist/env/env-impl.mjs +82 -0
  55. package/dist/env/index.d.mts +4 -2
  56. package/dist/env/index.mjs +3 -1
  57. package/dist/{index-BRBu0-5h.d.mts → env/logger.d.mts} +1 -35
  58. package/dist/env/logger.mjs +81 -0
  59. package/dist/error/codes.d.mts +48 -0
  60. package/dist/{error-DP1xOn7P.mjs → error/codes.mjs} +3 -14
  61. package/dist/error/index.d.mts +5 -48
  62. package/dist/error/index.mjs +12 -3
  63. package/dist/index.d.mts +8 -2
  64. package/dist/oauth2/client-credentials-token.d.mts +36 -0
  65. package/dist/oauth2/client-credentials-token.mjs +54 -0
  66. package/dist/oauth2/create-authorization-url.d.mts +45 -0
  67. package/dist/oauth2/create-authorization-url.mjs +42 -0
  68. package/dist/oauth2/index.d.mts +8 -2
  69. package/dist/oauth2/index.mjs +6 -2
  70. package/dist/oauth2/oauth-provider.d.mts +194 -0
  71. package/dist/oauth2/refresh-access-token.d.mts +36 -0
  72. package/dist/oauth2/refresh-access-token.mjs +58 -0
  73. package/dist/oauth2/utils.d.mts +7 -0
  74. package/dist/oauth2/utils.mjs +27 -0
  75. package/dist/oauth2/validate-authorization-code.d.mts +55 -0
  76. package/dist/oauth2/validate-authorization-code.mjs +71 -0
  77. package/dist/oauth2/verify.d.mts +49 -0
  78. package/dist/oauth2/verify.mjs +95 -0
  79. package/dist/social-providers/apple.d.mts +119 -0
  80. package/dist/social-providers/apple.mjs +102 -0
  81. package/dist/social-providers/atlassian.d.mts +72 -0
  82. package/dist/social-providers/atlassian.mjs +83 -0
  83. package/dist/social-providers/cognito.d.mts +87 -0
  84. package/dist/social-providers/cognito.mjs +166 -0
  85. package/dist/social-providers/discord.d.mts +126 -0
  86. package/dist/social-providers/discord.mjs +64 -0
  87. package/dist/social-providers/dropbox.d.mts +71 -0
  88. package/dist/social-providers/dropbox.mjs +75 -0
  89. package/dist/social-providers/facebook.d.mts +81 -0
  90. package/dist/social-providers/facebook.mjs +120 -0
  91. package/dist/social-providers/figma.d.mts +63 -0
  92. package/dist/social-providers/figma.mjs +84 -0
  93. package/dist/social-providers/github.d.mts +104 -0
  94. package/dist/social-providers/github.mjs +80 -0
  95. package/dist/social-providers/gitlab.d.mts +125 -0
  96. package/dist/social-providers/gitlab.mjs +82 -0
  97. package/dist/social-providers/google.d.mts +99 -0
  98. package/dist/social-providers/google.mjs +109 -0
  99. package/dist/social-providers/huggingface.d.mts +85 -0
  100. package/dist/social-providers/huggingface.mjs +75 -0
  101. package/dist/social-providers/index.d.mts +1723 -1
  102. package/dist/social-providers/index.mjs +33 -2570
  103. package/dist/social-providers/kakao.d.mts +163 -0
  104. package/dist/social-providers/kakao.mjs +72 -0
  105. package/dist/social-providers/kick.d.mts +75 -0
  106. package/dist/social-providers/kick.mjs +71 -0
  107. package/dist/social-providers/line.d.mts +107 -0
  108. package/dist/social-providers/line.mjs +113 -0
  109. package/dist/social-providers/linear.d.mts +70 -0
  110. package/dist/social-providers/linear.mjs +88 -0
  111. package/dist/social-providers/linkedin.d.mts +69 -0
  112. package/dist/social-providers/linkedin.mjs +76 -0
  113. package/dist/social-providers/microsoft-entra-id.d.mts +174 -0
  114. package/dist/social-providers/microsoft-entra-id.mjs +106 -0
  115. package/dist/social-providers/naver.d.mts +104 -0
  116. package/dist/social-providers/naver.mjs +67 -0
  117. package/dist/social-providers/notion.d.mts +66 -0
  118. package/dist/social-providers/notion.mjs +75 -0
  119. package/dist/social-providers/paybin.d.mts +73 -0
  120. package/dist/social-providers/paybin.mjs +85 -0
  121. package/dist/social-providers/paypal.d.mts +131 -0
  122. package/dist/social-providers/paypal.mjs +144 -0
  123. package/dist/social-providers/polar.d.mts +76 -0
  124. package/dist/social-providers/polar.mjs +73 -0
  125. package/dist/social-providers/reddit.d.mts +64 -0
  126. package/dist/social-providers/reddit.mjs +83 -0
  127. package/dist/social-providers/roblox.d.mts +72 -0
  128. package/dist/social-providers/roblox.mjs +59 -0
  129. package/dist/social-providers/salesforce.d.mts +81 -0
  130. package/dist/social-providers/salesforce.mjs +91 -0
  131. package/dist/social-providers/slack.d.mts +85 -0
  132. package/dist/social-providers/slack.mjs +68 -0
  133. package/dist/social-providers/spotify.d.mts +65 -0
  134. package/dist/social-providers/spotify.mjs +71 -0
  135. package/dist/social-providers/tiktok.d.mts +171 -0
  136. package/dist/social-providers/tiktok.mjs +62 -0
  137. package/dist/social-providers/twitch.d.mts +81 -0
  138. package/dist/social-providers/twitch.mjs +78 -0
  139. package/dist/social-providers/twitter.d.mts +140 -0
  140. package/dist/social-providers/twitter.mjs +87 -0
  141. package/dist/social-providers/vercel.d.mts +64 -0
  142. package/dist/social-providers/vercel.mjs +61 -0
  143. package/dist/social-providers/vk.d.mts +72 -0
  144. package/dist/social-providers/vk.mjs +83 -0
  145. package/dist/social-providers/zoom.d.mts +173 -0
  146. package/dist/social-providers/zoom.mjs +72 -0
  147. package/dist/types/context.d.mts +215 -0
  148. package/dist/types/cookie.d.mts +15 -0
  149. package/dist/types/helper.d.mts +8 -0
  150. package/dist/types/index.d.mts +8 -0
  151. package/dist/types/init-options.d.mts +1266 -0
  152. package/dist/types/plugin-client.d.mts +103 -0
  153. package/dist/types/plugin.d.mts +121 -0
  154. package/dist/utils/deprecate.d.mts +10 -0
  155. package/dist/utils/deprecate.mjs +17 -0
  156. package/dist/utils/error-codes.d.mts +9 -0
  157. package/dist/utils/error-codes.mjs +7 -0
  158. package/dist/utils/id.d.mts +4 -0
  159. package/dist/utils/id.mjs +9 -0
  160. package/dist/utils/index.d.mts +5 -26
  161. package/dist/utils/index.mjs +5 -2
  162. package/dist/utils/json.d.mts +4 -0
  163. package/dist/utils/json.mjs +25 -0
  164. package/dist/utils/string.d.mts +4 -0
  165. package/dist/utils/string.mjs +7 -0
  166. package/package.json +1 -1
  167. package/src/context/endpoint-context.ts +7 -15
  168. package/src/context/global.ts +57 -0
  169. package/src/context/index.ts +1 -0
  170. package/src/context/request-state.ts +7 -12
  171. package/src/context/transaction.ts +7 -16
  172. package/src/db/adapter/factory.ts +13 -13
  173. package/src/db/adapter/get-default-model-name.ts +1 -1
  174. package/src/db/adapter/get-id-field.ts +2 -2
  175. package/src/error/index.ts +2 -3
  176. package/src/social-providers/gitlab.ts +1 -1
  177. package/src/types/context.ts +137 -131
  178. package/src/types/cookie.ts +6 -4
  179. package/src/types/index.ts +2 -1
  180. package/tsdown.config.ts +9 -0
  181. package/dist/context-BGZ8V6DD.mjs +0 -126
  182. package/dist/env-DbssmzoK.mjs +0 -245
  183. package/dist/index-zgYuzZ7O.d.mts +0 -8020
  184. package/dist/oauth2-COJkghlT.mjs +0 -326
  185. package/dist/utils-U2L7n92V.mjs +0 -59
@@ -1,2 +1,1724 @@
1
- import { $ as notion, $t as GoogleOptions, A as vercel, At as LinearUser, B as paybin, Bt as twitter, C as SocialProviderList, Cn as AtlassianProfile, Ct as GitlabProfile, D as socialProviders, Dn as AppleProfile, Dt as linkedin, E as socialProviderList, En as AppleOptions, Et as LinkedInProfile, F as PayPalProfile, Ft as DropboxOptions, G as NaverOptions, Gt as SpotifyProfile, H as LineOptions, Ht as TwitchProfile, I as PayPalTokenResponse, It as DropboxProfile, J as KakaoOptions, Jt as SlackProfile, K as NaverProfile, Kt as spotify, L as paypal, Lt as dropbox, M as PolarProfile, Mt as KickOptions, N as polar, Nt as KickProfile, O as VercelOptions, On as apple, Ot as LinearOptions, P as PayPalOptions, Pt as kick, Q as NotionProfile, Qt as huggingface, R as PaybinOptions, Rt as TwitterOption, S as SocialProvider, Sn as AtlassianOptions, St as GitlabOptions, T as SocialProviders, Tn as AppleNonConformUser, Tt as LinkedInOptions, U as LineUserInfo, Ut as twitch, V as LineIdTokenPayload, Vt as TwitchOptions, W as line, Wt as SpotifyOptions, X as kakao, Xt as HuggingFaceOptions, Y as KakaoProfile, Yt as slack, Z as NotionOptions, Zt as HuggingFaceProfile, _n as discord, _t as RedditProfile, an as microsoft, at as ZoomProfile, bn as cognito, bt as TiktokProfile, cn as github, ct as VkProfile, dn as figma, dt as SalesforceProfile, en as GoogleProfile, et as AccountStatus, fn as FacebookOptions, ft as salesforce, gn as DiscordProfile, gt as RedditOptions, hn as DiscordOptions, ht as roblox, in as MicrosoftOptions, it as ZoomOptions, j as PolarOptions, jt as linear, k as VercelProfile, kn as getApplePublicKey, kt as LinearProfile, ln as FigmaOptions, lt as vk, mn as facebook, mt as RobloxProfile, nn as google, nt as PhoneNumber, on as GithubOptions, ot as zoom, pn as FacebookProfile, pt as RobloxOptions, q as naver, qt as SlackOptions, rn as MicrosoftEntraIDProfile, rt as PronounOption, sn as GithubProfile, st as VkOption, tn as getGooglePublicKey, tt as LoginType, un as FigmaProfile, ut as SalesforceOptions, vn as CognitoOptions, vt as reddit, w as SocialProviderListEnum, wn as atlassian, wt as gitlab, xn as getCognitoPublicKey, xt as tiktok, yn as CognitoProfile, yt as TiktokOptions, z as PaybinProfile, zt as TwitterProfile } from "../index-zgYuzZ7O.mjs";
1
+ import { OAuth2Tokens } from "../oauth2/oauth-provider.mjs";
2
+ import "../oauth2/index.mjs";
3
+ import { AppleNonConformUser, AppleOptions, AppleProfile, apple, getApplePublicKey } from "./apple.mjs";
4
+ import { AtlassianOptions, AtlassianProfile, atlassian } from "./atlassian.mjs";
5
+ import { CognitoOptions, CognitoProfile, cognito, getCognitoPublicKey } from "./cognito.mjs";
6
+ import { DiscordOptions, DiscordProfile, discord } from "./discord.mjs";
7
+ import { FacebookOptions, FacebookProfile, facebook } from "./facebook.mjs";
8
+ import { FigmaOptions, FigmaProfile, figma } from "./figma.mjs";
9
+ import { GithubOptions, GithubProfile, github } from "./github.mjs";
10
+ import { MicrosoftEntraIDProfile, MicrosoftOptions, microsoft } from "./microsoft-entra-id.mjs";
11
+ import { GoogleOptions, GoogleProfile, getGooglePublicKey, google } from "./google.mjs";
12
+ import { HuggingFaceOptions, HuggingFaceProfile, huggingface } from "./huggingface.mjs";
13
+ import { SlackOptions, SlackProfile, slack } from "./slack.mjs";
14
+ import { SpotifyOptions, SpotifyProfile, spotify } from "./spotify.mjs";
15
+ import { TwitchOptions, TwitchProfile, twitch } from "./twitch.mjs";
16
+ import { TwitterOption, TwitterProfile, twitter } from "./twitter.mjs";
17
+ import { DropboxOptions, DropboxProfile, dropbox } from "./dropbox.mjs";
18
+ import { KickOptions, KickProfile, kick } from "./kick.mjs";
19
+ import { LinearOptions, LinearProfile, LinearUser, linear } from "./linear.mjs";
20
+ import { LinkedInOptions, LinkedInProfile, linkedin } from "./linkedin.mjs";
21
+ import { GitlabOptions, GitlabProfile, gitlab } from "./gitlab.mjs";
22
+ import { TiktokOptions, TiktokProfile, tiktok } from "./tiktok.mjs";
23
+ import { RedditOptions, RedditProfile, reddit } from "./reddit.mjs";
24
+ import { RobloxOptions, RobloxProfile, roblox } from "./roblox.mjs";
25
+ import { SalesforceOptions, SalesforceProfile, salesforce } from "./salesforce.mjs";
26
+ import { VkOption, VkProfile, vk } from "./vk.mjs";
27
+ import { AccountStatus, LoginType, PhoneNumber, PronounOption, ZoomOptions, ZoomProfile, zoom } from "./zoom.mjs";
28
+ import { NotionOptions, NotionProfile, notion } from "./notion.mjs";
29
+ import { KakaoOptions, KakaoProfile, kakao } from "./kakao.mjs";
30
+ import { NaverOptions, NaverProfile, naver } from "./naver.mjs";
31
+ import { LineIdTokenPayload, LineOptions, LineUserInfo, line } from "./line.mjs";
32
+ import { PaybinOptions, PaybinProfile, paybin } from "./paybin.mjs";
33
+ import { PayPalOptions, PayPalProfile, PayPalTokenResponse, paypal } from "./paypal.mjs";
34
+ import { PolarOptions, PolarProfile, polar } from "./polar.mjs";
35
+ import { VercelOptions, VercelProfile, vercel } from "./vercel.mjs";
36
+ import * as z from "zod";
37
+
38
+ //#region src/social-providers/index.d.ts
39
+ declare const socialProviders: {
40
+ apple: (options: AppleOptions) => {
41
+ id: "apple";
42
+ name: string;
43
+ createAuthorizationURL({
44
+ state,
45
+ scopes,
46
+ redirectURI
47
+ }: {
48
+ state: string;
49
+ codeVerifier: string;
50
+ scopes?: string[] | undefined;
51
+ redirectURI: string;
52
+ display?: string | undefined;
53
+ loginHint?: string | undefined;
54
+ }): Promise<URL>;
55
+ validateAuthorizationCode: ({
56
+ code,
57
+ codeVerifier,
58
+ redirectURI
59
+ }: {
60
+ code: string;
61
+ redirectURI: string;
62
+ codeVerifier?: string | undefined;
63
+ deviceId?: string | undefined;
64
+ }) => Promise<OAuth2Tokens>;
65
+ verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
66
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
67
+ getUserInfo(token: OAuth2Tokens & {
68
+ user?: {
69
+ name?: {
70
+ firstName?: string;
71
+ lastName?: string;
72
+ };
73
+ email?: string;
74
+ } | undefined;
75
+ }): Promise<{
76
+ user: {
77
+ id: string;
78
+ name?: string;
79
+ email?: string | null;
80
+ image?: string;
81
+ emailVerified: boolean;
82
+ [key: string]: any;
83
+ };
84
+ data: any;
85
+ } | null>;
86
+ options: AppleOptions;
87
+ };
88
+ atlassian: (options: AtlassianOptions) => {
89
+ id: "atlassian";
90
+ name: string;
91
+ createAuthorizationURL({
92
+ state,
93
+ scopes,
94
+ codeVerifier,
95
+ redirectURI
96
+ }: {
97
+ state: string;
98
+ codeVerifier: string;
99
+ scopes?: string[] | undefined;
100
+ redirectURI: string;
101
+ display?: string | undefined;
102
+ loginHint?: string | undefined;
103
+ }): Promise<URL>;
104
+ validateAuthorizationCode: ({
105
+ code,
106
+ codeVerifier,
107
+ redirectURI
108
+ }: {
109
+ code: string;
110
+ redirectURI: string;
111
+ codeVerifier?: string | undefined;
112
+ deviceId?: string | undefined;
113
+ }) => Promise<OAuth2Tokens>;
114
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
115
+ getUserInfo(token: OAuth2Tokens & {
116
+ user?: {
117
+ name?: {
118
+ firstName?: string;
119
+ lastName?: string;
120
+ };
121
+ email?: string;
122
+ } | undefined;
123
+ }): Promise<{
124
+ user: {
125
+ id: string;
126
+ name?: string;
127
+ email?: string | null;
128
+ image?: string;
129
+ emailVerified: boolean;
130
+ [key: string]: any;
131
+ };
132
+ data: any;
133
+ } | null>;
134
+ options: AtlassianOptions;
135
+ };
136
+ cognito: (options: CognitoOptions) => {
137
+ id: "cognito";
138
+ name: string;
139
+ createAuthorizationURL({
140
+ state,
141
+ scopes,
142
+ codeVerifier,
143
+ redirectURI
144
+ }: {
145
+ state: string;
146
+ codeVerifier: string;
147
+ scopes?: string[] | undefined;
148
+ redirectURI: string;
149
+ display?: string | undefined;
150
+ loginHint?: string | undefined;
151
+ }): Promise<URL>;
152
+ validateAuthorizationCode: ({
153
+ code,
154
+ codeVerifier,
155
+ redirectURI
156
+ }: {
157
+ code: string;
158
+ redirectURI: string;
159
+ codeVerifier?: string | undefined;
160
+ deviceId?: string | undefined;
161
+ }) => Promise<OAuth2Tokens>;
162
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
163
+ verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
164
+ getUserInfo(token: OAuth2Tokens & {
165
+ user?: {
166
+ name?: {
167
+ firstName?: string;
168
+ lastName?: string;
169
+ };
170
+ email?: string;
171
+ } | undefined;
172
+ }): Promise<{
173
+ user: {
174
+ id: string;
175
+ name?: string;
176
+ email?: string | null;
177
+ image?: string;
178
+ emailVerified: boolean;
179
+ [key: string]: any;
180
+ };
181
+ data: any;
182
+ } | null>;
183
+ options: CognitoOptions;
184
+ };
185
+ discord: (options: DiscordOptions) => {
186
+ id: "discord";
187
+ name: string;
188
+ createAuthorizationURL({
189
+ state,
190
+ scopes,
191
+ redirectURI
192
+ }: {
193
+ state: string;
194
+ codeVerifier: string;
195
+ scopes?: string[] | undefined;
196
+ redirectURI: string;
197
+ display?: string | undefined;
198
+ loginHint?: string | undefined;
199
+ }): URL;
200
+ validateAuthorizationCode: ({
201
+ code,
202
+ redirectURI
203
+ }: {
204
+ code: string;
205
+ redirectURI: string;
206
+ codeVerifier?: string | undefined;
207
+ deviceId?: string | undefined;
208
+ }) => Promise<OAuth2Tokens>;
209
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
210
+ getUserInfo(token: OAuth2Tokens & {
211
+ user?: {
212
+ name?: {
213
+ firstName?: string;
214
+ lastName?: string;
215
+ };
216
+ email?: string;
217
+ } | undefined;
218
+ }): Promise<{
219
+ user: {
220
+ id: string;
221
+ name?: string;
222
+ email?: string | null;
223
+ image?: string;
224
+ emailVerified: boolean;
225
+ [key: string]: any;
226
+ };
227
+ data: any;
228
+ } | null>;
229
+ options: DiscordOptions;
230
+ };
231
+ facebook: (options: FacebookOptions) => {
232
+ id: "facebook";
233
+ name: string;
234
+ createAuthorizationURL({
235
+ state,
236
+ scopes,
237
+ redirectURI,
238
+ loginHint
239
+ }: {
240
+ state: string;
241
+ codeVerifier: string;
242
+ scopes?: string[] | undefined;
243
+ redirectURI: string;
244
+ display?: string | undefined;
245
+ loginHint?: string | undefined;
246
+ }): Promise<URL>;
247
+ validateAuthorizationCode: ({
248
+ code,
249
+ redirectURI
250
+ }: {
251
+ code: string;
252
+ redirectURI: string;
253
+ codeVerifier?: string | undefined;
254
+ deviceId?: string | undefined;
255
+ }) => Promise<OAuth2Tokens>;
256
+ verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
257
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
258
+ getUserInfo(token: OAuth2Tokens & {
259
+ user?: {
260
+ name?: {
261
+ firstName?: string;
262
+ lastName?: string;
263
+ };
264
+ email?: string;
265
+ } | undefined;
266
+ }): Promise<{
267
+ user: {
268
+ id: string;
269
+ name?: string;
270
+ email?: string | null;
271
+ image?: string;
272
+ emailVerified: boolean;
273
+ [key: string]: any;
274
+ };
275
+ data: any;
276
+ } | null>;
277
+ options: FacebookOptions;
278
+ };
279
+ figma: (options: FigmaOptions) => {
280
+ id: "figma";
281
+ name: string;
282
+ createAuthorizationURL({
283
+ state,
284
+ scopes,
285
+ codeVerifier,
286
+ redirectURI
287
+ }: {
288
+ state: string;
289
+ codeVerifier: string;
290
+ scopes?: string[] | undefined;
291
+ redirectURI: string;
292
+ display?: string | undefined;
293
+ loginHint?: string | undefined;
294
+ }): Promise<URL>;
295
+ validateAuthorizationCode: ({
296
+ code,
297
+ codeVerifier,
298
+ redirectURI
299
+ }: {
300
+ code: string;
301
+ redirectURI: string;
302
+ codeVerifier?: string | undefined;
303
+ deviceId?: string | undefined;
304
+ }) => Promise<OAuth2Tokens>;
305
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
306
+ getUserInfo(token: OAuth2Tokens & {
307
+ user?: {
308
+ name?: {
309
+ firstName?: string;
310
+ lastName?: string;
311
+ };
312
+ email?: string;
313
+ } | undefined;
314
+ }): Promise<{
315
+ user: {
316
+ id: string;
317
+ name?: string;
318
+ email?: string | null;
319
+ image?: string;
320
+ emailVerified: boolean;
321
+ [key: string]: any;
322
+ };
323
+ data: any;
324
+ } | null>;
325
+ options: FigmaOptions;
326
+ };
327
+ github: (options: GithubOptions) => {
328
+ id: "github";
329
+ name: string;
330
+ createAuthorizationURL({
331
+ state,
332
+ scopes,
333
+ loginHint,
334
+ codeVerifier,
335
+ redirectURI
336
+ }: {
337
+ state: string;
338
+ codeVerifier: string;
339
+ scopes?: string[] | undefined;
340
+ redirectURI: string;
341
+ display?: string | undefined;
342
+ loginHint?: string | undefined;
343
+ }): Promise<URL>;
344
+ validateAuthorizationCode: ({
345
+ code,
346
+ codeVerifier,
347
+ redirectURI
348
+ }: {
349
+ code: string;
350
+ redirectURI: string;
351
+ codeVerifier?: string | undefined;
352
+ deviceId?: string | undefined;
353
+ }) => Promise<OAuth2Tokens>;
354
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
355
+ getUserInfo(token: OAuth2Tokens & {
356
+ user?: {
357
+ name?: {
358
+ firstName?: string;
359
+ lastName?: string;
360
+ };
361
+ email?: string;
362
+ } | undefined;
363
+ }): Promise<{
364
+ user: {
365
+ id: string;
366
+ name?: string;
367
+ email?: string | null;
368
+ image?: string;
369
+ emailVerified: boolean;
370
+ [key: string]: any;
371
+ };
372
+ data: any;
373
+ } | null>;
374
+ options: GithubOptions;
375
+ };
376
+ microsoft: (options: MicrosoftOptions) => {
377
+ id: "microsoft";
378
+ name: string;
379
+ createAuthorizationURL(data: {
380
+ state: string;
381
+ codeVerifier: string;
382
+ scopes?: string[] | undefined;
383
+ redirectURI: string;
384
+ display?: string | undefined;
385
+ loginHint?: string | undefined;
386
+ }): Promise<URL>;
387
+ validateAuthorizationCode({
388
+ code,
389
+ codeVerifier,
390
+ redirectURI
391
+ }: {
392
+ code: string;
393
+ redirectURI: string;
394
+ codeVerifier?: string | undefined;
395
+ deviceId?: string | undefined;
396
+ }): Promise<OAuth2Tokens>;
397
+ getUserInfo(token: OAuth2Tokens & {
398
+ user?: {
399
+ name?: {
400
+ firstName?: string;
401
+ lastName?: string;
402
+ };
403
+ email?: string;
404
+ } | undefined;
405
+ }): Promise<{
406
+ user: {
407
+ id: string;
408
+ name?: string;
409
+ email?: string | null;
410
+ image?: string;
411
+ emailVerified: boolean;
412
+ [key: string]: any;
413
+ };
414
+ data: any;
415
+ } | null>;
416
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
417
+ options: MicrosoftOptions;
418
+ };
419
+ google: (options: GoogleOptions) => {
420
+ id: "google";
421
+ name: string;
422
+ createAuthorizationURL({
423
+ state,
424
+ scopes,
425
+ codeVerifier,
426
+ redirectURI,
427
+ loginHint,
428
+ display
429
+ }: {
430
+ state: string;
431
+ codeVerifier: string;
432
+ scopes?: string[] | undefined;
433
+ redirectURI: string;
434
+ display?: string | undefined;
435
+ loginHint?: string | undefined;
436
+ }): Promise<URL>;
437
+ validateAuthorizationCode: ({
438
+ code,
439
+ codeVerifier,
440
+ redirectURI
441
+ }: {
442
+ code: string;
443
+ redirectURI: string;
444
+ codeVerifier?: string | undefined;
445
+ deviceId?: string | undefined;
446
+ }) => Promise<OAuth2Tokens>;
447
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
448
+ verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
449
+ getUserInfo(token: OAuth2Tokens & {
450
+ user?: {
451
+ name?: {
452
+ firstName?: string;
453
+ lastName?: string;
454
+ };
455
+ email?: string;
456
+ } | undefined;
457
+ }): Promise<{
458
+ user: {
459
+ id: string;
460
+ name?: string;
461
+ email?: string | null;
462
+ image?: string;
463
+ emailVerified: boolean;
464
+ [key: string]: any;
465
+ };
466
+ data: any;
467
+ } | null>;
468
+ options: GoogleOptions;
469
+ };
470
+ huggingface: (options: HuggingFaceOptions) => {
471
+ id: "huggingface";
472
+ name: string;
473
+ createAuthorizationURL({
474
+ state,
475
+ scopes,
476
+ codeVerifier,
477
+ redirectURI
478
+ }: {
479
+ state: string;
480
+ codeVerifier: string;
481
+ scopes?: string[] | undefined;
482
+ redirectURI: string;
483
+ display?: string | undefined;
484
+ loginHint?: string | undefined;
485
+ }): Promise<URL>;
486
+ validateAuthorizationCode: ({
487
+ code,
488
+ codeVerifier,
489
+ redirectURI
490
+ }: {
491
+ code: string;
492
+ redirectURI: string;
493
+ codeVerifier?: string | undefined;
494
+ deviceId?: string | undefined;
495
+ }) => Promise<OAuth2Tokens>;
496
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
497
+ getUserInfo(token: OAuth2Tokens & {
498
+ user?: {
499
+ name?: {
500
+ firstName?: string;
501
+ lastName?: string;
502
+ };
503
+ email?: string;
504
+ } | undefined;
505
+ }): Promise<{
506
+ user: {
507
+ id: string;
508
+ name?: string;
509
+ email?: string | null;
510
+ image?: string;
511
+ emailVerified: boolean;
512
+ [key: string]: any;
513
+ };
514
+ data: any;
515
+ } | null>;
516
+ options: HuggingFaceOptions;
517
+ };
518
+ slack: (options: SlackOptions) => {
519
+ id: "slack";
520
+ name: string;
521
+ createAuthorizationURL({
522
+ state,
523
+ scopes,
524
+ redirectURI
525
+ }: {
526
+ state: string;
527
+ codeVerifier: string;
528
+ scopes?: string[] | undefined;
529
+ redirectURI: string;
530
+ display?: string | undefined;
531
+ loginHint?: string | undefined;
532
+ }): URL;
533
+ validateAuthorizationCode: ({
534
+ code,
535
+ redirectURI
536
+ }: {
537
+ code: string;
538
+ redirectURI: string;
539
+ codeVerifier?: string | undefined;
540
+ deviceId?: string | undefined;
541
+ }) => Promise<OAuth2Tokens>;
542
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
543
+ getUserInfo(token: OAuth2Tokens & {
544
+ user?: {
545
+ name?: {
546
+ firstName?: string;
547
+ lastName?: string;
548
+ };
549
+ email?: string;
550
+ } | undefined;
551
+ }): Promise<{
552
+ user: {
553
+ id: string;
554
+ name?: string;
555
+ email?: string | null;
556
+ image?: string;
557
+ emailVerified: boolean;
558
+ [key: string]: any;
559
+ };
560
+ data: any;
561
+ } | null>;
562
+ options: SlackOptions;
563
+ };
564
+ spotify: (options: SpotifyOptions) => {
565
+ id: "spotify";
566
+ name: string;
567
+ createAuthorizationURL({
568
+ state,
569
+ scopes,
570
+ codeVerifier,
571
+ redirectURI
572
+ }: {
573
+ state: string;
574
+ codeVerifier: string;
575
+ scopes?: string[] | undefined;
576
+ redirectURI: string;
577
+ display?: string | undefined;
578
+ loginHint?: string | undefined;
579
+ }): Promise<URL>;
580
+ validateAuthorizationCode: ({
581
+ code,
582
+ codeVerifier,
583
+ redirectURI
584
+ }: {
585
+ code: string;
586
+ redirectURI: string;
587
+ codeVerifier?: string | undefined;
588
+ deviceId?: string | undefined;
589
+ }) => Promise<OAuth2Tokens>;
590
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
591
+ getUserInfo(token: OAuth2Tokens & {
592
+ user?: {
593
+ name?: {
594
+ firstName?: string;
595
+ lastName?: string;
596
+ };
597
+ email?: string;
598
+ } | undefined;
599
+ }): Promise<{
600
+ user: {
601
+ id: string;
602
+ name?: string;
603
+ email?: string | null;
604
+ image?: string;
605
+ emailVerified: boolean;
606
+ [key: string]: any;
607
+ };
608
+ data: any;
609
+ } | null>;
610
+ options: SpotifyOptions;
611
+ };
612
+ twitch: (options: TwitchOptions) => {
613
+ id: "twitch";
614
+ name: string;
615
+ createAuthorizationURL({
616
+ state,
617
+ scopes,
618
+ redirectURI
619
+ }: {
620
+ state: string;
621
+ codeVerifier: string;
622
+ scopes?: string[] | undefined;
623
+ redirectURI: string;
624
+ display?: string | undefined;
625
+ loginHint?: string | undefined;
626
+ }): Promise<URL>;
627
+ validateAuthorizationCode: ({
628
+ code,
629
+ redirectURI
630
+ }: {
631
+ code: string;
632
+ redirectURI: string;
633
+ codeVerifier?: string | undefined;
634
+ deviceId?: string | undefined;
635
+ }) => Promise<OAuth2Tokens>;
636
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
637
+ getUserInfo(token: OAuth2Tokens & {
638
+ user?: {
639
+ name?: {
640
+ firstName?: string;
641
+ lastName?: string;
642
+ };
643
+ email?: string;
644
+ } | undefined;
645
+ }): Promise<{
646
+ user: {
647
+ id: string;
648
+ name?: string;
649
+ email?: string | null;
650
+ image?: string;
651
+ emailVerified: boolean;
652
+ [key: string]: any;
653
+ };
654
+ data: any;
655
+ } | null>;
656
+ options: TwitchOptions;
657
+ };
658
+ twitter: (options: TwitterOption) => {
659
+ id: "twitter";
660
+ name: string;
661
+ createAuthorizationURL(data: {
662
+ state: string;
663
+ codeVerifier: string;
664
+ scopes?: string[] | undefined;
665
+ redirectURI: string;
666
+ display?: string | undefined;
667
+ loginHint?: string | undefined;
668
+ }): Promise<URL>;
669
+ validateAuthorizationCode: ({
670
+ code,
671
+ codeVerifier,
672
+ redirectURI
673
+ }: {
674
+ code: string;
675
+ redirectURI: string;
676
+ codeVerifier?: string | undefined;
677
+ deviceId?: string | undefined;
678
+ }) => Promise<OAuth2Tokens>;
679
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
680
+ getUserInfo(token: OAuth2Tokens & {
681
+ user?: {
682
+ name?: {
683
+ firstName?: string;
684
+ lastName?: string;
685
+ };
686
+ email?: string;
687
+ } | undefined;
688
+ }): Promise<{
689
+ user: {
690
+ id: string;
691
+ name?: string;
692
+ email?: string | null;
693
+ image?: string;
694
+ emailVerified: boolean;
695
+ [key: string]: any;
696
+ };
697
+ data: any;
698
+ } | null>;
699
+ options: TwitterOption;
700
+ };
701
+ dropbox: (options: DropboxOptions) => {
702
+ id: "dropbox";
703
+ name: string;
704
+ createAuthorizationURL: ({
705
+ state,
706
+ scopes,
707
+ codeVerifier,
708
+ redirectURI
709
+ }: {
710
+ state: string;
711
+ codeVerifier: string;
712
+ scopes?: string[] | undefined;
713
+ redirectURI: string;
714
+ display?: string | undefined;
715
+ loginHint?: string | undefined;
716
+ }) => Promise<URL>;
717
+ validateAuthorizationCode: ({
718
+ code,
719
+ codeVerifier,
720
+ redirectURI
721
+ }: {
722
+ code: string;
723
+ redirectURI: string;
724
+ codeVerifier?: string | undefined;
725
+ deviceId?: string | undefined;
726
+ }) => Promise<OAuth2Tokens>;
727
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
728
+ getUserInfo(token: OAuth2Tokens & {
729
+ user?: {
730
+ name?: {
731
+ firstName?: string;
732
+ lastName?: string;
733
+ };
734
+ email?: string;
735
+ } | undefined;
736
+ }): Promise<{
737
+ user: {
738
+ id: string;
739
+ name?: string;
740
+ email?: string | null;
741
+ image?: string;
742
+ emailVerified: boolean;
743
+ [key: string]: any;
744
+ };
745
+ data: any;
746
+ } | null>;
747
+ options: DropboxOptions;
748
+ };
749
+ kick: (options: KickOptions) => {
750
+ id: "kick";
751
+ name: string;
752
+ createAuthorizationURL({
753
+ state,
754
+ scopes,
755
+ redirectURI,
756
+ codeVerifier
757
+ }: {
758
+ state: string;
759
+ codeVerifier: string;
760
+ scopes?: string[] | undefined;
761
+ redirectURI: string;
762
+ display?: string | undefined;
763
+ loginHint?: string | undefined;
764
+ }): Promise<URL>;
765
+ validateAuthorizationCode({
766
+ code,
767
+ redirectURI,
768
+ codeVerifier
769
+ }: {
770
+ code: string;
771
+ redirectURI: string;
772
+ codeVerifier?: string | undefined;
773
+ deviceId?: string | undefined;
774
+ }): Promise<OAuth2Tokens>;
775
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
776
+ getUserInfo(token: OAuth2Tokens & {
777
+ user?: {
778
+ name?: {
779
+ firstName?: string;
780
+ lastName?: string;
781
+ };
782
+ email?: string;
783
+ } | undefined;
784
+ }): Promise<{
785
+ user: {
786
+ id: string;
787
+ name?: string;
788
+ email?: string | null;
789
+ image?: string;
790
+ emailVerified: boolean;
791
+ [key: string]: any;
792
+ };
793
+ data: any;
794
+ } | null>;
795
+ options: KickOptions;
796
+ };
797
+ linear: (options: LinearOptions) => {
798
+ id: "linear";
799
+ name: string;
800
+ createAuthorizationURL({
801
+ state,
802
+ scopes,
803
+ loginHint,
804
+ redirectURI
805
+ }: {
806
+ state: string;
807
+ codeVerifier: string;
808
+ scopes?: string[] | undefined;
809
+ redirectURI: string;
810
+ display?: string | undefined;
811
+ loginHint?: string | undefined;
812
+ }): Promise<URL>;
813
+ validateAuthorizationCode: ({
814
+ code,
815
+ redirectURI
816
+ }: {
817
+ code: string;
818
+ redirectURI: string;
819
+ codeVerifier?: string | undefined;
820
+ deviceId?: string | undefined;
821
+ }) => Promise<OAuth2Tokens>;
822
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
823
+ getUserInfo(token: OAuth2Tokens & {
824
+ user?: {
825
+ name?: {
826
+ firstName?: string;
827
+ lastName?: string;
828
+ };
829
+ email?: string;
830
+ } | undefined;
831
+ }): Promise<{
832
+ user: {
833
+ id: string;
834
+ name?: string;
835
+ email?: string | null;
836
+ image?: string;
837
+ emailVerified: boolean;
838
+ [key: string]: any;
839
+ };
840
+ data: any;
841
+ } | null>;
842
+ options: LinearOptions;
843
+ };
844
+ linkedin: (options: LinkedInOptions) => {
845
+ id: "linkedin";
846
+ name: string;
847
+ createAuthorizationURL: ({
848
+ state,
849
+ scopes,
850
+ redirectURI,
851
+ loginHint
852
+ }: {
853
+ state: string;
854
+ codeVerifier: string;
855
+ scopes?: string[] | undefined;
856
+ redirectURI: string;
857
+ display?: string | undefined;
858
+ loginHint?: string | undefined;
859
+ }) => Promise<URL>;
860
+ validateAuthorizationCode: ({
861
+ code,
862
+ redirectURI
863
+ }: {
864
+ code: string;
865
+ redirectURI: string;
866
+ codeVerifier?: string | undefined;
867
+ deviceId?: string | undefined;
868
+ }) => Promise<OAuth2Tokens>;
869
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
870
+ getUserInfo(token: OAuth2Tokens & {
871
+ user?: {
872
+ name?: {
873
+ firstName?: string;
874
+ lastName?: string;
875
+ };
876
+ email?: string;
877
+ } | undefined;
878
+ }): Promise<{
879
+ user: {
880
+ id: string;
881
+ name?: string;
882
+ email?: string | null;
883
+ image?: string;
884
+ emailVerified: boolean;
885
+ [key: string]: any;
886
+ };
887
+ data: any;
888
+ } | null>;
889
+ options: LinkedInOptions;
890
+ };
891
+ gitlab: (options: GitlabOptions) => {
892
+ id: "gitlab";
893
+ name: string;
894
+ createAuthorizationURL: ({
895
+ state,
896
+ scopes,
897
+ codeVerifier,
898
+ loginHint,
899
+ redirectURI
900
+ }: {
901
+ state: string;
902
+ codeVerifier: string;
903
+ scopes?: string[] | undefined;
904
+ redirectURI: string;
905
+ display?: string | undefined;
906
+ loginHint?: string | undefined;
907
+ }) => Promise<URL>;
908
+ validateAuthorizationCode: ({
909
+ code,
910
+ redirectURI,
911
+ codeVerifier
912
+ }: {
913
+ code: string;
914
+ redirectURI: string;
915
+ codeVerifier?: string | undefined;
916
+ deviceId?: string | undefined;
917
+ }) => Promise<OAuth2Tokens>;
918
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
919
+ getUserInfo(token: OAuth2Tokens & {
920
+ user?: {
921
+ name?: {
922
+ firstName?: string;
923
+ lastName?: string;
924
+ };
925
+ email?: string;
926
+ } | undefined;
927
+ }): Promise<{
928
+ user: {
929
+ id: string;
930
+ name?: string;
931
+ email?: string | null;
932
+ image?: string;
933
+ emailVerified: boolean;
934
+ [key: string]: any;
935
+ };
936
+ data: any;
937
+ } | {
938
+ user: {
939
+ id: number;
940
+ name: string;
941
+ email: string;
942
+ image: string;
943
+ emailVerified: boolean;
944
+ } | {
945
+ id: string | number;
946
+ name: string;
947
+ email: string | null;
948
+ image: string;
949
+ emailVerified: boolean;
950
+ } | {
951
+ id: string | number;
952
+ name: string;
953
+ email: string | null;
954
+ image: string;
955
+ emailVerified: boolean;
956
+ };
957
+ data: GitlabProfile;
958
+ } | null>;
959
+ options: GitlabOptions;
960
+ };
961
+ tiktok: (options: TiktokOptions) => {
962
+ id: "tiktok";
963
+ name: string;
964
+ createAuthorizationURL({
965
+ state,
966
+ scopes,
967
+ redirectURI
968
+ }: {
969
+ state: string;
970
+ codeVerifier: string;
971
+ scopes?: string[] | undefined;
972
+ redirectURI: string;
973
+ display?: string | undefined;
974
+ loginHint?: string | undefined;
975
+ }): URL;
976
+ validateAuthorizationCode: ({
977
+ code,
978
+ redirectURI
979
+ }: {
980
+ code: string;
981
+ redirectURI: string;
982
+ codeVerifier?: string | undefined;
983
+ deviceId?: string | undefined;
984
+ }) => Promise<OAuth2Tokens>;
985
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
986
+ getUserInfo(token: OAuth2Tokens & {
987
+ user?: {
988
+ name?: {
989
+ firstName?: string;
990
+ lastName?: string;
991
+ };
992
+ email?: string;
993
+ } | undefined;
994
+ }): Promise<{
995
+ user: {
996
+ id: string;
997
+ name?: string;
998
+ email?: string | null;
999
+ image?: string;
1000
+ emailVerified: boolean;
1001
+ [key: string]: any;
1002
+ };
1003
+ data: any;
1004
+ } | null>;
1005
+ options: TiktokOptions;
1006
+ };
1007
+ reddit: (options: RedditOptions) => {
1008
+ id: "reddit";
1009
+ name: string;
1010
+ createAuthorizationURL({
1011
+ state,
1012
+ scopes,
1013
+ redirectURI
1014
+ }: {
1015
+ state: string;
1016
+ codeVerifier: string;
1017
+ scopes?: string[] | undefined;
1018
+ redirectURI: string;
1019
+ display?: string | undefined;
1020
+ loginHint?: string | undefined;
1021
+ }): Promise<URL>;
1022
+ validateAuthorizationCode: ({
1023
+ code,
1024
+ redirectURI
1025
+ }: {
1026
+ code: string;
1027
+ redirectURI: string;
1028
+ codeVerifier?: string | undefined;
1029
+ deviceId?: string | undefined;
1030
+ }) => Promise<OAuth2Tokens>;
1031
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1032
+ getUserInfo(token: OAuth2Tokens & {
1033
+ user?: {
1034
+ name?: {
1035
+ firstName?: string;
1036
+ lastName?: string;
1037
+ };
1038
+ email?: string;
1039
+ } | undefined;
1040
+ }): Promise<{
1041
+ user: {
1042
+ id: string;
1043
+ name?: string;
1044
+ email?: string | null;
1045
+ image?: string;
1046
+ emailVerified: boolean;
1047
+ [key: string]: any;
1048
+ };
1049
+ data: any;
1050
+ } | null>;
1051
+ options: RedditOptions;
1052
+ };
1053
+ roblox: (options: RobloxOptions) => {
1054
+ id: "roblox";
1055
+ name: string;
1056
+ createAuthorizationURL({
1057
+ state,
1058
+ scopes,
1059
+ redirectURI
1060
+ }: {
1061
+ state: string;
1062
+ codeVerifier: string;
1063
+ scopes?: string[] | undefined;
1064
+ redirectURI: string;
1065
+ display?: string | undefined;
1066
+ loginHint?: string | undefined;
1067
+ }): URL;
1068
+ validateAuthorizationCode: ({
1069
+ code,
1070
+ redirectURI
1071
+ }: {
1072
+ code: string;
1073
+ redirectURI: string;
1074
+ codeVerifier?: string | undefined;
1075
+ deviceId?: string | undefined;
1076
+ }) => Promise<OAuth2Tokens>;
1077
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1078
+ getUserInfo(token: OAuth2Tokens & {
1079
+ user?: {
1080
+ name?: {
1081
+ firstName?: string;
1082
+ lastName?: string;
1083
+ };
1084
+ email?: string;
1085
+ } | undefined;
1086
+ }): Promise<{
1087
+ user: {
1088
+ id: string;
1089
+ name?: string;
1090
+ email?: string | null;
1091
+ image?: string;
1092
+ emailVerified: boolean;
1093
+ [key: string]: any;
1094
+ };
1095
+ data: any;
1096
+ } | null>;
1097
+ options: RobloxOptions;
1098
+ };
1099
+ salesforce: (options: SalesforceOptions) => {
1100
+ id: "salesforce";
1101
+ name: string;
1102
+ createAuthorizationURL({
1103
+ state,
1104
+ scopes,
1105
+ codeVerifier,
1106
+ redirectURI
1107
+ }: {
1108
+ state: string;
1109
+ codeVerifier: string;
1110
+ scopes?: string[] | undefined;
1111
+ redirectURI: string;
1112
+ display?: string | undefined;
1113
+ loginHint?: string | undefined;
1114
+ }): Promise<URL>;
1115
+ validateAuthorizationCode: ({
1116
+ code,
1117
+ codeVerifier,
1118
+ redirectURI
1119
+ }: {
1120
+ code: string;
1121
+ redirectURI: string;
1122
+ codeVerifier?: string | undefined;
1123
+ deviceId?: string | undefined;
1124
+ }) => Promise<OAuth2Tokens>;
1125
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1126
+ getUserInfo(token: OAuth2Tokens & {
1127
+ user?: {
1128
+ name?: {
1129
+ firstName?: string;
1130
+ lastName?: string;
1131
+ };
1132
+ email?: string;
1133
+ } | undefined;
1134
+ }): Promise<{
1135
+ user: {
1136
+ id: string;
1137
+ name?: string;
1138
+ email?: string | null;
1139
+ image?: string;
1140
+ emailVerified: boolean;
1141
+ [key: string]: any;
1142
+ };
1143
+ data: any;
1144
+ } | null>;
1145
+ options: SalesforceOptions;
1146
+ };
1147
+ vk: (options: VkOption) => {
1148
+ id: "vk";
1149
+ name: string;
1150
+ createAuthorizationURL({
1151
+ state,
1152
+ scopes,
1153
+ codeVerifier,
1154
+ redirectURI
1155
+ }: {
1156
+ state: string;
1157
+ codeVerifier: string;
1158
+ scopes?: string[] | undefined;
1159
+ redirectURI: string;
1160
+ display?: string | undefined;
1161
+ loginHint?: string | undefined;
1162
+ }): Promise<URL>;
1163
+ validateAuthorizationCode: ({
1164
+ code,
1165
+ codeVerifier,
1166
+ redirectURI,
1167
+ deviceId
1168
+ }: {
1169
+ code: string;
1170
+ redirectURI: string;
1171
+ codeVerifier?: string | undefined;
1172
+ deviceId?: string | undefined;
1173
+ }) => Promise<OAuth2Tokens>;
1174
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1175
+ getUserInfo(data: OAuth2Tokens & {
1176
+ user?: {
1177
+ name?: {
1178
+ firstName?: string;
1179
+ lastName?: string;
1180
+ };
1181
+ email?: string;
1182
+ } | undefined;
1183
+ }): Promise<{
1184
+ user: {
1185
+ id: string;
1186
+ name?: string;
1187
+ email?: string | null;
1188
+ image?: string;
1189
+ emailVerified: boolean;
1190
+ [key: string]: any;
1191
+ };
1192
+ data: any;
1193
+ } | null>;
1194
+ options: VkOption;
1195
+ };
1196
+ zoom: (userOptions: ZoomOptions) => {
1197
+ id: "zoom";
1198
+ name: string;
1199
+ createAuthorizationURL: ({
1200
+ state,
1201
+ redirectURI,
1202
+ codeVerifier
1203
+ }: {
1204
+ state: string;
1205
+ codeVerifier: string;
1206
+ scopes?: string[] | undefined;
1207
+ redirectURI: string;
1208
+ display?: string | undefined;
1209
+ loginHint?: string | undefined;
1210
+ }) => Promise<URL>;
1211
+ validateAuthorizationCode: ({
1212
+ code,
1213
+ redirectURI,
1214
+ codeVerifier
1215
+ }: {
1216
+ code: string;
1217
+ redirectURI: string;
1218
+ codeVerifier?: string | undefined;
1219
+ deviceId?: string | undefined;
1220
+ }) => Promise<OAuth2Tokens>;
1221
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1222
+ getUserInfo(token: OAuth2Tokens & {
1223
+ user?: {
1224
+ name?: {
1225
+ firstName?: string;
1226
+ lastName?: string;
1227
+ };
1228
+ email?: string;
1229
+ } | undefined;
1230
+ }): Promise<{
1231
+ user: {
1232
+ id: string;
1233
+ name?: string;
1234
+ email?: string | null;
1235
+ image?: string;
1236
+ emailVerified: boolean;
1237
+ [key: string]: any;
1238
+ };
1239
+ data: any;
1240
+ } | null>;
1241
+ };
1242
+ notion: (options: NotionOptions) => {
1243
+ id: "notion";
1244
+ name: string;
1245
+ createAuthorizationURL({
1246
+ state,
1247
+ scopes,
1248
+ loginHint,
1249
+ redirectURI
1250
+ }: {
1251
+ state: string;
1252
+ codeVerifier: string;
1253
+ scopes?: string[] | undefined;
1254
+ redirectURI: string;
1255
+ display?: string | undefined;
1256
+ loginHint?: string | undefined;
1257
+ }): Promise<URL>;
1258
+ validateAuthorizationCode: ({
1259
+ code,
1260
+ redirectURI
1261
+ }: {
1262
+ code: string;
1263
+ redirectURI: string;
1264
+ codeVerifier?: string | undefined;
1265
+ deviceId?: string | undefined;
1266
+ }) => Promise<OAuth2Tokens>;
1267
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1268
+ getUserInfo(token: OAuth2Tokens & {
1269
+ user?: {
1270
+ name?: {
1271
+ firstName?: string;
1272
+ lastName?: string;
1273
+ };
1274
+ email?: string;
1275
+ } | undefined;
1276
+ }): Promise<{
1277
+ user: {
1278
+ id: string;
1279
+ name?: string;
1280
+ email?: string | null;
1281
+ image?: string;
1282
+ emailVerified: boolean;
1283
+ [key: string]: any;
1284
+ };
1285
+ data: any;
1286
+ } | null>;
1287
+ options: NotionOptions;
1288
+ };
1289
+ kakao: (options: KakaoOptions) => {
1290
+ id: "kakao";
1291
+ name: string;
1292
+ createAuthorizationURL({
1293
+ state,
1294
+ scopes,
1295
+ redirectURI
1296
+ }: {
1297
+ state: string;
1298
+ codeVerifier: string;
1299
+ scopes?: string[] | undefined;
1300
+ redirectURI: string;
1301
+ display?: string | undefined;
1302
+ loginHint?: string | undefined;
1303
+ }): Promise<URL>;
1304
+ validateAuthorizationCode: ({
1305
+ code,
1306
+ redirectURI
1307
+ }: {
1308
+ code: string;
1309
+ redirectURI: string;
1310
+ codeVerifier?: string | undefined;
1311
+ deviceId?: string | undefined;
1312
+ }) => Promise<OAuth2Tokens>;
1313
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1314
+ getUserInfo(token: OAuth2Tokens & {
1315
+ user?: {
1316
+ name?: {
1317
+ firstName?: string;
1318
+ lastName?: string;
1319
+ };
1320
+ email?: string;
1321
+ } | undefined;
1322
+ }): Promise<{
1323
+ user: {
1324
+ id: string;
1325
+ name?: string;
1326
+ email?: string | null;
1327
+ image?: string;
1328
+ emailVerified: boolean;
1329
+ [key: string]: any;
1330
+ };
1331
+ data: any;
1332
+ } | {
1333
+ user: {
1334
+ id: string;
1335
+ name: string | undefined;
1336
+ email: string | undefined;
1337
+ image: string | undefined;
1338
+ emailVerified: boolean;
1339
+ } | {
1340
+ id: string;
1341
+ name: string;
1342
+ email: string | null;
1343
+ image: string;
1344
+ emailVerified: boolean;
1345
+ } | {
1346
+ id: string;
1347
+ name: string;
1348
+ email: string | null;
1349
+ image: string;
1350
+ emailVerified: boolean;
1351
+ };
1352
+ data: KakaoProfile;
1353
+ } | null>;
1354
+ options: KakaoOptions;
1355
+ };
1356
+ naver: (options: NaverOptions) => {
1357
+ id: "naver";
1358
+ name: string;
1359
+ createAuthorizationURL({
1360
+ state,
1361
+ scopes,
1362
+ redirectURI
1363
+ }: {
1364
+ state: string;
1365
+ codeVerifier: string;
1366
+ scopes?: string[] | undefined;
1367
+ redirectURI: string;
1368
+ display?: string | undefined;
1369
+ loginHint?: string | undefined;
1370
+ }): Promise<URL>;
1371
+ validateAuthorizationCode: ({
1372
+ code,
1373
+ redirectURI
1374
+ }: {
1375
+ code: string;
1376
+ redirectURI: string;
1377
+ codeVerifier?: string | undefined;
1378
+ deviceId?: string | undefined;
1379
+ }) => Promise<OAuth2Tokens>;
1380
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1381
+ getUserInfo(token: OAuth2Tokens & {
1382
+ user?: {
1383
+ name?: {
1384
+ firstName?: string;
1385
+ lastName?: string;
1386
+ };
1387
+ email?: string;
1388
+ } | undefined;
1389
+ }): Promise<{
1390
+ user: {
1391
+ id: string;
1392
+ name?: string;
1393
+ email?: string | null;
1394
+ image?: string;
1395
+ emailVerified: boolean;
1396
+ [key: string]: any;
1397
+ };
1398
+ data: any;
1399
+ } | {
1400
+ user: {
1401
+ id: string;
1402
+ name: string;
1403
+ email: string;
1404
+ image: string;
1405
+ emailVerified: boolean;
1406
+ } | {
1407
+ id: string;
1408
+ name: string;
1409
+ email: string | null;
1410
+ image: string;
1411
+ emailVerified: boolean;
1412
+ } | {
1413
+ id: string;
1414
+ name: string;
1415
+ email: string | null;
1416
+ image: string;
1417
+ emailVerified: boolean;
1418
+ };
1419
+ data: NaverProfile;
1420
+ } | null>;
1421
+ options: NaverOptions;
1422
+ };
1423
+ line: (options: LineOptions) => {
1424
+ id: "line";
1425
+ name: string;
1426
+ createAuthorizationURL({
1427
+ state,
1428
+ scopes,
1429
+ codeVerifier,
1430
+ redirectURI,
1431
+ loginHint
1432
+ }: {
1433
+ state: string;
1434
+ codeVerifier: string;
1435
+ scopes?: string[] | undefined;
1436
+ redirectURI: string;
1437
+ display?: string | undefined;
1438
+ loginHint?: string | undefined;
1439
+ }): Promise<URL>;
1440
+ validateAuthorizationCode: ({
1441
+ code,
1442
+ codeVerifier,
1443
+ redirectURI
1444
+ }: {
1445
+ code: string;
1446
+ redirectURI: string;
1447
+ codeVerifier?: string | undefined;
1448
+ deviceId?: string | undefined;
1449
+ }) => Promise<OAuth2Tokens>;
1450
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1451
+ verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
1452
+ getUserInfo(token: OAuth2Tokens & {
1453
+ user?: {
1454
+ name?: {
1455
+ firstName?: string;
1456
+ lastName?: string;
1457
+ };
1458
+ email?: string;
1459
+ } | undefined;
1460
+ }): Promise<{
1461
+ user: {
1462
+ id: string;
1463
+ name?: string;
1464
+ email?: string | null;
1465
+ image?: string;
1466
+ emailVerified: boolean;
1467
+ [key: string]: any;
1468
+ };
1469
+ data: any;
1470
+ } | {
1471
+ user: {
1472
+ id: any;
1473
+ name: any;
1474
+ email: any;
1475
+ image: any;
1476
+ emailVerified: false;
1477
+ } | {
1478
+ id: any;
1479
+ name: any;
1480
+ email: any;
1481
+ image: any;
1482
+ emailVerified: boolean;
1483
+ } | {
1484
+ id: any;
1485
+ name: any;
1486
+ email: any;
1487
+ image: any;
1488
+ emailVerified: boolean;
1489
+ };
1490
+ data: any;
1491
+ } | null>;
1492
+ options: LineOptions;
1493
+ };
1494
+ paybin: (options: PaybinOptions) => {
1495
+ id: "paybin";
1496
+ name: string;
1497
+ createAuthorizationURL({
1498
+ state,
1499
+ scopes,
1500
+ codeVerifier,
1501
+ redirectURI,
1502
+ loginHint
1503
+ }: {
1504
+ state: string;
1505
+ codeVerifier: string;
1506
+ scopes?: string[] | undefined;
1507
+ redirectURI: string;
1508
+ display?: string | undefined;
1509
+ loginHint?: string | undefined;
1510
+ }): Promise<URL>;
1511
+ validateAuthorizationCode: ({
1512
+ code,
1513
+ codeVerifier,
1514
+ redirectURI
1515
+ }: {
1516
+ code: string;
1517
+ redirectURI: string;
1518
+ codeVerifier?: string | undefined;
1519
+ deviceId?: string | undefined;
1520
+ }) => Promise<OAuth2Tokens>;
1521
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1522
+ getUserInfo(token: OAuth2Tokens & {
1523
+ user?: {
1524
+ name?: {
1525
+ firstName?: string;
1526
+ lastName?: string;
1527
+ };
1528
+ email?: string;
1529
+ } | undefined;
1530
+ }): Promise<{
1531
+ user: {
1532
+ id: string;
1533
+ name?: string;
1534
+ email?: string | null;
1535
+ image?: string;
1536
+ emailVerified: boolean;
1537
+ [key: string]: any;
1538
+ };
1539
+ data: any;
1540
+ } | null>;
1541
+ options: PaybinOptions;
1542
+ };
1543
+ paypal: (options: PayPalOptions) => {
1544
+ id: "paypal";
1545
+ name: string;
1546
+ createAuthorizationURL({
1547
+ state,
1548
+ codeVerifier,
1549
+ redirectURI
1550
+ }: {
1551
+ state: string;
1552
+ codeVerifier: string;
1553
+ scopes?: string[] | undefined;
1554
+ redirectURI: string;
1555
+ display?: string | undefined;
1556
+ loginHint?: string | undefined;
1557
+ }): Promise<URL>;
1558
+ validateAuthorizationCode: ({
1559
+ code,
1560
+ redirectURI
1561
+ }: {
1562
+ code: string;
1563
+ redirectURI: string;
1564
+ codeVerifier?: string | undefined;
1565
+ deviceId?: string | undefined;
1566
+ }) => Promise<{
1567
+ accessToken: string;
1568
+ refreshToken: string | undefined;
1569
+ accessTokenExpiresAt: Date | undefined;
1570
+ idToken: string | undefined;
1571
+ }>;
1572
+ refreshAccessToken: ((refreshToken: string) => Promise<OAuth2Tokens>) | ((refreshToken: string) => Promise<{
1573
+ accessToken: any;
1574
+ refreshToken: any;
1575
+ accessTokenExpiresAt: Date | undefined;
1576
+ }>);
1577
+ verifyIdToken(token: string, nonce: string | undefined): Promise<boolean>;
1578
+ getUserInfo(token: OAuth2Tokens & {
1579
+ user?: {
1580
+ name?: {
1581
+ firstName?: string;
1582
+ lastName?: string;
1583
+ };
1584
+ email?: string;
1585
+ } | undefined;
1586
+ }): Promise<{
1587
+ user: {
1588
+ id: string;
1589
+ name?: string;
1590
+ email?: string | null;
1591
+ image?: string;
1592
+ emailVerified: boolean;
1593
+ [key: string]: any;
1594
+ };
1595
+ data: any;
1596
+ } | {
1597
+ user: {
1598
+ id: string;
1599
+ name: string;
1600
+ email: string;
1601
+ image: string | undefined;
1602
+ emailVerified: boolean;
1603
+ } | {
1604
+ id: string;
1605
+ name: string;
1606
+ email: string | null;
1607
+ image: string;
1608
+ emailVerified: boolean;
1609
+ } | {
1610
+ id: string;
1611
+ name: string;
1612
+ email: string | null;
1613
+ image: string;
1614
+ emailVerified: boolean;
1615
+ };
1616
+ data: PayPalProfile;
1617
+ } | null>;
1618
+ options: PayPalOptions;
1619
+ };
1620
+ polar: (options: PolarOptions) => {
1621
+ id: "polar";
1622
+ name: string;
1623
+ createAuthorizationURL({
1624
+ state,
1625
+ scopes,
1626
+ codeVerifier,
1627
+ redirectURI
1628
+ }: {
1629
+ state: string;
1630
+ codeVerifier: string;
1631
+ scopes?: string[] | undefined;
1632
+ redirectURI: string;
1633
+ display?: string | undefined;
1634
+ loginHint?: string | undefined;
1635
+ }): Promise<URL>;
1636
+ validateAuthorizationCode: ({
1637
+ code,
1638
+ codeVerifier,
1639
+ redirectURI
1640
+ }: {
1641
+ code: string;
1642
+ redirectURI: string;
1643
+ codeVerifier?: string | undefined;
1644
+ deviceId?: string | undefined;
1645
+ }) => Promise<OAuth2Tokens>;
1646
+ refreshAccessToken: (refreshToken: string) => Promise<OAuth2Tokens>;
1647
+ getUserInfo(token: OAuth2Tokens & {
1648
+ user?: {
1649
+ name?: {
1650
+ firstName?: string;
1651
+ lastName?: string;
1652
+ };
1653
+ email?: string;
1654
+ } | undefined;
1655
+ }): Promise<{
1656
+ user: {
1657
+ id: string;
1658
+ name?: string;
1659
+ email?: string | null;
1660
+ image?: string;
1661
+ emailVerified: boolean;
1662
+ [key: string]: any;
1663
+ };
1664
+ data: any;
1665
+ } | null>;
1666
+ options: PolarOptions;
1667
+ };
1668
+ vercel: (options: VercelOptions) => {
1669
+ id: "vercel";
1670
+ name: string;
1671
+ createAuthorizationURL({
1672
+ state,
1673
+ scopes,
1674
+ codeVerifier,
1675
+ redirectURI
1676
+ }: {
1677
+ state: string;
1678
+ codeVerifier: string;
1679
+ scopes?: string[] | undefined;
1680
+ redirectURI: string;
1681
+ display?: string | undefined;
1682
+ loginHint?: string | undefined;
1683
+ }): Promise<URL>;
1684
+ validateAuthorizationCode: ({
1685
+ code,
1686
+ codeVerifier,
1687
+ redirectURI
1688
+ }: {
1689
+ code: string;
1690
+ redirectURI: string;
1691
+ codeVerifier?: string | undefined;
1692
+ deviceId?: string | undefined;
1693
+ }) => Promise<OAuth2Tokens>;
1694
+ getUserInfo(token: OAuth2Tokens & {
1695
+ user?: {
1696
+ name?: {
1697
+ firstName?: string;
1698
+ lastName?: string;
1699
+ };
1700
+ email?: string;
1701
+ } | undefined;
1702
+ }): Promise<{
1703
+ user: {
1704
+ id: string;
1705
+ name?: string;
1706
+ email?: string | null;
1707
+ image?: string;
1708
+ emailVerified: boolean;
1709
+ [key: string]: any;
1710
+ };
1711
+ data: any;
1712
+ } | null>;
1713
+ options: VercelOptions;
1714
+ };
1715
+ };
1716
+ declare const socialProviderList: ["github", ...(keyof typeof socialProviders)[]];
1717
+ declare const SocialProviderListEnum: z.ZodType<SocialProviderList[number] | (string & {})>;
1718
+ type SocialProvider = z.infer<typeof SocialProviderListEnum>;
1719
+ type SocialProviders = { [K in SocialProviderList[number]]?: Parameters<(typeof socialProviders)[K]>[0] & {
1720
+ enabled?: boolean | undefined;
1721
+ } };
1722
+ type SocialProviderList = typeof socialProviderList;
1723
+ //#endregion
2
1724
  export { AccountStatus, AppleNonConformUser, AppleOptions, AppleProfile, AtlassianOptions, AtlassianProfile, CognitoOptions, CognitoProfile, DiscordOptions, DiscordProfile, DropboxOptions, DropboxProfile, FacebookOptions, FacebookProfile, FigmaOptions, FigmaProfile, GithubOptions, GithubProfile, GitlabOptions, GitlabProfile, GoogleOptions, GoogleProfile, HuggingFaceOptions, HuggingFaceProfile, KakaoOptions, KakaoProfile, KickOptions, KickProfile, LineIdTokenPayload, LineOptions, LineUserInfo, LinearOptions, LinearProfile, LinearUser, LinkedInOptions, LinkedInProfile, LoginType, MicrosoftEntraIDProfile, MicrosoftOptions, NaverOptions, NaverProfile, NotionOptions, NotionProfile, PayPalOptions, PayPalProfile, PayPalTokenResponse, PaybinOptions, PaybinProfile, PhoneNumber, PolarOptions, PolarProfile, PronounOption, RedditOptions, RedditProfile, RobloxOptions, RobloxProfile, SalesforceOptions, SalesforceProfile, SlackOptions, SlackProfile, SocialProvider, SocialProviderList, SocialProviderListEnum, SocialProviders, SpotifyOptions, SpotifyProfile, TiktokOptions, TiktokProfile, TwitchOptions, TwitchProfile, TwitterOption, TwitterProfile, VercelOptions, VercelProfile, VkOption, VkProfile, ZoomOptions, ZoomProfile, apple, atlassian, cognito, discord, dropbox, facebook, figma, getApplePublicKey, getCognitoPublicKey, getGooglePublicKey, github, gitlab, google, huggingface, kakao, kick, line, linear, linkedin, microsoft, naver, notion, paybin, paypal, polar, reddit, roblox, salesforce, slack, socialProviderList, socialProviders, spotify, tiktok, twitch, twitter, vercel, vk, zoom };