import * as i0 from '@angular/core';
import { AfterViewInit, OnInit, TemplateRef, EventEmitter, ElementRef, ChangeDetectorRef } from '@angular/core';
import { Direction, Directionality } from '@angular/cdk/bidi';
import { NzResizeObserver } from 'ng-zorro-antd/cdk/resize-observer';
import { NzConfigService, NzConfigKey } from 'ng-zorro-antd/core/config';

declare class NzPageHeaderTitleDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderTitleDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NzPageHeaderTitleDirective, "nz-page-header-title, [nz-page-header-title]", ["nzPageHeaderTitle"], {}, {}, never, never, true, never>;
}
declare class NzPageHeaderSubtitleDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderSubtitleDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NzPageHeaderSubtitleDirective, "nz-page-header-subtitle, [nz-page-header-subtitle]", ["nzPageHeaderSubtitle"], {}, {}, never, never, true, never>;
}
declare class NzPageHeaderContentDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderContentDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NzPageHeaderContentDirective, "nz-page-header-content, [nz-page-header-content]", ["nzPageHeaderContent"], {}, {}, never, never, true, never>;
}
declare class NzPageHeaderTagDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderTagDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NzPageHeaderTagDirective, "nz-page-header-tags, [nz-page-header-tags]", ["nzPageHeaderTags"], {}, {}, never, never, true, never>;
}
declare class NzPageHeaderExtraDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderExtraDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NzPageHeaderExtraDirective, "nz-page-header-extra, [nz-page-header-extra]", ["nzPageHeaderExtra"], {}, {}, never, never, true, never>;
}
declare class NzPageHeaderFooterDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderFooterDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NzPageHeaderFooterDirective, "nz-page-header-footer, [nz-page-header-footer]", ["nzPageHeaderFooter"], {}, {}, never, never, true, never>;
}
declare class NzPageHeaderBreadcrumbDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderBreadcrumbDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NzPageHeaderBreadcrumbDirective, "nz-breadcrumb[nz-page-header-breadcrumb]", ["nzPageHeaderBreadcrumb"], {}, {}, never, never, true, never>;
}
declare class NzPageHeaderAvatarDirective {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderAvatarDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NzPageHeaderAvatarDirective, "nz-avatar[nz-page-header-avatar]", ["nzPageHeaderAvatar"], {}, {}, never, never, true, never>;
}

/**
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */

declare class NzPageHeaderComponent implements AfterViewInit, OnInit {
    nzConfigService: NzConfigService;
    private elementRef;
    private nzResizeObserver;
    private cdr;
    private directionality;
    private location;
    private destroyRef;
    readonly _nzModuleName: NzConfigKey;
    nzBackIcon: string | TemplateRef<void> | null;
    nzTitle?: string | TemplateRef<void>;
    nzSubtitle?: string | TemplateRef<void>;
    nzGhost: boolean;
    readonly nzBack: EventEmitter<void>;
    nzPageHeaderFooter?: ElementRef<NzPageHeaderFooterDirective>;
    nzPageHeaderBreadcrumb?: ElementRef<NzPageHeaderBreadcrumbDirective>;
    compact: boolean;
    dir: Direction;
    enableBackButton: boolean;
    constructor(nzConfigService: NzConfigService, elementRef: ElementRef, nzResizeObserver: NzResizeObserver, cdr: ChangeDetectorRef, directionality: Directionality);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    onBack(): void;
    getBackIcon(): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NzPageHeaderComponent, "nz-page-header", ["nzPageHeader"], { "nzBackIcon": { "alias": "nzBackIcon"; "required": false; }; "nzTitle": { "alias": "nzTitle"; "required": false; }; "nzSubtitle": { "alias": "nzSubtitle"; "required": false; }; "nzGhost": { "alias": "nzGhost"; "required": false; }; }, { "nzBack": "nzBack"; }, ["nzPageHeaderFooter", "nzPageHeaderBreadcrumb"], ["nz-breadcrumb[nz-page-header-breadcrumb]", "nz-avatar[nz-page-header-avatar]", "nz-page-header-title, [nz-page-header-title]", "nz-page-header-subtitle, [nz-page-header-subtitle]", "nz-page-header-tags, [nz-page-header-tags]", "nz-page-header-extra, [nz-page-header-extra]", "nz-page-header-content, [nz-page-header-content]", "nz-page-header-footer, [nz-page-header-footer]"], true, never>;
}

declare class NzPageHeaderModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<NzPageHeaderModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<NzPageHeaderModule, never, [typeof NzPageHeaderComponent, typeof NzPageHeaderTitleDirective, typeof NzPageHeaderSubtitleDirective, typeof NzPageHeaderContentDirective, typeof NzPageHeaderTagDirective, typeof NzPageHeaderExtraDirective, typeof NzPageHeaderFooterDirective, typeof NzPageHeaderBreadcrumbDirective, typeof NzPageHeaderAvatarDirective], [typeof NzPageHeaderComponent, typeof NzPageHeaderTitleDirective, typeof NzPageHeaderSubtitleDirective, typeof NzPageHeaderContentDirective, typeof NzPageHeaderTagDirective, typeof NzPageHeaderExtraDirective, typeof NzPageHeaderFooterDirective, typeof NzPageHeaderBreadcrumbDirective, typeof NzPageHeaderAvatarDirective]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<NzPageHeaderModule>;
}

export { NzPageHeaderAvatarDirective, NzPageHeaderBreadcrumbDirective, NzPageHeaderComponent, NzPageHeaderContentDirective, NzPageHeaderExtraDirective, NzPageHeaderFooterDirective, NzPageHeaderModule, NzPageHeaderSubtitleDirective, NzPageHeaderTagDirective, NzPageHeaderTitleDirective };
