/**
 * @license
 * Copyright Tyler Technologies, Inc. 
 * License: Apache-2.0
 */
import { BaseButtonFoundation, IBaseButtonFoundation } from '../button/base/base-button-foundation';
import { IIconButtonAdapter } from './icon-button-adapter';
import { IconButtonDensity, IconButtonShape, IconButtonTheme, IconButtonVariant } from './icon-button-constants';
export interface IIconButtonFoundation extends IBaseButtonFoundation {
    toggle: boolean;
    on: boolean;
    variant: IconButtonVariant;
    theme: IconButtonTheme;
    shape: IconButtonShape;
    density: IconButtonDensity;
}
export declare class IconButtonFoundation extends BaseButtonFoundation<IIconButtonAdapter> implements IIconButtonFoundation {
    private _toggle;
    private _on;
    private _variant;
    private _theme;
    private _shape;
    private _density;
    constructor(adapter: IIconButtonAdapter);
    protected _onClick(evt: MouseEvent): Promise<void>;
    private _onToggle;
    get toggle(): boolean;
    set toggle(value: boolean);
    get on(): boolean;
    set on(value: boolean);
    get variant(): IconButtonVariant;
    set variant(value: IconButtonVariant);
    get theme(): IconButtonTheme;
    set theme(value: IconButtonTheme);
    get shape(): IconButtonShape;
    set shape(value: IconButtonShape);
    get density(): IconButtonDensity;
    set density(value: IconButtonDensity);
}
