import { type ListFrontEndInterface } from './CommonType'

export interface ClientRequestDetail {
    clientRequestId: number
    description: string
    clientName: string
    clientNo: string
    serviceId: number
    serviceName: string
    attachements: string[]
}

export interface ClientRequestApproval {
    clientRequestId: number
    companyType: number
    referenceId: number
    serviceId: number
    serviceName: string
    companyName: string
    description: string
    requestDate: string
}

export interface MobileRequestTableInterface extends ClientRequestApproval {
    key: React.Key
}
export interface MobileReqestState {
    mobileReqestList: ClientRequestApproval[]
    mobileReqestListCount: number
}

export interface MobileReqestPayloadInterface {
    data: ClientRequestApproval[]
    noOfRecords: number
}
export interface MobileReqestExpandView {
    expandData: MobileRequestTableInterface
}

export interface MobileCreateTaskInterface
    extends MobileCreateTaskStateInterface {
    onClose: () => void
    clientRequestId: number
    companyType: number
    referenceId: number
}
export interface MobileCreateTaskStateInterface {
    serviceDropDownList: ListFrontEndInterface[]
    userList: ListFrontEndInterface[]
    priorityDropDownList: ListFrontEndInterface[]
}

export interface TaskInterface {
    taskId: number
    taskNo: string
    taskName: string
    priorityId: number
    sortOrder: number
    taskType: number
    businessType: number
    referenceId: number
    serviceId: number
    serviceReferenceId: number
    assignedBy: number
    assignedTo: number
    fromDate: string
    toDate: string
    statusId: number
    notifyToStatusChange: number
    description: string
    clientName: string
    recurringFrequency: number
    recurringFrequencyType: number
    recurringFrequencyPeriodId: number
    recurringEnds: number
    recurringOccurrence: number
    recurringEndsOn: string
    isRepeatOnSun: number
    isRepeatOnMon: number
    isRepeatOnTue: number
    isRepeatOnWed: number
    isRepeatOnThu: number
    isRepeatOnFri: number
    isRepeatOnSat: number
    projectTierId: number
}

export interface TaskAttachment {
    taskAttachmentId: number
    taskId: number
    attachmentFile: string
    description: string
}
