import { Result } from "../shared/core/Result";
import AdtException from "../shared/exceptions/adtException";
export declare enum TransportTaskType {
    DevelopmentCorrection = "S",
    Unclassified = "X",
    Repair = "R"
}
export declare enum TransportOrderType {
    Workbench = "K",
    Customizing = "W",
    TransportCopies = "T"
}
export declare enum TransportDateFilter {
    SinceYesterday = "0",
    SinceTwoWeeks = "1",
    SinceFourWeeks = "2",
    DateRange = "3"
}
export interface TransportLink {
    title: string;
    href: string;
}
export type TransportLinks = TransportLink[];
export interface TransportObject {
    name: string;
    type: string;
    objInfo: string;
    dummyUri: string;
    wbtype: string;
    pgmid: string;
    imgActivity: string;
    lockStatus: string;
    objDesc: string;
    position: number;
}
export type TransportObjects = TransportObject[];
export interface TransportTask {
    number: string;
    owner: string;
    description: string;
    target: string;
    targetName: string;
    status: string;
    statusName: string;
    ctsProject: string;
    ctsProjectDesc: string;
    lastChangedTimestamp: number;
    links: TransportLinks;
    objects: TransportObjects;
    categoryType: string;
    categoryTypeName: string;
    parent: string;
}
export type TransportTasks = TransportTask[];
export interface TransportOrder extends TransportTask {
    tasks: TransportTasks;
    target: string;
    targetName: string;
}
export type TransportOrders = TransportOrder[];
export type UserOrders = TransportOrder[];
export interface TransportReleaseOrderMessage {
    shortText: string;
    type: string;
}
export type TransportReleaseOrderMessages = TransportReleaseOrderMessage[];
export interface TransportReleaseOrder {
    number: string;
    statusText: string;
    status: string;
}
export interface ChangeUserOrder {
    number: string;
    user: string;
}
export interface SearchConfigurations {
    changedAt: Date;
    changedBy: string;
    client: string;
    createdAt: Date;
    createdBy: string;
    urlGetConfiguration: string;
    etag: string;
    idConfiguration: string;
}
export interface TransportConfiguration {
    workbenchRequests: boolean;
    transportOfCopies: boolean;
    user: string;
    released: boolean;
    customizingRequests: boolean;
    dateFilter: TransportDateFilter;
    modifiable: boolean;
    fromDate?: Date;
    toDate?: Date;
}
export interface TransportConfigurationMetadata extends TransportConfiguration {
    workbenchRequestsIsMandatory: boolean;
    transportOfCopiesIsMandatory: boolean;
    userIsMandatory: boolean;
    releasedIsMandatory: boolean;
    customizingRequestsIsMandatory: boolean;
    dateFilterIsMandatory: boolean;
    modifiableIsMandatory: boolean;
    fromDateIsMandatory: boolean;
    toDateIsMandatory: boolean;
}
export interface TransportValueHelpItem {
    name: string;
    description: string;
    data: string;
}
export type TransportValueHelpItems = TransportValueHelpItem[];
export interface TransportCreateOrder {
    number: string;
    cts_project: string;
    cts_project_desc: string;
    desc: string;
    parent: string;
    target: string;
    target_desc: string;
    type: TransportOrderType;
    adturi: string;
    vituri: string;
    httpuri: string;
}
export interface TransportChangeTaskType {
    number: string;
    type: string;
}
export interface TransportRemoveObject {
    order: string;
    name: string;
    objDesc: string;
    pgmid: string;
    type: string;
    position: number;
}
export interface TransportMoveObject {
    oldOrder: string;
    newOrder: string;
    name: string;
    objDesc: string;
    pgmid: string;
    type: string;
    position: number;
    dummyUri: string;
    lockStatus: string;
    objInfo: string;
    wbtype: string;
    imgActivity: string;
}
export interface TransportReassignTask {
    task: string;
    newOrder: string;
}
export interface TransportAddObject {
    order: string;
    object: TransportObject;
}
export interface TransportLockObject {
    lockHandle: string;
}
export interface TransportEdit {
    description: string;
}
export type RequestMap = Record<string, string>;
export type ResultUserOrders = Result<UserOrders> | Result<AdtException>;
export type ResultAddUserOrder = Result<TransportTask> | Result<AdtException>;
export type ResultDeleteOrder = Result<void> | Result<AdtException>;
export type ResultReleaseOrder = Result<TransportReleaseOrder> | Result<AdtException>;
export type ResultChangeUserOrder = Result<ChangeUserOrder> | Result<AdtException>;
export type ResulSearchConfigurations = Result<SearchConfigurations> | Result<AdtException>;
export type ResultTransportConfiguration = Result<TransportConfiguration> | Result<AdtException>;
export type ResultTransportConfigurationMetadata = Result<TransportConfigurationMetadata> | Result<AdtException>;
export type ResultValueHelp = Result<TransportValueHelpItems> | Result<AdtException>;
export type ResultCreateOrder = Result<TransportCreateOrder> | Result<AdtException>;
export type ResultChangeTaskType = Result<TransportChangeTaskType> | Result<AdtException>;
export type ResultMoveObject = Result<TransportMoveObject> | Result<AdtException>;
export type ResultRemoveObject = Result<TransportRemoveObject> | Result<AdtException>;
export type ResultSortAndCompress = Result<void> | Result<AdtException>;
export type ResultReassignTask = Result<TransportReassignTask> | Result<AdtException>;
export type ResultAddObject = Result<TransportAddObject> | Result<AdtException>;
export type ResultDetailOrder = Result<TransportOrder> | Result<AdtException>;
export type ResultLockObject = Result<TransportLockObject> | Result<AdtException>;
export type ResultUnlockObject = Result<void> | Result<AdtException>;
export type ResultEditOrder = Result<void> | Result<AdtException>;
//# sourceMappingURL=transportTypes.d.ts.map