@logto/schemas 1.37.1 → 1.38.0

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 (45) hide show
  1. package/alterations/1.38.0-1772615848-add-oidc-model-instances-grant-id-partial-index.ts +26 -0
  2. package/alterations/1.38.0-1772619963-tune-oidc-model-instances-autovacuum.ts +28 -0
  3. package/alterations/1.38.0-1772621060-add-oidc-model-instances-grant-account-id-index.ts +26 -0
  4. package/alterations-js/1.38.0-1772615848-add-oidc-model-instances-grant-id-partial-index.js +22 -0
  5. package/alterations-js/1.38.0-1772619963-tune-oidc-model-instances-autovacuum.js +24 -0
  6. package/alterations-js/1.38.0-1772621060-add-oidc-model-instances-grant-account-id-index.js +22 -0
  7. package/lib/consts/cookie.d.ts +1 -0
  8. package/lib/consts/cookie.js +1 -0
  9. package/lib/consts/experience.d.ts +1 -0
  10. package/lib/consts/experience.js +1 -0
  11. package/lib/consts/oidc.d.ts +3 -0
  12. package/lib/consts/oidc.js +3 -0
  13. package/lib/consts/system.d.ts +4 -0
  14. package/lib/consts/system.js +4 -0
  15. package/lib/foundations/jsonb-types/oidc-module.d.ts +26 -7
  16. package/lib/foundations/jsonb-types/oidc-module.js +16 -1
  17. package/lib/foundations/jsonb-types/sign-in-experience.d.ts +10 -6
  18. package/lib/foundations/jsonb-types/sign-in-experience.js +6 -2
  19. package/lib/seeds/application.d.ts +3 -1
  20. package/lib/seeds/application.js +26 -1
  21. package/lib/types/application.d.ts +12 -0
  22. package/lib/types/connector.d.ts +8 -0
  23. package/lib/types/consent.d.ts +11 -3
  24. package/lib/types/consent.js +2 -1
  25. package/lib/types/log/interaction.d.ts +4 -2
  26. package/lib/types/log/interaction.js +2 -0
  27. package/lib/types/log/token.d.ts +5 -3
  28. package/lib/types/log/token.js +2 -0
  29. package/lib/types/logto-config/index.d.ts +276 -13
  30. package/lib/types/logto-config/index.js +6 -0
  31. package/lib/types/logto-config/jwt-customizer.d.ts +778 -253
  32. package/lib/types/logto-config/jwt-customizer.js +7 -3
  33. package/lib/types/oidc-config.d.ts +2 -1
  34. package/lib/types/oidc-config.js +1 -0
  35. package/lib/types/sign-in-experience.d.ts +6 -2
  36. package/lib/types/user-logto-config.d.ts +38 -0
  37. package/lib/types/user-logto-config.js +13 -0
  38. package/lib/types/user-sessions.d.ts +712 -112
  39. package/lib/types/user-sessions.js +33 -2
  40. package/lib/types/verification-records/verification-type.d.ts +1 -1
  41. package/lib/types/verification-records/verification-type.js +1 -1
  42. package/lib/types/verification-records/web-authn-verification.d.ts +11 -11
  43. package/lib/types/verification-records/web-authn-verification.js +3 -3
  44. package/package.json +8 -7
  45. package/tables/oidc_model_instances.sql +16 -0
@@ -0,0 +1,26 @@
1
+ import { sql } from '@silverhand/slonik';
2
+
3
+ import type { AlterationScript } from '../lib/types/alteration.js';
4
+
5
+ const alteration: AlterationScript = {
6
+ beforeUp: async (pool) => {
7
+ await pool.query(sql`
8
+ create index concurrently oidc_model_instances__model_name_payload_grant_id_partial
9
+ on oidc_model_instances (tenant_id, model_name, (payload->>'grantId'))
10
+ where payload ? 'grantId';
11
+ `);
12
+ },
13
+ up: async () => {
14
+ /** `concurrently` cannot be used inside a transaction. */
15
+ },
16
+ beforeDown: async (pool) => {
17
+ await pool.query(sql`
18
+ drop index concurrently oidc_model_instances__model_name_payload_grant_id_partial;
19
+ `);
20
+ },
21
+ down: async () => {
22
+ /** `concurrently` cannot be used inside a transaction. */
23
+ },
24
+ };
25
+
26
+ export default alteration;
@@ -0,0 +1,28 @@
1
+ import { sql } from '@silverhand/slonik';
2
+
3
+ import type { AlterationScript } from '../lib/types/alteration.js';
4
+
5
+ const alteration: AlterationScript = {
6
+ up: async (pool) => {
7
+ await pool.query(sql`
8
+ alter table oidc_model_instances set (
9
+ autovacuum_vacuum_scale_factor = 0.05,
10
+ autovacuum_analyze_scale_factor = 0.02,
11
+ autovacuum_vacuum_threshold = 5000,
12
+ autovacuum_analyze_threshold = 2000
13
+ );
14
+ `);
15
+ },
16
+ down: async (pool) => {
17
+ await pool.query(sql`
18
+ alter table oidc_model_instances reset (
19
+ autovacuum_vacuum_scale_factor,
20
+ autovacuum_analyze_scale_factor,
21
+ autovacuum_vacuum_threshold,
22
+ autovacuum_analyze_threshold
23
+ );
24
+ `);
25
+ },
26
+ };
27
+
28
+ export default alteration;
@@ -0,0 +1,26 @@
1
+ import { sql } from '@silverhand/slonik';
2
+
3
+ import type { AlterationScript } from '../lib/types/alteration.js';
4
+
5
+ const alteration: AlterationScript = {
6
+ beforeUp: async (pool) => {
7
+ await pool.query(sql`
8
+ create index concurrently oidc_model_instances__grant_payload_account_id_expires_at
9
+ on oidc_model_instances (tenant_id, (payload->>'accountId'), expires_at)
10
+ WHERE model_name = 'Grant';
11
+ `);
12
+ },
13
+ up: async () => {
14
+ /** 'concurrently' cannot be used inside a transaction, so this up is intentionally left empty. */
15
+ },
16
+ beforeDown: async (pool) => {
17
+ await pool.query(sql`
18
+ drop index concurrently oidc_model_instances__grant_payload_account_id_expires_at;
19
+ `);
20
+ },
21
+ down: async () => {
22
+ /** 'concurrently' cannot be used inside a transaction, so this down is intentionally left empty. */
23
+ },
24
+ };
25
+
26
+ export default alteration;
@@ -0,0 +1,22 @@
1
+ import { sql } from '@silverhand/slonik';
2
+ const alteration = {
3
+ beforeUp: async (pool) => {
4
+ await pool.query(sql `
5
+ create index concurrently oidc_model_instances__model_name_payload_grant_id_partial
6
+ on oidc_model_instances (tenant_id, model_name, (payload->>'grantId'))
7
+ where payload ? 'grantId';
8
+ `);
9
+ },
10
+ up: async () => {
11
+ /** `concurrently` cannot be used inside a transaction. */
12
+ },
13
+ beforeDown: async (pool) => {
14
+ await pool.query(sql `
15
+ drop index concurrently oidc_model_instances__model_name_payload_grant_id_partial;
16
+ `);
17
+ },
18
+ down: async () => {
19
+ /** `concurrently` cannot be used inside a transaction. */
20
+ },
21
+ };
22
+ export default alteration;
@@ -0,0 +1,24 @@
1
+ import { sql } from '@silverhand/slonik';
2
+ const alteration = {
3
+ up: async (pool) => {
4
+ await pool.query(sql `
5
+ alter table oidc_model_instances set (
6
+ autovacuum_vacuum_scale_factor = 0.05,
7
+ autovacuum_analyze_scale_factor = 0.02,
8
+ autovacuum_vacuum_threshold = 5000,
9
+ autovacuum_analyze_threshold = 2000
10
+ );
11
+ `);
12
+ },
13
+ down: async (pool) => {
14
+ await pool.query(sql `
15
+ alter table oidc_model_instances reset (
16
+ autovacuum_vacuum_scale_factor,
17
+ autovacuum_analyze_scale_factor,
18
+ autovacuum_vacuum_threshold,
19
+ autovacuum_analyze_threshold
20
+ );
21
+ `);
22
+ },
23
+ };
24
+ export default alteration;
@@ -0,0 +1,22 @@
1
+ import { sql } from '@silverhand/slonik';
2
+ const alteration = {
3
+ beforeUp: async (pool) => {
4
+ await pool.query(sql `
5
+ create index concurrently oidc_model_instances__grant_payload_account_id_expires_at
6
+ on oidc_model_instances (tenant_id, (payload->>'accountId'), expires_at)
7
+ WHERE model_name = 'Grant';
8
+ `);
9
+ },
10
+ up: async () => {
11
+ /** 'concurrently' cannot be used inside a transaction, so this up is intentionally left empty. */
12
+ },
13
+ beforeDown: async (pool) => {
14
+ await pool.query(sql `
15
+ drop index concurrently oidc_model_instances__grant_payload_account_id_expires_at;
16
+ `);
17
+ },
18
+ down: async () => {
19
+ /** 'concurrently' cannot be used inside a transaction, so this down is intentionally left empty. */
20
+ },
21
+ };
22
+ export default alteration;
@@ -1 +1,2 @@
1
1
  export declare const logtoCookieKey = "_logto";
2
+ export declare const deviceFlowXsrfCookieKey = "_logto_device_flow_xsrf";
@@ -1 +1,2 @@
1
1
  export const logtoCookieKey = '_logto';
2
+ export const deviceFlowXsrfCookieKey = '_logto_device_flow_xsrf';
@@ -4,6 +4,7 @@ export declare const experience: Readonly<{
4
4
  readonly register: "register";
5
5
  readonly sso: "single-sign-on";
6
6
  readonly consent: "consent";
7
+ readonly device: "device";
7
8
  readonly resetPassword: "reset-password";
8
9
  readonly identifierSignIn: "identifier-sign-in";
9
10
  readonly identifierRegister: "identifier-register";
@@ -3,6 +3,7 @@ const routes = Object.freeze({
3
3
  register: 'register',
4
4
  sso: 'single-sign-on',
5
5
  consent: 'consent',
6
+ device: 'device',
6
7
  resetPassword: 'reset-password',
7
8
  identifierSignIn: 'identifier-sign-in',
8
9
  identifierRegister: 'identifier-register',
@@ -1,5 +1,8 @@
1
1
  import { z } from 'zod';
2
2
  export declare const tenantIdKey = "tenant_id";
3
+ export declare const oidcRoutes: Readonly<{
4
+ readonly codeVerification: "/oidc/device";
5
+ }>;
3
6
  export declare const customClientMetadataDefault: Readonly<{
4
7
  readonly idTokenTtl: number;
5
8
  readonly refreshTokenTtlInDays: 14;
@@ -1,6 +1,9 @@
1
1
  import { z } from 'zod';
2
2
  import { inSeconds } from './date.js';
3
3
  export const tenantIdKey = 'tenant_id';
4
+ export const oidcRoutes = Object.freeze({
5
+ codeVerification: '/oidc/device',
6
+ });
4
7
  export const customClientMetadataDefault = Object.freeze({
5
8
  idTokenTtl: inSeconds.oneHour,
6
9
  refreshTokenTtlInDays: 14,
@@ -11,3 +11,7 @@
11
11
  export declare const ossConsolePath = "/console";
12
12
  /** The prefix for keys and values that need to be explicitly marked as internal. */
13
13
  export declare const internalPrefix = "#internal:";
14
+ /**
15
+ * The timeout for WebAuthn authentication options, in milliseconds.
16
+ */
17
+ export declare const webAuthnAuthenticationOptionsTimeout = 60000;
@@ -11,3 +11,7 @@
11
11
  export const ossConsolePath = '/console';
12
12
  /** The prefix for keys and values that need to be explicitly marked as internal. */
13
13
  export const internalPrefix = '#internal:';
14
+ /**
15
+ * The timeout for WebAuthn authentication options, in milliseconds.
16
+ */
17
+ export const webAuthnAuthenticationOptionsTimeout = 60_000;
@@ -88,7 +88,20 @@ export declare enum CustomClientMetadataKey {
88
88
  *
89
89
  * Defaults to `false` for all new applications. Users must explicitly enable it.
90
90
  */
91
- AllowTokenExchange = "allowTokenExchange"
91
+ AllowTokenExchange = "allowTokenExchange",
92
+ /**
93
+ * Whether the application uses the OAuth 2.0 Device Authorization Grant (RFC 8628)
94
+ * instead of the standard Authorization Code flow.
95
+ *
96
+ * Only applicable to native applications. Defaults to `false`.
97
+ */
98
+ IsDeviceFlow = "isDeviceFlow",
99
+ /**
100
+ * The maximum number of active sessions (devices) allowed per user for this application.
101
+ *
102
+ * When exceeded, old sessions should be revoked according to server policy.
103
+ */
104
+ MaxAllowedGrants = "maxAllowedGrants"
92
105
  }
93
106
  export declare const customClientMetadataGuard: z.ZodObject<{
94
107
  corsAllowedOrigins: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
@@ -99,6 +112,8 @@ export declare const customClientMetadataGuard: z.ZodObject<{
99
112
  alwaysIssueRefreshToken: z.ZodOptional<z.ZodBoolean>;
100
113
  rotateRefreshToken: z.ZodOptional<z.ZodBoolean>;
101
114
  allowTokenExchange: z.ZodOptional<z.ZodBoolean>;
115
+ isDeviceFlow: z.ZodOptional<z.ZodBoolean>;
116
+ maxAllowedGrants: z.ZodOptional<z.ZodNumber>;
102
117
  }, "strip", z.ZodTypeAny, {
103
118
  corsAllowedOrigins?: string[] | undefined;
104
119
  idTokenTtl?: number | undefined;
@@ -108,6 +123,8 @@ export declare const customClientMetadataGuard: z.ZodObject<{
108
123
  alwaysIssueRefreshToken?: boolean | undefined;
109
124
  rotateRefreshToken?: boolean | undefined;
110
125
  allowTokenExchange?: boolean | undefined;
126
+ isDeviceFlow?: boolean | undefined;
127
+ maxAllowedGrants?: number | undefined;
111
128
  }, {
112
129
  corsAllowedOrigins?: string[] | undefined;
113
130
  idTokenTtl?: number | undefined;
@@ -117,6 +134,8 @@ export declare const customClientMetadataGuard: z.ZodObject<{
117
134
  alwaysIssueRefreshToken?: boolean | undefined;
118
135
  rotateRefreshToken?: boolean | undefined;
119
136
  allowTokenExchange?: boolean | undefined;
137
+ isDeviceFlow?: boolean | undefined;
138
+ maxAllowedGrants?: number | undefined;
120
139
  }>;
121
140
  /**
122
141
  * @see {@link CustomClientMetadataKey} for key descriptions.
@@ -207,7 +226,7 @@ export declare const oidcSessionInstancePayloadGuard: z.ZodObject<{
207
226
  /**
208
227
  * A map of client_id to session authorization details. @see OidcSessionAuthorizationDetails
209
228
  */
210
- authorizations: z.ZodRecord<z.ZodString, z.ZodObject<{
229
+ authorizations: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
211
230
  /**
212
231
  * The `sid` (session ID) Claim associated with the session for the current client.
213
232
  *
@@ -279,7 +298,7 @@ export declare const oidcSessionInstancePayloadGuard: z.ZodObject<{
279
298
  * Mark optional to make the guard more robust.
280
299
  */
281
300
  persistsLogout: z.ZodOptional<z.ZodBoolean>;
282
- }, z.ZodUnknown, "strip">>>;
301
+ }, z.ZodUnknown, "strip">>>>;
283
302
  }, "strip", z.ZodUnknown, z.objectOutputType<{
284
303
  exp: z.ZodNumber;
285
304
  iat: z.ZodNumber;
@@ -291,7 +310,7 @@ export declare const oidcSessionInstancePayloadGuard: z.ZodObject<{
291
310
  /**
292
311
  * A map of client_id to session authorization details. @see OidcSessionAuthorizationDetails
293
312
  */
294
- authorizations: z.ZodRecord<z.ZodString, z.ZodObject<{
313
+ authorizations: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
295
314
  /**
296
315
  * The `sid` (session ID) Claim associated with the session for the current client.
297
316
  *
@@ -363,7 +382,7 @@ export declare const oidcSessionInstancePayloadGuard: z.ZodObject<{
363
382
  * Mark optional to make the guard more robust.
364
383
  */
365
384
  persistsLogout: z.ZodOptional<z.ZodBoolean>;
366
- }, z.ZodUnknown, "strip">>>;
385
+ }, z.ZodUnknown, "strip">>>>;
367
386
  }, z.ZodUnknown, "strip">, z.objectInputType<{
368
387
  exp: z.ZodNumber;
369
388
  iat: z.ZodNumber;
@@ -375,7 +394,7 @@ export declare const oidcSessionInstancePayloadGuard: z.ZodObject<{
375
394
  /**
376
395
  * A map of client_id to session authorization details. @see OidcSessionAuthorizationDetails
377
396
  */
378
- authorizations: z.ZodRecord<z.ZodString, z.ZodObject<{
397
+ authorizations: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
379
398
  /**
380
399
  * The `sid` (session ID) Claim associated with the session for the current client.
381
400
  *
@@ -447,6 +466,6 @@ export declare const oidcSessionInstancePayloadGuard: z.ZodObject<{
447
466
  * Mark optional to make the guard more robust.
448
467
  */
449
468
  persistsLogout: z.ZodOptional<z.ZodBoolean>;
450
- }, z.ZodUnknown, "strip">>>;
469
+ }, z.ZodUnknown, "strip">>>>;
451
470
  }, z.ZodUnknown, "strip">>;
452
471
  export type OidcSessionInstancePayload = z.infer<typeof oidcSessionInstancePayloadGuard>;
@@ -55,6 +55,19 @@ export var CustomClientMetadataKey;
55
55
  * Defaults to `false` for all new applications. Users must explicitly enable it.
56
56
  */
57
57
  CustomClientMetadataKey["AllowTokenExchange"] = "allowTokenExchange";
58
+ /**
59
+ * Whether the application uses the OAuth 2.0 Device Authorization Grant (RFC 8628)
60
+ * instead of the standard Authorization Code flow.
61
+ *
62
+ * Only applicable to native applications. Defaults to `false`.
63
+ */
64
+ CustomClientMetadataKey["IsDeviceFlow"] = "isDeviceFlow";
65
+ /**
66
+ * The maximum number of active sessions (devices) allowed per user for this application.
67
+ *
68
+ * When exceeded, old sessions should be revoked according to server policy.
69
+ */
70
+ CustomClientMetadataKey["MaxAllowedGrants"] = "maxAllowedGrants";
58
71
  })(CustomClientMetadataKey || (CustomClientMetadataKey = {}));
59
72
  export const customClientMetadataGuard = z.object({
60
73
  [CustomClientMetadataKey.CorsAllowedOrigins]: z.string().min(1).array().optional(),
@@ -65,6 +78,8 @@ export const customClientMetadataGuard = z.object({
65
78
  [CustomClientMetadataKey.AlwaysIssueRefreshToken]: z.boolean().optional(),
66
79
  [CustomClientMetadataKey.RotateRefreshToken]: z.boolean().optional(),
67
80
  [CustomClientMetadataKey.AllowTokenExchange]: z.boolean().optional(),
81
+ [CustomClientMetadataKey.IsDeviceFlow]: z.boolean().optional(),
82
+ [CustomClientMetadataKey.MaxAllowedGrants]: z.number().int().positive().optional(),
68
83
  });
69
84
  export const oidcSessionAuthorizationDetailsGuard = z
70
85
  .object({
@@ -105,6 +120,6 @@ export const oidcSessionInstancePayloadGuard = z
105
120
  /**
106
121
  * A map of client_id to session authorization details. @see OidcSessionAuthorizationDetails
107
122
  */
108
- authorizations: z.record(z.string(), oidcSessionAuthorizationDetailsGuard),
123
+ authorizations: z.record(z.string(), oidcSessionAuthorizationDetailsGuard).optional(),
109
124
  })
110
125
  .catchall(z.unknown());
@@ -51,13 +51,13 @@ export declare const brandingGuard: z.ZodObject<{
51
51
  export type Branding = z.infer<typeof brandingGuard>;
52
52
  export declare const languageInfoGuard: z.ZodObject<{
53
53
  autoDetect: z.ZodBoolean;
54
- fallbackLanguage: z.ZodType<"af-ZA" | "am-ET" | "ar" | "ar-AR" | "as-IN" | "az-AZ" | "be-BY" | "bg-BG" | "bn-IN" | "br-FR" | "bs-BA" | "ca-ES" | "cb-IQ" | "co-FR" | "cs-CZ" | "cx-PH" | "cy-GB" | "da-DK" | "de" | "de-DE" | "el-GR" | "en" | "en-GB" | "en-US" | "eo-EO" | "es" | "es-ES" | "es-419" | "et-EE" | "eu-ES" | "fa-IR" | "ff-NG" | "fi" | "fi-FI" | "fo-FO" | "fr" | "fr-CA" | "fr-FR" | "fy-NL" | "ga-IE" | "gl-ES" | "gn-PY" | "gu-IN" | "ha-NG" | "he-IL" | "hi-IN" | "hr-HR" | "ht-HT" | "hu-HU" | "hy-AM" | "id-ID" | "ik-US" | "is-IS" | "it" | "it-IT" | "iu-CA" | "ja" | "ja-JP" | "ja-KS" | "jv-ID" | "ka-GE" | "kk-KZ" | "km-KH" | "kn-IN" | "ko" | "ko-KR" | "ku-TR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mg-MG" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms-MY" | "mt-MT" | "my-MM" | "nb-NO" | "ne-NP" | "nl" | "nl-BE" | "nl-NL" | "nn-NO" | "or-IN" | "pa-IN" | "pl-PL" | "ps-AF" | "pt" | "pt-BR" | "pt-PT" | "ro-RO" | "ru" | "ru-RU" | "rw-RW" | "sc-IT" | "si-LK" | "sk-SK" | "sl-SI" | "sn-ZW" | "sq-AL" | "sr-RS" | "sv" | "sv-SE" | "sw-KE" | "sy-SY" | "sz-PL" | "ta-IN" | "te-IN" | "tg-TJ" | "th" | "th-TH" | "tl-PH" | "tr" | "tr-TR" | "tt-RU" | "tz-MA" | "uk-UA" | "ur-PK" | "uz-UZ" | "vi-VN" | "zh" | "zh-CN" | "zh-HK" | "zh-MO" | "zh-TW" | "zz-TR", z.ZodTypeDef, "af-ZA" | "am-ET" | "ar" | "ar-AR" | "as-IN" | "az-AZ" | "be-BY" | "bg-BG" | "bn-IN" | "br-FR" | "bs-BA" | "ca-ES" | "cb-IQ" | "co-FR" | "cs-CZ" | "cx-PH" | "cy-GB" | "da-DK" | "de" | "de-DE" | "el-GR" | "en" | "en-GB" | "en-US" | "eo-EO" | "es" | "es-ES" | "es-419" | "et-EE" | "eu-ES" | "fa-IR" | "ff-NG" | "fi" | "fi-FI" | "fo-FO" | "fr" | "fr-CA" | "fr-FR" | "fy-NL" | "ga-IE" | "gl-ES" | "gn-PY" | "gu-IN" | "ha-NG" | "he-IL" | "hi-IN" | "hr-HR" | "ht-HT" | "hu-HU" | "hy-AM" | "id-ID" | "ik-US" | "is-IS" | "it" | "it-IT" | "iu-CA" | "ja" | "ja-JP" | "ja-KS" | "jv-ID" | "ka-GE" | "kk-KZ" | "km-KH" | "kn-IN" | "ko" | "ko-KR" | "ku-TR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mg-MG" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms-MY" | "mt-MT" | "my-MM" | "nb-NO" | "ne-NP" | "nl" | "nl-BE" | "nl-NL" | "nn-NO" | "or-IN" | "pa-IN" | "pl-PL" | "ps-AF" | "pt" | "pt-BR" | "pt-PT" | "ro-RO" | "ru" | "ru-RU" | "rw-RW" | "sc-IT" | "si-LK" | "sk-SK" | "sl-SI" | "sn-ZW" | "sq-AL" | "sr-RS" | "sv" | "sv-SE" | "sw-KE" | "sy-SY" | "sz-PL" | "ta-IN" | "te-IN" | "tg-TJ" | "th" | "th-TH" | "tl-PH" | "tr" | "tr-TR" | "tt-RU" | "tz-MA" | "uk-UA" | "ur-PK" | "uz-UZ" | "vi-VN" | "zh" | "zh-CN" | "zh-HK" | "zh-MO" | "zh-TW" | "zz-TR">;
54
+ fallbackLanguage: z.ZodType<"af-ZA" | "am-ET" | "ar" | "ar-AR" | "as-IN" | "az-AZ" | "be-BY" | "bg-BG" | "bn-IN" | "br-FR" | "bs-BA" | "ca-ES" | "cb-IQ" | "co-FR" | "cs" | "cs-CZ" | "cx-PH" | "cy-GB" | "da-DK" | "de" | "de-DE" | "el-GR" | "en" | "en-GB" | "en-US" | "eo-EO" | "es" | "es-ES" | "es-419" | "et-EE" | "eu-ES" | "fa-IR" | "ff-NG" | "fi" | "fi-FI" | "fo-FO" | "fr" | "fr-CA" | "fr-FR" | "fy-NL" | "ga-IE" | "gl-ES" | "gn-PY" | "gu-IN" | "ha-NG" | "he-IL" | "hi-IN" | "hr-HR" | "ht-HT" | "hu-HU" | "hy-AM" | "id-ID" | "ik-US" | "is-IS" | "it" | "it-IT" | "iu-CA" | "ja" | "ja-JP" | "ja-KS" | "jv-ID" | "ka-GE" | "kk-KZ" | "km-KH" | "kn-IN" | "ko" | "ko-KR" | "ku-TR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mg-MG" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms-MY" | "mt-MT" | "my-MM" | "nb-NO" | "ne-NP" | "nl" | "nl-BE" | "nl-NL" | "nn-NO" | "or-IN" | "pa-IN" | "pl-PL" | "ps-AF" | "pt" | "pt-BR" | "pt-PT" | "ro-RO" | "ru" | "ru-RU" | "rw-RW" | "sc-IT" | "si-LK" | "sk-SK" | "sl-SI" | "sn-ZW" | "sq-AL" | "sr-RS" | "sv" | "sv-SE" | "sw-KE" | "sy-SY" | "sz-PL" | "ta-IN" | "te-IN" | "tg-TJ" | "th" | "th-TH" | "tl-PH" | "tr" | "tr-TR" | "tt-RU" | "tz-MA" | "uk-UA" | "ur-PK" | "uz-UZ" | "vi-VN" | "zh" | "zh-CN" | "zh-HK" | "zh-MO" | "zh-TW" | "zz-TR", z.ZodTypeDef, "af-ZA" | "am-ET" | "ar" | "ar-AR" | "as-IN" | "az-AZ" | "be-BY" | "bg-BG" | "bn-IN" | "br-FR" | "bs-BA" | "ca-ES" | "cb-IQ" | "co-FR" | "cs" | "cs-CZ" | "cx-PH" | "cy-GB" | "da-DK" | "de" | "de-DE" | "el-GR" | "en" | "en-GB" | "en-US" | "eo-EO" | "es" | "es-ES" | "es-419" | "et-EE" | "eu-ES" | "fa-IR" | "ff-NG" | "fi" | "fi-FI" | "fo-FO" | "fr" | "fr-CA" | "fr-FR" | "fy-NL" | "ga-IE" | "gl-ES" | "gn-PY" | "gu-IN" | "ha-NG" | "he-IL" | "hi-IN" | "hr-HR" | "ht-HT" | "hu-HU" | "hy-AM" | "id-ID" | "ik-US" | "is-IS" | "it" | "it-IT" | "iu-CA" | "ja" | "ja-JP" | "ja-KS" | "jv-ID" | "ka-GE" | "kk-KZ" | "km-KH" | "kn-IN" | "ko" | "ko-KR" | "ku-TR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mg-MG" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms-MY" | "mt-MT" | "my-MM" | "nb-NO" | "ne-NP" | "nl" | "nl-BE" | "nl-NL" | "nn-NO" | "or-IN" | "pa-IN" | "pl-PL" | "ps-AF" | "pt" | "pt-BR" | "pt-PT" | "ro-RO" | "ru" | "ru-RU" | "rw-RW" | "sc-IT" | "si-LK" | "sk-SK" | "sl-SI" | "sn-ZW" | "sq-AL" | "sr-RS" | "sv" | "sv-SE" | "sw-KE" | "sy-SY" | "sz-PL" | "ta-IN" | "te-IN" | "tg-TJ" | "th" | "th-TH" | "tl-PH" | "tr" | "tr-TR" | "tt-RU" | "tz-MA" | "uk-UA" | "ur-PK" | "uz-UZ" | "vi-VN" | "zh" | "zh-CN" | "zh-HK" | "zh-MO" | "zh-TW" | "zz-TR">;
55
55
  }, "strip", z.ZodTypeAny, {
56
56
  autoDetect: boolean;
57
- fallbackLanguage: "af-ZA" | "am-ET" | "ar" | "ar-AR" | "as-IN" | "az-AZ" | "be-BY" | "bg-BG" | "bn-IN" | "br-FR" | "bs-BA" | "ca-ES" | "cb-IQ" | "co-FR" | "cs-CZ" | "cx-PH" | "cy-GB" | "da-DK" | "de" | "de-DE" | "el-GR" | "en" | "en-GB" | "en-US" | "eo-EO" | "es" | "es-ES" | "es-419" | "et-EE" | "eu-ES" | "fa-IR" | "ff-NG" | "fi" | "fi-FI" | "fo-FO" | "fr" | "fr-CA" | "fr-FR" | "fy-NL" | "ga-IE" | "gl-ES" | "gn-PY" | "gu-IN" | "ha-NG" | "he-IL" | "hi-IN" | "hr-HR" | "ht-HT" | "hu-HU" | "hy-AM" | "id-ID" | "ik-US" | "is-IS" | "it" | "it-IT" | "iu-CA" | "ja" | "ja-JP" | "ja-KS" | "jv-ID" | "ka-GE" | "kk-KZ" | "km-KH" | "kn-IN" | "ko" | "ko-KR" | "ku-TR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mg-MG" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms-MY" | "mt-MT" | "my-MM" | "nb-NO" | "ne-NP" | "nl" | "nl-BE" | "nl-NL" | "nn-NO" | "or-IN" | "pa-IN" | "pl-PL" | "ps-AF" | "pt" | "pt-BR" | "pt-PT" | "ro-RO" | "ru" | "ru-RU" | "rw-RW" | "sc-IT" | "si-LK" | "sk-SK" | "sl-SI" | "sn-ZW" | "sq-AL" | "sr-RS" | "sv" | "sv-SE" | "sw-KE" | "sy-SY" | "sz-PL" | "ta-IN" | "te-IN" | "tg-TJ" | "th" | "th-TH" | "tl-PH" | "tr" | "tr-TR" | "tt-RU" | "tz-MA" | "uk-UA" | "ur-PK" | "uz-UZ" | "vi-VN" | "zh" | "zh-CN" | "zh-HK" | "zh-MO" | "zh-TW" | "zz-TR";
57
+ fallbackLanguage: "af-ZA" | "am-ET" | "ar" | "ar-AR" | "as-IN" | "az-AZ" | "be-BY" | "bg-BG" | "bn-IN" | "br-FR" | "bs-BA" | "ca-ES" | "cb-IQ" | "co-FR" | "cs" | "cs-CZ" | "cx-PH" | "cy-GB" | "da-DK" | "de" | "de-DE" | "el-GR" | "en" | "en-GB" | "en-US" | "eo-EO" | "es" | "es-ES" | "es-419" | "et-EE" | "eu-ES" | "fa-IR" | "ff-NG" | "fi" | "fi-FI" | "fo-FO" | "fr" | "fr-CA" | "fr-FR" | "fy-NL" | "ga-IE" | "gl-ES" | "gn-PY" | "gu-IN" | "ha-NG" | "he-IL" | "hi-IN" | "hr-HR" | "ht-HT" | "hu-HU" | "hy-AM" | "id-ID" | "ik-US" | "is-IS" | "it" | "it-IT" | "iu-CA" | "ja" | "ja-JP" | "ja-KS" | "jv-ID" | "ka-GE" | "kk-KZ" | "km-KH" | "kn-IN" | "ko" | "ko-KR" | "ku-TR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mg-MG" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms-MY" | "mt-MT" | "my-MM" | "nb-NO" | "ne-NP" | "nl" | "nl-BE" | "nl-NL" | "nn-NO" | "or-IN" | "pa-IN" | "pl-PL" | "ps-AF" | "pt" | "pt-BR" | "pt-PT" | "ro-RO" | "ru" | "ru-RU" | "rw-RW" | "sc-IT" | "si-LK" | "sk-SK" | "sl-SI" | "sn-ZW" | "sq-AL" | "sr-RS" | "sv" | "sv-SE" | "sw-KE" | "sy-SY" | "sz-PL" | "ta-IN" | "te-IN" | "tg-TJ" | "th" | "th-TH" | "tl-PH" | "tr" | "tr-TR" | "tt-RU" | "tz-MA" | "uk-UA" | "ur-PK" | "uz-UZ" | "vi-VN" | "zh" | "zh-CN" | "zh-HK" | "zh-MO" | "zh-TW" | "zz-TR";
58
58
  }, {
59
59
  autoDetect: boolean;
60
- fallbackLanguage: "af-ZA" | "am-ET" | "ar" | "ar-AR" | "as-IN" | "az-AZ" | "be-BY" | "bg-BG" | "bn-IN" | "br-FR" | "bs-BA" | "ca-ES" | "cb-IQ" | "co-FR" | "cs-CZ" | "cx-PH" | "cy-GB" | "da-DK" | "de" | "de-DE" | "el-GR" | "en" | "en-GB" | "en-US" | "eo-EO" | "es" | "es-ES" | "es-419" | "et-EE" | "eu-ES" | "fa-IR" | "ff-NG" | "fi" | "fi-FI" | "fo-FO" | "fr" | "fr-CA" | "fr-FR" | "fy-NL" | "ga-IE" | "gl-ES" | "gn-PY" | "gu-IN" | "ha-NG" | "he-IL" | "hi-IN" | "hr-HR" | "ht-HT" | "hu-HU" | "hy-AM" | "id-ID" | "ik-US" | "is-IS" | "it" | "it-IT" | "iu-CA" | "ja" | "ja-JP" | "ja-KS" | "jv-ID" | "ka-GE" | "kk-KZ" | "km-KH" | "kn-IN" | "ko" | "ko-KR" | "ku-TR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mg-MG" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms-MY" | "mt-MT" | "my-MM" | "nb-NO" | "ne-NP" | "nl" | "nl-BE" | "nl-NL" | "nn-NO" | "or-IN" | "pa-IN" | "pl-PL" | "ps-AF" | "pt" | "pt-BR" | "pt-PT" | "ro-RO" | "ru" | "ru-RU" | "rw-RW" | "sc-IT" | "si-LK" | "sk-SK" | "sl-SI" | "sn-ZW" | "sq-AL" | "sr-RS" | "sv" | "sv-SE" | "sw-KE" | "sy-SY" | "sz-PL" | "ta-IN" | "te-IN" | "tg-TJ" | "th" | "th-TH" | "tl-PH" | "tr" | "tr-TR" | "tt-RU" | "tz-MA" | "uk-UA" | "ur-PK" | "uz-UZ" | "vi-VN" | "zh" | "zh-CN" | "zh-HK" | "zh-MO" | "zh-TW" | "zz-TR";
60
+ fallbackLanguage: "af-ZA" | "am-ET" | "ar" | "ar-AR" | "as-IN" | "az-AZ" | "be-BY" | "bg-BG" | "bn-IN" | "br-FR" | "bs-BA" | "ca-ES" | "cb-IQ" | "co-FR" | "cs" | "cs-CZ" | "cx-PH" | "cy-GB" | "da-DK" | "de" | "de-DE" | "el-GR" | "en" | "en-GB" | "en-US" | "eo-EO" | "es" | "es-ES" | "es-419" | "et-EE" | "eu-ES" | "fa-IR" | "ff-NG" | "fi" | "fi-FI" | "fo-FO" | "fr" | "fr-CA" | "fr-FR" | "fy-NL" | "ga-IE" | "gl-ES" | "gn-PY" | "gu-IN" | "ha-NG" | "he-IL" | "hi-IN" | "hr-HR" | "ht-HT" | "hu-HU" | "hy-AM" | "id-ID" | "ik-US" | "is-IS" | "it" | "it-IT" | "iu-CA" | "ja" | "ja-JP" | "ja-KS" | "jv-ID" | "ka-GE" | "kk-KZ" | "km-KH" | "kn-IN" | "ko" | "ko-KR" | "ku-TR" | "ky-KG" | "lo-LA" | "lt-LT" | "lv-LV" | "mg-MG" | "mk-MK" | "ml-IN" | "mn-MN" | "mr-IN" | "ms-MY" | "mt-MT" | "my-MM" | "nb-NO" | "ne-NP" | "nl" | "nl-BE" | "nl-NL" | "nn-NO" | "or-IN" | "pa-IN" | "pl-PL" | "ps-AF" | "pt" | "pt-BR" | "pt-PT" | "ro-RO" | "ru" | "ru-RU" | "rw-RW" | "sc-IT" | "si-LK" | "sk-SK" | "sl-SI" | "sn-ZW" | "sq-AL" | "sr-RS" | "sv" | "sv-SE" | "sw-KE" | "sy-SY" | "sz-PL" | "ta-IN" | "te-IN" | "tg-TJ" | "th" | "th-TH" | "tl-PH" | "tr" | "tr-TR" | "tt-RU" | "tz-MA" | "uk-UA" | "ur-PK" | "uz-UZ" | "vi-VN" | "zh" | "zh-CN" | "zh-HK" | "zh-MO" | "zh-TW" | "zz-TR";
61
61
  }>;
62
62
  export type LanguageInfo = z.infer<typeof languageInfoGuard>;
63
63
  export declare enum SignInIdentifier {
@@ -237,12 +237,16 @@ export declare enum MfaPolicy {
237
237
  UserControlled = "UserControlled",
238
238
  /** MFA is required for all users */
239
239
  Mandatory = "Mandatory",
240
- /** Ask users to set up MFA on their sign-in after registration (skippable, one-time prompt) */
240
+ /** Ask users to set up MFA on their sign-in after registration (skippable, one-time prompt, Optional MFA only) */
241
241
  PromptOnlyAtSignIn = "PromptOnlyAtSignIn",
242
- /** Ask users to set up MFA during registration (skippable, one-time prompt) */
242
+ /** Ask users to set up MFA during registration (skippable, one-time prompt, Optional MFA only) */
243
243
  PromptAtSignInAndSignUp = "PromptAtSignInAndSignUp",
244
244
  /** Do not ask users to set up MFA */
245
- NoPrompt = "NoPrompt"
245
+ NoPrompt = "NoPrompt",
246
+ /** Ask users to set up MFA during registration or at next sign-in (no-skip, Adaptive MFA only) */
247
+ PromptAtSignInAndSignUpMandatory = "PromptAtSignInAndSignUpMandatory",
248
+ /** Ask users to set up MFA at next sign-in after registration (no-skip, Adaptive MFA only) */
249
+ PromptOnlyAtSignInMandatory = "PromptOnlyAtSignInMandatory"
246
250
  }
247
251
  export declare enum OrganizationRequiredMfaPolicy {
248
252
  /** Do not ask users to set up MFA */
@@ -83,12 +83,16 @@ export var MfaPolicy;
83
83
  MfaPolicy["UserControlled"] = "UserControlled";
84
84
  /** MFA is required for all users */
85
85
  MfaPolicy["Mandatory"] = "Mandatory";
86
- /** Ask users to set up MFA on their sign-in after registration (skippable, one-time prompt) */
86
+ /** Ask users to set up MFA on their sign-in after registration (skippable, one-time prompt, Optional MFA only) */
87
87
  MfaPolicy["PromptOnlyAtSignIn"] = "PromptOnlyAtSignIn";
88
- /** Ask users to set up MFA during registration (skippable, one-time prompt) */
88
+ /** Ask users to set up MFA during registration (skippable, one-time prompt, Optional MFA only) */
89
89
  MfaPolicy["PromptAtSignInAndSignUp"] = "PromptAtSignInAndSignUp";
90
90
  /** Do not ask users to set up MFA */
91
91
  MfaPolicy["NoPrompt"] = "NoPrompt";
92
+ /** Ask users to set up MFA during registration or at next sign-in (no-skip, Adaptive MFA only) */
93
+ MfaPolicy["PromptAtSignInAndSignUpMandatory"] = "PromptAtSignInAndSignUpMandatory";
94
+ /** Ask users to set up MFA at next sign-in after registration (no-skip, Adaptive MFA only) */
95
+ MfaPolicy["PromptOnlyAtSignInMandatory"] = "PromptOnlyAtSignInMandatory";
92
96
  })(MfaPolicy || (MfaPolicy = {}));
93
97
  export var OrganizationRequiredMfaPolicy;
94
98
  (function (OrganizationRequiredMfaPolicy) {
@@ -7,9 +7,11 @@ import type { Application, CreateApplication, CreateApplicationsRole } from '../
7
7
  export declare const adminConsoleApplicationId = "admin-console";
8
8
  export declare const demoAppApplicationId = "demo-app";
9
9
  export declare const accountCenterApplicationId = "account-center";
10
+ export declare const deviceDemoAppApplicationId = "device-demo-app";
10
11
  export declare const buildDemoAppDataForTenant: (tenantId: string) => Application;
11
12
  export declare const buildAccountCenterAppDataForTenant: (tenantId: string) => Application;
12
- export type BuiltInApplicationId = typeof demoAppApplicationId | typeof accountCenterApplicationId;
13
+ export declare const buildDeviceDemoAppDataForTenant: (tenantId: string) => Application;
14
+ export type BuiltInApplicationId = typeof demoAppApplicationId | typeof accountCenterApplicationId | typeof deviceDemoAppApplicationId;
13
15
  export declare const isBuiltInApplicationId: (applicationId: string) => applicationId is BuiltInApplicationId;
14
16
  export declare const isBuiltInClientId: (applicationId: string) => applicationId is BuiltInApplicationId;
15
17
  export declare const buildBuiltInApplicationDataForTenant: (tenantId: string, applicationId: BuiltInApplicationId) => Application;
@@ -9,6 +9,7 @@ import { adminTenantId } from './tenant.js';
9
9
  export const adminConsoleApplicationId = 'admin-console';
10
10
  export const demoAppApplicationId = 'demo-app';
11
11
  export const accountCenterApplicationId = 'account-center';
12
+ export const deviceDemoAppApplicationId = 'device-demo-app';
12
13
  const buildSpaApplicationData = (tenantId, { id, name, description, }) => ({
13
14
  tenantId,
14
15
  id,
@@ -33,12 +34,36 @@ export const buildAccountCenterAppDataForTenant = (tenantId) => buildSpaApplicat
33
34
  name: 'Account Center',
34
35
  description: 'Placeholder application for Account Center.',
35
36
  });
36
- export const isBuiltInApplicationId = (applicationId) => applicationId === demoAppApplicationId || applicationId === accountCenterApplicationId;
37
+ const buildNativeApplicationData = (tenantId, { id, name, description, }) => ({
38
+ tenantId,
39
+ id,
40
+ name,
41
+ secret: 'N/A',
42
+ description,
43
+ type: ApplicationType.Native,
44
+ oidcClientMetadata: { redirectUris: [], postLogoutRedirectUris: [] },
45
+ customClientMetadata: { isDeviceFlow: true },
46
+ protectedAppMetadata: null,
47
+ isThirdParty: false,
48
+ createdAt: 0,
49
+ customData: {},
50
+ });
51
+ export const buildDeviceDemoAppDataForTenant = (tenantId) => buildNativeApplicationData(tenantId, {
52
+ id: deviceDemoAppApplicationId,
53
+ name: 'Device Flow Preview',
54
+ description: 'Preview for Device Authorization Flow.',
55
+ });
56
+ export const isBuiltInApplicationId = (applicationId) => applicationId === demoAppApplicationId ||
57
+ applicationId === accountCenterApplicationId ||
58
+ applicationId === deviceDemoAppApplicationId;
37
59
  export const isBuiltInClientId = isBuiltInApplicationId;
38
60
  export const buildBuiltInApplicationDataForTenant = (tenantId, applicationId) => {
39
61
  if (applicationId === demoAppApplicationId) {
40
62
  return buildDemoAppDataForTenant(tenantId);
41
63
  }
64
+ if (applicationId === deviceDemoAppApplicationId) {
65
+ return buildDeviceDemoAppDataForTenant(tenantId);
66
+ }
42
67
  return buildAccountCenterAppDataForTenant(tenantId);
43
68
  };
44
69
  export const createDefaultAdminConsoleApplication = () => Object.freeze({
@@ -27,6 +27,8 @@ export declare const featuredApplicationGuard: z.ZodObject<Pick<{
27
27
  alwaysIssueRefreshToken?: boolean | undefined;
28
28
  rotateRefreshToken?: boolean | undefined;
29
29
  allowTokenExchange?: boolean | undefined;
30
+ isDeviceFlow?: boolean | undefined;
31
+ maxAllowedGrants?: number | undefined;
30
32
  }, z.ZodTypeDef, {
31
33
  corsAllowedOrigins?: string[] | undefined;
32
34
  idTokenTtl?: number | undefined;
@@ -36,6 +38,8 @@ export declare const featuredApplicationGuard: z.ZodObject<Pick<{
36
38
  alwaysIssueRefreshToken?: boolean | undefined;
37
39
  rotateRefreshToken?: boolean | undefined;
38
40
  allowTokenExchange?: boolean | undefined;
41
+ isDeviceFlow?: boolean | undefined;
42
+ maxAllowedGrants?: number | undefined;
39
43
  }>;
40
44
  protectedAppMetadata: z.ZodType<{
41
45
  host: string;
@@ -119,6 +123,8 @@ export declare const applicationCreateGuard: z.ZodObject<{
119
123
  alwaysIssueRefreshToken?: boolean | undefined;
120
124
  rotateRefreshToken?: boolean | undefined;
121
125
  allowTokenExchange?: boolean | undefined;
126
+ isDeviceFlow?: boolean | undefined;
127
+ maxAllowedGrants?: number | undefined;
122
128
  }, z.ZodTypeDef, {
123
129
  corsAllowedOrigins?: string[] | undefined;
124
130
  idTokenTtl?: number | undefined;
@@ -128,6 +134,8 @@ export declare const applicationCreateGuard: z.ZodObject<{
128
134
  alwaysIssueRefreshToken?: boolean | undefined;
129
135
  rotateRefreshToken?: boolean | undefined;
130
136
  allowTokenExchange?: boolean | undefined;
137
+ isDeviceFlow?: boolean | undefined;
138
+ maxAllowedGrants?: number | undefined;
131
139
  }>>>;
132
140
  protectedAppMetadata: z.ZodOptional<z.ZodOptional<z.ZodType<{
133
141
  host: string;
@@ -222,6 +230,8 @@ export declare const applicationPatchGuard: z.ZodObject<Omit<{
222
230
  alwaysIssueRefreshToken?: boolean | undefined;
223
231
  rotateRefreshToken?: boolean | undefined;
224
232
  allowTokenExchange?: boolean | undefined;
233
+ isDeviceFlow?: boolean | undefined;
234
+ maxAllowedGrants?: number | undefined;
225
235
  }, z.ZodTypeDef, {
226
236
  corsAllowedOrigins?: string[] | undefined;
227
237
  idTokenTtl?: number | undefined;
@@ -231,6 +241,8 @@ export declare const applicationPatchGuard: z.ZodObject<Omit<{
231
241
  alwaysIssueRefreshToken?: boolean | undefined;
232
242
  rotateRefreshToken?: boolean | undefined;
233
243
  allowTokenExchange?: boolean | undefined;
244
+ isDeviceFlow?: boolean | undefined;
245
+ maxAllowedGrants?: number | undefined;
234
246
  }>>>>;
235
247
  protectedAppMetadata: z.ZodOptional<z.ZodOptional<z.ZodOptional<z.ZodType<{
236
248
  host: string;
@@ -241,6 +241,7 @@ export declare const connectorResponseGuard: z.ZodObject<{
241
241
  "ca-ES"?: string | undefined;
242
242
  "cb-IQ"?: string | undefined;
243
243
  "co-FR"?: string | undefined;
244
+ cs?: string | undefined;
244
245
  "cs-CZ"?: string | undefined;
245
246
  "cx-PH"?: string | undefined;
246
247
  "cy-GB"?: string | undefined;
@@ -374,6 +375,7 @@ export declare const connectorResponseGuard: z.ZodObject<{
374
375
  "ca-ES"?: string | undefined;
375
376
  "cb-IQ"?: string | undefined;
376
377
  "co-FR"?: string | undefined;
378
+ cs?: string | undefined;
377
379
  "cs-CZ"?: string | undefined;
378
380
  "cx-PH"?: string | undefined;
379
381
  "cy-GB"?: string | undefined;
@@ -577,6 +579,7 @@ export declare const connectorResponseGuard: z.ZodObject<{
577
579
  "ca-ES"?: string | undefined;
578
580
  "cb-IQ"?: string | undefined;
579
581
  "co-FR"?: string | undefined;
582
+ cs?: string | undefined;
580
583
  "cs-CZ"?: string | undefined;
581
584
  "cx-PH"?: string | undefined;
582
585
  "cy-GB"?: string | undefined;
@@ -710,6 +713,7 @@ export declare const connectorResponseGuard: z.ZodObject<{
710
713
  "ca-ES"?: string | undefined;
711
714
  "cb-IQ"?: string | undefined;
712
715
  "co-FR"?: string | undefined;
716
+ cs?: string | undefined;
713
717
  "cs-CZ"?: string | undefined;
714
718
  "cx-PH"?: string | undefined;
715
719
  "cy-GB"?: string | undefined;
@@ -1118,6 +1122,7 @@ export declare const connectorFactoryResponseGuard: z.ZodObject<{
1118
1122
  "ca-ES"?: string | undefined;
1119
1123
  "cb-IQ"?: string | undefined;
1120
1124
  "co-FR"?: string | undefined;
1125
+ cs?: string | undefined;
1121
1126
  "cs-CZ"?: string | undefined;
1122
1127
  "cx-PH"?: string | undefined;
1123
1128
  "cy-GB"?: string | undefined;
@@ -1251,6 +1256,7 @@ export declare const connectorFactoryResponseGuard: z.ZodObject<{
1251
1256
  "ca-ES"?: string | undefined;
1252
1257
  "cb-IQ"?: string | undefined;
1253
1258
  "co-FR"?: string | undefined;
1259
+ cs?: string | undefined;
1254
1260
  "cs-CZ"?: string | undefined;
1255
1261
  "cx-PH"?: string | undefined;
1256
1262
  "cy-GB"?: string | undefined;
@@ -1447,6 +1453,7 @@ export declare const connectorFactoryResponseGuard: z.ZodObject<{
1447
1453
  "ca-ES"?: string | undefined;
1448
1454
  "cb-IQ"?: string | undefined;
1449
1455
  "co-FR"?: string | undefined;
1456
+ cs?: string | undefined;
1450
1457
  "cs-CZ"?: string | undefined;
1451
1458
  "cx-PH"?: string | undefined;
1452
1459
  "cy-GB"?: string | undefined;
@@ -1580,6 +1587,7 @@ export declare const connectorFactoryResponseGuard: z.ZodObject<{
1580
1587
  "ca-ES"?: string | undefined;
1581
1588
  "cb-IQ"?: string | undefined;
1582
1589
  "co-FR"?: string | undefined;
1590
+ cs?: string | undefined;
1583
1591
  "cs-CZ"?: string | undefined;
1584
1592
  "cx-PH"?: string | undefined;
1585
1593
  "cy-GB"?: string | undefined;