import { ElementRef, OnInit, EventEmitter, QueryList } from '@angular/core';
import { CfCoreComponent } from '../core/core.component';
import { ListModel } from '../../models/list/list.model';
import { ListStylingModel } from '../../models/list/list-styling.model';
import { CfItemComponent } from '../item/item.component';
import { TemplateService } from '../../services/template-service/template.service';
/**
*
List component based on Angular Material List
* Example of using:
*
* <cf-wizard [properties]="myList" [styling]="myListStyles"></cf-list>
*
*/
export declare class CfListComponent extends CfCoreComponent implements OnInit {
/** @hidden */ elementRef: ElementRef;
/**
* It is an attribute [properties] of directive cf-list which take ListModel object.
* Example of model:
* {{'{'}}
* title: 'This is list title',
* selectable: true,
* withCheckbox: true
* {{'}'}}
* title: string
* It is title for List component
* selectable: boolean
* If List is selectable. If yes - output onSelect is available to use.
* List items will inherit that property if they didn't have their own.
* withCheckbox: boolean
* If List items will have checkboxes.
* List items will inherit that property if they didn't have their own.
*/
properties: ListModel;
/**
* It is an attribute [styling] of directive cf-list which take ListStylingModel object with next properties:
* container: StylingModel
* Styling properties for component container
* title: StylingModel
* Styling properties for component title
*/
styling: ListStylingModel;
/**
* Input property for the title
*/
title: string;
/**
* Input property for selectable
*/
selectable: boolean;
/**
* Input property to show checkbox on list items
*/
withCheckbox: boolean;
/** @hidden
* Array for selected items IDs
*/
selectedItems: number[];
/**
* It is (onSelect) attribute of cf-list component. Is emmiting event with array of selected items IDs
*/
onSelect: EventEmitter<{}>;
/** @hidden
* Private property for generating IDs for list items when list is selectable
*/
randomId: number;
/** @hidden
* Array with list items
*/
items: QueryList;
Î: any;
/** @hidden */
constructor(/** @hidden */ elementRef: ElementRef, /** @hidden */ templateService: TemplateService);
/** @hidden */
ngOnInit(): void;
/** @hidden
* After List content was initialized and component is selectable,
* will be generated IDs for all list items and each selected item ID will be pushed to selectedItems array.
*/
ngAfterContentInit(): void;
/** @hidden
* Function to update selectedItems array values and emit them
* @param data item data object
*/
updateValues(data: any): void;
}