@sap/adp-abap
Version:
abap service for all yeoman generators
72 lines (71 loc) • 3.36 kB
TypeScript
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<void>;
/**
* Fetches system UI5 Version from UI5RtVersionService.
*
* @returns {string | undefined} system UI5 version
*/
getSystemUI5Version(): Promise<string | undefined>;
/**
* 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<boolean>} A promise that resolves to `true` if the environment is ABAP Cloud, otherwise `false`.
*/
isAbapCloud(): Promise<boolean>;
/**
* 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<SystemInfo>;
/**
* Fetches system supports Flex UI features.
*
* @returns {Promise<FlexUISupportedSystem | undefined>} settings indicating support for onPremise and UI Flex capabilities.
*/
getFlexUISupportedSystem(): Promise<FlexUISupportedSystem | undefined>;
/**
* 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<string[]>} A promise that resolves to an array of package names, or an empty array if none found or on error.
*/
listPackages(phrase: string): Promise<string[]>;
/**
* 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<string[]>} A promise that resolves to an array of transport request numbers.
*/
listTransports(packageName: string, repository: string): Promise<string[]>;
}