import { ServiceBindingInfo } from "navidev-adt-api/dist/adtBusinessServices/businessServices";
import { Entity, EntityFields, MetadataInfoOptions, ResultMetadataContent } from "./metadataTypes";
import MetadataApp from "./metadataApp";
import { AdtConnection } from "../adtConnection/adtConnection";
export default class MetadataV2App extends MetadataApp {
    constructor(connectionController: AdtConnection, serviceBindingInfo: ServiceBindingInfo, options?: MetadataInfoOptions);
    /**
     * Obtiene el contenido del metadata
     * @param serviceBindingInfo
     */
    getMetadataInfo(): Promise<ResultMetadataContent>;
    getMetadata(): Promise<ResultMetadataContent>;
    protected extractEntities(bodyParsed: any): void;
    /**
     * Devuelve un objeto con las datos de la entity informada
     */
    fillEntityInfo(rowEntity: any, bodyParsed: any): Entity;
    /**
     * Extrae los campos de la entityType
     * @param entityType
     * @returns
     */
    protected extractEntityTypeFields(bodyParsed: any, entityType: any, entityInfo: Entity): EntityFields;
    /**
     * Procesa el campo que tiene un campo semantico asociado. Esos campos son de moneda o unidad de medida
     * @param bodyParsed
     * @param entityInfo
     * @param field
     */
    private processFieldSemantics;
    /**
     * Proceso la lista de valores, o ayuda para búsqueda, del campo
     * @param bodyParsed
     * @param entityInfo
     * @param field
     */
    private processFieldValueList;
    /**
     * Procesa los parámetros de la ayuda para búsqueda donde están los campos que la formarán y
     * los campos de entrada y salida.
     * @param field
     * @param valueListParameters
     */
    private processParametersValueHelp;
}
//# sourceMappingURL=metadataV2App.d.ts.map