@nsmp/js-api
Version:
Types for jsApi
64 lines (56 loc) • 2.73 kB
TypeScript
import {IJsApi, JsonOptions, UIContext, UIUserInfo} from './index';
export interface UIJsApi extends IJsApi {
/**
* Метод возвращает идентификатор объекта, чья карточка открыта в данный момент
* @returns {string | null}
*/
extractSubjectUuid (context: UIContext): string | null,
/**
* Возвращает объект, соответствующий текущему пользователю
* @param {UIContext} context - Контекст приложения
* @returns {UIUserInfo}
*/
getCurrentUser (context: UIContext): UIUserInfo,
/**
* Метод позволяет найти код контента, в котором выведено текущее приложение
* @param {UIContext} context - Контекст приложения
* @returns {string}
*/
findContentCode (context: UIContext): string,
/**
* Метод позволяет найти код текущего встроенного приложения
* @param {UIContext} context - Контекст приложения
* @returns {string | null}
*/
findApplicationCode (context: UIContext): string | null,
/**
* Выполняет REST запрос на сервер SMP
* @param {UIContext} context - Контекст приложения
* @param {string} url - Весь URL, начиная с имени REST метода
* @param {JsonOptions} options - Опции для конфигурации запроса
* @template T - Возвращаемые данные
* @returns {Promise<T>}
*/
restCallAsJson <T>(context: UIContext, url: string, options?: JsonOptions): Promise<T>,
/**
* Вызывает произвольный метод любого скриптового модуля
* @param {UIContext} context - Контекст приложения
* @param {string} moduleCode - Код скриптового модуля
* @param {string} methodName - Имя метода в скриптовом модуле
* @param {Array<number | string | boolean | {[key: string]: any}>} args - Аргументы, которые необходимо передать в функцию
* @template T - Возвращаемые данные
* @returns {Promise<T>}
*/
restCallModule <T>(
context: UIContext,
moduleCode: string,
methodName: string,
...args: Array<number | string | boolean | {[key: string]: any}>
): Promise<T>,
/**
* Возвращает значение, заданное в свойстве baseurl в dbaccess.properties
* @param {UIContext} context - Контекст приложения
* @returns {string}
*/
getAppBaseUrl (context: UIContext): string
}