import { CSSProperties, PropType, Ref } from 'vue';
import { MaybeRefOrGetter } from '../utils';
export type ColorValue = string | false | null | undefined;
export type ColorAliasType = 'surface' | 'fill' | 'content';
export type ColorAlias = typeof availableColorAliases[number];
export declare const availableColorAliases: readonly ["neutral", "red", "green", "chocolate", "lemon", "lime", "cyan", "teal", "indigo", "purple", "pink"];
export declare const colorAliases: Record<ColorAlias, Record<ColorAliasType, string>>;
export interface TextColorData {
    textColorClasses: Ref<string[]>;
    textColorStyles: Ref<CSSProperties>;
}
export interface BackgroundColorData {
    backgroundColorClasses: Ref<string[]>;
    backgroundColorStyles: Ref<CSSProperties>;
}
export declare const makeModernColorProps: <Defaults extends {
    color?: unknown;
} = {}>(defaults?: Defaults | undefined) => import('../utils').AppendDefault<{
    /**
     * Цвет компонента
     */
    color: {
        type: PropType<string>;
        default: undefined;
    };
}, Defaults>;
export declare function useModernColor(colors: MaybeRefOrGetter<{
    background?: ColorValue;
    text?: ColorValue;
}>, aliasPath?: ColorAliasType): import('vue').ToRefs<{
    colorClasses: string[];
    colorStyles: CSSProperties;
}>;
export declare function useTextColor(color: MaybeRefOrGetter<ColorValue>, aliasPath?: ColorAliasType): TextColorData;
export declare function useBackgroundColor(color: MaybeRefOrGetter<ColorValue>, aliasPath?: ColorAliasType): BackgroundColorData;
export declare function computeColor(colors: MaybeRefOrGetter<{
    background?: ColorValue;
    text?: ColorValue;
}>, aliasPath: ColorAliasType): {
    class: string[];
    style: CSSProperties;
};
