UNPKG

@docsvision/webclient

Version:

Type definitions for DocsVision WebClient scripts and extensions.

34 lines (33 loc) 2.44 kB
import { RequestOptions } from '@docsvision/webclient/Legacy/Utils'; import { IWebServicesConnection } from '@docsvision/webclient/System/IWebServicesConnection'; import { IWebServicesInfo } from '@docsvision/webclient/System/IWebServicesInfo'; import { IWebServicesRequest } from '@docsvision/webclient/System/IWebServicesRequest'; /** Реализует взаимодействие с агентом веб-сервисов. */ export interface IWebServicesService { /** Пытается подключится к агенту веб-сервисов. В случае неудачи генерирует исключение. */ check(): Promise<IWebServicesInfo>; /** * Отправляет сообщение в агент веб-сервисов методом GET, и возвращает полученный ответ. * @param plugin Адрес плагина, для которого предназначено сообщение. * @param message JavaScript объект, содержащий параметры запроса. * @returns JavaScript объект ответа. */ get<T>(plugin: string, message: IWebServicesRequest<T>, options?: RequestOptions): Promise<T>; /** * Отправляет сообщение в агент веб-сервисов методом POST, и возвращает полученный ответ. * @param plugin Адрес плагина, для которого предназначено сообщение. * @param message JavaScript объект, содержащий параметры запроса. * @returns JavaScript объект ответа. */ post<T>(plugin: string, message: IWebServicesRequest<T>, options?: RequestOptions): Promise<T>; /** * Открывает соединение с плагином агента черзе веб-сокеты. * @param plugin Адрес плагина, с которым планируется начать взаимодействие. * @returns Объект соединения, через который можно отправлять запросы и получать ответы. */ connect(plugin: string): Promise<IWebServicesConnection>; } export declare type $WebServices = { webServices: IWebServicesService; }; export declare const $WebServices: string | ((model?: $WebServices) => IWebServicesService);