import React from 'react'; import { States } from '../../core/types'; import './BaseIcon.scss'; import { Sizes } from '../../core/types'; export type BaseIconProps = { size?: Sizes | string; visible?: boolean; indicatorIconCount?: number; icon?: React.ReactNode; state?: States; className?: string; onClick?: () => void; hasHoverEffect?: boolean; rounded?: boolean; style?: React.CSSProperties; color?: string; bgColor?: string; }; /** * Base Icon Component * * @param props * @param {Sizes} param0.size - string, optional, determines the size of the icon (e.g., 'large', 'medium', 'small', 'xsmall') * @param {States} [param0.state=States.DARK] - string, required, determines the state of the icon (e.g., 'dark', 'light', 'disabled', 'active', 'alert', 'warning', 'success', 'discovery') default to dark * @param {boolean} param0.visible - boolean, optional, determines if the icon is visible * @param {boolean} param0.hasHoverEffect - if true, the svg will turn purple when being hovered * @param {number} param0.indicatorIconCount - optional, if provided determines if an Indicator Icon is present and passes the value to Notification Indicator's count param * @param {string} param0.className - optional * @param {React.ReactNode} param0.icon - optional, if not provided, PiArrowClockwiseBold is used * @param {string} param0.color - optional, if provided, the color of the icon is set to the value of the color prop * @param {string} param0.bgColor - optional, if provided, the background color of the icon is set to the value of the bgColor prop * @returns {*} */ declare const BaseIcon: ({ size, state, visible, hasHoverEffect, indicatorIconCount, icon, className, style, rounded, color, bgColor, ...rest }: BaseIconProps) => import("react/jsx-runtime").JSX.Element; export default BaseIcon;