Interface Button

interface Button {
    name?: string;
    icon?: IconDefinition;
    alternateIcon?: IconDefinition;
    onPress?: (() => void);
    backgroundColor?: {
        default?: string;
        pressed?: string;
    };
    active?: boolean;
    alternateIconComponent?: Element;
    iconComponent?: Element;
    customComponent?: Element;
    color?: string;
    activeColor?: string;
    inActiveColor?: string;
    disabled?: boolean;
    show?: boolean;
    style?: CSSProperties;
    className?: string;
    buttonProps?: ButtonHTMLAttributes<HTMLButtonElement>;
    iconWrapperProps?: HTMLAttributes<HTMLSpanElement>;
    textProps?: HTMLAttributes<HTMLSpanElement>;
    contentWrapperProps?: HTMLAttributes<HTMLDivElement>;
    renderContent?: ((options: {
        index: number;
        isActive: boolean;
        defaultIcon: ReactNode;
        defaultLabel: ReactNode;
        defaultContent: ReactNode;
        vertical: boolean;
    }) => ReactNode);
}

Properties

name?: string
icon?: IconDefinition
alternateIcon?: IconDefinition
onPress?: (() => void)
backgroundColor?: {
    default?: string;
    pressed?: string;
}
active?: boolean
alternateIconComponent?: Element
iconComponent?: Element
customComponent?: Element
color?: string
activeColor?: string
inActiveColor?: string
disabled?: boolean
show?: boolean
style?: CSSProperties
className?: string
buttonProps?: ButtonHTMLAttributes<HTMLButtonElement>
iconWrapperProps?: HTMLAttributes<HTMLSpanElement>
textProps?: HTMLAttributes<HTMLSpanElement>
contentWrapperProps?: HTMLAttributes<HTMLDivElement>
renderContent?: ((options: {
    index: number;
    isActive: boolean;
    defaultIcon: ReactNode;
    defaultLabel: ReactNode;
    defaultContent: ReactNode;
    vertical: boolean;
}) => ReactNode)