import type { SystemInfo } from "@sap-ux/axios-extension"; import type { AbapProvider } from "./AbapProvider"; import type { FlexUISupportedSystem } from "../models"; export declare const ABAP_PACKAGE_SEARCH_MAX_RESULTS = 50; /** * Client for managing all consumed requests to an ABAP system. */ export declare class AbapService { private abapProvider; private isCustomerBase; /** * Constructs an instance of ConfigClient. * * @param {AbapProvider} abapProvider - The ABAP Provider handling the connection with the system. * @param {boolean} isCustomerBase - whether layer is CUSTOMER_BASE */ constructor(abapProvider: AbapProvider, isCustomerBase: boolean); /** * Function that connects provider to Abap system. * * @param {string} system - Abap system. * @param {string} client - Abap system client. * @param {string} username - username for authentication with Abap system. * @param {string} password - password for authentication with Abap system. */ connectToSystem(system: string, client?: string, username?: string, password?: string): Promise; /** * Fetches system UI5 Version from UI5RtVersionService. * * @returns {string | undefined} system UI5 version */ getSystemUI5Version(): Promise; /** * Determines if the ABAP environment is an ABAP Cloud environment. * * This method checks the Automatic Tenant Onboarding (ATO) settings retrieved from the ABAP provider * to verify if the tenant type is `Customer` and the operations type is `'C'` (Cloud). * * @returns {Promise} A promise that resolves to `true` if the environment is ABAP Cloud, otherwise `false`. */ isAbapCloud(): Promise; /** * Fetches system information from the provider's layered repository. * * @param {string} language - language for translations * @param {string} packageName - package name * @returns {SystemInfo} system into containing system supported adaptation project types and translations. */ getSystemInfo(language?: string, packageName?: string): Promise; /** * Fetches system supports Flex UI features. * * @returns {Promise} settings indicating support for onPremise and UI Flex capabilities. */ getFlexUISupportedSystem(): Promise; /** * Queries an ABAP system for a list of packages based on a search phrase. * * @param {string} phrase - The search phrase used to filter the packages. * @returns {Promise} A promise that resolves to an array of package names, or an empty array if none found or on error. */ listPackages(phrase: string): Promise; /** * Fetches a list of transport requests for a given package and repository using a specified ABAP service provider. * * @param {string} packageName - The name of the package for which transport requests are being fetched. * @param {string} repository - The repository associated with the package. * @returns {Promise} A promise that resolves to an array of transport request numbers. */ listTransports(packageName: string, repository: string): Promise; }