import { BaseEntity } from "./base.entity";
import { User } from "./user.entity";
import { Country } from "./country.entity";
import { State } from "./state.entity";
import { City } from "./city.entity";
export declare enum NatureOfWork {
    FULLTIME = "FULLTIME",
    PARTTIME = "PARTTIME",
    BOTH = "BOTH",
    HOURLY = "HOURLY",
    FREELANCE = "FREELANCE",
    FTE = "FTE"
}
export declare enum ModeOfWork {
    ONSITE = "ONSITE",
    REMOTE = "REMOTE",
    HYBRID = "HYBRID",
    BOTH = "BOTH"
}
export declare enum OnboardingStepEnum {
    SIGN_UP = "SIGN_UP",
    UPLOAD_RESUME = "UPLOAD_RESUME",
    PARSE_RESUME = "PARSE_RESUME",
    MCQ_ASSESSMENT_INITIATED = "MCQ_ASSESSMENT_INITIATED",
    MCQ_ASSESSMENT_COMPLETED = "MCQ_ASSESSMENT_COMPLETED",
    AI_ASSESSMENT_INITIATED = "AI_ASSESSMENT_INITIATED",
    AI_ASSESSMENT_COMPLETED = "AI_ASSESSMENT_COMPLETED",
    CODING_CHALLENGE = "CODING_CHALLENGE",
    PROFILE_COMPLETION = "PROFILE_COMPLETION"
}
export declare enum McqStatusEnum {
    NOT_ATTEMPTED = "NOT_ATTEMPTED",
    PASSED = "PASSED",
    FAILED = "FAILED"
}
export declare enum AiAssessmentStatusEnum {
    NOT_ATTEMPTED = "NOT_ATTEMPTED",
    COMPELETED = "COMPELETED",
    PASSED = "PASSED",
    FAILED = "FAILED",
    SKIPPED = "SKIPPED",
    EXITED = "EXITED"
}
export declare class FreelancerProfile extends BaseEntity {
    userId: number;
    user: User;
    countryId: number;
    country: Country;
    stateId: number;
    state: State;
    cityId: number;
    city: City;
    talentId: string;
    resumeUrl: string;
    resumeUploadedOn: Date;
    resumeParsedOn: Date;
    resumeEligibility: string;
    resumeScore: string;
    mcqStatus: McqStatusEnum;
    mcqScore: number;
    mcqInitiatedOn: Date;
    mcqCompletedOn: Date;
    isEligibleForAiAssessment: boolean;
    aiAssessmentStatus: AiAssessmentStatusEnum;
    isDeveloper: boolean;
    natureOfWork: NatureOfWork;
    numberOfHours: number;
    currency: string;
    expectedHourlyCompensation: number;
    expectedAnnualCompensation: number;
    modeOfWork: ModeOfWork;
    availabilityToJoin: string;
    isImmediateJoiner: boolean;
    linkedinProfileLink: string;
    kaggleProfileLink: string;
    githubProfileLink: string;
    stackOverflowProfileLink: string;
    portfolioLink: string;
    onboardingStepCompleted: OnboardingStepEnum;
    designation: string;
    experience: string;
    migratedExperience: string;
    address: string;
    addressLine: string;
    postalCode: string;
    about: string;
    profileCompletedPercentage: Record<string, number>;
    profileQuestionCompletedOn: Date;
    profileCompletedOn: Date;
    originalDocumentUrl: string;
    isServiceAgreementSigned: boolean;
    serviceAgreementUrl: string;
    serviceAggrementSignedOn: Date;
    isExpertshubVerified: boolean;
    isFollowedOnLinkedIn: boolean;
    signaturePositions: any;
    rating: number;
    signatureUrl: string;
}
