import type { DeepPartial, FlowbiteBoolean, FlowbiteClass, FlowbiteColors, FlowbitePositions, FlowbiteSizes } from 'flowbite-angular';
/**
 * Available colors for `IndicatorComponent`
 */
export interface IndicatorColors extends Pick<FlowbiteColors, 'primary' | 'dark' | 'gray' | 'blue' | 'green' | 'red' | 'purple' | 'indigo' | 'yellow' | 'teal'> {
    [key: string]: string;
}
/**
 * Available sizes for `IndicatorComponent`
 */
export interface IndicatorSizes extends Pick<FlowbiteSizes, 'xs' | 'sm' | 'md' | 'lg' | 'xl'> {
    [key: string]: string;
}
/**
 * Available positions for `IndicatorComponent`
 */
export interface IndicatorPositions extends Pick<FlowbitePositions, 'top-left' | 'top-center' | 'top-right' | 'center-left' | 'center' | 'center-right' | 'bottom-left' | 'bottom-center' | 'bottom-right'> {
    [key: string]: string;
}
/**
 * Required properties for the class generation of `IndicatorComponent`
 */
export interface IndicatorProperties {
    isPill: keyof FlowbiteBoolean;
    isOutline: keyof FlowbiteBoolean;
    isDisabled: keyof FlowbiteBoolean;
    hasOffset: keyof FlowbiteBoolean;
    isRounded: keyof FlowbiteBoolean;
    hasBorder: keyof FlowbiteBoolean;
    color: keyof IndicatorColors;
    size: keyof IndicatorSizes;
    placement?: keyof IndicatorPositions;
    customStyle: DeepPartial<IndicatorTheme>;
}
/**
 * Theme definition for `IndicatorComponent`
 */
export interface IndicatorTheme {
    root: {
        base: string;
        isPill: FlowbiteBoolean;
        isOutline: FlowbiteBoolean;
        isDisabled: FlowbiteBoolean;
        hasOffset: IndicatorPositions;
        isRounded: FlowbiteBoolean;
        hasBorder: FlowbiteBoolean;
        color: IndicatorColors;
        size: IndicatorSizes;
        placement: IndicatorPositions;
    };
}
/**
 * Default theme for `IndicatorComponent`
 */
export declare const indicatorTheme: IndicatorTheme;
/**
 * Generated class definition for `IndicatorComponent`
 */
export type indicatorClass = FlowbiteClass;
