@descope/web-js-sdk 0.1.0-alpha.2 → 0.1.0-alpha.20

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.
package/dist/index.d.ts CHANGED
@@ -1,145 +1,207 @@
1
1
  import * as _descope_core_js_sdk from '@descope/core-js-sdk';
2
- import _descope_core_js_sdk__default from '@descope/core-js-sdk';
3
2
 
4
- /** Configuration arguments which include the Descope core SDK args and fingerprint configuration.
5
- * Also specifies if we should persist tokens from responses automatically and auto-refresh.
3
+ /** Return the refresh token from the localStorage. Not for production usage because refresh token will not be saved in localStorage. */
4
+ declare function getRefreshToken(): string;
5
+ /**
6
+ * Return the session token. first try to get from cookie, and fallback to local storage
7
+ * See sessionTokenViaCookie option for more details about session token location
6
8
  */
7
- declare type WebJSSDKArgs = Parameters<typeof _descope_core_js_sdk__default>[0] & {
9
+ declare function getSessionToken(): string;
10
+
11
+ declare function isSupported(requirePlatformAuthenticator?: boolean): Promise<boolean>;
12
+
13
+ type PersistTokensOptions<A extends boolean> = {
14
+ persistTokens?: A;
15
+ sessionTokenViaCookie?: A extends true ? boolean : never;
16
+ };
17
+
18
+ type AutoRefreshOptions = {
19
+ autoRefresh?: boolean;
20
+ };
21
+
22
+ type FingerprintOptions = {
8
23
  fpKey?: string;
9
- persistTokens?: boolean;
24
+ fpLoad?: boolean;
10
25
  };
11
- /**
12
- * Wrapper around DescopeSDK to handle fingerprint.js and storage of JWT tokens in cookies and localStorage,
13
- * It also sets a timer to refresh session JWT automagically.
14
- */
15
- declare const _default: ({ persistTokens, ...args }: WebJSSDKArgs) => {
26
+
27
+ declare const decoratedCreateSdk: <A extends boolean>({ persistTokens: isPersistTokens, sessionTokenViaCookie, ...config }: Omit<{
28
+ projectId: string;
29
+ logger?: {
30
+ debug: {
31
+ (...data: any[]): void;
32
+ (message?: any, ...optionalParams: any[]): void;
33
+ };
34
+ log: {
35
+ (...data: any[]): void;
36
+ (message?: any, ...optionalParams: any[]): void;
37
+ };
38
+ error: {
39
+ (...data: any[]): void;
40
+ (message?: any, ...optionalParams: any[]): void;
41
+ };
42
+ };
43
+ baseUrl?: string;
44
+ hooks?: {
45
+ beforeRequest?: (config: _descope_core_js_sdk.RequestConfig) => _descope_core_js_sdk.RequestConfig;
46
+ afterRequest?: (req: _descope_core_js_sdk.RequestConfig, res: Response) => void;
47
+ };
48
+ cookiePolicy?: RequestCredentials;
49
+ }, "hooks"> & {
50
+ hooks?: {
51
+ beforeRequest?: ((config: _descope_core_js_sdk.RequestConfig) => _descope_core_js_sdk.RequestConfig) | ((config: _descope_core_js_sdk.RequestConfig) => _descope_core_js_sdk.RequestConfig)[];
52
+ afterRequest?: ((req: _descope_core_js_sdk.RequestConfig, res: Response) => void) | ((req: _descope_core_js_sdk.RequestConfig, res: Response) => void)[];
53
+ };
54
+ } & FingerprintOptions & AutoRefreshOptions & PersistTokensOptions<A>) => A extends true ? (({
55
+ flow: {
56
+ start: (flowId: string, options?: {
57
+ tenant?: string;
58
+ }, interactionId?: string, input?: Record<string, FormDataEntryValue>) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
59
+ next: (executionId: string, stepId: string, interactionId: string, input?: Record<string, FormDataEntryValue>) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
60
+ };
61
+ webauthn: {
62
+ signUp: ((identifier: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
63
+ start: (loginId: string, origin: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<{
64
+ transactionId: string;
65
+ options: string;
66
+ create: boolean;
67
+ }>>;
68
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
69
+ };
70
+ signIn: ((identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
71
+ start: (loginId: string, origin: string, loginOptions?: {
72
+ stepup?: boolean;
73
+ mfa?: boolean;
74
+ customClaims?: Record<string, any>;
75
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<{
76
+ transactionId: string;
77
+ options: string;
78
+ create: boolean;
79
+ }>>;
80
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
81
+ };
82
+ signUpOrIn: ((identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
83
+ start: (loginId: string, origin: string) => Promise<_descope_core_js_sdk.SdkResponse<{
84
+ transactionId: string;
85
+ options: string;
86
+ create: boolean;
87
+ }>>;
88
+ };
89
+ update: ((identifier: string, token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>) & {
90
+ start: (loginId: string, origin: string, token: string) => Promise<_descope_core_js_sdk.SdkResponse<{
91
+ transactionId: string;
92
+ options: string;
93
+ create: boolean;
94
+ }>>;
95
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>;
96
+ };
97
+ helpers: {
98
+ create: (options: string) => Promise<string>;
99
+ get: (options: string) => Promise<string>;
100
+ isSupported: typeof isSupported;
101
+ conditional: (options: string, abort: AbortController) => Promise<string>;
102
+ };
103
+ };
16
104
  accessKey: {
17
105
  exchange: (accessKey: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ExchangeAccessKeyResponse>>;
18
106
  };
19
107
  otp: {
20
108
  verify: {
21
- email: (identifier: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
22
- sms: (identifier: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
23
- whatsapp: (identifier: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
109
+ email: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
110
+ sms: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
111
+ whatsapp: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
24
112
  };
25
113
  signIn: {
26
- email: (identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
27
- sms: (identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
28
- whatsapp: (identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
114
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
115
+ sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
116
+ whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
29
117
  };
30
118
  signUp: {
31
- email: (identifier: string, user?: {
119
+ email: (loginId: string, user?: {
32
120
  email?: string;
33
121
  name?: string;
34
122
  phone?: string;
35
123
  }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
36
- sms: (identifier: string, user?: {
124
+ sms: (loginId: string, user?: {
37
125
  email?: string;
38
126
  name?: string;
39
127
  phone?: string;
40
128
  }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
41
- whatsapp: (identifier: string, user?: {
129
+ whatsapp: (loginId: string, user?: {
42
130
  email?: string;
43
131
  name?: string;
44
132
  phone?: string;
45
133
  }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
46
134
  };
47
135
  signUpOrIn: {
48
- email: (identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
49
- sms: (identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
50
- whatsapp: (identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
136
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
137
+ sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
138
+ whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
51
139
  };
52
140
  update: {
53
- email: (identifier: string, email: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
141
+ email: (loginId: string, email: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
54
142
  phone: {
55
- email: (identifier: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
56
- sms: (identifier: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
57
- whatsapp: (identifier: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
143
+ email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
144
+ sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
145
+ whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
58
146
  };
59
147
  };
60
148
  };
61
149
  magicLink: {
62
150
  verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
63
151
  signIn: {
64
- email: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
65
- sms: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
66
- whatsapp: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
152
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
153
+ sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
154
+ whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
67
155
  };
68
156
  signUp: {
69
- email: (identifier: string, uri: string, user?: {
157
+ email: (loginId: string, uri: string, user?: {
70
158
  email?: string;
71
159
  name?: string;
72
160
  phone?: string;
73
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
74
- sms: (identifier: string, uri: string, user?: {
161
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
162
+ sms: (loginId: string, uri: string, user?: {
75
163
  email?: string;
76
164
  name?: string;
77
165
  phone?: string;
78
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
79
- whatsapp: (identifier: string, uri: string, user?: {
166
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
167
+ whatsapp: (loginId: string, uri: string, user?: {
80
168
  email?: string;
81
169
  name?: string;
82
170
  phone?: string;
83
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
171
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
84
172
  };
85
173
  signUpOrIn: {
86
- email: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
87
- sms: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
88
- whatsapp: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
174
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
175
+ sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
176
+ whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
89
177
  };
90
178
  update: {
91
- email: (identifier: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
179
+ email: (loginId: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
92
180
  phone: {
93
- email: (identifier: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
94
- sms: (identifier: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
95
- whatsapp: (identifier: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
96
- };
97
- };
98
- crossDevice: {
99
- verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
100
- signIn: {
101
- email: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
102
- sms: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
103
- whatsapp: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
104
- };
105
- signUpOrIn: {
106
- email: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
107
- sms: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
108
- whatsapp: (identifier: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
109
- };
110
- signUp: {
111
- email: (identifier: string, uri: string, user?: {
112
- email?: string;
113
- name?: string;
114
- phone?: string;
115
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
116
- sms: (identifier: string, uri: string, user?: {
117
- email?: string;
118
- name?: string;
119
- phone?: string;
120
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
121
- whatsapp: (identifier: string, uri: string, user?: {
122
- email?: string;
123
- name?: string;
124
- phone?: string;
125
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.PendingRefResponse>>;
126
- };
127
- waitForSession: (pendingRef: string, config?: {
128
- pollingIntervalMs: number;
129
- timeoutMs: number;
130
- }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
131
- update: {
132
- email: (identifier: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
133
- phone: {
134
- email: (identifier: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
135
- sms: (identifier: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
136
- whatsapp: (identifier: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
137
- };
181
+ email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
182
+ sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
183
+ whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
138
184
  };
139
185
  };
140
186
  };
187
+ enchantedLink: {
188
+ verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
189
+ signIn: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
190
+ signUpOrIn: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
191
+ signUp: (loginId: string, uri: string, user?: {
192
+ email?: string;
193
+ name?: string;
194
+ phone?: string;
195
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
196
+ waitForSession: (pendingRef: string, config?: {
197
+ pollingIntervalMs: number;
198
+ timeoutMs: number;
199
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
200
+ update: {
201
+ email: (loginId: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
202
+ };
203
+ };
141
204
  oauth: {
142
- exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
143
205
  start: {
144
206
  facebook: <B extends {
145
207
  redirect: boolean;
@@ -172,44 +234,779 @@ declare const _default: ({ persistTokens, ...args }: WebJSSDKArgs) => {
172
234
  redirect: true;
173
235
  } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
174
236
  };
237
+ exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
175
238
  };
176
239
  saml: {
177
- exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
178
240
  start: <B_1 extends {
179
241
  redirect: boolean;
180
242
  }>(tenantNameOrEmail: string, config?: B_1) => Promise<B_1 extends {
181
243
  redirect: true;
182
244
  } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
245
+ exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
183
246
  };
184
247
  totp: {
185
- signUp: (identifier: string, user?: {
248
+ signUp: (loginId: string, user?: {
186
249
  email?: string;
187
250
  name?: string;
188
251
  phone?: string;
189
252
  }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.TOTPResponse>>;
190
- verify: (identifier: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
191
- update: (identifier: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.TOTPResponse>>;
253
+ verify: (loginId: string, code: string, loginOptions?: {
254
+ stepup?: boolean;
255
+ mfa?: boolean;
256
+ customClaims?: Record<string, any>;
257
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
258
+ update: (loginId: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.TOTPResponse>>;
259
+ };
260
+ refresh: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
261
+ logout: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
262
+ logoutAll: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
263
+ me: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.UserResponse>>;
264
+ isJwtExpired: (token: string) => boolean;
265
+ getJwtPermissions: (token: string, tenant?: string) => string[];
266
+ getJwtRoles: (token: string, tenant?: string) => string[];
267
+ httpClient: {
268
+ get: (path: string, config?: {
269
+ headers?: HeadersInit;
270
+ queryParams?: {
271
+ [key: string]: string;
272
+ };
273
+ token?: string;
274
+ }) => Promise<Response>;
275
+ post: (path: string, body?: any, config?: {
276
+ headers?: HeadersInit;
277
+ queryParams?: {
278
+ [key: string]: string;
279
+ };
280
+ token?: string;
281
+ }) => Promise<Response>;
282
+ put: (path: string, body?: any, config?: {
283
+ headers?: HeadersInit;
284
+ queryParams?: {
285
+ [key: string]: string;
286
+ };
287
+ token?: string;
288
+ }) => Promise<Response>;
289
+ delete: (path: string, body?: any, config?: {
290
+ headers?: HeadersInit;
291
+ queryParams?: {
292
+ [key: string]: string;
293
+ };
294
+ token?: string;
295
+ }) => Promise<Response>;
296
+ hooks?: {
297
+ beforeRequest?: (config: _descope_core_js_sdk.RequestConfig) => _descope_core_js_sdk.RequestConfig;
298
+ afterRequest?: (req: _descope_core_js_sdk.RequestConfig, res: Response) => void;
299
+ };
300
+ };
301
+ } | {
302
+ flow: {
303
+ start: (flowId: string, options?: {
304
+ tenant?: string;
305
+ }, interactionId?: string, input?: Record<string, FormDataEntryValue>) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
306
+ next: (executionId: string, stepId: string, interactionId: string, input?: Record<string, FormDataEntryValue>) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
192
307
  };
193
308
  webauthn: {
194
- signUp: {
195
- start: (identifier: string, origin: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>;
309
+ signUp: ((identifier: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
310
+ start: (loginId: string, origin: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<{
311
+ transactionId: string;
312
+ options: string;
313
+ create: boolean;
314
+ }>>;
315
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
316
+ };
317
+ signIn: ((identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
318
+ start: (loginId: string, origin: string, loginOptions?: {
319
+ stepup?: boolean;
320
+ mfa?: boolean;
321
+ customClaims?: Record<string, any>;
322
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<{
323
+ transactionId: string;
324
+ options: string;
325
+ create: boolean;
326
+ }>>;
327
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
328
+ };
329
+ signUpOrIn: ((identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
330
+ start: (loginId: string, origin: string) => Promise<_descope_core_js_sdk.SdkResponse<{
331
+ transactionId: string;
332
+ options: string;
333
+ create: boolean;
334
+ }>>;
335
+ };
336
+ update: ((identifier: string, token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>) & {
337
+ start: (loginId: string, origin: string, token: string) => Promise<_descope_core_js_sdk.SdkResponse<{
338
+ transactionId: string;
339
+ options: string;
340
+ create: boolean;
341
+ }>>;
196
342
  finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>;
197
343
  };
344
+ helpers: {
345
+ create: (options: string) => Promise<string>;
346
+ get: (options: string) => Promise<string>;
347
+ isSupported: typeof isSupported;
348
+ conditional: (options: string, abort: AbortController) => Promise<string>;
349
+ };
350
+ };
351
+ accessKey: {
352
+ exchange: (accessKey: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ExchangeAccessKeyResponse>>;
353
+ };
354
+ otp: {
355
+ verify: {
356
+ email: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
357
+ sms: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
358
+ whatsapp: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
359
+ };
198
360
  signIn: {
199
- start: (identifier: string, origin: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>;
200
- finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>;
361
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
362
+ sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
363
+ whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
364
+ };
365
+ signUp: {
366
+ email: (loginId: string, user?: {
367
+ email?: string;
368
+ name?: string;
369
+ phone?: string;
370
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
371
+ sms: (loginId: string, user?: {
372
+ email?: string;
373
+ name?: string;
374
+ phone?: string;
375
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
376
+ whatsapp: (loginId: string, user?: {
377
+ email?: string;
378
+ name?: string;
379
+ phone?: string;
380
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
381
+ };
382
+ signUpOrIn: {
383
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
384
+ sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
385
+ whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
201
386
  };
202
387
  update: {
203
- start: (identifier: string, origin: string, token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>;
388
+ email: (loginId: string, email: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
389
+ phone: {
390
+ email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
391
+ sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
392
+ whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
393
+ };
394
+ };
395
+ };
396
+ magicLink: {
397
+ verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
398
+ signIn: {
399
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
400
+ sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
401
+ whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
402
+ };
403
+ signUp: {
404
+ email: (loginId: string, uri: string, user?: {
405
+ email?: string;
406
+ name?: string;
407
+ phone?: string;
408
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
409
+ sms: (loginId: string, uri: string, user?: {
410
+ email?: string;
411
+ name?: string;
412
+ phone?: string;
413
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
414
+ whatsapp: (loginId: string, uri: string, user?: {
415
+ email?: string;
416
+ name?: string;
417
+ phone?: string;
418
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
419
+ };
420
+ signUpOrIn: {
421
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
422
+ sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
423
+ whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
424
+ };
425
+ update: {
426
+ email: (loginId: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
427
+ phone: {
428
+ email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
429
+ sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
430
+ whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
431
+ };
432
+ };
433
+ };
434
+ enchantedLink: {
435
+ verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
436
+ signIn: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
437
+ signUpOrIn: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
438
+ signUp: (loginId: string, uri: string, user?: {
439
+ email?: string;
440
+ name?: string;
441
+ phone?: string;
442
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
443
+ waitForSession: (pendingRef: string, config?: {
444
+ pollingIntervalMs: number;
445
+ timeoutMs: number;
446
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
447
+ update: {
448
+ email: (loginId: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
449
+ };
450
+ };
451
+ oauth: {
452
+ start: {
453
+ facebook: <B extends {
454
+ redirect: boolean;
455
+ }>(redirectURL?: string, config?: B) => Promise<B extends {
456
+ redirect: true;
457
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
458
+ github: <B_1 extends {
459
+ redirect: boolean;
460
+ }>(redirectURL?: string, config?: B_1) => Promise<B_1 extends {
461
+ redirect: true;
462
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
463
+ google: <B_2 extends {
464
+ redirect: boolean;
465
+ }>(redirectURL?: string, config?: B_2) => Promise<B_2 extends {
466
+ redirect: true;
467
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
468
+ microsoft: <B_3 extends {
469
+ redirect: boolean;
470
+ }>(redirectURL?: string, config?: B_3) => Promise<B_3 extends {
471
+ redirect: true;
472
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
473
+ gitlab: <B_4 extends {
474
+ redirect: boolean;
475
+ }>(redirectURL?: string, config?: B_4) => Promise<B_4 extends {
476
+ redirect: true;
477
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
478
+ apple: <B_5 extends {
479
+ redirect: boolean;
480
+ }>(redirectURL?: string, config?: B_5) => Promise<B_5 extends {
481
+ redirect: true;
482
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
483
+ };
484
+ exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
485
+ };
486
+ saml: {
487
+ start: <B_1 extends {
488
+ redirect: boolean;
489
+ }>(tenantNameOrEmail: string, config?: B_1) => Promise<B_1 extends {
490
+ redirect: true;
491
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
492
+ exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
493
+ };
494
+ totp: {
495
+ signUp: (loginId: string, user?: {
496
+ email?: string;
497
+ name?: string;
498
+ phone?: string;
499
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.TOTPResponse>>;
500
+ verify: (loginId: string, code: string, loginOptions?: {
501
+ stepup?: boolean;
502
+ mfa?: boolean;
503
+ customClaims?: Record<string, any>;
504
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
505
+ update: (loginId: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.TOTPResponse>>;
506
+ };
507
+ refresh: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
508
+ logout: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
509
+ logoutAll: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
510
+ me: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.UserResponse>>;
511
+ isJwtExpired: (token: string) => boolean;
512
+ getJwtPermissions: (token: string, tenant?: string) => string[];
513
+ getJwtRoles: (token: string, tenant?: string) => string[];
514
+ httpClient: {
515
+ get: (path: string, config?: {
516
+ headers?: HeadersInit;
517
+ queryParams?: {
518
+ [key: string]: string;
519
+ };
520
+ token?: string;
521
+ }) => Promise<Response>;
522
+ post: (path: string, body?: any, config?: {
523
+ headers?: HeadersInit;
524
+ queryParams?: {
525
+ [key: string]: string;
526
+ };
527
+ token?: string;
528
+ }) => Promise<Response>;
529
+ put: (path: string, body?: any, config?: {
530
+ headers?: HeadersInit;
531
+ queryParams?: {
532
+ [key: string]: string;
533
+ };
534
+ token?: string;
535
+ }) => Promise<Response>;
536
+ delete: (path: string, body?: any, config?: {
537
+ headers?: HeadersInit;
538
+ queryParams?: {
539
+ [key: string]: string;
540
+ };
541
+ token?: string;
542
+ }) => Promise<Response>;
543
+ hooks?: {
544
+ beforeRequest?: (config: _descope_core_js_sdk.RequestConfig) => _descope_core_js_sdk.RequestConfig;
545
+ afterRequest?: (req: _descope_core_js_sdk.RequestConfig, res: Response) => void;
546
+ };
547
+ };
548
+ }) & {
549
+ onSessionTokenChange: (cb: (data: string) => void) => () => any[];
550
+ onUserChange: (cb: (data: _descope_core_js_sdk.UserResponse) => void) => () => any[];
551
+ }) & {
552
+ getRefreshToken: typeof getRefreshToken;
553
+ getSessionToken: typeof getSessionToken;
554
+ } : ({
555
+ flow: {
556
+ start: (flowId: string, options?: {
557
+ tenant?: string;
558
+ }, interactionId?: string, input?: Record<string, FormDataEntryValue>) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
559
+ next: (executionId: string, stepId: string, interactionId: string, input?: Record<string, FormDataEntryValue>) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
560
+ };
561
+ webauthn: {
562
+ signUp: ((identifier: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
563
+ start: (loginId: string, origin: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<{
564
+ transactionId: string;
565
+ options: string;
566
+ create: boolean;
567
+ }>>;
568
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
569
+ };
570
+ signIn: ((identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
571
+ start: (loginId: string, origin: string, loginOptions?: {
572
+ stepup?: boolean;
573
+ mfa?: boolean;
574
+ customClaims?: Record<string, any>;
575
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<{
576
+ transactionId: string;
577
+ options: string;
578
+ create: boolean;
579
+ }>>;
580
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
581
+ };
582
+ signUpOrIn: ((identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
583
+ start: (loginId: string, origin: string) => Promise<_descope_core_js_sdk.SdkResponse<{
584
+ transactionId: string;
585
+ options: string;
586
+ create: boolean;
587
+ }>>;
588
+ };
589
+ update: ((identifier: string, token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>) & {
590
+ start: (loginId: string, origin: string, token: string) => Promise<_descope_core_js_sdk.SdkResponse<{
591
+ transactionId: string;
592
+ options: string;
593
+ create: boolean;
594
+ }>>;
204
595
  finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>;
205
596
  };
597
+ helpers: {
598
+ create: (options: string) => Promise<string>;
599
+ get: (options: string) => Promise<string>;
600
+ isSupported: typeof isSupported;
601
+ conditional: (options: string, abort: AbortController) => Promise<string>;
602
+ };
603
+ };
604
+ accessKey: {
605
+ exchange: (accessKey: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ExchangeAccessKeyResponse>>;
606
+ };
607
+ otp: {
608
+ verify: {
609
+ email: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
610
+ sms: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
611
+ whatsapp: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
612
+ };
613
+ signIn: {
614
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
615
+ sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
616
+ whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
617
+ };
618
+ signUp: {
619
+ email: (loginId: string, user?: {
620
+ email?: string;
621
+ name?: string;
622
+ phone?: string;
623
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
624
+ sms: (loginId: string, user?: {
625
+ email?: string;
626
+ name?: string;
627
+ phone?: string;
628
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
629
+ whatsapp: (loginId: string, user?: {
630
+ email?: string;
631
+ name?: string;
632
+ phone?: string;
633
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
634
+ };
635
+ signUpOrIn: {
636
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
637
+ sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
638
+ whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
639
+ };
640
+ update: {
641
+ email: (loginId: string, email: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
642
+ phone: {
643
+ email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
644
+ sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
645
+ whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
646
+ };
647
+ };
648
+ };
649
+ magicLink: {
650
+ verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
651
+ signIn: {
652
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
653
+ sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
654
+ whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
655
+ };
656
+ signUp: {
657
+ email: (loginId: string, uri: string, user?: {
658
+ email?: string;
659
+ name?: string;
660
+ phone?: string;
661
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
662
+ sms: (loginId: string, uri: string, user?: {
663
+ email?: string;
664
+ name?: string;
665
+ phone?: string;
666
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
667
+ whatsapp: (loginId: string, uri: string, user?: {
668
+ email?: string;
669
+ name?: string;
670
+ phone?: string;
671
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
672
+ };
673
+ signUpOrIn: {
674
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
675
+ sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
676
+ whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
677
+ };
678
+ update: {
679
+ email: (loginId: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
680
+ phone: {
681
+ email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
682
+ sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
683
+ whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
684
+ };
685
+ };
686
+ };
687
+ enchantedLink: {
688
+ verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
689
+ signIn: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
690
+ signUpOrIn: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
691
+ signUp: (loginId: string, uri: string, user?: {
692
+ email?: string;
693
+ name?: string;
694
+ phone?: string;
695
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
696
+ waitForSession: (pendingRef: string, config?: {
697
+ pollingIntervalMs: number;
698
+ timeoutMs: number;
699
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
700
+ update: {
701
+ email: (loginId: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
702
+ };
703
+ };
704
+ oauth: {
705
+ start: {
706
+ facebook: <B extends {
707
+ redirect: boolean;
708
+ }>(redirectURL?: string, config?: B) => Promise<B extends {
709
+ redirect: true;
710
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
711
+ github: <B_1 extends {
712
+ redirect: boolean;
713
+ }>(redirectURL?: string, config?: B_1) => Promise<B_1 extends {
714
+ redirect: true;
715
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
716
+ google: <B_2 extends {
717
+ redirect: boolean;
718
+ }>(redirectURL?: string, config?: B_2) => Promise<B_2 extends {
719
+ redirect: true;
720
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
721
+ microsoft: <B_3 extends {
722
+ redirect: boolean;
723
+ }>(redirectURL?: string, config?: B_3) => Promise<B_3 extends {
724
+ redirect: true;
725
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
726
+ gitlab: <B_4 extends {
727
+ redirect: boolean;
728
+ }>(redirectURL?: string, config?: B_4) => Promise<B_4 extends {
729
+ redirect: true;
730
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
731
+ apple: <B_5 extends {
732
+ redirect: boolean;
733
+ }>(redirectURL?: string, config?: B_5) => Promise<B_5 extends {
734
+ redirect: true;
735
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
736
+ };
737
+ exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
738
+ };
739
+ saml: {
740
+ start: <B_1 extends {
741
+ redirect: boolean;
742
+ }>(tenantNameOrEmail: string, config?: B_1) => Promise<B_1 extends {
743
+ redirect: true;
744
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
745
+ exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
206
746
  };
747
+ totp: {
748
+ signUp: (loginId: string, user?: {
749
+ email?: string;
750
+ name?: string;
751
+ phone?: string;
752
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.TOTPResponse>>;
753
+ verify: (loginId: string, code: string, loginOptions?: {
754
+ stepup?: boolean;
755
+ mfa?: boolean;
756
+ customClaims?: Record<string, any>;
757
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
758
+ update: (loginId: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.TOTPResponse>>;
759
+ };
760
+ refresh: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
761
+ logout: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
762
+ logoutAll: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
763
+ me: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.UserResponse>>;
764
+ isJwtExpired: (token: string) => boolean;
765
+ getJwtPermissions: (token: string, tenant?: string) => string[];
766
+ getJwtRoles: (token: string, tenant?: string) => string[];
767
+ httpClient: {
768
+ get: (path: string, config?: {
769
+ headers?: HeadersInit;
770
+ queryParams?: {
771
+ [key: string]: string;
772
+ };
773
+ token?: string;
774
+ }) => Promise<Response>;
775
+ post: (path: string, body?: any, config?: {
776
+ headers?: HeadersInit;
777
+ queryParams?: {
778
+ [key: string]: string;
779
+ };
780
+ token?: string;
781
+ }) => Promise<Response>;
782
+ put: (path: string, body?: any, config?: {
783
+ headers?: HeadersInit;
784
+ queryParams?: {
785
+ [key: string]: string;
786
+ };
787
+ token?: string;
788
+ }) => Promise<Response>;
789
+ delete: (path: string, body?: any, config?: {
790
+ headers?: HeadersInit;
791
+ queryParams?: {
792
+ [key: string]: string;
793
+ };
794
+ token?: string;
795
+ }) => Promise<Response>;
796
+ hooks?: {
797
+ beforeRequest?: (config: _descope_core_js_sdk.RequestConfig) => _descope_core_js_sdk.RequestConfig;
798
+ afterRequest?: (req: _descope_core_js_sdk.RequestConfig, res: Response) => void;
799
+ };
800
+ };
801
+ } | {
207
802
  flow: {
208
- start: (flowId: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
803
+ start: (flowId: string, options?: {
804
+ tenant?: string;
805
+ }, interactionId?: string, input?: Record<string, FormDataEntryValue>) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
209
806
  next: (executionId: string, stepId: string, interactionId: string, input?: Record<string, FormDataEntryValue>) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.FlowResponse>>;
210
807
  };
808
+ webauthn: {
809
+ signUp: ((identifier: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
810
+ start: (loginId: string, origin: string, name: string) => Promise<_descope_core_js_sdk.SdkResponse<{
811
+ transactionId: string;
812
+ options: string;
813
+ create: boolean;
814
+ }>>;
815
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
816
+ };
817
+ signIn: ((identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
818
+ start: (loginId: string, origin: string, loginOptions?: {
819
+ stepup?: boolean;
820
+ mfa?: boolean;
821
+ customClaims?: Record<string, any>;
822
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<{
823
+ transactionId: string;
824
+ options: string;
825
+ create: boolean;
826
+ }>>;
827
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
828
+ };
829
+ signUpOrIn: ((identifier: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>) & {
830
+ start: (loginId: string, origin: string) => Promise<_descope_core_js_sdk.SdkResponse<{
831
+ transactionId: string;
832
+ options: string;
833
+ create: boolean;
834
+ }>>;
835
+ };
836
+ update: ((identifier: string, token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>) & {
837
+ start: (loginId: string, origin: string, token: string) => Promise<_descope_core_js_sdk.SdkResponse<{
838
+ transactionId: string;
839
+ options: string;
840
+ create: boolean;
841
+ }>>;
842
+ finish: (transactionId: string, response: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ResponseData>>;
843
+ };
844
+ helpers: {
845
+ create: (options: string) => Promise<string>;
846
+ get: (options: string) => Promise<string>;
847
+ isSupported: typeof isSupported;
848
+ conditional: (options: string, abort: AbortController) => Promise<string>;
849
+ };
850
+ };
851
+ accessKey: {
852
+ exchange: (accessKey: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.ExchangeAccessKeyResponse>>;
853
+ };
854
+ otp: {
855
+ verify: {
856
+ email: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
857
+ sms: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
858
+ whatsapp: (loginId: string, code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
859
+ };
860
+ signIn: {
861
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
862
+ sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
863
+ whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
864
+ };
865
+ signUp: {
866
+ email: (loginId: string, user?: {
867
+ email?: string;
868
+ name?: string;
869
+ phone?: string;
870
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
871
+ sms: (loginId: string, user?: {
872
+ email?: string;
873
+ name?: string;
874
+ phone?: string;
875
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
876
+ whatsapp: (loginId: string, user?: {
877
+ email?: string;
878
+ name?: string;
879
+ phone?: string;
880
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
881
+ };
882
+ signUpOrIn: {
883
+ email: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
884
+ sms: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
885
+ whatsapp: (loginId: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
886
+ };
887
+ update: {
888
+ email: (loginId: string, email: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
889
+ phone: {
890
+ email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
891
+ sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
892
+ whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
893
+ };
894
+ };
895
+ };
896
+ magicLink: {
897
+ verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
898
+ signIn: {
899
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
900
+ sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
901
+ whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
902
+ };
903
+ signUp: {
904
+ email: (loginId: string, uri: string, user?: {
905
+ email?: string;
906
+ name?: string;
907
+ phone?: string;
908
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
909
+ sms: (loginId: string, uri: string, user?: {
910
+ email?: string;
911
+ name?: string;
912
+ phone?: string;
913
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
914
+ whatsapp: (loginId: string, uri: string, user?: {
915
+ email?: string;
916
+ name?: string;
917
+ phone?: string;
918
+ }) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
919
+ };
920
+ signUpOrIn: {
921
+ email: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
922
+ sms: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
923
+ whatsapp: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
924
+ };
925
+ update: {
926
+ email: (loginId: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
927
+ phone: {
928
+ email: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
929
+ sms: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
930
+ whatsapp: (loginId: string, phone: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
931
+ };
932
+ };
933
+ };
934
+ enchantedLink: {
935
+ verify: (token: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
936
+ signIn: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
937
+ signUpOrIn: (loginId: string, uri: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
938
+ signUp: (loginId: string, uri: string, user?: {
939
+ email?: string;
940
+ name?: string;
941
+ phone?: string;
942
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
943
+ waitForSession: (pendingRef: string, config?: {
944
+ pollingIntervalMs: number;
945
+ timeoutMs: number;
946
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
947
+ update: {
948
+ email: (loginId: string, email: string, uri: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.EnchantedLinkResponse>>;
949
+ };
950
+ };
951
+ oauth: {
952
+ start: {
953
+ facebook: <B extends {
954
+ redirect: boolean;
955
+ }>(redirectURL?: string, config?: B) => Promise<B extends {
956
+ redirect: true;
957
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
958
+ github: <B_1 extends {
959
+ redirect: boolean;
960
+ }>(redirectURL?: string, config?: B_1) => Promise<B_1 extends {
961
+ redirect: true;
962
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
963
+ google: <B_2 extends {
964
+ redirect: boolean;
965
+ }>(redirectURL?: string, config?: B_2) => Promise<B_2 extends {
966
+ redirect: true;
967
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
968
+ microsoft: <B_3 extends {
969
+ redirect: boolean;
970
+ }>(redirectURL?: string, config?: B_3) => Promise<B_3 extends {
971
+ redirect: true;
972
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
973
+ gitlab: <B_4 extends {
974
+ redirect: boolean;
975
+ }>(redirectURL?: string, config?: B_4) => Promise<B_4 extends {
976
+ redirect: true;
977
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
978
+ apple: <B_5 extends {
979
+ redirect: boolean;
980
+ }>(redirectURL?: string, config?: B_5) => Promise<B_5 extends {
981
+ redirect: true;
982
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
983
+ };
984
+ exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
985
+ };
986
+ saml: {
987
+ start: <B_1 extends {
988
+ redirect: boolean;
989
+ }>(tenantNameOrEmail: string, config?: B_1) => Promise<B_1 extends {
990
+ redirect: true;
991
+ } ? undefined : _descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.URLResponse>>;
992
+ exchange: (code: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
993
+ };
994
+ totp: {
995
+ signUp: (loginId: string, user?: {
996
+ email?: string;
997
+ name?: string;
998
+ phone?: string;
999
+ }) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.TOTPResponse>>;
1000
+ verify: (loginId: string, code: string, loginOptions?: {
1001
+ stepup?: boolean;
1002
+ mfa?: boolean;
1003
+ customClaims?: Record<string, any>;
1004
+ }, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
1005
+ update: (loginId: string, token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.TOTPResponse>>;
1006
+ };
211
1007
  refresh: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.JWTResponse>>;
212
1008
  logout: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
1009
+ logoutAll: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<never>>;
213
1010
  me: (token?: string) => Promise<_descope_core_js_sdk.SdkResponse<_descope_core_js_sdk.UserResponse>>;
214
1011
  isJwtExpired: (token: string) => boolean;
215
1012
  getJwtPermissions: (token: string, tenant?: string) => string[];
@@ -243,7 +1040,14 @@ declare const _default: ({ persistTokens, ...args }: WebJSSDKArgs) => {
243
1040
  };
244
1041
  token?: string;
245
1042
  }) => Promise<Response>;
1043
+ hooks?: {
1044
+ beforeRequest?: (config: _descope_core_js_sdk.RequestConfig) => _descope_core_js_sdk.RequestConfig;
1045
+ afterRequest?: (req: _descope_core_js_sdk.RequestConfig, res: Response) => void;
1046
+ };
246
1047
  };
1048
+ }) & {
1049
+ onSessionTokenChange: (cb: (data: string) => void) => () => any[];
1050
+ onUserChange: (cb: (data: _descope_core_js_sdk.UserResponse) => void) => () => any[];
247
1051
  };
248
1052
 
249
- export { WebJSSDKArgs, _default as default };
1053
+ export { decoratedCreateSdk as default };