import{type PropertyValues,type TemplateResult}from'lit';import{LyraElement}from'../../../internal/lyra-element.js';import type{LyraAppearance,LyraSize,LyraVariant}from'../../../internal/variants.js';import{type FormOwnerValue}from'../../../internal/direct-form-associated.js';import{type LyraFormValidator}from'../form-validator.js'; /** Alias of the library's one semantic-tone vocabulary, kept as an exported name so existing * imports of `ButtonVariant` keep resolving while `internal/variants.ts` holds the only * definition. */ export type ButtonVariant=LyraVariant|'default'|'primary'|'text'; /** The shared appearance vocabulary (`accent`/`filled`/`outlined`/`filled-outlined`/`plain`) plus * this component's two own tiers, `link` and `quiet`. */ export type ButtonAppearance=LyraAppearance|'link'|'quiet';export type ButtonType='button'|'submit'|'reset'; /** Native `formenctype` vocabulary, applied to the submission this button triggers. */ export type ButtonFormEnctype='application/x-www-form-urlencoded'|'multipart/form-data'|'text/plain'; /** Native `formmethod` vocabulary. `'dialog'` closes an ancestor `` instead of submitting. */ export type ButtonFormMethod='get'|'post'|'dialog';export interface LyraButtonEventMap{focus:FocusEvent;blur:FocusEvent;'lr-invalid':CustomEvent;} /** * `` — a generic action-button primitive. Renders an internal native * `