import { PrismaService } from '../common/prisma/prisma.service';
import { StorageService } from '../common/storage/storage.service';
import { CertificationDto, EducationDto, ExperienceDto, JobStepDto, LanguageDto, LocationDto, PersonalStepDto, PrivacyDto, ProfessionalStepDto, SetupDto, SkillsDto, SocialStepDto } from './dto/profile.dto';
export declare class ProfilesService {
    private readonly prisma;
    private readonly storage;
    constructor(prisma: PrismaService, storage: StorageService);
    getMine(userId: string): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    exportMine(userId: string): Promise<{
        consents: {
            type: string;
            version: string;
            granted: boolean;
            createdAt: Date;
        }[];
        discoveryCell: {
            note: string;
            geohash: string;
            latitude: number | null;
            longitude: number | null;
        } | null;
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    savePersonal(userId: string, dto: PersonalStepDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    saveProfessional(userId: string, dto: ProfessionalStepDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    saveJob(userId: string, dto: JobStepDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    orbitReach(userId: string, cityInput: string, radiusKm: number): Promise<{
        city: string;
        radiusKm: number;
        people: number;
        roles: number;
        joinedThisWeek: number;
        recentNames: string[];
        suggestions: string[];
    }>;
    skillsInText(text: string, known: string[]): string[];
    scanSkills(text: string): Promise<{
        skills: string[];
    }>;
    saveSetup(userId: string, dto: SetupDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    saveSocial(userId: string, dto: SocialStepDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    replaceSkills(userId: string, skills: SkillsDto['skills']): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    suggestExperienceValues(field: string, q?: string): Promise<{
        items: {
            value: string;
            count: number;
        }[];
    }>;
    addExperience(userId: string, dto: ExperienceDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    updateExperience(userId: string, id: string, dto: ExperienceDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    private experiencePayload;
    private canonicalExperienceLabel;
    deleteExperience(userId: string, id: string): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    addEducation(userId: string, dto: EducationDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    deleteEducation(userId: string, id: string): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    addCertification(userId: string, dto: CertificationDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    deleteCertification(userId: string, id: string): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    addLanguage(userId: string, dto: LanguageDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    deleteLanguage(userId: string, id: string): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    updatePrivacy(userId: string, dto: PrivacyDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    updateLocation(userId: string, dto: LocationDto): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    private notifyNearbyAboutMember;
    savePhoto(userId: string, file: {
        mimetype: string;
        buffer: Buffer;
        size: number;
    }): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    saveWallpaper(userId: string, file: {
        mimetype: string;
        buffer: Buffer;
        size: number;
    }): Promise<{
        id: string;
        email: string;
        status: string;
        emailVerified: boolean;
        badgeVerified: boolean;
        isDemo: boolean;
        createdAt: Date;
        profileCompletion: number;
        socialEligible: boolean;
        profile: {
            firstName: string;
            lastName: string;
            displayName: string;
            bio: string | null;
            gender: import(".prisma/client").$Enums.Gender | null;
            dateOfBirth: Date | null;
            ageConfirmed18: boolean;
            occupation: string | null;
            employmentStatus: string | null;
            yearsExperience: number | null;
            industries: {};
            desiredRoles: {};
            programmingLanguages: {};
            onboardingStep: string;
            onboardingComplete: boolean;
            hasPhoto: boolean;
        } | null;
        preferences: Record<string, unknown> | null;
        skills: {
            name: string;
            level: string | null;
        }[];
        experiences: unknown[];
        education: unknown[];
        certifications: unknown[];
        languages: unknown[];
        location: {
            city: string;
            region: string | null;
            postcode: string | null;
            country: string;
            discoveryEnabled: boolean;
            precisionMeters: number;
            expiresAt: Date | null;
            approximate: boolean;
        } | null;
        privacy: Record<string, unknown> | null;
    }>;
    readWallpaper(userId: string): Promise<{
        body: Buffer<ArrayBufferLike>;
        mimeType: string;
    }>;
    readPhoto(userId: string): Promise<{
        body: Buffer<ArrayBufferLike>;
        mimeType: string;
    }>;
    deleteAccount(userId: string): Promise<void>;
    private load;
    private owned;
    private deleteStored;
    private assertPostcode;
}
