import { type ElementType } from 'react'; import { type PolymorphicComponentProps } from '@quotalab/headless-hooks'; import { type IconName } from '@quotalab/icons'; import { type vars } from '@quotalab/qds-token'; import { type ButtonBaseProps } from './@common/ButtonBase'; import { type ButtonBaseElementRecipeVariants } from './@common/ButtonBase/ButtonBase.css'; import { type ButtonBaseRootRecipeVariants } from './Button.css'; export declare const DEFAULT_BUTTON_ELEMENT = "button"; export declare const BUTTON_GAP: Record['size']>, keyof typeof vars.space>; type ButtonCommonProps = { leftSlot?: React.ReactNode; rightSlot?: React.ReactNode; /** * @deprecated `Button.Icon` 컴포넌트를 사용해서 leftSlot에 직접 명시해주세요. */ prefixIcon?: IconName; /** * @deprecated `Button.Icon` 컴포넌트를 사용해서 rightSlot에 직접 명시해주세요. */ suffixIcon?: IconName; hasDropdown?: boolean; width?: number | string; loading?: boolean; }; export type ButtonOwnProps = ButtonBaseProps & ButtonBaseRootRecipeVariants & ButtonCommonProps; export type ButtonProps = PolymorphicComponentProps>; type ButtonComponent = (props: ButtonProps) => React.ReactNode; /** * @param [variant=primary] * @param [size=medium] */ export declare const Button: ButtonComponent; export {}; //# sourceMappingURL=Button.d.ts.map