interface FormFilter { page: number; pageSize: number; keyword: string; type: string; searchType?: string; posType: string; posLevel: string; retireYear: string | null; rangeYear: { min: number; max: number }; isShowRetire: boolean | null; isProbation: boolean | null; isAll?: boolean; nodeId?: string | null; node?: string | null | number; retireType?: null | string; dateAppoint?: string; } interface FormAddPerson { birthDate: Date | null; rank: string; prefix: string; firstName: string; lastName: string; citizenId: string; position: string; posTypeId: string; posLevelId: string; } interface MyObjectRef { prefix: object | null; firstName: object | null; lastName: object | null; citizenId: object | null; position: object | null; posTypeId: object | null; posLevelId: object | null; [key: string]: any; } interface DataNodeData { name: string; nodeId: string | null | undefined; node: string | null | undefined | number; } interface QueryParams { page: number; pageSize: number; isProbation?: boolean; isRetire?: boolean; type?: string; node?: number | string | null | undefined; nodeId?: string; isAll?: boolean; retireType?: string | null; dateAppoint?: string; sortBy?: string; sort?: string; } interface FormChangeName { profileId: string; prefixId: string | null | undefined; prefix: string | null | undefined; rank: string | null | undefined; firstName: string | null | undefined; lastName: string | null | undefined; status: string | null | undefined; documentId: string | null | undefined; } interface FormDataIDP { topic: string; developmentProjects: string[]; reasonDevelopment70: string; reasonDevelopment20: string; reasonDevelopment10: string; developmentTarget: string; developmentResults: string; developmentReport: string; status: string; reason: string; createdFullName?: string; createdAt?: Date | null; } interface RangeAge { min: number; max: number; } export type { FormFilter, FormAddPerson, MyObjectRef, DataNodeData, QueryParams, FormChangeName, FormDataIDP, RangeAge, };