@navikt/ds-react
Version:
React components from the Norwegian Labour and Welfare Administration.
51 lines (50 loc) • 1.51 kB
TypeScript
import React from "react";
import { OverridableComponent } from "../util/types/index.js";
export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
/**
* Button content.
*/
children?: React.ReactNode;
/**
* Changes design and interaction-visuals.
* @default "primary"
*/
variant?: "primary" | "primary-neutral" | "secondary" | "secondary-neutral" | "tertiary" | "tertiary-neutral" | "danger";
/**
* Changes padding, height, and font-size.
* @default "medium"
*/
size?: "medium" | "small" | "xsmall";
/**
* **Avoid using if possible for accessibility purposes**.
*
* Prevent the user from interacting with the button: it cannot be pressed or focused.
*/
disabled?: boolean;
/**
* Replaces button content with a Loader component, keeps width.
* @default false
*/
loading?: boolean;
/**
* Button Icon.
*/
icon?: React.ReactNode;
/**
* Icon position in Button.
* @default "left"
*/
iconPosition?: "left" | "right";
}
/**
* A button component
* @see [📝 Documentation](https://aksel.nav.no/komponenter/core/button)
* @see 🏷️ {@link ButtonProps}
* @see [🤖 OverridableComponent](https://aksel.nav.no/grunnleggende/kode/overridablecomponent) support
* @example
* ```jsx
* <Button>Klikk meg</Button>
* ```
*/
export declare const Button: OverridableComponent<ButtonProps, HTMLButtonElement>;
export default Button;