import { JSXInterface } from '../jsx'; import { CSSResultGroup, ControlElement, PropertyValues, TemplateResult } from '@refinitiv-ui/core'; import '../icon/index.js'; /** * Form control for selecting one or several options * @fires checked-changed - Fired when the user checks or unchecks the checkbox. The event is not fired if the `checked` property is changed programmatically. * * @attr {boolean} readonly - Set readonly state * @prop {boolean} [readonly=false] - Set readonly state * * @attr {boolean} disabled - Set disabled state * @prop {boolean} [disabled=false] - Set disabled state */ export declare class Checkbox extends ControlElement { /** * Element version number * @returns version number */ static get version(): string; protected readonly defaultRole: string | null; /** * A `CSSResultGroup` that will be used * to style the host, slotted children * and the internal template of the element. * @return CSS template */ static get styles(): CSSResultGroup; /** * Value of checkbox */ checked: boolean; /** * Set indeterminate state */ indeterminate: boolean; /** * Getter for label */ private labelEl; /** * Called before update() to compute values needed during the update. * @param changedProperties Properties that has changed * @returns {void} */ protected willUpdate(changedProperties: PropertyValues): void; /** * Called once after the component is first rendered * @param changedProperties map of changed properties with old values * @returns {void} */ protected firstUpdated(changedProperties: PropertyValues): void; /** * Run when checkbox is tapped * @param event Tap event * @returns {void} */ private onTap; /** * Handles key down event * @param event Key down event object * @returns {void} */ private onKeyDown; /** * Change checked state and fire * checked-changed event * @return {void} */ private handleChangeChecked; /** * A `TemplateResult` that will be used * to render the updated internal template. * @return {TemplateResult} Render template */ protected render(): TemplateResult; } declare global { interface HTMLElementTagNameMap { 'ef-checkbox': Checkbox; } } declare global { interface HTMLElementTagNameMap { 'ef-checkbox': Checkbox; } namespace JSX { interface IntrinsicElements { 'ef-checkbox': Partial | JSXInterface.ControlHTMLAttributes; } } } export {};