import { ButtonColors, ButtonSizes } from './types.ts';
import { ComponentProps } from "react";
/**
* Defines the props for the NvButton component.
*
* @param {ButtonSizes} size - Predefined button size
* @param {ButtonColors} color - Predefined button color
* @param {boolean} outline - If true, the button is outlined
* @param {boolean} big - If true, the button is taller and longer
* @param {boolean} disabled - If true, the button is disabled
* @param {ReactNode} children - The content of the button
* @param {func} onClick - Callback fired when the button is clicked
*/
export interface NvButtonProps extends ComponentProps<"button"> {
/** Predefined button size */
size?: ButtonSizes;
/** Predefined button color */
color?: ButtonColors;
/** If true, the button is outlined. */
outline?: boolean;
/** If true, the button is taller and longer. */
big?: boolean;
}
/**
* NvButton component for displaying a customizable button.
* @param {ButtonSizes} size - The size of the button. Defaults to responsiveText.
* @param {ButtonColors} color - The color of the button. Defaults to primary.
* @param {boolean} outline - Indicates if the button has an outline style. Defaults to false.
* @param {boolean} big - Indicates if the button has a bigger size. Defaults to false.
* @returns A customizable button component.
*/
declare const NvButton: ({ size, color, outline, big, type, className, children, ...nativeProps }: NvButtonProps) => import("react/jsx-runtime").JSX.Element;
export default NvButton;