/** * Consent Button Web Component * * A styled button for consent pages that works in: * - Browser (vanilla HTML) * - React (via @lit/react wrapper) * - SSR (Declarative Shadow DOM) * * @module components/consent-button */ import { LitElement } from 'lit'; /** * Button variants matching AgentShield design system */ export type ButtonVariant = 'primary' | 'secondary'; /** * ConsentButton - A themed button component * * @example * ```html * Allow Access * Cancel * ``` * * @csspart button - The native button element * @cssprop --consent-primary - Primary brand color (default: #2563EB) */ export declare class ConsentButton extends LitElement { static formAssociated: boolean; private internals; constructor(); /** * Button variant - 'primary' (filled) or 'secondary' (outlined) */ variant: ButtonVariant; /** * Button type attribute (button, submit, reset) */ type: 'button' | 'submit' | 'reset'; /** * Disabled state */ disabled: boolean; /** * Full width mode */ fullWidth: boolean; /** * Loading state - shows spinner and disables button */ loading: boolean; static styles: import("lit").CSSResult; private handleClick; render(): import("lit").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { 'consent-button': ConsentButton; } } //# sourceMappingURL=consent-button.d.ts.map