/** Core */ import { CoreComponent } from "cmf.core/src/core"; /** Angular2 */ import * as ng from "@angular/core"; import { OnValidate, OnValidateArgs } from "../../directives/validator/validator"; export declare class ComponentData { index: string; name: string; obj: any; constructor(index: string, name: string, obj: any); } /** * @whatItDoes * Select basic component. Used to select an item in the provided collection. * * @howToUse * This component is used with the inputs and outputs mentioned below. * * ### Inputs * `boolean` : **disabled** - The disabled flag of this component ; * `boolean` : **required** - Defines if the control is mandatory or not ; * `any[]` : **data** - The data collection used to populate the select component. Must have at least two fields: 'value' field and a 'text' field ; * `string` : **name-field** - The object field that should be accessed to get the text to display in the component items ; * `any` : **value** - The currently selected value of the Select component . * * ### Outputs * `any` : **valueChange** - Triggered when the value change . * * ### Example * To use the component, assume this HTML Template as an example: * * ```HTML * * * ``` * */ export declare class Select extends CoreComponent implements ng.AfterContentInit, OnValidate { /** * No value text - Text that will appear in the component, when the option with no value is selected */ private static NO_VALUE_TEXT; /** * Defines if the element is disabled to be filed */ private _disabled; /** * Defines if the component is required to be filled by the user */ private _isRequired; /** * The data collection used to populate the select component. Must have at least two fields: 'value' field and a 'text' field. */ private _data; /** * The data collection, used to populate the Select component. Its a super set of the original supplied data collection. */ _componentData: Array; /** * The index of the currently selected value */ _selectedIndex: string; /** * The initially selected index */ _initiallySelectedIndex: string; /** * The currently selected value of the Select component */ private _value; /** * Classes to be applied to the select element. Only used for error handling */ _selectClasses: any; /** * The object field that should be accessed to get the text to display in the component items */ dataNameField: string; /** * Property _isRequired getter * * @return {boolean} current value of property _isRequired */ /** * Property _isRequired setter * * @param {boolean} [value] new value for property _isRequired */ isRequired: boolean; /** * Property selected value getter * * @return {any} current value for property selected value */ /** * Property selected value setter * * @param {any} [value] new value for property selected value */ value: any; /** * Property data getter * * @return {any[]} current value for property data */ /** * Property data setter * * @param {any[]} [value] new value for property data * @method data */ data: any[]; /** * Gets the disabled Property. */ /** * Sets the disabled Property */ disabled: boolean; /** * The selected value change event, so the component can inform the upper components that the selected value has changed * * @property {ng.EventEmitter} init event */ valueChanged: ng.EventEmitter; constructor(); /** * Set selected value by index. This method sets the value of properties _value * * @param {any} [value] new value for property transitions selected value index */ private setValueByIndex; /** * Set initially selected value by index. This method sets the value of property _value * Note that this method is used due to a bug in the initial setting of the "value" property in the select */ private setInitiallySelectedIndexByValue; /** * Set selected value by index. This method sets the value of property _value */ private setSelectedIndexByValue; /** * Set internal component data. */ private setComponentData; /** * Validate component and apply error classes. Native validation was not working properly. so this was used instead. */ private internalValidation; /** * Validation function * @param context ValidationContext */ onValidate(context: OnValidateArgs): Promise; /** * Resets the styling option of the validation process * * @see OnValidate interface */ reset(): Promise; /** * When selected value changes - notify parent component * * @param {Taura.EventArgs} [event] object containing event data * @param {any} [value] date time picker current value */ onSelectedValueChanged(event: Event, selectedIndex: any): void; /** * When select component is initiated - if possible set component data and selected value */ ngAfterContentInit(): void; } export declare class SelectModule { }