import { ChangeDetectorRef, EventEmitter, Renderer2, TemplateRef } from '@angular/core';
import { ResizeEvent } from "angular-resizable-element";
import { DragEndEvent } from "angular-draggable-droppable/lib/draggable.directive";
import { ITimelineItem, IScale } from "../../models";
import * as i0 from "@angular/core";
export declare class TimelineItemComponent {
    private _cdr;
    private _renderer;
    private _item;
    private _scale;
    isInScaleRange: boolean;
    isItemResizingStarted: boolean;
    set item(item: ITimelineItem | undefined);
    set scale(scale: IScale | undefined);
    rowContainer: HTMLElement;
    height: number;
    rowHeight: number;
    locale: string;
    contentTemplate: TemplateRef<{
        $implicit: ITimelineItem;
        locale: string;
    }> | undefined;
    itemResized: EventEmitter<{
        event: ResizeEvent;
        item: ITimelineItem;
    }>;
    itemMoved: EventEmitter<{
        event: DragEndEvent;
        item: ITimelineItem;
    }>;
    get item(): ITimelineItem;
    constructor(_cdr: ChangeDetectorRef, _renderer: Renderer2);
    onItemResizeStart(event: ResizeEvent): void;
    onItemResizeEnd(event: ResizeEvent): void;
    onItemDragStart(event: any): void;
    onItemDropped(event: DragEndEvent): void;
    private _checkIsInScaleRange;
    private _setRowZIndex;
    static ɵfac: i0.ɵɵFactoryDeclaration<TimelineItemComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TimelineItemComponent, "timeline-item", never, { "item": { "alias": "item"; "required": false; }; "scale": { "alias": "scale"; "required": false; }; "rowContainer": { "alias": "rowContainer"; "required": false; }; "height": { "alias": "height"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "contentTemplate": { "alias": "contentTemplate"; "required": false; }; }, { "itemResized": "itemResized"; "itemMoved": "itemMoved"; }, never, never, false, never>;
}
