import React, { FC, ButtonHTMLAttributes, JSXElementConstructor, AnchorHTMLAttributes, PropsWithChildren, ForwardedRef } from 'react'; /** * All the component types allowed by the Button component. */ export type ButtonComponentType = 'button' | 'a' | JSXElementConstructor; /** * Base props of the Button component. */ export interface ButtonProps { href?: string; className?: string; variant?: 'primary' | 'secondary' | 'success' | 'white' | 'gray' | 'error' | 'none-variant'; size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | 'none'; startIcon?: React.ReactElement; endIcon?: React.ReactElement; circular?: boolean; Component?: C; loading?: boolean; rounded?: 'none' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | 'full'; children?: React.ReactNode; classes?: Partial>; fullWidth?: boolean; center?: boolean; active?: boolean; ref?: ForwardedRef; disableElevation?: boolean; } interface IButtonGroupProps { className?: string; rounded?: 'none' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl' | 'full'; } /** * The HTML props allowed by the Button component. These * props depend on the used component type (C). */ export type ButtonHTMLType = C extends 'a' ? AnchorHTMLAttributes : ButtonHTMLAttributes; type ButtonFC = FC & ButtonProps>; type ButtonType = (...args: Parameters>) => ReturnType>; declare const ButtonGroup: FC>; export { ButtonGroup }; declare const _default: ButtonType; export default _default; //# sourceMappingURL=index.d.ts.map