import type { AgComponentSelector } from '../interfaces/agComponent';
import type { AgCoreBeanCollection } from '../interfaces/agCoreBeanCollection';
import type { BaseEvents } from '../interfaces/baseEvents';
import type { BaseProperties } from '../interfaces/baseProperties';
import type { IPropertiesService } from '../interfaces/iProperties';
import { AgCheckbox } from './agCheckbox';
import type { AgCheckboxParams } from './agFieldParams';
import type { AgWidgetSelectorType } from './agWidgetSelectorType';
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export interface AgToggleButtonParams<TComponentSelectorType extends string> extends AgCheckboxParams<TComponentSelectorType> {
}
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export declare class AgToggleButton<TBeanCollection extends AgCoreBeanCollection<TProperties, TGlobalEvents, TCommon, TPropertiesService>, TProperties extends BaseProperties, TGlobalEvents extends BaseEvents, TCommon, TPropertiesService extends IPropertiesService<TProperties, TCommon>, TComponentSelectorType extends string> extends AgCheckbox<TBeanCollection, TProperties, TGlobalEvents, TCommon, TPropertiesService, TComponentSelectorType, AgToggleButtonParams<TComponentSelectorType>> {
    constructor(config?: AgToggleButtonParams<TComponentSelectorType>);
    setValue(value: boolean, silent?: boolean): this;
}
/** @internal AG_GRID_INTERNAL - Not for public use. Can change / be removed at any time. */
export declare const AgToggleButtonSelector: AgComponentSelector<AgWidgetSelectorType>;
