import { IncomingRoute } from './IncomingRoute'; import { IncomingContext } from './IncomingContext'; import { IncomingMeta } from './IncomingMeta'; /** * Сообщение которое клиент отправляет серверу, для вызова метода. */ export interface CallMessage extends IncomingRoute, IncomingMeta { /** * Идентификатор конкретной транзакции. * Создается на клиенте, по нему клиент поймет как маршрутизировать сообщение с результатом. */ transactionId: string; type: 'call'; /** * Исходящий контекст. * Значения полей которые помечены флагом in, клиент соберет и отправит в этом поле. * Прежде чем вызвать метод эти значения будут установлены в соответствующие поля объекта. */ context: IncomingContext; /** * Параметры вызова метода. */ call: { /** * Имя метода который нужно вызвать. */ method: string; /** * Список аргументов которые будут переданы методу при вызове. */ args: Array; }; }