import * as React$1 from 'react';
import * as tailwind_variants from 'tailwind-variants';
import { VariantProps } from 'tailwind-variants';
import * as tailwind_variants_dist_config_js from 'tailwind-variants/dist/config.js';

type ProgressIndicatorProps = React.ComponentPropsWithoutRef<'div'> & VariantProps<typeof progressIndicatorStyles> & {
    /**
     * Representa o progresso atual em porcentagem (0 a 100).
     */
    percentage?: number;
    /**
     * Define o tempo estimado (em milissegundos) para o progresso atingir 100%.
     */
    duration?: number;
    /**
     * Indica se o fundo do indicador deve ser transparente.
     */
    bgTransparent?: boolean;
    /**
     * Callback acionado ao final do progresso, quando percentage atinge 100%.
     */
    onComplete?(): void;
};
declare const progressIndicatorStyles: tailwind_variants.TVReturnType<{
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}, undefined, "flex w-full min-w-48 overflow-hidden rounded-pill p-none", {
    responsiveVariants?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | {
        size?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | undefined;
        variant?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | undefined;
    } | undefined;
} & tailwind_variants_dist_config_js.TWMConfig & {
    twMergeConfig: {
        extend: {
            classGroups: {
                'font-size': {
                    text: string[];
                }[];
                'border-width': {
                    border: string[];
                }[];
                '--tw-ring-inset': {
                    ring: string[];
                }[];
            };
        };
    };
}, {
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}, undefined, tailwind_variants.TVReturnType<{
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}, undefined, "flex w-full min-w-48 overflow-hidden rounded-pill p-none", tailwind_variants_dist_config_js.TVConfig<{
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}, {
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}>, unknown, unknown, undefined>>;
declare const ProgressIndicator: React$1.ForwardRefExoticComponent<Omit<React$1.DetailedHTMLProps<React$1.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & VariantProps<tailwind_variants.TVReturnType<{
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}, undefined, "flex w-full min-w-48 overflow-hidden rounded-pill p-none", {
    responsiveVariants?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | {
        size?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | undefined;
        variant?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | undefined;
    } | undefined;
} & tailwind_variants_dist_config_js.TWMConfig & {
    twMergeConfig: {
        extend: {
            classGroups: {
                'font-size': {
                    text: string[];
                }[];
                'border-width': {
                    border: string[];
                }[];
                '--tw-ring-inset': {
                    ring: string[];
                }[];
            };
        };
    };
}, {
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}, undefined, tailwind_variants.TVReturnType<{
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}, undefined, "flex w-full min-w-48 overflow-hidden rounded-pill p-none", tailwind_variants_dist_config_js.TVConfig<{
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}, {
    variant: {
        brand: string;
        neutral: string;
        'neutral-readonly': string;
        inverse: string;
        informative: string;
        success: string;
        warning: string;
        danger: string;
    };
    size: {
        tiny: string;
        mini: string;
        micro: string;
        nano: string;
        pico: string;
    };
}>, unknown, unknown, undefined>>> & {
    /**
     * Representa o progresso atual em porcentagem (0 a 100).
     */
    percentage?: number;
    /**
     * Define o tempo estimado (em milissegundos) para o progresso atingir 100%.
     */
    duration?: number;
    /**
     * Indica se o fundo do indicador deve ser transparente.
     */
    bgTransparent?: boolean;
    /**
     * Callback acionado ao final do progresso, quando percentage atinge 100%.
     */
    onComplete?(): void;
} & React$1.RefAttributes<HTMLDivElement>>;

export { ProgressIndicator, type ProgressIndicatorProps };
