import { LitElement } from 'lit'; export type WsButtonVariant = 'primary' | 'secondary' | 'outlined' | 'text'; export type WsButtonSize = 'small' | 'medium' | 'large'; /** * Workshop button primitive. * * @slot - Button label content. * @slot icon - Optional leading icon content. * @csspart button - The native button element. */ export declare class WsButton extends LitElement { static styles: import("lit").CSSResult; /** Visual treatment matching the Workshop button variants. */ variant: WsButtonVariant; /** Button density and height. */ size: WsButtonSize; /** Disables interaction. */ disabled: boolean; /** Shows progress and temporarily disables interaction. */ loading: boolean; /** Accessible label forwarded to the internal native button. */ accessibleLabel?: string; private hasIcon; private hasLabel; private readonly contentObserver; connectedCallback(): void; disconnectedCallback(): void; render(): import("lit-html").TemplateResult<1>; private renderContent; private renderSpinner; private syncSlottedState; } declare global { interface HTMLElementTagNameMap { 'ws-button': WsButton; } } //# sourceMappingURL=ws-button.d.ts.map