//ข้อมูลประวัติแก้ไข
interface RequestItemsPublishHistoryObject {
  id: string;
  items: RequestItemsObject[];
  publishedDate: string;
}

//ข้อมูล
interface RequestItemsObject {
  id: string;
  positionMasterId: string; //ประเภท
  positionType: string; //ประเภท
  positionLine: string; //สายงาน
  positionPath: string; //ตำแหน่งในสายงาน
  positionPathSide: string; //ด้านของสายงาน
  positionExecutive: string; //ตำแหน่งบริหาร
  positionExecutiveSide: string; //ด้านบริหาร
  positionLevel: any; //ระดับ array text
  positionStatus: string; //สถานภาพของตำแหน่ง
  positionTypeId: string;
  positionLineId: string;
  positionPathId: string;
  positionPathSideId: string;
  positionExecutiveId: string;
  positionExecutiveSideId: string;
  positionStatusId: string; //สถานภาพของตำแหน่ง ไม่แน่ใจ DB
  qualification: string; //เหตุผล
  positionCondition: string; //เงื่อนไขตำแหน่ง
  positionMasterUserNote: string; //หมายเหตุ
  positionLevelId: any; //ระดับ array id
  isDirector: boolean; //หัวหน้า
  isActive: boolean;
  isPublished?: boolean;
  lastUpdateFullName?: String;
  lastUpdatedAt?: Date;
}

//columns
interface Columns {
  [index: number]: {
    name: String;
    align: String;
    label: String;
    sortable: Boolean;
    field: String;
    headerStyle: String;
    style: String;
  };
}

interface RequestReport2 {
  organizationShortNameId: string;
  organizationOrganizationId: string;
  positionNumId: string;
  positionTypeId: string;
  positionExecutiveId: string;
  positionExecutiveSideId: string;
  positionPathId: string;
  positionPathSideId: string;
  positionLevelId: string;
  status: string | null;
}

export type {
  RequestItemsObject,
  RequestItemsPublishHistoryObject,
  Columns,
  RequestReport2,
};
