import { Event } from "survey-core"; export type SummaryFilter = { field: string; type: string; value: any; }; export type GetDataUsingCallbackFn = (params: { visualizer: any; filter?: Array; callback?: (response: { data: Array; error?: any; }) => void; }) => void; export type GetDataUsingPromiseFn = (params: { visualizer: any; filter?: Array; }) => Promise>; export type GetDataFn = GetDataUsingCallbackFn | GetDataUsingPromiseFn; export declare class DataProvider { private _data; static seriesMarkerKey: string; private _filteredData; protected filterValues: { [index: string]: any; }; protected systemFilterValues: { [index: string]: any; }; private convertFilterValuesToSummaryFilters; constructor(_data?: Array | GetDataFn); get data(): Array; set data(data: Array | GetDataFn); get dataFn(): GetDataFn; get filteredData(): Array; private setFilterCore; private resetFilterCore; /** * Sets filter by question name and value. * @since 3.0.0 */ setSystemFilter(questionName: string, selectedValue: any): void; /** * Resets filter. * @since 3.0.0 */ resetSystemFilter(): void; /** * Sets filter by question name and value. */ setFilter(questionName: string, selectedValue: any): void; /** * Resets filter. */ resetFilter(): void; /** * Fires when data has been changed. * @since 2.3.11 */ onFilterChanged: Event<(sender: DataProvider, options: any) => any, DataProvider, any>; raiseFilterChanged(questionName?: string, selectedValue?: any): void; /** * Fires when data has been changed. */ onDataChanged: Event<(sender: DataProvider, options: any) => any, DataProvider, any>; raiseDataChanged(questionName?: string): void; getAllFilters(): SummaryFilter[]; getFilters(): SummaryFilter[]; fixDropdownData(dataNames: string[]): void; getCount(): Promise; getFilterValues(): {}; }