import { ElementRef, EventEmitter, OnInit, QueryList } from '@angular/core'; import { ApiService, FieldDefine, FieldDefineGroup, FormDefine, FormServerData, FormStatus, LanguagesService, MessageService } from '../../../core'; import { UserFieldDirective } from '../../directive'; import { DatePipe } from '@angular/common'; import { GridFormComponent } from '../grid-form'; export declare class BaseFormComponent implements OnInit { lang: LanguagesService; protected api: ApiService; protected message: MessageService; protected el: ElementRef; protected datePipe: DatePipe; constructor(lang: LanguagesService, api: ApiService, message: MessageService, el: ElementRef, datePipe: DatePipe); get apiUrl(): string; set apiUrl(v: string); changeToViewAfterUpdate: boolean; priorInlineUpdate: boolean; buttonOnTop: boolean; loading: boolean; status: FormStatus; editCache: { [key: number]: { delete: boolean; edit: boolean; data: { [key: string]: any; }; }; }; define: FormDefine; data: Array; extra: any; formHeight: number; protected inDialog: boolean; links: { [field: string]: (record: any) => any; }; validators: { [field: string]: ((record: any) => string)[]; }; protected myApiUrl: string; protected firstErrorItemName: string; auto: boolean; showFooterBar: boolean; showButtons: boolean; showBackButton: boolean; params: { [key: string]: any; }; height: any; heightMargin: number; bottomDistance: number; alignByDataType: boolean; defineWithData: boolean; userFieldDirectives: QueryList; userFields: { [key: string]: UserFieldDirective; }; loaded: EventEmitter; defined: EventEmitter; saveError: EventEmitter<{ [key: string]: any; }>; updated: EventEmitter<{ [key: string]: any; }[]>; inserted: EventEmitter<{ [key: string]: any; }[]>; deleted: EventEmitter; listed: EventEmitter<{ completed: boolean; field: FieldDefine; param: string; data: any[]; }>; beforeInsert: (form: GridFormComponent) => boolean; beforeUpdate: (form: GridFormComponent, selectedRecords: any[]) => boolean; beforeCopy: (form: GridFormComponent, selectedRecords: any[]) => boolean; beforeDelete: (form: GridFormComponent, selectedRecords: any[]) => boolean; fieldVisibleCondition: (fieldName: string, record: { [key: string]: any; }) => boolean; protected static parseJsonString(str: any): any; defineLoaded: () => void; dataLoaded: () => void; dataDeleted: (data: number) => void; dataUpdated: (data: any[]) => void; dataInserted: (data: any[]) => void; protected init(): void; clearListCache(): void; protected loadWithData(data: FormServerData): void; load(OnLoaded?: () => void, params?: { [key: string]: any; }): void; protected loadFieldGroups(nullGroup?: any): FieldDefineGroup[]; updateEditCache(edit?: boolean): void; countEditCache(deleteMark?: boolean): number; clearEditCache(deleteMark?: boolean): void; protected loadUserFields(): void; isInsert(data: any): boolean; private getSelectedData; protected clearValidate(): void; protected getFieldByRequiredGroup(group: any): FieldDefine[]; protected checkRequiredGroup(rec: any, group: any): string; protected validate(data: { [key: string]: any; }[]): boolean; save(serial: number, OnSaved: (code: number, message: string) => void): void; action(action: string, inputData: any[], OnCompleted?: (code: number, message: string, data: any) => void): void; protected initDefaultValue(item: { [key: string]: any; }): void; delete(serial: number, OnDeleted: (code: number, message: string) => void): void; editable(): boolean; protected serial(): number; info(message: string): void; warning(message: string, closeable?: boolean): void; error(message: string, width?: number): void; protected clearFileInput(serial: number): void; protected isVisible(): boolean; protected initFormHeight(): boolean; resize(): void; protected copyEditModelFieldEditCache(serial: any, index?: number): void; toServerFormat(data: any[]): any[]; /** * Get list box content of all list field to optionMaps */ loadListBoxContent(): void; protected focusErrorControl(): void; focusFirstControl(visibleOnly?: boolean): void; focusControl(name: string): void; ngOnInit(): void; afterListed(event: { completed: boolean; field: FieldDefine; param: string; data: any[]; }): void; uf(name: string): UserFieldDirective; }