import type { ListFrontEndInterface } from './CommonType'

export interface StaffDesignationFormDataInterface {
    clientCategoryName: string
    clientCategoryId: number | null
    departmentName: string
    departmentId: number | null
    description: string
    activeStatus: string
    designationName: string
    designationId: string
}

export interface StaffDesignationPayloadInterface {
    data: StaffDesignationFormDataInterface[]
    noOfRecords: number
}

export interface StaffDesignationListInterface {
    staffDesignationList: StaffDesignationListDataTypeInterface[]
    staffDesignationListCount: number
}

export interface StaffDesignationListDataTypeInterface
    extends StaffDesignationFormDataInterface {
    key: React.Key
}

export interface StaffDesignationFormStateInterface {
    categoryDropDownList: ListFrontEndInterface[]
    departmentDropDownList: ListFrontEndInterface[]
}

export interface StaffDesignationFormInterface
    extends StaffDesignationFormStateInterface {
    onSave: (
        data: StaffDesignationFormDataInterface,
        callBack: CallableFunction
    ) => void
    editData: StaffDesignationFormDataInterface
    isLoadingModal: boolean
}

export interface StaffDesignationExpandViewInterface {
    staffDesignationData: StaffDesignationListDataTypeInterface
}
