import { OnInit, SimpleChanges, ElementRef } from "@angular/core";
import { EventEmitter } from "@angular/core";
import { BehaviorSubject } from "rxjs";
import { CssUtils } from "../utils";
import { BlurEvent, RadioGroupProperties } from "./dxc-radio-group.types";
import { RadioGroupService } from "./services/radio-group.service";
import { RadioItem } from "./interfaces/radio-item.interface";
import * as i0 from "@angular/core";
export declare class DxcRadioGroupComponent implements OnInit {
    private utils;
    private service;
    styles: any;
    label: string;
    helperText: string;
    name: string;
    value?: string;
    readOnly: boolean;
    disabled: boolean;
    optional: boolean;
    optionalItemLabel?: string;
    defaultValue: string;
    options: RadioItem[];
    stacking: "row" | "column";
    tabIndex: number;
    error: string;
    onChange: EventEmitter<string>;
    onBlur: EventEmitter<BlurEvent>;
    inputRef: ElementRef;
    radioGroupId: string;
    optionList: RadioItem[];
    indexToFocus: number;
    private isControlled;
    private subscriptionOptions;
    private subcriptionNewValue;
    onFocusOutHandler($event: any): void;
    onKeyHandler($event: any): void;
    defaultInputs: BehaviorSubject<RadioGroupProperties>;
    constructor(utils: CssUtils, service: RadioGroupService);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    focusHandler(): void;
    /**
     * Closest not disabled option to focus
     */
    indexToFocusHandler(direction: string): void;
    getDynamicStyle(inputs: any): string;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DxcRadioGroupComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DxcRadioGroupComponent, "dxc-radio-group", never, { "label": "label"; "helperText": "helperText"; "name": "name"; "value": "value"; "readOnly": "readOnly"; "disabled": "disabled"; "optional": "optional"; "optionalItemLabel": "optionalItemLabel"; "defaultValue": "defaultValue"; "options": "options"; "stacking": "stacking"; "tabIndex": "tabIndex"; "error": "error"; }, { "onChange": "onChange"; "onBlur": "onBlur"; }, never, never>;
}
//# sourceMappingURL=dxc-radio-group.component.d.ts.map