@experts_hub/shared
Version:
Shared DTOs, interfaces, and utilities for experts hub applications
116 lines (115 loc) • 4.4 kB
TypeScript
import { BaseEntity } from "./base.entity";
import { RefreshToken } from "./refresh-token.entity";
import { SenseloafLog } from "./senseloaf-log.entity";
import { Otp } from "./otp.entity";
import { FreelancerProfile } from "./freelancer-profile.entity";
import { CompanyProfile } from "./company-profile.entity";
import { Job } from "./job.entity";
import { Interview } from "./interview.entity";
import { BankDetail } from "./bank-details.entity";
import { SystemPreference } from "./system-preference.entity";
import { Rating } from "./rating.entity";
import { JobApplication } from "./job-application.entity";
import { FreelancerExperience } from "./freelancer-experience.entity";
import { FreelancerEducation } from "./freelancer-education.entity";
import { FreelancerProject } from "./freelancer-project.entity";
import { FreelancerCaseStudy } from "./freelancer-casestudy.entity";
import { FreelancerSkill } from "./freelancer-skill.entity";
import { FreelancerTool } from "./freelancer-tool.entity";
import { FreelancerFramework } from "./freelancer-framework.entity";
import { FreelancerAssessment } from "./freelancer-assessment.entity";
import { FreelancerDeclaration } from "./freelancer-declaration.entity";
import { CompanyMemberRole } from "./company-members-roles.entity";
import { AssessmentAnswer } from "./assessment-answer.entity";
import { CompanySkill } from "./company-skill.entity";
import { AdminUserRole } from "./admin-user-role.entity";
import { FreelancerResume } from "./freelancer-resume.entity";
import { AiInterview } from "./ai-interview.entity";
import { F2FInterview } from "./f2f-interview.entity";
import { F2fInterviewRescheduleRequest } from "./f2f-interview-reschedule-request.entity";
import { Contract } from "./contract.entity";
import { StripeWallet } from "./stripe-wallet.entity";
export declare enum AccountType {
ADMIN = "ADMIN",
SUB_ADMIN = "SUB_ADMIN",
CLIENT = "CLIENT",
FREELANCER = "FREELANCER",
CLIENT_EMPLOYEE = "CLIENT_EMPLOYEE"
}
export declare enum AccountStatus {
INACTIVE = "INACTIVE",
ACTIVE = "ACTIVE",
SUSPENDED = "SUSPENDED",
BLOCKED = "BLOCKED"
}
export declare enum Provider {
LINKEDIN = "LINKEDIN",
GOOGLE = "GOOGLE",
GITLABS = "GITLABS"
}
export declare class User extends BaseEntity {
uniqueId: string;
parentId: number;
parent: User;
children: User[];
username: string;
firstName: string;
lastName: string;
dateOfBirth: Date;
gender: string;
profilePictureUrl: string;
email: string;
mobileCode: string;
mobile: string;
password: string;
accountType: AccountType;
accountStatus: AccountStatus;
isEmailVerified: boolean;
isMobileVerified: boolean;
isSocial: boolean;
lastLoginAt: Date;
lastLoginIp: string;
resetToken: string | null;
resetTokenExpireAt: Date | null;
setPasswordToken: string | null;
refreshTokens: RefreshToken[];
provider: Provider;
providerToken: string;
linkedInId: string;
googleId: string;
gitLabsId: string;
onBoardedBy: string;
otps: Otp[];
senseloafLogs: SenseloafLog[];
companyProfile: CompanyProfile;
companySkills: CompanySkill[];
companyMemberRoles: CompanyMemberRole[];
companyAiInterview: AiInterview[];
clientF2FInterviews: F2FInterview[];
freelancerProfile: FreelancerProfile;
freelancerResume: FreelancerResume;
assessments: FreelancerAssessment[];
assessmentAnswers: AssessmentAnswer[];
freelancerSkills: FreelancerSkill[];
freelancerExperience: FreelancerExperience[];
freelancerEducation: FreelancerEducation[];
freelancerProject: FreelancerProject[];
freelancerCaseStudy: FreelancerCaseStudy[];
freelancerTool: FreelancerTool[];
freelancerFramework: FreelancerFramework[];
freelancerDeclaration: FreelancerDeclaration;
freelancerAiInterview: AiInterview[];
freelancerF2FInterviews: F2FInterview[];
freelancerF2FInterviewRescheduleRequests: F2fInterviewRescheduleRequest[];
jobs: Job[];
jobApplications: JobApplication[];
interviews: Interview[];
bankDetail: BankDetail[];
systemPreference: SystemPreference[];
givenRatings: Rating[];
receivedRatings: Rating[];
adminUserRoles: AdminUserRole[];
clientContracts: Contract[];
freelancerContracts: Contract[];
stripeWallet: StripeWallet;
}