import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnInit, QueryList, SimpleChanges, TemplateRef } from '@angular/core';
import { Observable } from 'rxjs';
import { ITagMode, ITagSize } from './tag.component';
import * as i0 from "@angular/core";
export declare class TagsComponent implements OnInit, AfterViewInit, OnChanges {
    private cdr;
    /**
     * 【必选】记录输入的标签
     */
    tags: any[];
    /**
     * 【可选】使用的属性名
     */
    displayProperty: string;
    /**
     * @deprecated
     */
    deletable: boolean;
    mode: ITagMode;
    size: ITagSize;
    titleProperty: string;
    hideBeyondTags: boolean;
    beforeDelete: () => boolean | Promise<boolean> | Observable<boolean>;
    customViewTemplate: TemplateRef<any>;
    suffixElement: ElementRef;
    tagsElement: ElementRef;
    viewChildren: QueryList<ElementRef>;
    /**
     * tag被删除后触发
     */
    tagDelete: EventEmitter<any>;
    checkedChange: EventEmitter<any>;
    /**
     * 多标签超出显示相关数据
     */
    showTags: any[];
    beyondTags: any[];
    showMore: boolean;
    maxShowNumber: number;
    tagsFatherWidth: number;
    MORE_TAG_WIDTH: number;
    TAG_MARGIN: number;
    constructor(cdr: ChangeDetectorRef);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    calculateHideTagsStatus(): void;
    removeTag($event: any, tag: any, index: any): void;
    tagChecked($event: any, tag: any, index: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TagsComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TagsComponent, "d-tags", ["Tags"], { "tags": { "alias": "tags"; "required": false; }; "displayProperty": { "alias": "displayProperty"; "required": false; }; "deletable": { "alias": "deletable"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "size": { "alias": "size"; "required": false; }; "titleProperty": { "alias": "titleProperty"; "required": false; }; "hideBeyondTags": { "alias": "hideBeyondTags"; "required": false; }; "beforeDelete": { "alias": "beforeDelete"; "required": false; }; }, { "tagDelete": "tagDelete"; "checkedChange": "checkedChange"; }, ["customViewTemplate"], ["[suffix]"], false, never>;
}
