import { OptionalNullable } from '@humand-packages/common';
import { User } from '../../../../users/business/models/user';

export class TimeTrackingCategorizedHourApprovalStepPotentialApproverForCreation {
    constructor(props: OptionalNullable<TimeTrackingCategorizedHourApprovalStepPotentialApproverForCreation>) {
        this.approvalStepId = props.approvalStepId;
        this.categorizedHourId = props.categorizedHourId;
        this.userId = props.userId;
    }

    approvalStepId: string;
    categorizedHourId: string;
    userId: number;
}

export class TimeTrackingCategorizedHourApprovalStepPotentialApprover extends TimeTrackingCategorizedHourApprovalStepPotentialApproverForCreation {
    constructor(props: OptionalNullable<TimeTrackingCategorizedHourApprovalStepPotentialApprover>) {
        super(props);
        this.id = props.id;
        this.createdAt = props.createdAt;
        this.updatedAt = props.updatedAt;
        this.deletedAt = props.deletedAt ?? null;
    }

    id: string;
    createdAt: Date;
    updatedAt: Date;
    deletedAt: Date | null;

    user?: User | null;
}
