UNPKG

@experts_hub/shared

Version:

Shared DTOs, interfaces, and utilities for experts hub applications

60 lines (59 loc) 1.75 kB
import { BaseEntity } from "./base.entity"; import { User } from "./user.entity"; import { Interview } from "./interview.entity"; import { AiInterviewRescheduleRequest } from "./ai-interview-reschedule-request.entity"; export declare enum AiInterviewStatusEnum { NOT_ATTEMPTED = "NOT_ATTEMPTED", ATTEMPTED = "ATTEMPTED", PENDING = "PENDING", ACTIVE = "ACTIVE", IN_PROGRESS = "IN_PROGRESS", IN_COMPLETE = "IN_COMPLETE", COMPELETED = "COMPELETED", PASSED = "PASSED", FAILED = "FAILED", EXPIRED = "EXPIRED", POSTPONED = "POSTPONED", RESCHEDULED = "RESCHEDULED", EXITED = "EXITED" } export declare enum ResultStatusEnum { NOT_EVALUATED = "NOT_EVALUATED", EVALUATING = "EVALUATING", PASSED = "PASSED", FAILED = "FAILED" } export declare enum RecordingStatusEnum { PROCESSING = "PROCESSING", COMPLETED = "COMPLETED", FAILED = "FAILED" } export declare class AiInterview extends BaseEntity { aiInterviewUniqueId: string; candidateId: number; candidate: User; interviwerId: number; interviwer: User; interviewId: number; interview: Interview; inviteId: number; candidateInterviewId: string; candidateInterviewLink: string; hasAttempted: boolean; attemptedAt: Date; completedAt: Date; exitedAt: Date; expiredAt: Date; status: AiInterviewStatusEnum; resultStatus: ResultStatusEnum; recordingStatus: RecordingStatusEnum; isRescheduled: boolean; rescheduledAt: Date; recordingLink: string; iframeResponse: string; interviewInsight: string; isF2fInterviewScheduled: boolean; isContractSent: boolean; attempts: number; rescheduleRequests: AiInterviewRescheduleRequest[]; }