import * as _angular_core from '@angular/core';
import { AfterViewInit, ElementRef, Injector } from '@angular/core';
import _RadioButton from '@ui5/webcomponents/dist/RadioButton.js';
import { UI5CustomEvent } from '@ui5/webcomponents-base';
import * as i1 from '@fundamental-ngx/ui5-webcomponents/utils';

declare class RadioButton implements AfterViewInit {
    /**
     * Defines whether the component is disabled.
  
  **Note:** A disabled component is completely noninteractive.
     */
    disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Defines whether the component is read-only.
  
  **Note:** A read-only component isn't editable or selectable.
  However, because it's focusable, it still provides visual feedback upon user interaction.
     */
    readonly: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Defines whether the component is required.
     */
    required: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Defines whether the component is checked or not.
  
  **Note:** The property value can be changed with user interaction,
  either by clicking/tapping on the component,
  or by using the Space or Enter key.
  
  **Note:** Only enabled radio buttons can be checked.
  Read-only radio buttons are not selectable, and therefore are always unchecked.
     */
    checked: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /**
     * Defines the text of the component.
     */
    text: _angular_core.InputSignal<string | undefined>;
    /**
     * Defines the value state of the component.
     */
    valueState: _angular_core.InputSignal<"None" | "Positive" | "Critical" | "Negative" | "Information" | undefined>;
    /**
     * Determines the name by which the component will be identified upon submission in an HTML form.
  
  Radio buttons with the same `name` will form a radio button group.
  
  **Note:** By this name the component will be identified upon submission in an HTML form.
  
  **Note:** The selection can be changed with `ARROW_UP/DOWN` and `ARROW_LEFT/RIGHT` keys between radio buttons in same group.
  
  **Note:** Only one radio button can be selected per group.
     */
    name: _angular_core.InputSignal<string | undefined>;
    /**
     * Defines the form value of the component.
  When a form with a radio button group is submitted, the group's value
  will be the value of the currently selected radio button.
     */
    value: _angular_core.InputSignal<string | undefined>;
    /**
     * Defines whether the component text wraps when there is not enough space.
  
  **Note:** for option "Normal" the text will wrap and the words will not be broken based on hyphenation.
     */
    wrappingType: _angular_core.InputSignal<"None" | "Normal" | undefined>;
    /**
     * Defines the accessible ARIA name of the component.
     */
    accessibleName: _angular_core.InputSignal<string | undefined>;
    /**
     * Defines the IDs of the elements that label the component.
     */
    accessibleNameRef: _angular_core.InputSignal<string | undefined>;
    /**
     * Fired when the component checked state changes.
     */
    ui5Change: _angular_core.OutputEmitterRef<UI5CustomEvent<_RadioButton, "change">>;
    elementRef: ElementRef<_RadioButton>;
    injector: Injector;
    get element(): _RadioButton;
    ngAfterViewInit(): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<RadioButton, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<RadioButton, "ui5-radio-button, [ui5-radio-button]", ["ui5RadioButton"], { "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "text": { "alias": "text"; "required": false; "isSignal": true; }; "valueState": { "alias": "valueState"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "wrappingType": { "alias": "wrappingType"; "required": false; "isSignal": true; }; "accessibleName": { "alias": "accessibleName"; "required": false; "isSignal": true; }; "accessibleNameRef": { "alias": "accessibleNameRef"; "required": false; "isSignal": true; }; }, { "ui5Change": "ui5Change"; }, never, ["*"], true, [{ directive: typeof i1.GenericControlValueAccessor; inputs: {}; outputs: {}; }]>;
}

export { RadioButton };
