signalk-server
Version:
An implementation of a [Signal K](http://signalk.org) server for boats.
14 lines (13 loc) • 607 B
TypeScript
import { Brand, ServerAPI } from '@signalk/server-api';
import { OpenApiDescription, OpenApiRecord } from '../api/swagger';
export type PluginFactory = (serverApi: ServerAPI) => Plugin;
export interface Plugin {
start: (config: object, restart: (newConfiguration: object) => void) => any;
stop: () => any;
}
export type PluginId = Brand<string, 'PluginId'>;
export interface PluginManager {
getPluginOpenApiRecords: () => OpenApiRecord[];
setPluginOpenApi: (pluginId: PluginId, openApi: OpenApiDescription) => void;
getPluginOpenApi: (pluginId: PluginId) => OpenApiRecord | undefined;
}