import { VariableCommunicator } from '../../communication';
import { HistoryDataStore, VariableStore } from '../../config';
import { HistoricalCurveModel } from '../../model/historical-curve/historical-curve.model';
import { PermissionChecker, SystemTextLibraryService, LanguageService } from '../../service';
import { ConditionalDisplayElement } from '../base/conditional-display-element';
import { Injector } from '@angular/core';
import { GuiContext } from '../../gui/gui-context';
export declare class HistoricalCurveElement extends ConditionalDisplayElement {
    private readonly historyDataStore;
    private readonly systemTextLibraryService?;
    private readonly languageService?;
    private readonly guiContext?;
    readonly model: HistoricalCurveModel;
    private readonly logger;
    private readonly localization;
    private readonly timePeriods;
    private languageChangeSubscription?;
    private readonly displayOption;
    /**
     * 当前时间段的开始时间
     */
    private startTime;
    /**
     * 当前时间段的结束时间
     */
    private endTime;
    /**
     * 当前数据的开始时间(用于切换页)
     */
    private currentStartTime;
    /**
     * 当前数据的结束时间(用于切换页)
     */
    private currentEndTime;
    private currentTimePeriod;
    private refreshIntervalId;
    private elementStatus;
    private chartElement;
    private isMobileMode;
    private data;
    private timer;
    private resizeEventListener;
    private isAndroid;
    private needResize;
    constructor(element: HTMLElement, injector: Injector, permissionChecker: PermissionChecker, variableCommunicator: VariableCommunicator, variableStore: VariableStore, historyDataStore: HistoryDataStore, signalRAppId: string, systemTextLibraryService?: SystemTextLibraryService, languageService?: LanguageService, guiContext?: GuiContext);
    dispose(): void;
    private initKeyboardListener;
    private setNeedResize;
    /**
     * 订阅语种变化事件
     */
    private subscribeLanguageChange;
    /**
     * 更新语种相关的文案（时间段选择器）
     */
    private updateLanguageTexts;
    /**
     * 获取当前语种的 culture 代码
     */
    private getCurrentCulture;
    private getValidTimePeriods;
    /**
     * 获取时间段文案（从系统文本库获取多语种翻译）
     */
    private getTimePeriodText;
    private updateTimeRange;
    private updateQueryTimeRange;
    private reRenderElement;
    private renderElement;
    private handleQueryResult;
    setupTooltipAutoHide(chart: any): void;
    private renderChart;
    /**
     * 【新格式】多条目独立数据的曲线渲染
     * 每个条目独立保持自己的时间戳，不会出现时间戳混乱的问题
     */
    private renderChartWithMultiItems;
    initPoint(): void;
    private getLineChart;
    private getMultiBarWithFocusChart;
    private renderCommonProperty;
    private renderOperationArea;
    private timeFormat;
    private loadFirstPage;
    private loadNextPage;
    private loadPreviousPage;
    private loadLastPage;
    initElementStatus(): void;
    private updateElementStatus;
    private setStatusAsUnbound;
    private setStatusAsLoading;
    private setStatusAsLoadFailed;
    private renderStatus;
    private clearStatus;
}
