import { ElementRef, EventEmitter, OnInit, AfterViewInit, Renderer } from '@angular/core'; import { MatSelect } from '@angular/material'; import { BaseInputComponent } from '../base-input.component'; import { Subject } from 'rxjs/Subject'; export declare class SelectComponent extends BaseInputComponent implements AfterViewInit, OnInit { renderer: Renderer; /** * Las opciones del select */ options: EvkOption[]; /** * Indica si se ordenaran las entradas */ order: boolean; /** * Indica si tiene campo de busqueda */ search: boolean; /** * Evento que se emite al seleccionar una opcion */ optionChange: Subject; data: any; selected: number; /** * Evento que se emite cuando una lista de opciones se carga de * forma asincrona */ onclean: EventEmitter; searchInput: ElementRef; select: MatSelect; /** * Campos filtrados */ filteredOptions: EvkOption[]; /** * * @example * ## metadata que lo define * ```ts * metadata = { * name: 'numero', * label: 'Numero', * grid: 'col-md-12', * required: true, * prefix: '' * sufix: '' * prefixIcon: '' * sufixIcon: '' * min: '' * max: '', * type: 'select', * options: [ * {value: '1', label: 'Opcion 1', active: 1}, * {value: '2', label: 'Opcion 2', active: 0}, * {value: '3', label: 'Opcion 3', active: 1}, * ] * } * ``` * * ## html * ```html * * ``` */ constructor(renderer: Renderer); /** * Inicializa el componente */ ngOnInit(): void; /** * Inicializacion despues de crear los elementos graficos */ ngAfterViewInit(): void; /** * Inicializa el componente desde metadatos */ initFromMetadata(): void; onopen(_event: any): void; onclose(_event: any): void; /** * Filtra los campos deacuerdo a los parametros introducidos(orden y search). */ setFilterList(): void; /** * Filtra las opciones de acuerdo a los campos * @param val */ filterOptions(val: any): void; /** * Limpia el campo * @param _event */ cleanSelect(_event: any): void; } /** * Clase para la interfaz de opciones del select */ export declare class EvkOption { value: any; label: any; active?: any; data?: any; order?: any; selected?: number; }