import { z } from "zod"; export declare const USER_PROFILE_SETTING_KEY = "user-profile"; export declare const ONBOARDING_ROLE_VALUES: readonly ["product", "design", "developer", "marketing", "sales", "ops", "individual", "other"]; export declare const onboardingRoleSchema: z.ZodString; export type OnboardingRole = z.infer; export type OnboardingRoleCategory = (typeof ONBOARDING_ROLE_VALUES)[number]; export declare function getOnboardingRoleCategory(value: OnboardingRole): OnboardingRoleCategory; /** * A typed "Other" role as analytics may keep it; undefined for a listed role. * Analytics rows outlive the profile and show on shared dashboards, so emails, * links, handles and phone-like digit runs are replaced before the length cap. */ export declare function getOnboardingRoleTextForAnalytics(value: OnboardingRole): string | undefined; export interface UserProfile { email: string; name: string; image?: string | null; onboardingRole?: OnboardingRole | null; } export declare function isEmailDerivedName(value: string | null | undefined, email: string): boolean; export declare function normalizeUserProfileName(value: string | null | undefined, email: string): string; export declare function resolveUserProfileName(email: string, storedName: string | null | undefined, profileName?: string | null): string | null; export declare function normalizeOnboardingRole(value: string | null | undefined): OnboardingRole | null;