import type { ButtonHTMLAttributes, HTMLAttributes, ReactElement, ReactNode } from 'react'; import type { SetRequired } from 'type-fest'; import type { AsChildProps } from '../utils/AsChildProps'; type IconFrameRootVariant = 'level0' | 'level1' | 'level2' | 'outline' | 'iconOnly' | 'closeButton'; type IconFrameVariant = Exclude; type IconFrameRootSize = 'xxSmall' | 'xSmall' | 'small' | 'medium' | 'large' | 'xLarge'; type IconFrameSize = Exclude; type IconFrameRootProps = { className?: string; icon: ReactElement; text?: string; variant: IconFrameRootVariant; size: IconFrameRootSize; asChild?: boolean; clickable?: boolean; children?: ReactNode; disabled?: boolean; tooltipContent?: ReactNode; }; type LimitedProps = Omit & { variant: IconFrameVariant; }; type IconFrameProps = LimitedProps & AsChildProps>; type IconButtonProps = LimitedProps & AsChildProps, 'aria-label'>>; declare const frameVariants: import("tailwind-variants").TVReturnType<{ variant: { level0: string; level1: string; level2: string; outline: string; iconOnly: string; closeButton: string; sidebar: string; sidebarGlobal: string; }; clickable: { true: string; }; size: { xxSmall: string; xSmall: string; small: string; medium: string; large: string; xLarge: string; }; disabled: { true: string; false: string; }; }, undefined, "relative flex shrink-0 items-center justify-center outline outline-1 -outline-offset-1 focus-visible:outline-1", { responsiveVariants?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | { size?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | undefined; variant?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | undefined; disabled?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | undefined; clickable?: boolean | ("sm" | "md" | "lg" | "xl" | "2xl")[] | undefined; } | undefined; } & import("tailwind-variants/dist/config.js").TWMConfig & { twMerge: true; twMergeConfig: { extend: { classGroups: { type: { type: string[]; }[]; 'text-wrap': string[]; rounded: { rounded: string[]; }[]; }; }; }; }, { variant: { level0: string; level1: string; level2: string; outline: string; iconOnly: string; closeButton: string; sidebar: string; sidebarGlobal: string; }; clickable: { true: string; }; size: { xxSmall: string; xSmall: string; small: string; medium: string; large: string; xLarge: string; }; disabled: { true: string; false: string; }; }, undefined, import("tailwind-variants").TVReturnType<{ variant: { level0: string; level1: string; level2: string; outline: string; iconOnly: string; closeButton: string; sidebar: string; sidebarGlobal: string; }; clickable: { true: string; }; size: { xxSmall: string; xSmall: string; small: string; medium: string; large: string; xLarge: string; }; disabled: { true: string; false: string; }; }, undefined, "relative flex shrink-0 items-center justify-center outline outline-1 -outline-offset-1 focus-visible:outline-1", import("tailwind-variants/dist/config.js").TVConfig<{ variant: { level0: string; level1: string; level2: string; outline: string; iconOnly: string; closeButton: string; sidebar: string; sidebarGlobal: string; }; clickable: { true: string; }; size: { xxSmall: string; xSmall: string; small: string; medium: string; large: string; xLarge: string; }; disabled: { true: string; false: string; }; }, { variant: { level0: string; level1: string; level2: string; outline: string; iconOnly: string; closeButton: string; sidebar: string; sidebarGlobal: string; }; clickable: { true: string; }; size: { xxSmall: string; xSmall: string; small: string; medium: string; large: string; xLarge: string; }; disabled: { true: string; false: string; }; }>, unknown, unknown, undefined>>; declare const IconFrameRoot: import("react").ForwardRefExoticComponent>; export type { IconButtonProps, IconFrameProps, IconFrameRootProps, IconFrameRootSize, IconFrameSize, IconFrameVariant, }; export { frameVariants, IconFrameRoot };