import * as React from 'react';
import { GetRadiusData } from "./getRadius.js";
type UseAnimateBarClipRectParams = Pick<BarClipRectProps, 'x' | 'y' | 'width' | 'height' | 'skipAnimation'> & {
  ref?: React.Ref<SVGRectElement>;
  borderRadius: number;
  ownerState: Omit<GetRadiusData, 'borderRadius'>;
};
type UseAnimateBarClipRectReturn = {
  ref: React.Ref<SVGRectElement>;
  style: React.CSSProperties;
} & Pick<BarClipRectProps, 'x' | 'y' | 'width' | 'height'>;
export declare function useAnimateBarClipRect(props: UseAnimateBarClipRectParams): UseAnimateBarClipRectReturn;
interface BarClipRectProps extends Pick<BarClipPathProps, 'x' | 'y' | 'width' | 'height' | 'skipAnimation'> {
  ownerState: GetRadiusData;
}
export interface BarClipPathProps {
  maskId: string;
  borderRadius?: number;
  hasNegative: boolean;
  hasPositive: boolean;
  layout?: 'vertical' | 'horizontal';
  x: number;
  y: number;
  width: number;
  height: number;
  skipAnimation: boolean;
}
/**
 * @ignore - internal component.
 */
declare function BarClipPath(props: BarClipPathProps): React.JSX.Element | null;
export { BarClipPath };