import { AbsoluteIconContainerProps } from '../icon/itlab-absolute-icon-container.vue';
import { Icon } from 'itlab-icons';
export type ActionItemProps = {
    leadingIcon?: Icon;
    leadingIconContainer?: Omit<AbsoluteIconContainerProps, 'icon'>;
    trailingIcon?: Icon;
    trailingIconContainer?: Omit<AbsoluteIconContainerProps, 'icon'>;
    label?: string | number;
    description?: string | number;
    clamp?: {
        label?: number;
        description?: number;
    };
    disabled?: boolean;
    color?: 'primary' | 'color' | 'secondary' | 'tertiary' | 'destructive' | 'affirmative';
    keepOpen?: boolean;
    defaultCursor?: boolean;
};
declare var __VLS_10: {}, __VLS_17: {}, __VLS_19: {};
type __VLS_Slots = {} & {
    'leading-icon'?: (props: typeof __VLS_10) => any;
} & {
    default?: (props: typeof __VLS_17) => any;
} & {
    'trailing-icon'?: (props: typeof __VLS_19) => any;
};
declare const __VLS_base: import('vue').DefineComponent<ActionItemProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    ref: (data: any) => any;
    click: (data: MouseEvent) => any;
}, string, import('vue').PublicProps, Readonly<ActionItemProps> & Readonly<{
    onRef?: ((data: any) => any) | undefined;
    onClick?: ((data: MouseEvent) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
declare const _default: typeof __VLS_export;
export default _default;
type __VLS_WithSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
