import type { ActionableProps } from "../Actionable"; import type { ViewProps } from "../View"; import type * as G from "../../types/global"; import type { Attributes, ClassName } from "@reshaped/headless"; import type React from "react"; export type Props = { /** Component padding, base unit multiplier */ padding?: G.Responsive; /** Remove side borders and apply negative margins, base unit multiplier */ bleed?: G.Responsive; /** Highlight the component when component is used for an active state */ selected?: boolean; /** Apply elevated styles to the component */ elevated?: boolean; /** Node for inserting children */ children?: React.ReactNode; /** Callback when the component is clicked, turns component into a button */ onClick?: ActionableProps["onClick"]; /** URL to navigate to when the component is clicked, turns component into a link */ href?: string; /** Additional classname for the root element */ className?: ClassName; /** Additional attributes for the root element */ attributes?: Attributes & ActionableProps["attributes"]; /** Custom component tag name * @default "div" */ as?: TagName extends keyof React.JSX.IntrinsicElements ? TagName : keyof React.JSX.IntrinsicElements; } & Pick;