import type { PropertyValues } from 'lit'; import { Component } from '../component'; import type { FormComponentProps } from '../component'; export type SwitchSize = 'default' | 'large'; export interface SwitchProps extends FormComponentProps { checked?: boolean; initialChecked?: boolean; size?: SwitchSize; onchange?: GlobalEventHandlers['onchange']; } declare const Switch_base: import("../../utils/types").Constructor & typeof Component; export declare class Switch extends Switch_base implements SwitchProps { #private; static shadowRootOptions: { delegatesFocus: boolean; clonable?: boolean; customElementRegistry?: CustomElementRegistry; mode: ShadowRootMode; serializable?: boolean; slotAssignment?: SlotAssignmentMode; }; static styles: import("lit").CSSResult[][]; static get properties(): { initialChecked: { type: BooleanConstructor; attribute: string; }; providedChecked: { type: BooleanConstructor; reflect: boolean; attribute: string; }; size: { type: StringConstructor; reflect: boolean; }; }; /** * Switch size. */ size: SwitchProps['size']; /** * We use a different property name internally so we can still * keep track of the property while we can use custom getter/setter to * set and reflect the `checked` attribute. */ providedChecked: SwitchProps['checked']; /** * Should the switch be checked initially or when the form it is in is reset. */ initialChecked: SwitchProps['initialChecked']; static define(): void; createRenderRoot(): DocumentFragment | HTMLElement; connectedCallback(): Promise; disconnectedCallback(): void; update(changedProperties: PropertyValues): void; render(): import("lit-html").TemplateResult<1>; get input(): HTMLInputElement | null; set checked(checked: boolean); get checked(): boolean; formResetCallback(): void; formStateRestoreCallback(state: unknown): void; formDisabledCallback(disabled: boolean): void; } declare global { interface HTMLElementTagNameMap { 'm-switch': Switch; } } export {};