import { type ExtractPublicPropTypes, type PropType } from 'vue';
import { type ThemeComponent } from '../../composables/useTheme';
declare const alertType: readonly ["info", "success", "error", "warning"];
declare const alertProps: {
    type: PropType<"info" | "success" | "error" | "warning">;
    glow: BooleanConstructor;
    light: BooleanConstructor;
    outlined: BooleanConstructor;
    removable: BooleanConstructor;
    closeLabel: StringConstructor;
    color: {
        readonly type: StringConstructor;
        readonly default: string | undefined;
    };
};
export type AlertType = typeof alertType[number];
export type AlertProps = ExtractPublicPropTypes<typeof alertProps>;
type InternalClasses = 'wrapper';
export interface AlertTheme extends ThemeComponent<AlertProps, InternalClasses> {
}
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
    type: PropType<"info" | "success" | "error" | "warning">;
    glow: BooleanConstructor;
    light: BooleanConstructor;
    outlined: BooleanConstructor;
    removable: BooleanConstructor;
    closeLabel: StringConstructor;
    color: {
        readonly type: StringConstructor;
        readonly default: string | undefined;
    };
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "remove"[], "remove", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    type: PropType<"info" | "success" | "error" | "warning">;
    glow: BooleanConstructor;
    light: BooleanConstructor;
    outlined: BooleanConstructor;
    removable: BooleanConstructor;
    closeLabel: StringConstructor;
    color: {
        readonly type: StringConstructor;
        readonly default: string | undefined;
    };
}>> & {
    onRemove?: ((...args: any[]) => any) | undefined;
}, {
    glow: boolean;
    light: boolean;
    outlined: boolean;
    removable: boolean;
    color: string;
}, {}>, {
    icon?(_: {}): any;
    default?(_: {}): any;
    removeIcon?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
