UNPKG

@showbridge/lib

Version:

Main library for showbridge protocol router

42 lines (41 loc) 1.51 kB
import { EventEmitter } from 'node:events'; import Config from './config.js'; import { RouterVars } from '@showbridge/types'; import Action from './actions/action.js'; import { Message } from './messages/index.js'; import { CloudProtocol, HTTPProtocol, MIDIProtocol, MQTTProtocol, TCPProtocol, UDPProtocol } from './protocols/index.js'; import Trigger from './triggers/trigger.js'; export type RouterProtocols = { http: HTTPProtocol; udp: UDPProtocol; tcp: TCPProtocol; midi: MIDIProtocol; mqtt: MQTTProtocol; cloud: CloudProtocol; }; declare class Router extends EventEmitter { vars: RouterVars; _config: Config; protocols: RouterProtocols; constructor(config: Config); set config(value: Config); get config(): Config; stop(): void; start(): void; setLogLevel(logLevel: any): void; servePath(filePath: string): void; processTrigger(trigger: Trigger<unknown>, triggerPath: string, msg: Message): void; processMessage(msg: Message): void; runAction(action: Action<unknown>, msg: Message, vars: RouterVars): void; stopProtocol(type: string): void; reloadProtocol(type: string): void; disableAction(type: string): void; enableAction(type: string): void; disableProtocol(type: string): void; enabledProtocol(type: string): void; disableTrigger(type: string): void; enableTrigger(type: string): void; disableTransform(type: string): void; enableTransform(type: string): void; } export default Router;