import { HttpClient } from '@angular/common/http'; import { Observable } from 'rxjs/Observable'; import { Subject } from 'rxjs/Subject'; import 'rxjs/add/operator/toPromise'; import 'rxjs/add/observable/forkJoin'; import 'rxjs/add/operator/map'; import { ConfigModel } from '../models/config.model'; import { Field } from '../models/field.model'; import { MappingModel, FieldMappingPair, MappedField } from '../models/mapping.model'; import { FieldActionConfig } from '../models/transition.model'; import { MappingDefinition } from '../models/mapping-definition.model'; export declare class MappingManagementService { private http; cfg: ConfigModel; mappingUpdatedSource: Subject; mappingUpdated$: Observable; saveMappingSource: Subject; saveMappingOutput$: Observable; mappingSelectionRequiredSource: Subject; mappingSelectionRequired$: Observable; private headers; constructor(http: HttpClient); findMappingFiles(filter: string): Observable; fetchMappings(mappingFileNames: string[], mappingDefinition: MappingDefinition): Observable; saveCurrentMapping(): void; serializeMappingsToJSON(): any; saveMappingToService(): void; handleMappingSaveSuccess(saveHandler: Function): void; removeMapping(mappingModel: MappingModel): void; removeMappedPair(fieldPair: FieldMappingPair): void; addMappedPair(): FieldMappingPair; updateMappedField(fieldPair: FieldMappingPair, isSource: boolean): void; /** * Remove the specified field from a previously established and mapped field pair. * @param fieldPair * @param removeField */ removeMappedFieldPairField(fieldPair: FieldMappingPair, removeField: Field, compoundSelection: boolean): void; resequenceMappedField(fieldPair: FieldMappingPair, insertedMappedField: MappedField, targetIndex: string): void; /** * Add a compound-selected field to an existing mapping. Needed for combine/ separate modes. * A compound source selection in separate mode or a compound target selection in combine mode is an error. * @param field */ addActiveMappingField(field: Field): void; /** * Remove the specified field from the active mapping field pair. * @param field */ removeActiveMappingField(field: Field, compoundSelection: boolean): void; fieldSelected(field: Field, compoundSelection: boolean): void; /** * Instantiate a new mapping model and associate the selected field with it. * @param selectedField * @param compoundSelection - indicates a compound-selection (ctrl-M1) if true, standard mouse click if false. */ addNewMapping(selectedField: Field, compoundSelection: boolean): void; selectMapping(mappingModel: MappingModel): void; deselectMapping(): void; validateMappings(): void; fetchFieldActions(): Observable; sortFieldActionConfigs(configs: FieldActionConfig[]): FieldActionConfig[]; notifyMappingUpdated(): void; private handleError(message, error); }