/** * Transport request reads for BASIS < 7.40 (e.g. 7.31). * * The ADT transport organizer (/sap/bc/adt/cts/transportrequests) does not * exist there: the URL answers 200 with an empty text/html body, and the * /sap/bc/cts/* collections listed in discovery answer 404. The request * header, its tasks and their objects are read from E070 / E07T / E071 with * the standard RFC-enabled RFC_READ_TABLE over SOAP RFC (/sap/bc/soap/rfc), * so no custom ABAP is needed. */ import type { IAbapConnection } from '@babamba2/mcp-abap-adt-interfaces'; /** True on BASIS releases without the ADT transport organizer. */ export declare function needsLegacyTransportRead(): boolean; /** Splits a WHERE clause into <= 72 character OPTIONS rows at spaces. */ export declare function splitOptionLines(where: string): string[]; /** * RFC_READ_TABLE over SOAP. Returns one object per row keyed by field name, * values trimmed. The last field may contain the delimiter (free text). */ export declare function readTableViaSoap(connection: IAbapConnection, table: string, fields: string[], where: string): Promise[]>; /** * Reads one transport request (or task) with its tasks and objects. * Returns null when E070 has no such request. */ export declare function readTransportLegacy(connection: IAbapConnection, trNumber: string, includeObjects: boolean, includeTasks: boolean): Promise<{ transport: { number: string; description: string | undefined; type: string; type_text: string; status: string; status_text: string; owner: string; target_system: string | undefined; changed_at: string | undefined; parent: string | undefined; }; objects: { name: string; type: string; pgmid: string; position: number; lock_status: string; }[] | undefined; tasks: { number: string; parent: string; description: string | undefined; type: string; type_text: string; status: string; status_text: string; owner: string; changed_at: string | undefined; objects: { name: string; type: string; pgmid: string; position: number; lock_status: string; }[]; }[] | undefined; object_count: number; task_count: number; } | null>; /** * Lists a user's transport requests (not tasks), like the ADT transport * organizer list: modifiable only (status D / L) unless told otherwise. */ export declare function listTransportsLegacy(connection: IAbapConnection, user: string, modifiableOnly: boolean): Promise<{ number: string; description: string; type: string; status: string; owner: string; target: string; }[]>; //# sourceMappingURL=legacyTransport.d.ts.map