@showbridge/lib
Version:
Main library for showbridge protocol router
33 lines (32 loc) • 1.1 kB
TypeScript
import { ActionObj, RouterVars } from '@showbridge/types';
import { EventEmitter } from 'node:events';
import { Message } from '../messages/index.js';
import { RouterProtocols } from '../router.js';
import Transform from '../transforms/transform.js';
declare class Action<T extends Object> extends EventEmitter {
private obj;
transforms: Transform<unknown>[];
constructor(actionObj: ActionObj<T>);
loadTransforms(): void;
resolveTemplatedParams(data: any): T;
get type(): string;
get params(): T;
get enabled(): boolean;
get comment(): string;
getTransformedMessage<T extends Message>(msg: T, vars: RouterVars): any;
_run(msg: Message, vars: RouterVars, protocols: RouterProtocols): void;
run(msg: Message, vars: RouterVars, protocols: RouterProtocols): void;
toJSON(): {
comment: string;
type: string;
params: T;
transforms: {
type: string;
params: unknown;
enabled: boolean;
comment: string;
}[];
enabled: boolean;
};
}
export default Action;