import { OnInit, ElementRef, EventEmitter, QueryList } from '@angular/core';
import { CfCoreComponent } from '../core/core.component';
import { CfSelectableComponent } from '../selectable/selectable.component';
import { CfRadioComponent } from '../radio/radio.component';
import { GroupModel } from '../../models/group/group.model';
import { GroupStylingModel } from '../../models/group/group-styling.model';
import { TemplateService } from '../../services/template-service/template.service';
/**
*
CF Group Component
*
*
* import {{'{'}} GroupModel {{'}'}} from 'cedrus-fusion'
* import {{'{'}} GroupStylingModel {{'}'}} from 'cedrus-fusion'
* <cf-group></cf-group>
*
*
*/
export declare class CfGroupComponent extends CfCoreComponent implements OnInit {
elementRef: ElementRef;
/** @hidden */
selectables: QueryList;
/** @hidden */
radios: QueryList;
/** @hidden */
itemsSelected: number[];
/** @hidden */
valuesSelected: any[];
/** @hidden */
randomId: number;
/**
* Example:
* {{'{'}}
* label: 'My favourite fruits',
* minSelected: 1,
* maxSelected: 5,
* allSelected: false
* {{'}'}}
* label: string
* Component label
* minSelected: number
* Number of minimum selected items
* maxSelected: number
* Number of maximum selected items
* allSelected: boolean
* If all items must be selected
*/
properties: GroupModel;
/**
* Styling object:
* container: StylingModel
* Styling properties for main container
* label: StylingModel
* Styling for the group label
* content: StylingModel
* Styling for the group content
*/
styling: GroupStylingModel;
/**
* Component label
*/
label: string;
/**
* Number of minimum selected items
*/
minSelected: number;
/**
* Number of maximum selected items
*/
maxSelected: number;
/**
* If all items must be selected
*/
allSelected: boolean;
/**
* Event when item selection was toggled
*/
onSelect: EventEmitter<{}>;
/** @hidden */
writeValue(obj: any): void;
/** @hidden */
registerOnChange(fn: any): void;
/** @hidden */
registerOnTouched(fn: any): void;
/** @hidden */
setDisabledState(isDisabled: boolean): void;
/** @hidden */
onChange: any;
/** @hidden */
onTouched: any;
/** @hidden */
resetGroup(): void;
/** @hidden */
constructor(elementRef: ElementRef, /**@hidden */ templateService: TemplateService);
/** @hidden */
ngOnInit(): void;
/** @hidden */
ngAfterContentInit(): void;
/** @hidden */
updateValues(data: any): void;
/** @hidden */
checkOutput(values: any): any;
}