import { CSSProperties, ReactNode } from 'react';
import TriggerField, { TriggerFieldProps } from '../trigger-field/TriggerField';
import { Locale } from '../locale-context/interface';
export interface IconPickerProps extends TriggerFieldProps {
    pageSize?: number;
    customFontName?: string;
    icons?: {
        [key: string]: string[];
    } | string[];
}
declare type CategoryType = keyof Locale['Icon'];
export default class IconPicker extends TriggerField<IconPickerProps> {
    static displayName: string;
    static defaultProps: {
        suffixCls: string;
        pageSize: number;
        clearButton: boolean;
        popupPlacement: string;
        triggerShowDelay: number;
        triggerHiddenDelay: number;
        viewMode: import("../trigger-field/enum").TriggerViewMode;
        multiple: boolean;
        border: boolean;
        valueChangeAction: import("../text-field/enum").ValueChangeAction;
        waitType: import("../core/enum").WaitType;
        readOnly: boolean;
        disabled: boolean;
        noValidate: boolean;
        trim: import("../data-set/enum").FieldTrim;
    };
    activeCategory: CategoryType;
    selected?: string;
    categoryPages: {
        [key: string]: number;
    };
    get categories(): {
        [key: string]: string[];
    };
    get categoryKeys(): CategoryType[];
    get selectedIndex(): number;
    get filteredIcons(): string[];
    get selectedIcon(): any;
    constructor(props: any, context: any);
    getOmitPropsKeys(): string[];
    setActiveCategory(category: CategoryType): void;
    setCategoryPage(page: number, category: string): void;
    handleTabsChange(category: CategoryType): void;
    handleItemSelect(icon: string): void;
    handlePageChange(page: number, category: string): void;
    handleKeyDown(e: any): void;
    handleKeyDownHome(): void;
    handleKeyDownEnd(): void;
    handleKeyDownLeftOrRight(isLeft: boolean): void;
    handleKeyDownUpOrDown(isUP: any): void;
    handleKeyDownLeft(): void;
    handleKeyDownRight(): void;
    handleKeyDownUp(): void;
    handleKeyDownDown(): void;
    handleKeyDownPageUp(): void;
    handleKeyDownPageDown(): void;
    handleKeyDownEnter(): void;
    handleKeyDownEsc(): void;
    handleKeyDownTab(): void;
    handleKeyDownSpace(): void;
    changeSelected(selected?: string): void;
    choose(icon?: string): void;
    syncValueOnBlur(value: any): void;
    handlePopupAnimateAppear(): void;
    handlePopupAnimateEnd(): void;
    getPopupStyleFromAlign(): CSSProperties | any;
    getTriggerIconFont(): string;
    getPopupContent(): {} | null | undefined;
    getPrefix(): {} | null | undefined;
    renderFilteredIcons(): ReactNode;
    renderIconCategories(): JSX.Element;
    renderLengthInfo(): ReactNode;
}
export {};
