import { type FC, type HTMLAttributeAnchorTarget, type PropsWithChildren, Ref } from "react"; import { ButtonProps } from "../CoreComponents"; /** * Defines the color schemes available for the BlokButton component. */ export type ButtonColorScheme = "primary" | "danger" | "warning" | "success" | "info" | "neutral" | "ai"; /** * Defines the variants available for the BlokButton component. */ export type ButtonVariant = "solid" | "outline" | "ghost" | "link" | "toggle" | "ai" | "navigation" | "filter"; declare module "@mui/material/Button" { interface ButtonPropsVariantOverrides { toggle: true; ai: true; navigation: true; filter: true; link: true; } interface ButtonPropsColorOverrides { ai: true; } interface ButtonPropsSizeOverrides { extraSmall: true; } } declare module "@mui/material/CircularProgress" { interface CircularProgressPropsColorOverrides { ai: true; } } export interface BlokButtonProps extends Pick { colorScheme?: ButtonColorScheme; variant?: ButtonVariant; isActive?: boolean; isDisabled?: boolean; isLoading?: boolean; loadingText?: string; isFloating?: boolean; id: string; className?: string; target?: HTMLAttributeAnchorTarget; buttonType?: "submit" | "reset" | "button"; count?: number | string; onContextMenu?: (event?: unknown) => unknown | Promise; isIconButton?: boolean; ref?: Ref; } /** * BlokButton component that wraps the MUI Button component with additional props and styles. */ export declare const BlokButton: FC>; //# sourceMappingURL=BlokButton.d.ts.map