/**
 * @license
 * Copyright 2023 Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { BaseAdapter, IBaseAdapter } from '../../core/base/base-adapter';
import { ForgeRipple, ForgeRippleCapableSurface } from '../../ripple';
import { IChipComponent } from './chip';
import { IChipState } from './chip-constants';
export interface IChipAdapter extends IBaseAdapter {
    addRootListener(type: string, listener: (evt: Event) => void): void;
    removeRootListener(type: string, listener: (evt: Event) => void): void;
    addButtonListener(type: string, listener: (evt: Event) => void): void;
    removeButtonListener(type: string, listener: (evt: Event) => void): void;
    initializeRipple(): ForgeRipple;
    clearTypeClass(): void;
    addRootClass(className: string): void;
    removeRootClass(name: string): void;
    setCheckmarkVisibility(isVisible: boolean): void;
    setSelected(value: boolean): void;
    setDisabled(value: boolean): void;
    setDense(value: boolean): void;
    setDeleteButtonVisibility(isVisible: boolean, listener: (evt: KeyboardEvent) => void): void;
    setLeadingSlotVisibility(isVisible: boolean): void;
    getChipSetState(): IChipState | null;
    setFocus(): void;
    tryFocusDelete(): void;
    setEmulatedFocus(value: boolean): void;
    tryMoveFocusPrevious(): void;
    tryMoveFocusNext(): void;
}
export declare class ChipAdapter extends BaseAdapter<IChipComponent> implements IChipAdapter, ForgeRippleCapableSurface {
    private _rootElement;
    private _rippleInstance;
    private _buttonElement;
    private _deleteButton;
    private _deleteButtonTouchTarget;
    private _leadingSlotElement;
    private _checkmarkElement;
    constructor(component: IChipComponent);
    get root(): Element;
    get unbounded(): boolean | undefined;
    get disabled(): boolean | undefined;
    addRootListener(type: string, listener: (evt: Event) => void): void;
    removeRootListener(type: string, listener: (evt: Event) => void): void;
    addButtonListener(type: string, listener: (evt: Event) => void): void;
    removeButtonListener(type: string, listener: (evt: Event) => void): void;
    initializeRipple(): ForgeRipple;
    clearTypeClass(): void;
    addRootClass(className: string): void;
    removeRootClass(name: string): void;
    setCheckmarkVisibility(isVisible: boolean): void;
    setSelected(value: boolean): void;
    setDisabled(value: boolean): void;
    setDense(value: boolean): void;
    setDeleteButtonVisibility(isVisible: boolean, listener: (evt: KeyboardEvent) => void): void;
    setLeadingSlotVisibility(isVisible: boolean): void;
    getChipSetState(): IChipState | null;
    private _createDeleteButton;
    private _createDeleteButtonTouchTarget;
    setFocus(): void;
    tryFocusDelete(): void;
    setEmulatedFocus(value: boolean): void;
    tryMoveFocusNext(): void;
    tryMoveFocusPrevious(): void;
}
