import type { Plugin } from 'vite';
import type { SemanticColorOverrides } from '../tokens/colors';
import type { FontFamilyOverrides, SemanticFontOverrides } from '../tokens/typography';
import type { SemanticRadiusOverrides } from '../tokens/radius';
import type { SemanticShadowOverrides } from '../tokens/shadows';
import type { SemanticMotionOverrides } from '../tokens/motion';
import type { SemanticSpacingOverrides } from '../tokens/spacing';
import type { SemanticTextShadowOverrides } from '../tokens/text-shadows';
import { type GoogleFontRequest } from './google-fonts';
export interface BeatuiTailwindPluginOptions {
    /** Override the semantic color mapping BeatUI uses (e.g. map `primary` to `emerald`). */
    semanticColors?: SemanticColorOverrides;
    /** Override semantic font aliases (e.g. map `heading` to `var(--font-family-serif)`). */
    semanticFonts?: SemanticFontOverrides;
    /** Override semantic radius aliases for controls, surfaces, etc. */
    semanticRadii?: SemanticRadiusOverrides;
    /** Override semantic shadow aliases (elevation levels for surfaces, overlays, etc.). */
    semanticShadows?: SemanticShadowOverrides;
    /** Override semantic motion tokens (transition durations/easing). */
    semanticMotion?: SemanticMotionOverrides;
    /** Override spacing stack aliases for layout stacks. */
    semanticSpacing?: SemanticSpacingOverrides;
    /** Override semantic text shadow aliases (e.g. button emphasis shadows). */
    semanticTextShadows?: SemanticTextShadowOverrides;
    /** Override the default font family tokens (e.g. set `sans` to a custom stack). */
    fontFamilies?: FontFamilyOverrides;
    /**
     * Override the base spacing unit (`--spacing-base`). All spacing scale values
     * are computed from this variable. Defaults to `'0.25rem'`.
     */
    baseSpacing?: string;
    /**
     * Override the base font size (`--base-font-size`). All font size and per-size
     * line height values are computed from this variable. Defaults to `'1rem'`.
     */
    baseFontSize?: string;
    /**
     * Override the base motion duration (`--motion-duration-base`). All duration
     * values are computed from this variable. Defaults to `'200ms'`.
     */
    baseMotionDuration?: string;
    /** Automatically import the BeatUI Tailwind CSS bundle into the application entry. */
    injectCss?: boolean;
    /** Tailwind class that denotes dark mode. Defaults to 'dark'. */
    darkClass?: string;
    /** Attribute inspected for RTL mode. Defaults to `dir="rtl"`. */
    rtlAttribute?: string;
    /** Value of RTL attribute that should trigger `.b-rtl`. Defaults to `rtl`. */
    rtlValue?: string;
    /** Request Google Fonts for local hosting. */
    googleFonts?: GoogleFontRequest | GoogleFontRequest[];
}
export declare function beatuiTailwindPlugin(options?: BeatuiTailwindPluginOptions): Plugin;
export default beatuiTailwindPlugin;
export type { GoogleFontRequest };
