/** Angular */
import * as ng from "@angular/core";
/** Core */
import { CoreComponent } from "cmf.core/src/core";
/**
* Arguments to select an item
*/
export interface SelectItemArgs {
item?: any;
property?: {
name: string;
value: string;
};
index?: number;
}
/**
* @whatItDoes
*
* @howToUse
*
* This component is used with the inputs and outputs mentioned below.
*
* ### Inputs
* `string` : **name** - The name of this component
* `preSelectFirstElement` : **boolean** - Pre select the first element when the data is loaded. Defaults to false.
*
* ### Outputs
* `string` : **onNameChange** - When the name of the component change, this output emits the new name
*
* ### Example
* To use the component, assume this HTML Template as an example:
*
* ```HTML
*
* ```
*
* @description
*
* ## VerticalStepList Component
*
* ### Dependencies
*
* #### Components
* _This component does not depend on any component_
*
* #### Services
* _This component does not depend on any service_
* * ServiceB : `package` (Ex: `cmf.core.controls`)
*
* #### Directives
* * ProgressIndicator: `cmf.core.controls`
*
*/
export declare class VerticalStepList extends CoreComponent implements ng.OnChanges {
elementRef: ng.ElementRef;
private _itemTemplate;
/**
* Main container element ref
*/
private _maincontainer;
/**
* Index of selected item
*/
selectedItemIndex: number;
/**
* If is loading more data
*/
_isLoadingMore: boolean;
/**
* Array of items for the list
*/
data: any[];
/**
* Data name field
*/
dataNameField: string;
/**
* Item selected
*/
value: SelectItemArgs;
/**
* If all items are displayed and there is no need to load more items
*/
isFull: boolean;
/**
* Pre selects the first element when the data is loaded
*/
preSelectFirstElement: boolean;
/**
* Callback to load more data
*/
loadMoreCallback: (currentData: any[]) => Promise;
/**
* When an item was selected
* @event valueChange
*/
valueChange: ng.EventEmitter;
/**
* Constructor
*/
constructor(elementRef: ng.ElementRef);
/**
* Set selected item
* @param index
*/
setSelectedItem(index: number): void;
/**
* Select item
* @param index
*/
selectItem(index: number): void;
/**
* Load more content
*/
loadMore(): void;
/**
* On changes method
*
* @param changes the changes made to the component properties
*/
ngOnChanges(changes: ng.SimpleChanges): void;
}
export declare class VerticalStepListModule {
}