import { Observable } from 'rxjs';
import { AfterViewInit, ChangeDetectorRef, NgZone, OnDestroy, QueryList } from '@angular/core';
import { ControlValueAccessor, NgControl } from '@angular/forms';
import { NtFormFieldControl } from '@ng-tangram/components/forms';
import { NtRadioChange, NtRadioComponent } from './radio.component';
export declare function getNtRdioGroupNonFunctionValueError(): Error;
export declare class NtRadioGroupComponent<T> extends NtFormFieldControl<T> implements ControlValueAccessor, AfterViewInit, OnDestroy {
    private _ngZone;
    private _changeDetectorRef;
    ngControl: NgControl;
    readonly id: string;
    private readonly _destroy;
    private _value;
    private _disabled;
    private _readonly;
    private _required;
    private _name;
    get value(): T | null;
    set disabled(value: boolean);
    get disabled(): boolean;
    get required(): boolean;
    set required(value: boolean);
    set readonly(value: boolean);
    get readonly(): boolean;
    get name(): string;
    set name(value: string);
    radios: QueryList<NtRadioComponent<T>>;
    private _compareWith;
    set compareWith(fn: (o1: any, o2: any) => boolean);
    readonly checkedChanges: Observable<NtRadioChange<T>>;
    private _onChange;
    private _onTouched;
    constructor(_ngZone: NgZone, _changeDetectorRef: ChangeDetectorRef, ngControl: NgControl);
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    writeValue(value: T): void;
    registerOnChange(fn: (_: any) => {}): void;
    registerOnTouched(fn: () => {}): void;
    focus(): void;
    private _initializeChecked;
    private _resetRadios;
    private _setCheckedByValue;
    private _checkedValue;
    private _setValues;
    private _updateRadioButtonNames;
}
