@nsmp/js-api
Version:
Types for jsApi
19 lines (17 loc) • 1.13 kB
TypeScript
import {IJsApi, JsApiSettings, UIContext, UIEnvironment, UIFrameContext} from '../../types';
/**
* Расширяет базовый объект `jsApi`
* @param {IJsApi} jsApi - Базовый объект `jsApi`
* @param {UIEnvironment} environment - Окружение, где выводится приложение
* @param {UIContext | UIFrameContext} [context] - Контекст приложения
* @summary Может быть контекстом модуля расширения, либо контекстом `iframe`
* @template JsApiExtension - Объект `jsApi` для расширения базового
* @param {JsApiSettings<JsApiExtension>['getExtension']} [getExtension] - Функция для получения объекта расширения `jsApi`, дополняющего базовый набор API
* @return {IJsApi & JsApiExtension}
*/
declare function getExtendedJsApi <JsApiExtension extends {}>(
jsApi: IJsApi,
environment: UIEnvironment,
context?: UIContext | UIFrameContext,
getExtension?: JsApiSettings<JsApiExtension>['getExtension']
): IJsApi & JsApiExtension;