import { BootstrapElement, type Size, type Variant } from '@bootstrap-wc/core'; export type ButtonType = 'button' | 'submit' | 'reset'; export type ButtonStyle = 'solid' | 'outline' | 'link'; /** * `` — Bootstrap button as a web component. * * The host element IS the button. Bootstrap's `.btn`, `.btn-{variant}`, size * and state classes are applied to the host, so that container components * (`.btn-group > .btn + .btn`) can style it correctly across shadow * boundaries via slot flattening. A shadow slot simply projects the author's * content; form submission, activation, and link navigation are handled on * the host. * * Set `variant="none"` to render the bare `.btn` base class without a color * variant. Set `toggle` to have user activation flip the `active` state * (matches Bootstrap's `data-bs-toggle="button"` plugin behavior). * * @slot - Button content (text and/or icon). * @fires bs-click - Bubbles on user activation (suppressed when disabled). */ export declare class BsButton extends BootstrapElement { static formAssociated: boolean; variant: Variant | 'none'; buttonStyle: ButtonStyle; size?: Size; type: ButtonType; disabled: boolean; active: boolean; toggle: boolean; href?: string; target?: string; rel?: string; private _internals?; constructor(); connectedCallback(): void; disconnectedCallback(): void; protected hostClasses(): string; updated(changed: Map): void; private _onClick; private _onKeydown; render(): import("lit-html").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { 'bs-button': BsButton; } } //# sourceMappingURL=button.d.ts.map