import type { PropType, VNode, VNodeArrayChildren } from 'vue';
import type { Animation, IconSize } from '../types';
export declare const ICON_COMMON_PROPS: {
    animation: {
        type: PropType<Animation>;
    };
    flipH: {
        type: BooleanConstructor;
        default: boolean;
    };
    flipV: {
        type: BooleanConstructor;
        default: boolean;
    };
    fontScale: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    rotate: {
        type: (StringConstructor | NumberConstructor)[];
        required: boolean;
        validator: (value: string | number) => boolean;
    };
    scale: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    shiftH: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    shiftV: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    size: {
        type: PropType<IconSize>;
        required: boolean;
    };
};
export declare const ICON_BASE_PROPS: {
    class: {
        type: (StringConstructor | ObjectConstructor | ArrayConstructor)[];
        required: boolean;
    };
    content: {
        type: PropType<string | number | boolean | VNode<import("vue").RendererNode, import("vue").RendererElement, {
            [key: string]: any;
        }> | VNodeArrayChildren>;
        required: boolean;
    };
    stacked: {
        type: BooleanConstructor;
        default: boolean;
    };
    title: {
        type: StringConstructor;
        required: boolean;
    };
    variant: {
        type: PropType<keyof import("../types/TextColorVariant").BaseTextColorVariant>;
        required: boolean;
    };
    animation: {
        type: PropType<Animation>;
    };
    flipH: {
        type: BooleanConstructor;
        default: boolean;
    };
    flipV: {
        type: BooleanConstructor;
        default: boolean;
    };
    fontScale: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    rotate: {
        type: (StringConstructor | NumberConstructor)[];
        required: boolean;
        validator: (value: string | number) => boolean;
    };
    scale: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    shiftH: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    shiftV: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    size: {
        type: PropType<IconSize>;
        required: boolean;
    };
};
