import { z } from 'zod'; import { type SsoConnector } from '../db-entries/sso-connector.js'; /** * SSO Connector data type that are returned to the experience client for sign-in use. */ export declare const ssoConnectorMetadataGuard: z.ZodObject<{ id: z.ZodString; connectorName: z.ZodString; logo: z.ZodString; darkLogo: z.ZodOptional; }, "strip", z.ZodTypeAny, { id: string; logo: string; connectorName: string; darkLogo?: string | undefined; }, { id: string; logo: string; connectorName: string; darkLogo?: string | undefined; }>; export type SsoConnectorMetadata = z.infer; export declare enum SsoProviderName { OIDC = "OIDC", SAML = "SAML", AZURE_AD = "AzureAD", GOOGLE_WORKSPACE = "GoogleWorkspace", OKTA = "Okta", AZURE_AD_OIDC = "AzureAdOidc" } export declare enum SsoProviderType { OIDC = "oidc", SAML = "saml" } export declare const singleSignOnDomainBlackList: readonly string[]; export type SupportedSsoConnector = Omit & { providerName: SsoProviderName; }; declare const ssoConnectorProviderDetailGuard: z.ZodObject<{ providerName: z.ZodNativeEnum; providerType: z.ZodNativeEnum; logo: z.ZodString; logoDark: z.ZodString; description: z.ZodString; name: z.ZodString; }, "strip", z.ZodTypeAny, { name: string; logo: string; description: string; logoDark: string; providerName: SsoProviderName; providerType: SsoProviderType; }, { name: string; logo: string; description: string; logoDark: string; providerName: SsoProviderName; providerType: SsoProviderType; }>; export type SsoConnectorProviderDetail = z.infer; export declare const ssoConnectorProvidersResponseGuard: z.ZodArray; providerType: z.ZodNativeEnum; logo: z.ZodString; logoDark: z.ZodString; description: z.ZodString; name: z.ZodString; }, "strip", z.ZodTypeAny, { name: string; logo: string; description: string; logoDark: string; providerName: SsoProviderName; providerType: SsoProviderType; }, { name: string; logo: string; description: string; logoDark: string; providerName: SsoProviderName; providerType: SsoProviderType; }>, "many">; export type SsoConnectorProvidersResponse = z.infer; export declare const ssoConnectorWithProviderConfigGuard: z.ZodObject<{ tenantId: z.ZodType; id: z.ZodType; connectorName: z.ZodType; config: z.ZodType; domains: z.ZodType; branding: z.ZodType<{ displayName?: string | undefined; logo?: string | undefined; darkLogo?: string | undefined; }, z.ZodTypeDef, { displayName?: string | undefined; logo?: string | undefined; darkLogo?: string | undefined; }>; syncProfile: z.ZodType; enableTokenStorage: z.ZodType; createdAt: z.ZodType; } & { providerName: z.ZodNativeEnum; } & { name: z.ZodString; providerType: z.ZodNativeEnum; providerLogo: z.ZodString; providerLogoDark: z.ZodString; providerConfig: z.ZodOptional>; }, "strip", z.ZodTypeAny, { name: string; id: string; tenantId: string; createdAt: number; config: import("@withtyped/server").JsonObject; branding: import("../index.js").SsoBranding; syncProfile: boolean; enableTokenStorage: boolean; domains: import("../index.js").SsoDomains; providerName: SsoProviderName; connectorName: string; providerType: SsoProviderType; providerLogo: string; providerLogoDark: string; providerConfig?: Record | undefined; }, { name: string; id: string; tenantId: string; createdAt: number; config: import("@withtyped/server").JsonObject; branding: import("../index.js").SsoBranding; syncProfile: boolean; enableTokenStorage: boolean; domains: import("../index.js").SsoDomains; providerName: SsoProviderName; connectorName: string; providerType: SsoProviderType; providerLogo: string; providerLogoDark: string; providerConfig?: Record | undefined; }>; export type SsoConnectorWithProviderConfig = z.infer; export declare enum SsoAuthenticationQueryKey { SsoConnectorId = "ssoConnectorId" } export declare const extendedSocialUserInfoGuard: z.ZodObject<{ id: z.ZodString; email: z.ZodOptional; phone: z.ZodOptional; name: z.ZodOptional; avatar: z.ZodOptional; rawData: z.ZodOptional>; }, "strip", z.ZodUnknown, z.objectOutputType<{ id: z.ZodString; email: z.ZodOptional; phone: z.ZodOptional; name: z.ZodOptional; avatar: z.ZodOptional; rawData: z.ZodOptional>; }, z.ZodUnknown, "strip">, z.objectInputType<{ id: z.ZodString; email: z.ZodOptional; phone: z.ZodOptional; name: z.ZodOptional; avatar: z.ZodOptional; rawData: z.ZodOptional>; }, z.ZodUnknown, "strip">>; export type ExtendedSocialUserInfo = z.infer; export {};