import { AdtConnection } from "../adtConnection/adtConnection";
import { ResultDetailOrder, ResultEditOrder, ResultUserOrders, TransportEdit } from "./transportTypes";
import TransportConfigurationApp from "./transportConfigurationApp";
import { Version } from "../shared/commonTypes";
import TransportOperationsApp from "./transportOperationsApp";
export default class TransportOrderApp {
    private connectionController;
    private configurationApp;
    private operationsApp;
    constructor(connectionController: AdtConnection, configurationApp: TransportConfigurationApp, operationsApp: TransportOperationsApp);
    /**
     * Devuelve las ordenes en versiones S4 donde se busca a partir de una configuración(como los
     * paramétros de la SE09/SE10) establecida(una por defecto o puede ser modificada))
     * @param target
     * @param urlConfiguration
     * @returns
     */
    getUserOrders(target?: boolean, urlConfiguration?: string): Promise<ResultUserOrders>;
    /**
     * Devuelve las ordenes de un usuario en sistemas previos a S/4 HANA
     * @param user
     * @returns
     */
    getUserOrdersWOConf(user: string, target?: boolean): Promise<ResultUserOrders>;
    /**
     * Detalle de una orden/tarea. La info devuelta es la misma que la que se recupera al leer las ordenes
     * de un usuario pero a nivel de orden/tarea.
     * @param orderTask
     * @param version
     * @returns
     */
    detailOrderTask(orderTask: string, version?: Version): Promise<ResultDetailOrder>;
    /**
     * Edición de una orden
     * @param order
     * @returns
     */
    editOrder(order: string, values: TransportEdit): Promise<ResultEditOrder>;
    /**
     * Proceso de los registros englobados en un tipo de orden: workbench,
     * customizing.
     * @param ordersType
     * @param category
     */
    private processOrderType;
    /**
     * Procesa las ordenes según su estado: modificable, liberado, etc.
     * @param target Sistema destino o capa de transporte de la orden
     * @param targetName
     * @param ordersStatus
     * @param category
     */
    private processOrderStatus;
    /**
     * Procesa la fila de una orden o tarea
     * @param target
     * @param targetName
     * @param request
     * @param categoryName
     * @param statusName
     * @returns
     */
    private processRequest;
    /**
     * Procesa las tareas de una orden
     * @param tasks
     * @param category
     * @returns
     */
    private processTask;
    /**
     * Proceso de los enlaces asociados a la orden/tarea
     * @param ordersLinks
     * @returns
     */
    private processOrderLinks;
    private processObjects;
    private readDetailOrderTask;
}
//# sourceMappingURL=transportOrderApp.d.ts.map