import { ChangeDetectorRef, EventEmitter } from '@angular/core';
import { SdFormGenericComponent, SdFormGenericDefinitionSelection, SdFormGenericGroup, SdFormGenericSelectionStaticItem, SdFormGenericTableColumn, SdFormGenericValues, SdFormGenericVariable } from '../../../../models';
import { FormGenericService } from '../../../../services';
import * as i0 from "@angular/core";
export declare class AttributeSelection {
    private ref;
    private formGenericService;
    components: (SdFormGenericComponent | SdFormGenericGroup)[];
    variables: SdFormGenericVariable[];
    component: SdFormGenericValues | SdFormGenericTableColumn;
    valuesKey?: string;
    set _valuesKey(valuesKey: string | undefined | null);
    valuesKeyChange: EventEmitter<string>;
    selections: SdFormGenericDefinitionSelection[];
    values: SdFormGenericSelectionStaticItem[];
    set _values(values: SdFormGenericSelectionStaticItem[] | undefined | null);
    valuesChange: EventEmitter<SdFormGenericSelectionStaticItem[]>;
    sdChange: EventEmitter<SdFormGenericComponent>;
    constructor(ref: ChangeDetectorRef, formGenericService: FormGenericService);
    ngOnInit(): void;
    onChangeValuesKey: (value: any) => void;
    onChangeValues: () => void;
    addItem: () => void;
    removeItem: (idx: number) => void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AttributeSelection, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AttributeSelection, "attribute-selection", never, { "components": { "alias": "components"; "required": true; }; "variables": { "alias": "variables"; "required": true; }; "component": { "alias": "component"; "required": true; }; "_valuesKey": { "alias": "valuesKey"; "required": true; }; "_values": { "alias": "values"; "required": true; }; }, { "valuesKeyChange": "valuesKeyChange"; "valuesChange": "valuesChange"; "sdChange": "sdChange"; }, never, never, true, never>;
}
