import { EventEmitter, OnChanges, SimpleChanges, TemplateRef } from '@angular/core';
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
export type ITagMode = 'default' | 'checkable' | 'closeable';
export type ITagSize = 'md' | 'lg';
export declare class TagComponent implements OnChanges {
    /**
     * 【必选】记录输入的标签
     */
    tag: any;
    labelStyle: string;
    customColor: string;
    deletable: boolean;
    titleContent: string;
    mode: ITagMode;
    size: ITagSize;
    checked: boolean;
    maxWidth: string;
    customViewTemplate: TemplateRef<any>;
    beforeDelete: (tag?: any) => boolean | Promise<boolean> | Observable<boolean>;
    /**
     * tag被删除后触发
     */
    tagDelete: EventEmitter<any>;
    checkedChange: EventEmitter<boolean>;
    currentTag: string;
    deleteTag: boolean;
    colorMap: {
        'blue-w98': string;
        'aqua-w98': string;
        'olivine-w98': string;
        'green-w98': string;
        'yellow-w98': string;
        'orange-w98': string;
        'red-w98': string;
        'pink-w98': string;
        'purple-w98': string;
    };
    get isColorfulTag(): boolean;
    ngOnChanges(changes: SimpleChanges): void;
    removeTag($event: any, tag: any): void;
    tagClick(): void;
    canDeleteTag(tag: any): Promise<boolean>;
    static ɵfac: i0.ɵɵFactoryDeclaration<TagComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TagComponent, "d-tag", ["Tag"], { "tag": { "alias": "tag"; "required": false; }; "labelStyle": { "alias": "labelStyle"; "required": false; }; "customColor": { "alias": "customColor"; "required": false; }; "deletable": { "alias": "deletable"; "required": false; }; "titleContent": { "alias": "titleContent"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "size": { "alias": "size"; "required": false; }; "checked": { "alias": "checked"; "required": false; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "customViewTemplate": { "alias": "customViewTemplate"; "required": false; }; "beforeDelete": { "alias": "beforeDelete"; "required": false; }; }, { "tagDelete": "tagDelete"; "checkedChange": "checkedChange"; }, never, never, false, never>;
}
