import { EventEmitter, OnChanges, OnInit, AfterViewInit } from '@angular/core';
import { FudisSelectionGroupInputSize, FudisRadioButtonChangeEvent } from '../../../types/forms';
import { FudisIdService } from '../../../services/id/id.service';
import { FudisComponentChanges } from '../../../types/miscellaneous';
import { ControlComponentBaseDirective } from '../../../directives/form/control-component-base/control-component-base.directive';
import { FudisFocusService } from '../../../services/focus/focus.service';
import * as i0 from "@angular/core";
export declare class RadioButtonGroupComponent extends ControlComponentBaseDirective implements OnInit, OnChanges, AfterViewInit {
    private _document;
    constructor(_document: Document, _focusService: FudisFocusService, _idService: FudisIdService);
    private _guidance;
    /**
     * Width of Radio Button Group
     */
    size: FudisSelectionGroupInputSize;
    /**
     * Emit form control and changed option when one option is clicked
     */
    handleChange: EventEmitter<FudisRadioButtonChangeEvent>;
    /**
     * Subscription for handling the valueChanges observable
     */
    private _subscription;
    ngOnInit(): void;
    /**
     * Add value and validity check when control value changes
     */
    ngOnChanges(changes: FudisComponentChanges<RadioButtonGroupComponent>): void;
    ngAfterViewInit(): void;
    /**
     * Return first radio child input when it is not disabled
     */
    private _getFirstEnabledRadio;
    triggerEmit(id: string, label: string): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<RadioButtonGroupComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<RadioButtonGroupComponent, "fudis-radio-button-group", never, { "size": { "alias": "size"; "required": false; }; }, { "handleChange": "handleChange"; }, never, ["fudis-radio-button", "fudis-error-message"], false, never>;
}
