import { UserStatus } from '@humand-packages/common';
import { TimeTrackingEmployeeStatus } from '../../business/types/status';
import { Incidence } from '../../infrastructure/constants/incidences';
import { TimeTrackingAppGrant } from '../constants/timeTrackingGrants';
import { TimeTrackingDaySummaryExtended } from './daySummaryExtended';

export class EmployeeSummaryWithSiteData {
    public grants?: TimeTrackingAppGrant[];

    constructor(
        public readonly userId: number,
        public readonly employeeInternalId: string,
        public readonly fullName: string,
        public readonly profilePicture: string | null,
        public readonly workedHours: number,
        public readonly estimatedHours: number,
        public readonly differenceHours: number,
        public readonly incidencesTagsPresent: Incidence[],
        public readonly status: TimeTrackingEmployeeStatus,
        public readonly daySummaries: TimeTrackingDaySummaryExtended[],
        public readonly extraHours: number,
        public readonly currentDate: string,
        public readonly userAccountStatus: UserStatus,
    ) {}
}
