import { BooleanInput } from '@angular/cdk/coercion';
import { ElementRef, OnInit, Renderer2 } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import * as i0 from "@angular/core";
export declare const RADIO_CONTROL_VALUE_ACCESSOR: any;
/**
 * Create radio buttons or groups of buttons.
 * A value of a selected button is bound to a variable specified via ngModel.
 */
export declare class ButtonRadioDirective implements ControlValueAccessor, OnInit {
    protected el: ElementRef;
    private renderer;
    onChange: any;
    onTouched: any;
    radioElementsArray: Array<any>;
    /** Radio button value, will be set to `ngModel` */
    mdbRadio: any;
    /** If `true` — radio button can be unchecked */
    get uncheckable(): boolean;
    set uncheckable(value: BooleanInput);
    private _uncheckable;
    /** Current value of radio component or group */
    value: any;
    disabled: boolean;
    get isActive(): boolean;
    onClick(event?: any): void;
    constructor(el: ElementRef, renderer: Renderer2);
    ngOnInit(): void;
    onBlur(): void;
    writeValue(value: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ButtonRadioDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<ButtonRadioDirective, "[mdbRadio]", never, { "mdbRadio": "mdbRadio"; "uncheckable": "uncheckable"; "value": "value"; "disabled": "disabled"; }, {}, never, never, false, never>;
}
