import { AfterContentInit, QueryList, TemplateRef } from '@angular/core';
import { BlockableUI } from 'primeng/api';
import { BaseComponent } from 'primeng/basecomponent';
import { Nullable } from 'primeng/ts-helpers';
import { TimelineStyle } from './style/timelinestyle';
import * as i0 from "@angular/core";
import * as i1 from "primeng/api";
/**
 * Timeline visualizes a series of chained events.
 * @group Components
 */
export declare class Timeline extends BaseComponent implements AfterContentInit, BlockableUI {
    /**
     * An array of events to display.
     * @group Props
     */
    value: any[] | undefined;
    /**
     * Inline style of the component.
     * @group Props
     */
    style: {
        [klass: string]: any;
    } | null | undefined;
    /**
     * Style class of the component.
     * @group Props
     */
    styleClass: string | undefined;
    /**
     * Position of the timeline bar relative to the content. Valid values are "left", "right" for vertical layout and "top", "bottom" for horizontal layout.
     * @group Props
     */
    align: string;
    /**
     * Orientation of the timeline.
     * @group Props
     */
    layout: 'vertical' | 'horizontal';
    /**
     * Custom content template.
     * @group Templates
     */
    contentTemplate: Nullable<TemplateRef<any>>;
    /**
     * Custom opposite item template.
     * @group Templates
     */
    oppositeTemplate: Nullable<TemplateRef<any>>;
    /**
     * Custom marker template.
     * @group Templates
     */
    markerTemplate: Nullable<TemplateRef<any>>;
    templates: Nullable<QueryList<any>>;
    _contentTemplate: TemplateRef<any> | undefined;
    _oppositeTemplate: TemplateRef<any> | undefined;
    _markerTemplate: TemplateRef<any> | undefined;
    _componentStyle: TimelineStyle;
    get hostClass(): string;
    getBlockableElement(): HTMLElement;
    ngAfterContentInit(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<Timeline, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<Timeline, "p-timeline", never, { "value": { "alias": "value"; "required": false; }; "style": { "alias": "style"; "required": false; }; "styleClass": { "alias": "styleClass"; "required": false; }; "align": { "alias": "align"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; }, {}, ["contentTemplate", "oppositeTemplate", "markerTemplate", "templates"], never, true, never>;
}
export declare class TimelineModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<TimelineModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<TimelineModule, never, [typeof Timeline, typeof i1.SharedModule], [typeof Timeline, typeof i1.SharedModule]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<TimelineModule>;
}
