import { ChangeDetectorRef } from '@angular/core';
import { FormArray, FormGroup } from '@angular/forms';
import { FormModelBuilder } from '@anglr/common/forms';
import { TitledDialogService } from '@anglr/common/material';
import { LayoutEditorMetadataExtractor, PropertiesControl, PropertiesControlBase } from '@anglr/dynamic/layout-editor';
import { RadioComponentOptions } from '../../../radio.options';
import * as i0 from "@angular/core";
/**
 * Component used for displaying material tab group properties control
 */
export declare class RadioPropertiesControlSAComponent extends PropertiesControlBase<RadioComponentOptions> implements PropertiesControl<RadioComponentOptions> {
    protected dialog: TitledDialogService;
    protected formModelBuilder: FormModelBuilder;
    /**
     * Options control
     */
    protected get optionsControl(): FormArray | null | undefined;
    /**
     * Options control form groups
     */
    protected get optionsControls(): FormGroup[] | null | undefined;
    constructor(changeDetector: ChangeDetectorRef, metadataExtractor: LayoutEditorMetadataExtractor, dialog: TitledDialogService, formModelBuilder: FormModelBuilder);
    /**
     * Adds new tab to tab group
     */
    protected addOption(): Promise<void>;
    /**
     * Removes tab on specified index in form array
     * @param index Tab index to remove
     */
    protected removeOption(index: number): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<RadioPropertiesControlSAComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<RadioPropertiesControlSAComponent, "radio-properties-control", never, {}, {}, never, never, true, never>;
}
//# sourceMappingURL=radioPropertiesControl.component.d.ts.map