/* eslint-disable @typescript-eslint/no-explicit-any */ import { DataWidgetType } from "./Components/Setting/Setting"; import { FilterTarget } from "./data/advancedSearch"; import { FilterTarget as FilterTargetQuick } from "./data/quickFilter"; import { ChooserColumn } from "./data/setting"; export type ActionProps = { onExport?: ( callBack: ((args: any) => void) | null, exportViewModel: any ) => void; onExportDelete: (callBack: ((args: any) => void) | null, id: string) => void; onExportList: (callBack: ((args: any) => void) | null) => void; onExportDownload: ( callBack: ((args: any) => void) | null, id: string ) => void; onModelUpdate: ( callBack: ((args: any) => void) | null, fieldName: string, value: any ) => void; loadTemplateSupportiveData?: ( callBack: (args: any) => void, supportiveKeys: any ) => Promise; onScreenDataLoad?: (callBack: (response: any) => void) => void; getUniqueViewId?: (callBack: (response: string) => void) => void; }; export type ToolbarOptions = { globalSearch: GlobalSearch; advancedSearch: AdvancedSearch; quickFilter: QuickFilter; groupBy: GroupBy; reset: Reset; setting: Setting; userView: UserView; export: Export; }; type VisibleProps = { visible: boolean; disabled: boolean }; type GlobalSearch = VisibleProps & { enableCustomView: boolean }; type AdvancedSearch = VisibleProps & { filterableFields: FilterTarget[]; enableCustomView: boolean }; type QuickFilter = VisibleProps & { filterRows: FilterTargetQuick[]; enableCustomView: boolean }; type GroupBy = VisibleProps & { groupableFields: { label: string; value: string }[]; enableCustomView: boolean; }; type Reset = VisibleProps; type Setting = VisibleProps & { disableColumnChooser: boolean; disabledDisplayWidgetType: boolean; activeDataWidgetType: DataWidgetType; columns: ChooserColumn[]; enableCustomView: boolean; }; type UserView = VisibleProps & { enableDefaultSaveInSession: boolean }; export type ExportDataScope = { label: string; type: string; entity: string; }; type Export = VisibleProps & { exportTypes?: string[]; dataScopes?: ExportDataScope[]; }; export enum ValueLoadType { "SELF" = "SELF", "API" = "API", "ADAPTER" = "ADAPTER", "STATE" = "STATE", }