import * as i0 from '@angular/core';
import { OnInit, TemplateRef, EventEmitter, ElementRef } from '@angular/core';
import { NzConfigKey } from 'ng-zorro-antd/core/config';
import { NzNoAnimationDirective } from 'ng-zorro-antd/core/no-animation';
import { Direction } from '@angular/cdk/bidi';

/**
 * 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 NzCollapsePanelComponent implements OnInit {
    private ngZone;
    private cdr;
    private destroyRef;
    private nzCollapseComponent;
    noAnimation: NzNoAnimationDirective | null;
    readonly _nzModuleName: NzConfigKey;
    nzActive: boolean;
    nzDisabled: boolean;
    nzShowArrow: boolean;
    nzExtra?: string | TemplateRef<void>;
    nzHeader?: string | TemplateRef<void>;
    nzExpandedIcon?: string | TemplateRef<void>;
    readonly nzActiveChange: EventEmitter<boolean>;
    collapseHeader: ElementRef<HTMLElement>;
    markForCheck(): void;
    constructor();
    ngOnInit(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NzCollapsePanelComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NzCollapsePanelComponent, "nz-collapse-panel", ["nzCollapsePanel"], { "nzActive": { "alias": "nzActive"; "required": false; }; "nzDisabled": { "alias": "nzDisabled"; "required": false; }; "nzShowArrow": { "alias": "nzShowArrow"; "required": false; }; "nzExtra": { "alias": "nzExtra"; "required": false; }; "nzHeader": { "alias": "nzHeader"; "required": false; }; "nzExpandedIcon": { "alias": "nzExpandedIcon"; "required": false; }; }, { "nzActiveChange": "nzActiveChange"; }, never, ["*"], true, never>;
    static ngAcceptInputType_nzActive: unknown;
    static ngAcceptInputType_nzDisabled: unknown;
    static ngAcceptInputType_nzShowArrow: unknown;
}

/**
 * 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 NzCollapseComponent implements OnInit {
    private cdr;
    private directionality;
    private destroyRef;
    readonly _nzModuleName: NzConfigKey;
    nzAccordion: boolean;
    nzBordered: boolean;
    nzGhost: boolean;
    nzExpandIconPosition: 'start' | 'end';
    dir: Direction;
    private listOfNzCollapsePanelComponent;
    constructor();
    ngOnInit(): void;
    addPanel(value: NzCollapsePanelComponent): void;
    removePanel(value: NzCollapsePanelComponent): void;
    click(collapse: NzCollapsePanelComponent): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NzCollapseComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NzCollapseComponent, "nz-collapse", ["nzCollapse"], { "nzAccordion": { "alias": "nzAccordion"; "required": false; }; "nzBordered": { "alias": "nzBordered"; "required": false; }; "nzGhost": { "alias": "nzGhost"; "required": false; }; "nzExpandIconPosition": { "alias": "nzExpandIconPosition"; "required": false; }; }, {}, never, ["*"], true, never>;
    static ngAcceptInputType_nzAccordion: unknown;
    static ngAcceptInputType_nzBordered: unknown;
    static ngAcceptInputType_nzGhost: unknown;
}

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

export { NzCollapseComponent, NzCollapseModule, NzCollapsePanelComponent };
