import * as i0 from '@angular/core';
import { ElementRef, OnInit } from '@angular/core';
import { Nullable } from '@fundamental-ngx/cdk/utils';

type HeaderSizes = 1 | 2 | 3 | 4 | 5 | 6;
declare abstract class TitleToken {
    abstract elementRef: ElementRef;
}
declare class TitleComponent extends TitleToken implements OnInit {
    private _elementRef;
    /** Header size of the title. */
    set headerSize(value: Nullable<HeaderSizes>);
    get headerSize(): Nullable<HeaderSizes>;
    /** Whether or not the title should wrap (truncates by default) */
    wrap: boolean;
    /** The size of the header */
    _headerSize: Nullable<HeaderSizes>;
    /** @hidden */
    private _appliedHeaderSize;
    /** @hidden */
    constructor(_elementRef: ElementRef);
    /** @hidden */
    ngOnInit(): void;
    /** returns the reference to the title element */
    get elementRef(): ElementRef;
    /** @hidden */
    private _setHeaderSize;
    static ɵfac: i0.ɵɵFactoryDeclaration<TitleComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TitleComponent, "[fd-title], [fdTitle]", ["fd-title"], { "headerSize": { "alias": "headerSize"; "required": false; }; "wrap": { "alias": "wrap"; "required": false; }; }, {}, never, ["*"], true, never>;
}

declare class TitleModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<TitleModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<TitleModule, never, [typeof TitleComponent], [typeof TitleComponent]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<TitleModule>;
}

export { TitleComponent, TitleModule, TitleToken };
export type { HeaderSizes };
