import * as _angular_core from '@angular/core';
import { OnInit, AfterViewInit, OnDestroy } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { SdSuffixDefDirective, SdLabelDefDirective, SdViewDefDirective } from '@sdcorejs/angular/forms/directives';
import { SdFormControl, SdViewed, SdViewedInput } from '@sdcorejs/angular/forms/models';
import { Color } from '@sdcorejs/utils/models';

declare class SdRadio implements OnInit, AfterViewInit, OnDestroy {
    #private;
    id: string;
    formControl: SdFormControl;
    readonly autoIdInput: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
    readonly name: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
    readonly form: _angular_core.InputSignalWithTransform<FormGroup<any> | undefined, any>;
    readonly label: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
    readonly placeholder: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
    readonly display: _angular_core.InputSignalWithTransform<"row" | "column", "row" | "column" | null | undefined>;
    readonly items: _angular_core.InputSignalWithTransform<any[], any[] | null | undefined>;
    readonly valueField: _angular_core.InputSignal<string>;
    readonly displayField: _angular_core.InputSignal<string>;
    readonly required: _angular_core.InputSignalWithTransform<boolean, unknown>;
    readonly inlineError: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
    readonly disabled: _angular_core.InputSignalWithTransform<boolean, unknown>;
    /** Display mode: `false` edit · `true` static view · `'inline'` interactive (disabled `'inline'` → static). */
    readonly viewed: _angular_core.InputSignalWithTransform<SdViewed, SdViewedInput>;
    /** `true` when the static read-only view should render. */
    readonly isViewed: _angular_core.Signal<boolean>;
    readonly color: _angular_core.InputSignalWithTransform<Color, Color | null | undefined>;
    readonly hyperlink: _angular_core.InputSignalWithTransform<string | undefined, string | null | undefined>;
    readonly model: _angular_core.ModelSignal<string | number | boolean | null | undefined>;
    readonly sdSuffixDef: _angular_core.Signal<SdSuffixDefDirective | undefined>;
    readonly sdLabelDef: _angular_core.Signal<SdLabelDefDirective | undefined>;
    readonly sdViewDef: _angular_core.Signal<SdViewDefDirective<any, any> | undefined>;
    readonly sdChange: _angular_core.OutputEmitterRef<unknown>;
    readonly sdSelection: _angular_core.OutputEmitterRef<{
        value: any | any[];
        item?: any;
    }>;
    readonly autoId: _angular_core.Signal<string | undefined>;
    readonly normalizedItems: _angular_core.Signal<any[]>;
    readonly dataDisabled: _angular_core.Signal<"true" | "false">;
    readonly dataEmpty: _angular_core.Signal<"true" | "false">;
    readonly dataValue: _angular_core.Signal<string>;
    readonly dataRequired: _angular_core.Signal<"true" | "false">;
    readonly viewedText: _angular_core.Signal<any>;
    constructor();
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    reValidate: () => void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<SdRadio, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<SdRadio, "sd-radio", never, { "autoIdInput": { "alias": "autoId"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "display": { "alias": "display"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "valueField": { "alias": "valueField"; "required": true; "isSignal": true; }; "displayField": { "alias": "displayField"; "required": true; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "inlineError": { "alias": "inlineError"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "viewed": { "alias": "viewed"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "hyperlink": { "alias": "hyperlink"; "required": false; "isSignal": true; }; "model": { "alias": "model"; "required": false; "isSignal": true; }; }, { "model": "modelChange"; "sdChange": "sdChange"; "sdSelection": "sdSelection"; }, ["sdSuffixDef", "sdLabelDef", "sdViewDef"], never, true, never>;
}

export { SdRadio };
