/**
 * Copyright (c) Cisco Systems, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 */
import "../icon/Icon";
import { LitElement, PropertyValues, TemplateResult } from "lit";
export declare namespace Checkbox {
    export interface CheckboxChangeEventDetail {
        sourceEvent: Event;
        checked: boolean;
    }
    const ELEMENT_base: import("../../mixins/FocusMixin").FocusMixinReturnType<typeof LitElement>;
    /**
     * Fired when the checkbox state changes
     * @event checkbox-change
     * @type {CustomEvent<CheckboxChangeEventDetail>}
     */
    export class ELEMENT extends ELEMENT_base {
        autofocus: boolean;
        private _checked;
        get checked(): boolean;
        set checked(value: boolean);
        private _indeterminate;
        get indeterminate(): boolean;
        set indeterminate(value: boolean);
        private _disabled;
        get disabled(): boolean;
        set disabled(value: boolean);
        label: string;
        tabIndex: number;
        input: HTMLInputElement;
        static get styles(): import("lit").CSSResult[];
        private toggleCheckbox;
        private isCheckboxActive;
        handleClick(event: MouseEvent): void;
        handleKeyDown(event: KeyboardEvent): void;
        handleChange(event: Event): void;
        protected firstUpdated(changedProperties: PropertyValues): void;
        connectedCallback(): void;
        disconnectedCallback(): void;
        protected willUpdate(changedProperties: PropertyValues): void;
        protected updated(changedProperties: PropertyValues): void;
        private get checkboxIconName();
        private checkboxIconTemplate;
        private checkboxBoxTemplate;
        render(): TemplateResult<1>;
    }
    export {};
}
declare global {
    interface HTMLElementTagNameMap {
        "md-checkbox": Checkbox.ELEMENT;
    }
    interface HTMLElementEventMap {
        "checkbox-change": CustomEvent<Checkbox.CheckboxChangeEventDetail>;
    }
}
