UNPKG

@sap/adp-abap

Version:

abap service for all yeoman generators

56 lines (55 loc) 2.45 kB
import type { AbapServiceProvider, AxiosRequestConfig, ProviderConfiguration } from "@sap-ux/axios-extension"; import type { EndpointsManager } from "@sap/adp-common"; export type RequestOptions = AxiosRequestConfig & Partial<ProviderConfiguration>; /** * Service for managing and providing access to an ABAP service provider. */ export declare class AbapProvider { private endpointsManager; private provider; private connected; private system; /** * Constructs an instance of AbapProvider. * * @param {EndpointsManager} endpointsManager - The endpoints service for retrieving system details. */ constructor(endpointsManager: EndpointsManager); /** * Retrieves the configured ABAP service provider if set, otherwise throws an error. * * @returns {AbapServiceProvider} - The configured ABAP service provider. */ getProvider(): AbapServiceProvider; /** * Retrieves wheter the configured ABAP service provider is connected to ABAP system. * * @returns {boolean} - if provider is connected to ABAP system. */ isConnected(): boolean; /** * Retrieves ABAP service provider connected ABAP system. * * @returns {string | undefined} - the connected system. */ getSystem(): string | undefined; /** * Configures the ABAP service provider using the specified system details and credentials. * * @param {string} system - The system identifier. * @param {string} [client] - The client, if applicable. * @param {string} [username] - The username for authentication. * @param {string} [password] - The password for authentication. */ setProvider(system: string, client?: string, username?: string, password?: string): Promise<void>; /** * Determines the target configuration for the ABAP service provider based on whether the application * is running within SAP App Studio or outside of it. * * @param {RequestOptions} requestOptions - The request options to be configured during this setup. * @param {string} system - The system identifier, which could be a URL or a system name. * @param {string} [client] - Optional client number, used in systems where multiple clients exist. * @returns {Promise<AbapTarget>} - The configuration object for the ABAP service provider, tailored based on the running environment. */ private determineTarget; }