import { BaseEntity } from "./base.entity";
import { Job } from "./job.entity";
import { User } from "./user.entity";
import { TaskDeliverable } from "./task-deliverable.entity";
import { TaskResource } from "./task-resource.entity";
import { TaskChecklistItem } from "./task-checklist-item.entity";
import { TaskSubtask } from "./task-subtask.entity";
import { Timesheet } from "./timesheets.entity";
import { TaskLogTime } from "./task-logtime.entity";
import { TaskQuery } from "./task-query.entity";
export declare enum TaskPriorityEnum {
    LOW = "LOW",
    MEDIUM = "MEDIUM",
    HIGH = "HIGH"
}
export declare enum TaskStatusEnum {
    DRAFTED = "DRAFTED",
    SCHEDULED = "SCHEDULED",
    IN_PROGRESS = "IN_PROGRESS",
    SUBMITTED = "SUBMITTED",
    COMPLETED = "COMPLETED",
    CANCELLED = "CANCELLED"
}
export declare class Task extends BaseEntity {
    taskUniqueId: string;
    jobId: number;
    job: Job;
    clientId: number;
    client: User;
    freelancerId: number;
    freelancer: User;
    taskName: string;
    status: TaskStatusEnum;
    priority: TaskPriorityEnum;
    description: string;
    dueDate: Date;
    createdOn: Date;
    estimateHours: number;
    clientRemarks: string;
    freelancerWorkNote: string;
    deliverables: TaskDeliverable[];
    resources: TaskResource[];
    checklistItems: TaskChecklistItem[];
    subtasks: TaskSubtask[];
    timesheets: Timesheet[];
    taskLogTimes: TaskLogTime[];
    taskQueries: TaskQuery[];
}
