import { CSSResultGroup, TemplateResult } from 'lit';
import 'element-internals-polyfill';
import '../../fp-icon/fp-icon';
import type FpCheckboxGroup from '../fp-checkbox-group';
import FinproElement from '../../../internals/finpro-element';
export declare const fpCheckboxTag = "fp-checkbox";
declare const FpCheckbox_base: import("@open-wc/form-control").Constructor<import("@open-wc/form-control").FormControlInterface> & typeof FinproElement;
/**
 * @tag fp-checkbox
 * @summary Finpro Checkbox component
 */
export default class FpCheckbox extends FpCheckbox_base {
    static get styles(): CSSResultGroup;
    /**
     * Sets the checked state for checkbox
     */
    checked: boolean;
    /**
     * Sets the checkbox value
     */
    value: string;
    /**
     * Sets checkbox as required
     */
    required: boolean;
    /**
     * Sets the disabled state for checkbox
     */
    disabled: boolean;
    /**
     * Sets the indeterminate state for checkbox
     */
    indeterminate: boolean;
    /**
     * Fires whenever user change the value of the checkbox.
     */
    private onChange;
    /**
     * Fires when checkbox is focused
     */
    private onFocus;
    /**
     * Fires when checkbox is blurred
     */
    private onBlur;
    checkboxElement: HTMLElement;
    protected field: FpCheckboxGroup | null;
    connectedCallback(): void;
    disconnectedCallback(): void;
    updated(changedProperties: Map<string, unknown>): void;
    update(changedProperties: Map<string, unknown>): void;
    /**
     * Focuses this option
     */
    focus(): void;
    /**
     * Blurs from this option
     */
    blur(): void;
    private handleChange;
    private handleFieldValueChange;
    render(): TemplateResult;
}
declare global {
    interface HTMLElementTagNameMap {
        [fpCheckboxTag]: FpCheckbox;
    }
}
export {};
//# sourceMappingURL=fp-checkbox.d.ts.map