import React, { CSSProperties, HTMLAttributes, ReactNode } from "react";
export interface IconRotatorBaseProps extends HTMLAttributes {
/**
* An optional style to apply to the surrounding span when the `forceIconWrap`
* prop is enabled or the children is not a single react element.
*/
style?: CSSProperties;
/**
* An optional className to apply.
*/
className?: string;
/**
* Boolean if the rotation should be animated instead of static.
*/
animate?: boolean;
/**
* Boolean if the icon is currently rotated.
*/
rotated: boolean;
/**
* Boolean if the child icon should be "forcefully" wrapped in a ``
* element. This should be enabled if you have a custom icon that does not
* pass the `className` prop down.
*/
forceIconWrap?: boolean;
}
export interface IconRotatorProps extends IconRotatorBaseProps {
/**
* The icon that should be rotated. If this is a valid React Element, the
* class names will be cloned into that icon, otherwise the icon will be
* wrapped in a span with the correct class names applied.
*/
children: ReactNode;
}
/**
* The `IconRotator` is a simple component that is used to rotate an icon from a
* one degrees to another.
*/
declare const IconRotator: React.ForwardRefExoticComponent>;
export default IconRotator;