/**
 * @license
 * Copyright 2023 Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { BaseAdapter, IBaseAdapter } from '../core/base/base-adapter';
import { ForgeRippleCapableSurface } from '../ripple';
import { ICheckboxComponent } from './checkbox';
export interface ICheckboxAdapter extends IBaseAdapter {
    isAttachedToDOM(): boolean;
    isDisabled(): boolean;
    isChecked(): boolean;
    isIndeterminate(): boolean;
    setRootClass(classes: string | string[]): void;
    removeRootClass(classes: string | string[]): void;
    setWrapperClass(classes: string | string[]): void;
    removeWrapperClass(classes: string | string[]): void;
    setDense(value: boolean): void;
    initialize(): void;
    disconnect(): void;
    setNativeAttribute(qualifiedName: string, value: string): void;
    removeNativeAttribute(qualifiedName: string): void;
    listen(qualifiedName: string, callback: () => void, onRoot?: boolean): void;
    unlisten(qualifiedName: string, callback: () => void, onRoot?: boolean): void;
    installPropertyChangeHooks(callback: () => void): void;
    uninstallPropertyChangeHooks(): void;
    setInputAttributeObserver(listener: (name: string, value: string) => void): void;
}
export declare class CheckboxAdapter extends BaseAdapter<ICheckboxComponent> implements ICheckboxAdapter, ForgeRippleCapableSurface {
    private _wrapperElement;
    private _rootElement;
    private _inputElement;
    private _labelElement;
    private _inputFocusHandler;
    private _inputBlurHandler;
    private _inputMutationObserver;
    private _rippleInstance;
    private _destroyUserInteractionListener;
    constructor(component: ICheckboxComponent);
    get root(): Element;
    get unbounded(): boolean | undefined;
    get disabled(): boolean | undefined;
    initialize(): void;
    private _deferRippleInitialization;
    setDense(value: boolean | undefined): void;
    isAttachedToDOM(): boolean;
    private _configureElements;
    private _setHostAttribute;
    private _removeHostAttribute;
    disconnect(): void;
    setRootClass(classes: string | string[]): void;
    removeRootClass(classes: string | string[]): void;
    setWrapperClass(classes: string | string[]): void;
    removeWrapperClass(classes: string | string[]): void;
    setNativeAttribute(qualifiedName: string, value: string): void;
    isDisabled(): boolean;
    isChecked(): boolean;
    isIndeterminate(): boolean;
    removeNativeAttribute(qualifiedName: string): void;
    installPropertyChangeHooks(callback: () => void): void;
    listen(qualifiedName: string, callback: () => void, onRoot?: boolean): void;
    unlisten(qualifiedName: string, callback: () => void, onRoot?: boolean): void;
    uninstallPropertyChangeHooks(): void;
    setInputAttributeObserver(listener: (name: string, value: string) => void): void;
    private _validDescriptor;
    private _attachInternalInputListeners;
    private _detachInternalInputListeners;
    private _handleInputFocusListener;
    private _handleInputBlurListener;
    private _createRipple;
}
