import { EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { I18nInterface, I18nService } from 'ng-devui/i18n';
import { Subscription } from 'rxjs';
import { GanttMilestone, GanttScaleDateInfo, GanttScaleUnit } from '../gantt.model';
import { GanttService } from '../gantt.service';
import * as i0 from "@angular/core";
export declare class GanttScaleComponent implements OnInit, OnChanges, OnDestroy {
    private ganttService;
    private i18n;
    scaleData: GanttScaleDateInfo[];
    viewScaleRange: number[];
    viewSCaleData: GanttScaleDateInfo[];
    ganttBarStatusHandler: Subscription;
    ganttSacleConfigHandler: Subscription;
    highlight: boolean;
    highlightStartText: string;
    highlightEndText: string;
    highlightMinWidth: number;
    SCALE_START_LABLE_OFFSET: number;
    scaleWidth: {
        day: number;
        week: number;
        month: number;
    };
    unit: GanttScaleUnit;
    height: number;
    startDate: Date;
    endDate: Date;
    ganttBarContainerElement: HTMLElement;
    ganttScaleContainerOffsetLeft: number;
    milestoneList: GanttMilestone[];
    scrollElement: HTMLElement;
    showDaySplitLine: boolean;
    addMilestoneEvent: EventEmitter<GanttScaleDateInfo>;
    private scrollHandler;
    i18nText: I18nInterface['gantt'];
    i18nLocale: I18nInterface['locale'];
    i18nCommonText: I18nInterface['common'];
    i18nSubscription: Subscription;
    constructor(ganttService: GanttService, i18n: I18nService);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    registerScrollEvent(): void;
    getViewScaleData(): void;
    private generateScaleData;
    private getNextDay;
    private generateDateInfo;
    trackByFn(index: any, item: any): any;
    private ganttBarStatusChange;
    prefixZero(num: number): string;
    addMilestone(info: GanttScaleDateInfo): void;
    clearDaySplitLine(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<GanttScaleComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<GanttScaleComponent, "d-gantt-scale", never, { "unit": { "alias": "unit"; "required": false; }; "height": { "alias": "height"; "required": false; }; "startDate": { "alias": "startDate"; "required": false; }; "endDate": { "alias": "endDate"; "required": false; }; "ganttBarContainerElement": { "alias": "ganttBarContainerElement"; "required": false; }; "ganttScaleContainerOffsetLeft": { "alias": "ganttScaleContainerOffsetLeft"; "required": false; }; "milestoneList": { "alias": "milestoneList"; "required": false; }; "scrollElement": { "alias": "scrollElement"; "required": false; }; "showDaySplitLine": { "alias": "showDaySplitLine"; "required": false; }; }, { "addMilestoneEvent": "addMilestoneEvent"; }, never, never, false, never>;
}
