import type { AgDataSourceCallbackParams, AgDataSourceRequestSource } from 'ag-charts-types'; import type { EventsHub } from '../../core/eventsHub'; import type { AnimationManager } from '../interaction/animationManager'; type DataSourceCallback = (params: AgDataSourceCallbackParams) => Promise; export interface DataServiceRestoredData { params: AgDataSourceCallbackParams; data: unknown; } export declare class DataService { private readonly eventsHub; private readonly caller; private readonly animationManager; dispatchOnlyLatest: boolean; dispatchThrottle: number; requestThrottle: number; private dataSourceCallback?; private isLoadingInitialData; private isLoadingData; private isForcedLoadingData; private latestRequest?; private freshRequests; private requestCounter; private pendingData; private lastDispatchedData; private readonly debug; private throttledFetch; private throttledDispatch; private _secondaryLoaders; constructor(eventsHub: EventsHub, caller: { readonly context?: unknown; }, animationManager: AnimationManager); updateCallback(dataSourceCallback: DataSourceCallback): void; clearCallback(): void; load(params: AgDataSourceCallbackParams, requestId?: number): void; registerSecondaryLoader(source: AgDataSourceRequestSource, triggers: AgDataSourceRequestSource[], callback: (data: unknown[]) => void): () => void; isLazy(): boolean; isLoading(): boolean; setForcedLoading(forcedLoading: boolean | undefined): void; getData(): Promise; restoreData(data: DataServiceRestoredData): void; private createThrottledFetch; private createThrottledDispatch; private dispatch; private fetch; private performFetch; } export {};