import { default as React } from 'react';
import { ShapeType } from './paths';
export interface ShapedIconProps extends React.SVGProps<SVGSVGElement> {
    shape: ShapeType;
    size?: number | string;
}
export declare const ShapedIcon: React.ForwardRefExoticComponent<Omit<ShapedIconProps, "ref"> & React.RefAttributes<SVGSVGElement>>;
export interface ShapedImageProps extends React.SVGProps<SVGSVGElement> {
    shape: ShapeType;
    src: string;
    alt?: string;
    size?: number | string;
    /** Duration in seconds for the morph animation */
    duration?: number;
}
export declare const ShapedImage: React.ForwardRefExoticComponent<Omit<ShapedImageProps, "ref"> & React.RefAttributes<SVGSVGElement>>;
export interface ShapedIconButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
    variant?: "primary" | "secondary" | "ghost" | "destructive";
    size?: "sm" | "md" | "lg";
    shadow?: "none" | "sm" | "md" | "lg" | "xl" | "2xl" | "glow";
    shape: ShapeType;
    morphEase?: number[];
    morphDuration?: number;
}
export declare const ShapedIconButton: React.ForwardRefExoticComponent<ShapedIconButtonProps & React.RefAttributes<HTMLButtonElement>>;
export interface ShapedBadgeProps extends React.HTMLAttributes<HTMLDivElement> {
    variant?: "primary" | "secondary" | "destructive" | "outline";
    size?: "sm" | "md" | "lg";
    shadow?: "none" | "sm" | "md";
    shape: ShapeType;
}
export declare const ShapedBadge: React.ForwardRefExoticComponent<ShapedBadgeProps & React.RefAttributes<HTMLDivElement>>;
export declare const ShapedButton: React.ForwardRefExoticComponent<ShapedIconButtonProps & React.RefAttributes<HTMLButtonElement>>;
