import * as z from "zod"; export declare const MediumRankSchema: z.ZodObject<{ id: z.ZodString; name: z.ZodString; level: z.ZodNumber; }, "strip", z.ZodTypeAny, { id: string; name: string; level: number; }, { id: string; name: string; level: number; }>; export type MediumRank = z.infer; export declare const MediumRoleSchema: z.ZodObject<{ id: z.ZodString; name: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; name: string; }, { id: string; name: string; }>; export type MediumRole = z.infer; export declare const MediumSchema: z.ZodObject<{ initiationDate: z.ZodOptional; initiation_date: z.ZodOptional; status: z.ZodOptional>; rank: z.ZodOptional>; role: z.ZodOptional>; /** The terreiro ID associated with this medium profile. If not present, it's a personal profile */ terreiroId: z.ZodOptional>; }, "strip", z.ZodTypeAny, { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; }, { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; }>; export type Medium = z.infer; export declare const ProfileDetailsSchema: z.ZodObject<{ firstName: z.ZodString; lastName: z.ZodString; birthDate: z.ZodOptional; avatarUrl: z.ZodString; created_at: z.ZodOptional; updated_at: z.ZodOptional; user: z.ZodOptional>; }, "strip", z.ZodTypeAny, { email: string; created_at?: string | null | undefined; }, { email: string; created_at?: string | null | undefined; }>>; address: z.ZodOptional; neighborhood: z.ZodString; city: z.ZodString; state: z.ZodString; zipCode: z.ZodString; country: z.ZodString; }, "strip", z.ZodTypeAny, { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; }, { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; }>>; contacts: z.ZodOptional; phone: z.ZodString; contact_person: z.ZodOptional>; }, "strip", z.ZodTypeAny, { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }, { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }>, "many">>; status: z.ZodOptional>; hierarchy: z.ZodOptional; medium: z.ZodOptional; initiation_date: z.ZodOptional; status: z.ZodOptional>; rank: z.ZodOptional>; role: z.ZodOptional>; /** The terreiro ID associated with this medium profile. If not present, it's a personal profile */ terreiroId: z.ZodOptional>; }, "strip", z.ZodTypeAny, { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; }, { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { firstName: string; lastName: string; avatarUrl: string; address?: { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; } | undefined; status?: "active" | "inactive" | undefined; medium?: { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; } | undefined; birthDate?: string | undefined; contacts?: { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }[] | undefined; user?: { email: string; created_at?: string | null | undefined; } | undefined; created_at?: string | undefined; updated_at?: string | undefined; hierarchy?: string | undefined; }, { firstName: string; lastName: string; avatarUrl: string; address?: { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; } | undefined; status?: "active" | "inactive" | undefined; medium?: { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; } | undefined; birthDate?: string | undefined; contacts?: { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }[] | undefined; user?: { email: string; created_at?: string | null | undefined; } | undefined; created_at?: string | undefined; updated_at?: string | undefined; hierarchy?: string | undefined; }>; export declare const ProfileDetailsPagePropsSchema: z.ZodObject<{ profile: z.ZodObject<{ firstName: z.ZodString; lastName: z.ZodString; birthDate: z.ZodOptional; avatarUrl: z.ZodString; created_at: z.ZodOptional; updated_at: z.ZodOptional; user: z.ZodOptional>; }, "strip", z.ZodTypeAny, { email: string; created_at?: string | null | undefined; }, { email: string; created_at?: string | null | undefined; }>>; address: z.ZodOptional; neighborhood: z.ZodString; city: z.ZodString; state: z.ZodString; zipCode: z.ZodString; country: z.ZodString; }, "strip", z.ZodTypeAny, { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; }, { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; }>>; contacts: z.ZodOptional; phone: z.ZodString; contact_person: z.ZodOptional>; }, "strip", z.ZodTypeAny, { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }, { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }>, "many">>; status: z.ZodOptional>; hierarchy: z.ZodOptional; medium: z.ZodOptional; initiation_date: z.ZodOptional; status: z.ZodOptional>; rank: z.ZodOptional>; role: z.ZodOptional>; /** The terreiro ID associated with this medium profile. If not present, it's a personal profile */ terreiroId: z.ZodOptional>; }, "strip", z.ZodTypeAny, { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; }, { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; }>>; }, "strip", z.ZodTypeAny, { firstName: string; lastName: string; avatarUrl: string; address?: { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; } | undefined; status?: "active" | "inactive" | undefined; medium?: { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; } | undefined; birthDate?: string | undefined; contacts?: { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }[] | undefined; user?: { email: string; created_at?: string | null | undefined; } | undefined; created_at?: string | undefined; updated_at?: string | undefined; hierarchy?: string | undefined; }, { firstName: string; lastName: string; avatarUrl: string; address?: { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; } | undefined; status?: "active" | "inactive" | undefined; medium?: { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; } | undefined; birthDate?: string | undefined; contacts?: { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }[] | undefined; user?: { email: string; created_at?: string | null | undefined; } | undefined; created_at?: string | undefined; updated_at?: string | undefined; hierarchy?: string | undefined; }>; onBack: z.ZodFunction, z.ZodVoid>; onEditAvatar: z.ZodFunction], null>, z.ZodVoid>; onNavigate: z.ZodOptional, z.ZodVoid>>; isAdmin: z.ZodOptional; isPersonalProfile: z.ZodOptional; handleRequestAccessAgain: z.ZodOptional, z.ZodVoid>>; mediumStatus: z.ZodOptional; /** Whether to show the Medium section in the profile list. Defaults to true */ showMediumSection: z.ZodOptional; /** Badge tier for verification badge display */ badgeTier: z.ZodOptional>; /** Profile completeness data for progress display */ completenessData: z.ZodOptional; sections: z.ZodObject<{ profile: z.ZodObject<{ complete: z.ZodBoolean; missing: z.ZodArray; percentage: z.ZodNumber; }, "strip", z.ZodTypeAny, { complete: boolean; percentage: number; missing: string[]; }, { complete: boolean; percentage: number; missing: string[]; }>; medium: z.ZodObject<{ complete: z.ZodBoolean; missing: z.ZodArray; percentage: z.ZodNumber; }, "strip", z.ZodTypeAny, { complete: boolean; percentage: number; missing: string[]; }, { complete: boolean; percentage: number; missing: string[]; }>; contact: z.ZodObject<{ complete: z.ZodBoolean; missing: z.ZodArray; percentage: z.ZodNumber; }, "strip", z.ZodTypeAny, { complete: boolean; percentage: number; missing: string[]; }, { complete: boolean; percentage: number; missing: string[]; }>; address: z.ZodObject<{ complete: z.ZodBoolean; missing: z.ZodArray; percentage: z.ZodNumber; }, "strip", z.ZodTypeAny, { complete: boolean; percentage: number; missing: string[]; }, { complete: boolean; percentage: number; missing: string[]; }>; avatar: z.ZodObject<{ complete: z.ZodBoolean; missing: z.ZodArray; percentage: z.ZodNumber; }, "strip", z.ZodTypeAny, { complete: boolean; percentage: number; missing: string[]; }, { complete: boolean; percentage: number; missing: string[]; }>; }, "strip", z.ZodTypeAny, { address: { complete: boolean; percentage: number; missing: string[]; }; medium: { complete: boolean; percentage: number; missing: string[]; }; avatar: { complete: boolean; percentage: number; missing: string[]; }; profile: { complete: boolean; percentage: number; missing: string[]; }; contact: { complete: boolean; percentage: number; missing: string[]; }; }, { address: { complete: boolean; percentage: number; missing: string[]; }; medium: { complete: boolean; percentage: number; missing: string[]; }; avatar: { complete: boolean; percentage: number; missing: string[]; }; profile: { complete: boolean; percentage: number; missing: string[]; }; contact: { complete: boolean; percentage: number; missing: string[]; }; }>; nextActions: z.ZodArray; }, "strip", z.ZodTypeAny, { completenessScore: number; badgeTier: "STARTER" | "BASIC" | "ACTIVE" | "VERIFIED"; sections: { address: { complete: boolean; percentage: number; missing: string[]; }; medium: { complete: boolean; percentage: number; missing: string[]; }; avatar: { complete: boolean; percentage: number; missing: string[]; }; profile: { complete: boolean; percentage: number; missing: string[]; }; contact: { complete: boolean; percentage: number; missing: string[]; }; }; nextActions: string[]; }, { completenessScore: number; badgeTier: "STARTER" | "BASIC" | "ACTIVE" | "VERIFIED"; sections: { address: { complete: boolean; percentage: number; missing: string[]; }; medium: { complete: boolean; percentage: number; missing: string[]; }; avatar: { complete: boolean; percentage: number; missing: string[]; }; profile: { complete: boolean; percentage: number; missing: string[]; }; contact: { complete: boolean; percentage: number; missing: string[]; }; }; nextActions: string[]; }>>; /** Callback when user clicks to complete profile */ onCompleteProfile: z.ZodOptional, z.ZodUnknown>>; /** Whether completeness data is loading */ isCompletenessLoading: z.ZodOptional; }, "strip", z.ZodTypeAny, { onBack: () => void; profile: { firstName: string; lastName: string; avatarUrl: string; address?: { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; } | undefined; status?: "active" | "inactive" | undefined; medium?: { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; } | undefined; birthDate?: string | undefined; contacts?: { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }[] | undefined; user?: { email: string; created_at?: string | null | undefined; } | undefined; created_at?: string | undefined; updated_at?: string | undefined; hierarchy?: string | undefined; }; onEditAvatar: (args_0: File) => void; isAdmin?: boolean | undefined; badgeTier?: "STARTER" | "BASIC" | "ACTIVE" | "VERIFIED" | undefined; onCompleteProfile?: ((...args: unknown[]) => unknown) | undefined; isPersonalProfile?: boolean | undefined; mediumStatus?: string | undefined; onNavigate?: ((args_0: string) => void) | undefined; handleRequestAccessAgain?: (() => void) | undefined; showMediumSection?: boolean | undefined; completenessData?: { completenessScore: number; badgeTier: "STARTER" | "BASIC" | "ACTIVE" | "VERIFIED"; sections: { address: { complete: boolean; percentage: number; missing: string[]; }; medium: { complete: boolean; percentage: number; missing: string[]; }; avatar: { complete: boolean; percentage: number; missing: string[]; }; profile: { complete: boolean; percentage: number; missing: string[]; }; contact: { complete: boolean; percentage: number; missing: string[]; }; }; nextActions: string[]; } | undefined; isCompletenessLoading?: boolean | undefined; }, { onBack: () => void; profile: { firstName: string; lastName: string; avatarUrl: string; address?: { number: string; country: string; street: string; neighborhood: string; city: string; state: string; zipCode: string; complement?: string | undefined; } | undefined; status?: "active" | "inactive" | undefined; medium?: { role?: { id: string; name: string; } | undefined; status?: "ACTIVE" | "WAITING_APPROVAL" | "INACTIVE" | "SUSPENDED" | "TRANSFERRED" | "DECEASED" | "RETIRED" | "ON_LEAVE" | "EXPELLED" | "INITIATING" | "VISITOR" | "REJECTED" | undefined; rank?: { id: string; name: string; level: number; } | undefined; terreiroId?: string | null | undefined; initiationDate?: string | undefined; initiation_date?: string | undefined; } | undefined; birthDate?: string | undefined; contacts?: { phone: string; id?: string | undefined; contact_person?: string | null | undefined; }[] | undefined; user?: { email: string; created_at?: string | null | undefined; } | undefined; created_at?: string | undefined; updated_at?: string | undefined; hierarchy?: string | undefined; }; onEditAvatar: (args_0: File) => void; isAdmin?: boolean | undefined; badgeTier?: "STARTER" | "BASIC" | "ACTIVE" | "VERIFIED" | undefined; onCompleteProfile?: ((...args: unknown[]) => unknown) | undefined; isPersonalProfile?: boolean | undefined; mediumStatus?: string | undefined; onNavigate?: ((args_0: string) => void) | undefined; handleRequestAccessAgain?: (() => void) | undefined; showMediumSection?: boolean | undefined; completenessData?: { completenessScore: number; badgeTier: "STARTER" | "BASIC" | "ACTIVE" | "VERIFIED"; sections: { address: { complete: boolean; percentage: number; missing: string[]; }; medium: { complete: boolean; percentage: number; missing: string[]; }; avatar: { complete: boolean; percentage: number; missing: string[]; }; profile: { complete: boolean; percentage: number; missing: string[]; }; contact: { complete: boolean; percentage: number; missing: string[]; }; }; nextActions: string[]; } | undefined; isCompletenessLoading?: boolean | undefined; }>; export type ProfileDetails = z.infer; export declare const ProfileSectionSchema: z.ZodObject<{ id: z.ZodString; Label: z.ZodString; summary: z.ZodString; }, "strip", z.ZodTypeAny, { id: string; summary: string; Label: string; }, { id: string; summary: string; Label: string; }>; export type ProfileSection = z.infer; export type ProfileDetailsPageProps = z.infer;