import { CLAlign, CLBorderRadius, CLButtonTypes, CLButtonTags, CLButtonForwardRefFunction, CLColors, CLColorVariants, CLIconNames, CLIconSizes, CLLinkTarget, CLSizes } from '../../../index.ts'; export interface CLButtonProps { /** Sets the active state of the button. When set to true, the button will no longer receive pointer events */ active?: boolean; /** Set the horizontal alignment of content. The property can be one of `CLAlign`, e.g. `CLAlign.Left` */ alignContent?: CLAlign; /** Sets the aria-label on the button It should be used when there is no discernable text present, or if this is an icon only */ ariaLabel?: string; /** Set the HTML tag of the text element. The property can be one of `CLButtonTags`, e.g. `button`. */ as?: CLButtonTags; /** The border radius size. The property can be one of `CLBorderRadius`, e.g. `CLBorderRadius.Medium`. */ borderRadius?: CLBorderRadius; /** A `boolean` value which dictates the busy state of the button */ busy?: boolean; /** Sets the color of the button. The property can be one of `CLColors`, e.g. `CLColors.Primary`. */ color?: CLColors; /** A `boolean` value which dictates the disabled state of the button */ disabled?: boolean; /** The `elevated` property displays a shadow to indicate elevation. */ elevated?: boolean; /** The form whom the button belongs to. Useful for when buttons are not within a `form` element. */ form?: string; /** A callback function which provides a reference to the button */ forwardRef?: CLButtonForwardRefFunction; /** Sets the height of the button, it's default value is `auto`. */ height?: string; /** Sets the href attribute on the button element. This is useful when the button acts as a link. */ href?: string; /** Sets the icon which is positioned after the button's slot content. */ iconAfter?: CLIconNames | null; /** Sets the icon which is positioned before the button's slot content. */ iconBefore?: CLIconNames | null; /** A boolean value which dictates whether icons should be filled. */ iconFilled?: boolean; /** Sets the icon size for both `iconBefore` and `iconAfter`. The property can be one of `CLIconSizes`, e.g. `CLIconSizes.Medium`. */ iconSize?: CLIconSizes; /** A callback function to handle click events. */ onClick?: (event?: Event) => void; /** When set to `true` it will display the button as a `CLPill`. This prop is explicity used by `CLPill` and has no effect when used independently. */ pill?: boolean; /** When set to `false` it will not render with rounded corners. */ rounded?: boolean; /** Sets the button size. The property can be one of `CLSizes`, e.g. `CLSizes.Medium`. */ size?: CLSizes; /** Sets the target attribute on the Link element. The property can be one of `CLLinkTarget`, e.g. `CLLinkTarget.Self` */ target?: CLLinkTarget; /** Sets a custom ID used for unit tests. */ testId?: string; /** Sets the title attribute. */ title?: string; /** Sets the button type. The property can be one of `CLButtonTypes`, e.g. `CLButtonTypes.Submit`. */ type?: CLButtonTypes; /** Sets the color variant. The property can be on of `CLColorVariants`, e.g `CLColorVariants.Soft`. */ variant?: CLColorVariants; /** Sets the width of the button, it's default value is `auto`. */ width?: string; /** When set to `true`, it will remove any horizontal and vertical padding of the slot content. */ wrap?: boolean; } declare const _default: __VLS_WithTemplateSlots & Readonly<{}>, { size: CLSizes; color: CLColors; variant: CLColorVariants; rounded: boolean; testId: string; type: CLButtonTypes; form: string; title: string; onClick: (event?: Event) => void; target: CLLinkTarget; width: string; height: string; borderRadius: CLBorderRadius; iconFilled: boolean; iconSize: CLIconSizes; href: string; active: boolean; alignContent: CLAlign; ariaLabel: string; as: CLButtonTags; busy: boolean; disabled: boolean; elevated: boolean; forwardRef: CLButtonForwardRefFunction; iconAfter: CLIconNames | null; iconBefore: CLIconNames | null; pill: boolean; wrap: boolean; }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, { buttonRef: unknown; }, any>, { default?(_: {}): any; }>; export default _default; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };