import * as i0 from '@angular/core';
import { OnChanges, EventEmitter, SimpleChanges } from '@angular/core';
import * as _angular_cdk_bidi from '@angular/cdk/bidi';
import { NzPresetColor, NzStatusColor } from 'ng-zorro-antd/core/color';

/**
 * 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
 */

type NzTagColor = NzPresetColor | NzStatusColor | (string & {});

declare class NzTagComponent implements OnChanges {
    private renderer;
    private el;
    protected readonly dir: i0.WritableSignal<_angular_cdk_bidi.Direction>;
    nzMode: 'default' | 'closeable' | 'checkable';
    nzColor?: NzTagColor;
    nzChecked: boolean;
    nzBordered: boolean;
    readonly nzOnClose: EventEmitter<MouseEvent>;
    readonly nzCheckedChange: EventEmitter<boolean>;
    isPresetColor: boolean;
    updateCheckedStatus(): void;
    closeTag(e: MouseEvent): void;
    private clearPresetColor;
    private setPresetColor;
    ngOnChanges(changes: SimpleChanges): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NzTagComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NzTagComponent, "nz-tag", ["nzTag"], { "nzMode": { "alias": "nzMode"; "required": false; }; "nzColor": { "alias": "nzColor"; "required": false; }; "nzChecked": { "alias": "nzChecked"; "required": false; }; "nzBordered": { "alias": "nzBordered"; "required": false; }; }, { "nzOnClose": "nzOnClose"; "nzCheckedChange": "nzCheckedChange"; }, never, ["*"], true, never>;
    static ngAcceptInputType_nzChecked: unknown;
    static ngAcceptInputType_nzBordered: unknown;
}

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

export { NzTagComponent, NzTagModule };
export type { NzTagColor };
