import { DataResource, Insight, InsightView } from '@csnext/cs-data';
import { MapDatasource } from './map-datasource';
import { GeojsonPlusLayer } from '../layers/geojson-plus-layer';
export declare class StatsDatasource extends MapDatasource {
    static TIME_TOPIC: string;
    static FOCUS_TIME_CHANGED: string;
    id: string;
    activeInsight?: Insight;
    activeInsightView?: InsightView;
    mainLayer?: GeojsonPlusLayer;
    activateInsight(insight: string | Insight, view?: number): Promise<void>;
    disableInsight(): void;
    downloadCsv(layer: GeojsonPlusLayer): Promise<void>;
    downloadFile(layer: GeojsonPlusLayer): void;
    previousDate(): void;
    nextDate(): void;
    setFocusDate(date: number): void;
    updateDateProperties(date: number): void;
    openSourceDetails(source: DataResource | string): any;
    downloadSource(source: DataResource): void;
    storeState(): void;
    restoreState(): Promise<void>;
    activateInsightView(view: InsightView, insight: Insight): Promise<void>;
    addResourceToInsightView(source: string): Promise<void>;
    createLayers(): Promise<void>;
    activateResources(resources: string[]): Promise<void>;
    activateLayerResource(resourceName: string): Promise<DataResource>;
    private forceFileDownload;
}
