import { EventEmitter } from '../../stencil-public-runtime'; /** * Checkboxes are used to let a user choose one or more options from a limited * number of options. * * @slot hint - Optional hint element to be displayed with the checkbox. * @slot label - The slotted label. If both the label property and the label slot are present, only the label slot will be displayed. * @part label - The label content. * @part input - The native input element. */ export declare class CatCheckbox { private readonly _id; private get id(); private input; hostElement: HTMLElement; hasSlottedLabel: boolean; hasSlottedHint: boolean; internals: ElementInternals; /** * Checked state of the checkbox */ checked: boolean; /** * Indeterminate state of the checkbox */ indeterminate: boolean; /** * Disabled state of the checkbox */ disabled: boolean; /** * A unique identifier for the input. */ identifier?: string; /** * Label of the checkbox which is presented in the UI */ label: string; /** * Visually hide the label, but still show it to assistive technologies like screen readers. */ labelHidden: boolean; /** * The name of the input. */ name?: string; /** * Required state of the checkbox. */ required: boolean; /** * The value of the checked checkbox. */ value?: any; /** * The value of the unchecked checkbox. */ noValue?: any; /** * The resolved value of the checkbox, based on the checked state and value. */ resolvedValue: any; /** * Optional hint text(s) to be displayed with the checkbox. */ hint?: string | string[]; /** * Whether the label should appear to the left of the checkbox. */ labelLeft: boolean; /** * The alignment of the checkbox. */ alignment: 'center' | 'top' | 'bottom'; /** * Attributes that will be added to the native HTML input element. */ nativeAttributes?: { [key: string]: string; }; /** * A unique identifier for the underlying native element that is used for * testing purposes. The attribute is added as `data-test` attribute and acts * as a shorthand for `nativeAttributes={ 'data-test': 'test-Id' }`. */ testId?: string; /** * Whether the label need a marker to shown if the input is required or optional. */ requiredMarker?: 'none' | 'required' | 'optional' | 'none!' | 'optional!' | 'required!'; /** * Emitted when the checked status of the checkbox is changed. */ catChange: EventEmitter; /** * Emitted when the checkbox received focus. */ catFocus: EventEmitter; /** * Emitted when the checkbox loses focus. */ catBlur: EventEmitter; componentWillLoad(): void; componentWillRender(): void; /** * Programmatically move focus to the checkbox. Use this method instead of * `input.focus()`. * * @param options An optional object providing options to control aspects of * the focusing process. */ doFocus(options?: FocusOptions): Promise; /** * Programmatically remove focus from the checkbox. Use this method instead of * `input.blur()`. */ doBlur(): Promise; render(): any; private get hasHint(); private onInput; private onFocus; private onBlur; private updateResolved; }