import { EventEmitter } from '../../../stencil-public-runtime';
import type { HTMLStencilElement } from '../../../stencil-public-runtime';
import { FormRadiobuttonVariation } from './form-radiobutton-variation.enum';
import { FormRadiobuttonValidation } from './form-radiobutton-validation.enum';
import { FormRadiobuttonLayout } from './form-radiobutton-layout.enum';
/**
 * @enums FormRadiobuttonValidation - form-radiobutton-validation.enum.ts
 * @enums FormRadiobuttonVariation - form-radiobutton-variation.enum.ts
 * @swedishName Radioknapp
 */
export declare class FormRadiobutton {
    hostElement: HTMLStencilElement;
    private _input?;
    dirty: boolean;
    touched: boolean;
    /**
     * Texten till labelelementet
     * @en The label text
     */
    afLabel: string;
    /**
     * Sätter variant. Kan vara 'primary' eller 'secondary'
     * @en Set radiobutton variation.
     */
    afVariation: FormRadiobuttonVariation;
    /**
     * Sätter layouten.
     * @en Set radiobutton layout.
     */
    afLayout: FormRadiobuttonLayout;
    /**
     * Sätter attributet 'name'.
     * @en Input name attribute
     */
    afName: string;
    /**
     * Sätter attributet 'id'. Om inget väljs så skapas ett slumpmässigt id.
     * @en Input id attribute. Defaults to random string.
     */
    afId: string;
    /**
     * Sätter attributet 'required'
     * @en Input required attribute
     */
    afRequired: boolean;
    /**
     * Intern spegling av afValue. Läses av Angular Reactive Forms (ControlValueAccessor).
     * Ska inte användas direkt — använd afValue istället.
     * @en Internal mirror of afValue. Used by Angular Reactive Forms (ControlValueAccessor).
     * Do not use directly — use afValue instead.
     * @ignore
     */
    value: string;
    onValueChanged(newValue: string): void;
    /**
     * Sätter attributet 'value'.
     * @en Sets the 'value' attribute.
     */
    afValue: string;
    /**
     * Intern spegling av afChecked. Används av Angular Reactive Forms (ControlValueAccessor)
     * Ska inte användas direkt — använd afChecked istället.
     * @en Internal mirror of afChecked. Used by Angular Reactive Forms (ControlValueAccessor).
     * Do not use directly — use afChecked instead.
     * @ignore
     */
    checked: boolean;
    onCheckedChanged(checked: any): void;
    /**
     * Sätter om radioknappen ska vara ikryssad.
     * @en Sets if radiobutton should be checked.
     */
    afChecked: boolean;
    onAfCheckedChanged(checked: any): void;
    /**
     * Sätter valideringsstatus. Kan vara 'error' eller ingenting.
     * @en Set input validation
     */
    afValidation: FormRadiobuttonValidation;
    /**
     * Sätter attributet 'aria-labelledby'
     * @en Input aria-labelledby attribute
     */
    afAriaLabelledby: string;
    /**
     * Sätter attributet 'aria-describedby'
     * @en Input aria-describedby attribute
     */
    afAriaDescribedby: string;
    /**
     * Sätter attributet 'autofocus'.
     * @en Input autofocus attribute
     */
    afAutofocus: boolean;
    /**
     * Inputelementets 'onchange'-event.
     * @en The input element's 'onchange' event.
     */
    afOnChange: EventEmitter;
    /**
     * Inputelementets 'onblur'-event.
     * @en The input element's 'onblur' event.
     */
    afOnBlur: EventEmitter;
    /**
     * Inputelementets 'onfocus'-event.
     * @en The input element's 'onfocus' event.
     */
    afOnFocus: EventEmitter;
    /**
     * Inputelementets 'onfocusout'-event.
     * @en The input element's 'onfocusout' event.
     */
    afOnFocusout: EventEmitter;
    /**
     * Inputelementets 'oninput'-event.
     * @en The input element's 'oninput' event.
     */
    afOnInput: EventEmitter;
    /**
     * Sker vid inputfältets första 'oninput'
     * @en First time the input element receives an input
     */
    afOnDirty: EventEmitter;
    /**
     * Sker vid inputfältets första 'onblur'
     * @en First time the input element is blurred
     */
    afOnTouched: EventEmitter;
    /**
     * När komponenten och slotsen är laddade och initierade så skickas detta eventet.
     * @en When the component and slots are loaded and initialized this event will trigger.
     */
    afOnReady: EventEmitter;
    /**
     * Hämta en referens till inputelementet. Bra för att t.ex. sätta fokus programmatiskt.
     * @en Returns a reference to the input element. Handy for setting focus programmatically.
     */
    afMGetFormControlElement(): Promise<HTMLInputElement>;
    componentDidLoad(): void;
    get cssModifiers(): {
        [x: string]: boolean;
        'digi-form-radiobutton--error': boolean;
        'digi-form-radiobutton--primary': boolean;
        'digi-form-radiobutton--secondary': boolean;
    };
    blurHandler(e: any): void;
    changeHandler(e: any): void;
    focusHandler(e: any): void;
    focusoutHandler(e: any): void;
    inputHandler(e: any): void;
    render(): any;
}
