import type { CSSProperties, MutableRefObject } from 'react'; import type { BaseProgressProps } from './interface'; export declare function useStrokeWidthWithBackup({ strokeWidth, size, }: Readonly>): number; export declare function useSVG({ shape }: Readonly>): boolean; export declare type UseSVGStrokeWidthParams = Pick & { progressElement: MutableRefObject; strokeWidth: number; shouldUseSVG: boolean; }; export declare function useSVGStrokeWidth(params: Readonly): { readonly svgStrokeWidth: number; }; export declare function useSizeStyle({ size, shape, }: Readonly>): { sizeStyle: CSSProperties; hasKnownSize: boolean; }; export declare function useRoundSVGAttributes({ shape, strokeShape, finalStrokeWidth, percent, }: Readonly & { finalStrokeWidth: number; }>): { readonly path: string; readonly dasharray: number; readonly strokeLinecap: "round" | "butt"; readonly viewBox: string; readonly dashoffset: number; }; export declare function useRectStyles({ strokeWidthWithBackup, finalStrokeWidth, strokeShape, percent, }: Readonly & { finalStrokeWidth: number; strokeWidthWithBackup: number; }>): { readonly lineThumbStyle: { width: string; height: string; borderRadius: string; }; readonly lineTrackStyle: { height: string; borderRadius: string; }; }; export declare function useIndicator({ text, percent, children, }: Readonly, 'text' | 'percent' | 'children'>>): import("react").ReactNode;