import FilterProps from "./FilterProps"; import LoadDataParams from "./LoadDataParams"; import SorterProps from "./SorterProps"; /** * The Sencha Grid data store properties. */ export interface DataStoreProps { groupers?: any[]; /** * */ autoLoad?: boolean; /** * */ autoSync?: boolean; /** * TODO resolve any to interface */ countProperty?: any; /** * */ data?: any[]; /** * */ fields?: any; /** * Array of Ext.util.Filter for this store. * * TODO do not add the filterFn type to this property. */ filters?: FilterProps[]; /** * * */ remoteSort?: boolean; /** * Grouping of the Grid */ groupField?: string; /** * TODO resolve any to type, i.e.: loadData(param: type): any[]; */ loadData?(params?: LoadDataParams): Promise; /** * TODO resolve any to type, i.e.: loadData(param: type): any[]; */ onLoad?: any; /** * TODO resolve any to type, i.e.: loadData(param: type): any[]; */ onAdd?: any; /** * TODO resolve any to type, i.e.: loadData(param: type): any[]; */ onRemove?: any; /** * TODO resolve any to type, i.e.: loadData(param: type): any[]; */ onDataChanged?: any; /** * */ pageSize?: number | string; /** * TODO rename to dataProvider? */ proxy?: any; /** * TODO resolve any to type/interface */ rootProperty?: any; /** * Sort the grid by property name */ sorters?: string | SorterProps | (string | SorterProps)[]; /** * */ type?: string; remoteFilter?: boolean; } export default DataStoreProps;