import { OnInit, OnDestroy, EventEmitter } from '@angular/core'; import { MatDialog } from '@angular/material'; import { ControlValueAccessor } from '@angular/forms'; import { Subscription } from 'rxjs/Subscription'; import { ObjectWithLinks, Property, ModelMeta } from '../../common'; import { ApiTableService } from '../api-table/api-table.service'; export declare class ExtendzApiSelectComponent implements OnInit, OnDestroy, ControlValueAccessor { dialog: MatDialog; private apiTableService; /** * Selected Property */ property: Property; /** * Main editing item */ item: ObjectWithLinks; itemChange: EventEmitter; /** * Meta data for selected property */ modelMeta: ModelMeta; /** * All subscriptions */ all$: Subscription; /** * Dissabled state */ disabled: boolean; /** * Selected item */ items: Object[]; /** * When selected with the dialog box the first element response it taken to consideration. */ response: ObjectWithLinks[]; /** * Display value for the current value. * Seperation is needed since the acctual selected value is an URL and the display values is a human readble text. */ displayValue: string; /** * Empty array to contain the quick add items */ qItems: number[]; /** * Quick add shows or not */ quickAdd: boolean; /** * On Change the selected form value */ onChange: any; /** *On Touch the api selector */ onTouched: any; constructor(dialog: MatDialog, apiTableService: ApiTableService); ngOnInit(): void; ngOnDestroy(): void; /** * Show a selection dialog. * * @param property Selected Property */ openDialog(property: Property): void; private handleDialogMultipleSection(results); private getItem(url); /** * On quick save event is fired * @param item */ onSave(item: ObjectWithLinks): void; private getResponse(url); private handleMultipleResponse(data); private setMultipleDisplay(more); private handleSingleResponse(response); value: Object; registerOnChange(fn: Function): void; registerOnTouched(fn: Function): void; writeValue(value: Object): void; setDisabledState?(isDisabled: boolean): void; }