import { z } from 'zod'; export declare const colorGuard: z.ZodObject<{ primaryColor: z.ZodString; isDarkModeEnabled: z.ZodBoolean; darkPrimaryColor: z.ZodString; }, "strip", z.ZodTypeAny, { primaryColor: string; isDarkModeEnabled: boolean; darkPrimaryColor: string; }, { primaryColor: string; isDarkModeEnabled: boolean; darkPrimaryColor: string; }>; export type Color = z.infer; export declare const partialColorGuard: z.ZodObject<{ primaryColor: z.ZodOptional; isDarkModeEnabled: z.ZodOptional; darkPrimaryColor: z.ZodOptional; }, "strip", z.ZodTypeAny, { primaryColor?: string | undefined; isDarkModeEnabled?: boolean | undefined; darkPrimaryColor?: string | undefined; }, { primaryColor?: string | undefined; isDarkModeEnabled?: boolean | undefined; darkPrimaryColor?: string | undefined; }>; export type PartialColor = Partial; /** Maps a theme to the key of the logo URL in the {@link Branding} object. */ export declare const themeToLogoKey: Readonly<{ light: "logoUrl"; dark: "darkLogoUrl"; }>; export declare const brandingGuard: z.ZodObject<{ logoUrl: z.ZodOptional; darkLogoUrl: z.ZodOptional; favicon: z.ZodOptional; darkFavicon: z.ZodOptional; }, "strip", z.ZodTypeAny, { logoUrl?: string | undefined; darkLogoUrl?: string | undefined; favicon?: string | undefined; darkFavicon?: string | undefined; }, { logoUrl?: string | undefined; darkLogoUrl?: string | undefined; favicon?: string | undefined; darkFavicon?: string | undefined; }>; export type Branding = z.infer; export declare const languageInfoGuard: z.ZodObject<{ autoDetect: z.ZodBoolean; 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">; }, "strip", z.ZodTypeAny, { autoDetect: boolean; 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"; }, { autoDetect: boolean; 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"; }>; export type LanguageInfo = z.infer; export declare enum SignInIdentifier { Username = "username", Email = "email", Phone = "phone" } export declare const signInIdentifierGuard: z.ZodNativeEnum; export declare enum AdditionalIdentifier { UserId = "userId" } export declare enum AlternativeSignUpIdentifier { EmailOrPhone = "emailOrPhone" } export type SignUpIdentifier = SignInIdentifier | AlternativeSignUpIdentifier; type RequiredSignUpIdentifierSettings = { identifier: SignUpIdentifier; /** * For `email` and `phone` identifiers only. If `true`, the user must verify the email or phone number. */ verify?: boolean; }; /** * @example * ```ts * { * identifiers: ['email', 'phone'], * password: true, * verify: true, * secondaryIdentifiers: [{ * identifier: 'username', * }] * } * ``` * - Email or phone number is required as the primary identifier. * - The user must set up a password. * - The user must verify their email or phone number. * - In addition to the primary identifier, the user must provide a username. * * @example * ```ts * { * identifiers: ['username'], * password: true, * verify: false, * secondaryIdentifiers: [{ * identifier: 'emailOrPhone', * verified: true, * }] * } * ``` * - Username is required as the primary identifier. * - The user must set up a password. * - In addition to the primary identifier, the user must provide an email or phone number. * - The user must verify the email or phone number. */ export type SignUp = { /** Primary identifiers that are required to sign up. */ identifiers: SignInIdentifier[]; /** Whether the user should set up a password */ password: boolean; /** * Whether the user should verify their email or phone number. * * @remarks * This field is only relevant if the `email` or `phone` identifier is required as the primary identifier. **/ verify: boolean; /** Secondary identifiers that are required during sign up. */ secondaryIdentifiers?: RequiredSignUpIdentifierSettings[]; }; export declare const signUpGuard: z.ZodObject<{ identifiers: z.ZodArray, "many">; password: z.ZodBoolean; verify: z.ZodBoolean; secondaryIdentifiers: z.ZodOptional, z.ZodNativeEnum]>; verify: z.ZodOptional; }, "strip", z.ZodTypeAny, { identifier: SignInIdentifier | AlternativeSignUpIdentifier; verify?: boolean | undefined; }, { identifier: SignInIdentifier | AlternativeSignUpIdentifier; verify?: boolean | undefined; }>, "many">>; }, "strip", z.ZodTypeAny, { identifiers: SignInIdentifier[]; password: boolean; verify: boolean; secondaryIdentifiers?: { identifier: SignInIdentifier | AlternativeSignUpIdentifier; verify?: boolean | undefined; }[] | undefined; }, { identifiers: SignInIdentifier[]; password: boolean; verify: boolean; secondaryIdentifiers?: { identifier: SignInIdentifier | AlternativeSignUpIdentifier; verify?: boolean | undefined; }[] | undefined; }>; export declare const signInGuard: z.ZodObject<{ methods: z.ZodArray; password: z.ZodBoolean; verificationCode: z.ZodBoolean; isPasswordPrimary: z.ZodBoolean; }, "strip", z.ZodTypeAny, { password: boolean; identifier: SignInIdentifier; verificationCode: boolean; isPasswordPrimary: boolean; }, { password: boolean; identifier: SignInIdentifier; verificationCode: boolean; isPasswordPrimary: boolean; }>, "many">; }, "strip", z.ZodTypeAny, { methods: { password: boolean; identifier: SignInIdentifier; verificationCode: boolean; isPasswordPrimary: boolean; }[]; }, { methods: { password: boolean; identifier: SignInIdentifier; verificationCode: boolean; isPasswordPrimary: boolean; }[]; }>; export type SignIn = z.infer; export type SocialSignIn = { /** * If account linking should be performed when a user signs in with a social identity that is new * to the system and exactly one existing account is found with the same identifier (e.g., email). */ automaticAccountLinking?: boolean; /** * If required identifiers (e.g., email, phone) should be skipped during social sign-in. * @remarks * By default, if a social identity does not provide all required identifiers, * the user will be prompted to provide them before completing sign-in. * * Setting this to `true` will bypass that requirement. */ skipRequiredIdentifiers?: boolean; }; export declare const socialSignInGuard: z.ZodObject<{ automaticAccountLinking: z.ZodOptional; skipRequiredIdentifiers: z.ZodOptional; }, "strip", z.ZodTypeAny, { automaticAccountLinking?: boolean | undefined; skipRequiredIdentifiers?: boolean | undefined; }, { automaticAccountLinking?: boolean | undefined; skipRequiredIdentifiers?: boolean | undefined; }>; export declare const connectorTargetsGuard: z.ZodArray; export type ConnectorTargets = z.infer; export declare const customContentGuard: z.ZodRecord; export type CustomContent = z.infer; export declare enum MfaFactor { TOTP = "Totp", WebAuthn = "WebAuthn", BackupCode = "BackupCode", EmailVerificationCode = "EmailVerificationCode", PhoneVerificationCode = "PhoneVerificationCode" } export declare const mfaFactorsGuard: z.ZodArray, "many">; export type MfaFactors = z.infer; export declare enum MfaPolicy { /** @deprecated, use `PromptAtSignInAndSignUp` instead */ UserControlled = "UserControlled", /** MFA is required for all users */ Mandatory = "Mandatory", /** Ask users to set up MFA on their sign-in after registration (skippable, one-time prompt, Optional MFA only) */ PromptOnlyAtSignIn = "PromptOnlyAtSignIn", /** Ask users to set up MFA during registration (skippable, one-time prompt, Optional MFA only) */ PromptAtSignInAndSignUp = "PromptAtSignInAndSignUp", /** Do not ask users to set up MFA */ NoPrompt = "NoPrompt", /** Ask users to set up MFA during registration or at next sign-in (no-skip, Adaptive MFA only) */ PromptAtSignInAndSignUpMandatory = "PromptAtSignInAndSignUpMandatory", /** Ask users to set up MFA at next sign-in after registration (no-skip, Adaptive MFA only) */ PromptOnlyAtSignInMandatory = "PromptOnlyAtSignInMandatory" } export declare enum OrganizationRequiredMfaPolicy { /** Do not ask users to set up MFA */ NoPrompt = "NoPrompt", /** MFA is required for all users */ Mandatory = "Mandatory" } export type Mfa = { /** Enabled MFA factors */ factors: MfaFactor[]; /** Global MFA prompt policy */ policy: MfaPolicy; /** * The MFA policy for organization level MFA settings. * * @remarks * This policy is used to determine the MFA prompt behavior * when the user is associated with one or more organizations that * require MFA. * * @remarks * For backward compatibility, if this policy is not set, * the default behavior is {@link OrganizationRequiredMfaPolicy.NoPrompt}. * * @remarks * Regardless of this policy setting, the user will always be rejected * when request for an organization access_token if the user has not set up MFA. */ organizationRequiredMfaPolicy?: OrganizationRequiredMfaPolicy; }; export declare const mfaGuard: z.ZodObject<{ factors: z.ZodArray, "many">; policy: z.ZodNativeEnum; organizationRequiredMfaPolicy: z.ZodOptional>; }, "strip", z.ZodTypeAny, { factors: MfaFactor[]; policy: MfaPolicy; organizationRequiredMfaPolicy?: OrganizationRequiredMfaPolicy | undefined; }, { factors: MfaFactor[]; policy: MfaPolicy; organizationRequiredMfaPolicy?: OrganizationRequiredMfaPolicy | undefined; }>; /** * Adaptive MFA configuration for the sign-in experience. * * @remarks * This is a single enable switch for the rule-based Adaptive MFA flow. * Use it in Management API sign-in experience updates (`PATCH /api/sign-in-exp`). * When enabled, the server evaluates fixed risk rules from request signals * (IP, User-Agent, edge-injected headers) and may require MFA verification. * If omitted, Adaptive MFA is disabled. * * @example * ```ts * { * adaptiveMfa: { * enabled: true, * }, * } * ``` */ export type AdaptiveMfa = { enabled?: boolean; }; export declare const adaptiveMfaGuard: z.ZodObject<{ enabled: z.ZodOptional; }, "strip", z.ZodTypeAny, { enabled?: boolean | undefined; }, { enabled?: boolean | undefined; }>; export declare const customUiAssetsGuard: z.ZodObject<{ id: z.ZodString; createdAt: z.ZodNumber; }, "strip", z.ZodTypeAny, { id: string; createdAt: number; }, { id: string; createdAt: number; }>; export type CustomUiAssets = z.infer; export declare const captchaPolicyGuard: z.ZodObject<{ enabled: z.ZodOptional; }, "strip", z.ZodTypeAny, { enabled?: boolean | undefined; }, { enabled?: boolean | undefined; }>; export type CaptchaPolicy = z.infer; export type SentinelPolicy = { /** * Maximum failed attempts allowed in one hour before blocking the user. */ maxAttempts?: number; /** * Lockout duration in minutes after exceeding the maximum failed attempts. */ lockoutDuration?: number; }; export declare const sentinelPolicyGuard: z.ZodObject<{ maxAttempts: z.ZodOptional; lockoutDuration: z.ZodOptional; }, "strip", z.ZodTypeAny, { maxAttempts?: number | undefined; lockoutDuration?: number | undefined; }, { maxAttempts?: number | undefined; lockoutDuration?: number | undefined; }>; /** * Email blocklist policy. * * @remarks * This policy is used to block specific email addresses or domains from signing up. */ export type EmailBlocklistPolicy = { blockDisposableAddresses?: boolean; blockSubaddressing?: boolean; /** * Custom blocklist of email addresses or domains. * * @example * Email address: abc@xyx.com * * @example * Domain name: @xyz.com */ customBlocklist?: string[]; }; export declare const emailBlocklistPolicyGuard: z.ZodObject<{ blockDisposableAddresses: z.ZodOptional; blockSubaddressing: z.ZodOptional; customBlocklist: z.ZodOptional>; }, "strip", z.ZodTypeAny, { blockDisposableAddresses?: boolean | undefined; blockSubaddressing?: boolean | undefined; customBlocklist?: string[] | undefined; }, { blockDisposableAddresses?: boolean | undefined; blockSubaddressing?: boolean | undefined; customBlocklist?: string[] | undefined; }>; export declare enum ForgotPasswordMethod { EmailVerificationCode = "EmailVerificationCode", PhoneVerificationCode = "PhoneVerificationCode" } export declare const forgotPasswordMethodsGuard: z.ZodArray, "many">; export type ForgotPasswordMethods = z.infer; export type PasskeySignIn = { enabled?: boolean; showPasskeyButton?: boolean; allowAutofill?: boolean; }; export declare const passkeySignInGuard: z.ZodObject<{ enabled: z.ZodOptional; showPasskeyButton: z.ZodOptional; allowAutofill: z.ZodOptional; }, "strip", z.ZodTypeAny, { enabled?: boolean | undefined; showPasskeyButton?: boolean | undefined; allowAutofill?: boolean | undefined; }, { enabled?: boolean | undefined; showPasskeyButton?: boolean | undefined; allowAutofill?: boolean | undefined; }>; export {};