import * as _angular_core from '@angular/core';
import { TemplateRef } from '@angular/core';
import { ControlValueAccessor, Validators, NgControl } from '@angular/forms';
import { RadioItem } from '@masterteam/components/radio-cards';

declare class RadioCardsField implements ControlValueAccessor {
    readonly circle: _angular_core.InputSignalWithTransform<boolean, unknown>;
    readonly label: _angular_core.InputSignal<string | undefined>;
    readonly required: _angular_core.InputSignal<boolean>;
    readonly color: _angular_core.InputSignal<string>;
    readonly size: _angular_core.InputSignal<"small" | "medium" | "large">;
    readonly options: _angular_core.InputSignal<RadioItem[]>;
    readonly itemTemplate: _angular_core.Signal<TemplateRef<any> | undefined>;
    protected selectedId: _angular_core.WritableSignal<string | number | null>;
    protected isDisabled: _angular_core.WritableSignal<boolean>;
    requiredValidator: typeof Validators.required;
    ngControl: NgControl | null;
    constructor();
    private onChange;
    private onTouched;
    writeValue(value: string | number): void;
    registerOnChange(fn: (value: string | number) => void): void;
    registerOnTouched(fn: () => void): void;
    setDisabledState(isDisabled: boolean): void;
    onSelectionChange(selectedItem: RadioItem): void;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<RadioCardsField, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<RadioCardsField, "mt-radio-cards-field", never, { "circle": { "alias": "circle"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": true; "isSignal": true; }; }, {}, ["itemTemplate"], never, true, never>;
}

export { RadioCardsField };
