import { ElementRef, QueryList, Renderer2, TemplateRef } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { addMonths, addYears, subMonths, subYears } from 'date-fns';
import { NGXLogger } from 'ngx-logger';
import { UI } from '../../core/enums/ui';
import { Width } from '../../core/enums/width';
import { BreakpointService } from '../../layout/responsive/breakpoint.service';
import { GanttTypes } from './enums';
import { GanttLineComponent } from './gantt-line/gantt-line.component';
export declare class GanttComponent implements ControlValueAccessor {
    private logger;
    private breakpoint;
    private renderer;
    readonly host = "jnt-gantt-host";
    ui: typeof UI;
    addMonths: typeof addMonths;
    subMonths: typeof subMonths;
    addYears: typeof addYears;
    subYears: typeof subYears;
    types: typeof GanttTypes;
    private _current;
    private _width;
    get mobile(): boolean;
    type: GanttTypes;
    set width(width: Width);
    get width(): Width;
    title: string;
    loading: boolean;
    toolsTemplate: TemplateRef<any>;
    titleTemplate: TemplateRef<any>;
    lines: QueryList<GanttLineComponent>;
    calendarDays: QueryList<ElementRef>;
    currentLine: ElementRef;
    sections: QueryList<GanttLineComponent>;
    today: Date;
    error: Error;
    onChange: (date: Date) => void;
    onTouched: () => void;
    registerOnChange: (fn: any) => any;
    registerOnTouched: (fn: any) => any;
    onBlur: () => void;
    get current(): Date;
    set current(current: Date);
    constructor(logger: NGXLogger, breakpoint: BreakpointService, renderer: Renderer2);
    ngAfterViewInit(): void;
    writeValue(date: Date): void;
}
