import { PropType } from "vue";
import { IconSize, IconState, IconType } from "./../Icon/Icon.vue";
import { ButtonSize, ButtonType } from "./../Button/Button.vue";
type ButtonIconIcon = {
    name: string;
    state: IconState;
    type?: IconType;
    size?: IconSize;
};
export type ButtonIconObjectProp = {
    size: ButtonSize;
    type: ButtonType;
    icon: string | ButtonIconIcon;
};
type ButtonIconObjectComputed = {
    size: ButtonSize;
    type: ButtonType;
    icon: ButtonIconIcon;
};
declare const _default: import("vue/types/v3-define-component").DefineComponent<{
    value: {
        type: PropType<string | ButtonIconObjectProp>;
        default: string;
    };
}, import("vue").Data, import("vue").Data, {
    computedValue(): ButtonIconObjectComputed;
}, {
    handleClick(e: MouseEvent): void;
}, import("vue/types/v3-component-options").ComponentOptionsMixin, import("vue/types/v3-component-options").ComponentOptionsMixin, {}, string, Readonly<import("vue").ExtractPropTypes<{
    value: {
        type: PropType<string | ButtonIconObjectProp>;
        default: string;
    };
}>>, {
    value: string | ButtonIconObjectProp;
}>;
export default _default;
