UNPKG

@opra/common

Version:
32 lines (31 loc) 1.26 kB
import type { Type } from 'ts-gems'; import { OpraSchema } from '../../schema/index.js'; import { DocumentInitContext } from '../common/document-init-context.js'; import { WSApi } from '../ws/ws-api.js'; import { WSController } from '../ws/ws-controller.js'; import { WSOperation } from '../ws/ws-operation.js'; export declare namespace WSApiFactory { interface InitArguments extends WSApi.InitArguments { controllers: Type[] | any[] | ((parent: any) => any) | OpraSchema.WSApi['controllers']; } } /** * @class WSApiFactory */ export declare class WSApiFactory { /** * Generates MQApi * @param context * @param init */ static createApi(context: DocumentInitContext, init: WSApiFactory.InitArguments): Promise<WSApi>; protected static _createController(context: DocumentInitContext, parent: WSApi, thunk: Type | object | Function | OpraSchema.WSController, name?: string): Promise<WSController | undefined | void>; /** * Initializes WSOperation * @param context * @param operation * @param metadata * @protected */ protected static _initWSOperation(context: DocumentInitContext, operation: WSOperation, metadata: WSOperation.Metadata | OpraSchema.WSOperation): Promise<void>; }