import React from 'react'; import Button from '../new-button/variants/default/button'; import { type LinkButtonProps } from '../new-button/variants/default/link'; import { type IconButtonProps } from '../new-button/variants/icon/button'; import { type LinkIconButtonProps } from '../new-button/variants/icon/link'; import { buttonAppearances } from './button-appearances'; import { buttonSpacing } from './button-spacing'; import { iconButtonAppearances } from './icon-button-appearances'; import { iconButtonShapes } from './icon-button-shapes'; import { iconButtonSpacing } from './icon-button-spacing'; import { linkButtonAppearances } from './link-button-appearances'; type DefaultButtonVariant = { name: 'Button'; Component: typeof Button; elementType: typeof HTMLButtonElement; appearances: typeof buttonAppearances; spacing: typeof buttonSpacing; }; type LinkButtonVariant = { name: 'LinkButton'; Component: typeof LinkButtonRender; elementType: typeof HTMLAnchorElement; appearances: typeof linkButtonAppearances; spacing: typeof buttonSpacing; }; type IconButtonVariant = { name: 'IconButton'; Component: typeof IconButtonRender; elementType: typeof HTMLButtonElement; appearances: typeof iconButtonAppearances; spacing: typeof iconButtonSpacing; shape: typeof iconButtonShapes; }; type LinkIconButtonVariant = { name: 'LinkIconButton'; Component: typeof LinkIconButtonRender; elementType: typeof HTMLAnchorElement; appearances: typeof iconButtonAppearances; spacing: typeof iconButtonSpacing; shape: typeof iconButtonShapes; }; export type Variant = { Button: DefaultButtonVariant; LinkButton: LinkButtonVariant; IconButton: IconButtonVariant; LinkIconButton: LinkIconButtonVariant; }; declare const LinkButtonRender: React.ForwardRefExoticComponent & { href?: LinkButtonProps['href']; }> & React.RefAttributes>; declare const IconButtonRender: React.ForwardRefExoticComponent & { icon?: IconButtonProps['icon']; label?: IconButtonProps['label']; }> & React.RefAttributes>; declare const LinkIconButtonRender: React.ForwardRefExoticComponent & { href?: LinkIconButtonProps['href']; icon?: LinkIconButtonProps['icon']; label?: LinkIconButtonProps['label']; }> & React.RefAttributes>; declare const variants: Variant; export default variants;