import { type TemplateResult, type PropertyValues } from 'lit'; import { ButtonBase } from '@material/mwc-button/mwc-button-base'; import { type IconName } from '@equinor/fusion-wc-icon'; export type ButtonColor = 'primary' | 'secondary' | 'danger'; export type ButtonVariant = 'contained' | 'outlined' | 'ghost'; export type ButtonElementProps = Pick; /** * @tag fwc-button * * @attribute {boolean} dense - toggle if button should be dense * @attribute {string} label - label of button * @attribute {boolean} fullwidth - toggle to make button use full container width * @attribute {boolean} disabled - toggle if button is disabled * @attribute {boolean} trailingIcon - toggle if icon should be rendered right * @attribute {boolean} expandContent - toggle if content should be expanded (center aligned) * @attribute {boolean} ariaHasPopup - toggle if button has popup content * * @fires click * */ export declare class ButtonElement extends ButtonBase implements ButtonElementProps { /** * Leading icon to display in input * @See [`fwc-icon`](https://github.com/equinor/fusion-web-components/tree/main/packages/icon) * * @attribute {IconName} */ icon?: IconName; /** * @type {'primary' | 'secondary' | 'danger'} * @default primary */ color: ButtonColor; /** * @property * @type {'contained' | 'outlined' | 'ghost'} * @default contained */ variant: ButtonVariant; protected updated(changedProperties: PropertyValues): void; protected renderIcon(): TemplateResult; } export default ButtonElement;