import { type VariantProps } from 'class-variance-authority';
import * as React from 'react';
declare const loadingIndicatorVariants: (props?: ({
    size?: "sm" | "md" | "lg" | "xl" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
declare const loadingTextVariants: (props?: ({
    size?: "sm" | "md" | "lg" | "xl" | null | undefined;
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
declare const SIZE_CONFIG: {
    readonly sm: {
        readonly dimension: 32;
        readonly strokeWidth: 3;
    };
    readonly md: {
        readonly dimension: 48;
        readonly strokeWidth: 4;
    };
    readonly lg: {
        readonly dimension: 56;
        readonly strokeWidth: 5;
    };
    readonly xl: {
        readonly dimension: 64;
        readonly strokeWidth: 5;
    };
};
export type LoadingIndicatorVariant = 'line-simple' | 'line-spinner' | 'dot-circle' | 'breathing';
export interface LoadingIndicatorProps extends React.HTMLAttributes<HTMLOutputElement>, VariantProps<typeof loadingIndicatorVariants> {
    /** The visual variant of the loading indicator */
    variant?: LoadingIndicatorVariant;
    /** Whether to show the "Loading..." text */
    showText?: boolean;
    /** Custom loading text */
    text?: string;
    /** Color of the spinner (CSS color value) */
    color?: string;
    /** Track color for line styles */
    trackColor?: string;
}
/** Line Simple Spinner - A simple arc that rotates */
declare function LineSimpleSpinner({ size, color, trackColor, }: {
    size: keyof typeof SIZE_CONFIG;
    color?: string;
    trackColor?: string;
}): import("react/jsx-runtime").JSX.Element;
/** Line Spinner - A gradient arc that rotates */
declare function LineSpinner({ size, color, }: {
    size: keyof typeof SIZE_CONFIG;
    color?: string;
}): import("react/jsx-runtime").JSX.Element;
/** Dot Circle Spinner - A circle of dots with a rotating chase effect */
declare function DotCircleSpinner({ size, color, }: {
    size: keyof typeof SIZE_CONFIG;
    color?: string;
}): import("react/jsx-runtime").JSX.Element;
/** Breathing Spinner - An organic scale/opacity oscillation that feels alive */
declare function BreathingSpinner({ size, color, }: {
    size: keyof typeof SIZE_CONFIG;
    color?: string;
}): import("react/jsx-runtime").JSX.Element;
declare function LoadingIndicator({ variant, size, showText, text, color, trackColor, className, ...props }: LoadingIndicatorProps): import("react/jsx-runtime").JSX.Element;
declare namespace LoadingIndicator {
    var displayName: string;
}
export { BreathingSpinner, DotCircleSpinner, LineSimpleSpinner, LineSpinner, LoadingIndicator, loadingIndicatorVariants, loadingTextVariants, };
