import type { IElementRef } from '@melodicdev/core';
type ProgressVariant = 'primary' | 'success' | 'warning' | 'error';
type ProgressSize = 'sm' | 'md' | 'lg';
type ProgressShape = 'linear' | 'circle' | 'half-circle';
type ProgressLabelPosition = 'top' | 'right' | 'bottom' | 'floating-top' | 'floating-bottom' | 'none';
/**
 * ml-progress - Progress indicator with linear, circle, and half-circle shapes
 *
 * @example
 * ```html
 * <ml-progress value="60"></ml-progress>
 * <ml-progress value="80" label="Upload" show-value label-position="right"></ml-progress>
 * <ml-progress value="40" shape="circle" show-value></ml-progress>
 * <ml-progress value="60" shape="half-circle" show-value></ml-progress>
 * ```
 */
export declare class ProgressComponent implements IElementRef {
    elementRef: HTMLElement;
    /** Current value (0-max) */
    value: number;
    /** Maximum value */
    max: number;
    /** Color variant */
    variant: ProgressVariant;
    /** Bar height / circle size */
    size: ProgressSize;
    /** Optional label */
    label: string;
    /** Show percentage text */
    showValue: boolean;
    /** Shape: linear bar, full circle, or half circle */
    shape: ProgressShape;
    /** Label position for linear bars */
    labelPosition: ProgressLabelPosition;
    get percentage(): number;
    get displayValue(): string;
    /** SVG circle radius based on size */
    get circleRadius(): number;
    /** SVG stroke width based on size */
    get circleStroke(): number;
    /** Full circumference for stroke-dasharray */
    get circumference(): number;
    /** Half circumference for half-circle */
    get halfCircumference(): number;
    /** Dash offset for full circle */
    get circleDashOffset(): number;
    /** Dash offset for half circle */
    get halfCircleDashOffset(): number;
    /** SVG viewBox size */
    get svgSize(): number;
    /** SVG center point */
    get svgCenter(): number;
}
export {};
//# sourceMappingURL=progress.component.d.ts.map