@o3r/rules-engine
Version:
This module provides a rule engine that can be executed on your Otter application to customize your application (translations, placeholders and configs) based on a json file generated by your CMS.
21 lines • 1.35 kB
TypeScript
import type { ConnectContentMessage, DevtoolsCommonOptions, MessageDataTypes, OtterMessageContent, RequestMessagesContentMessage } from '@o3r/core';
import type { DebugEvent, Ruleset } from '../engine';
export interface RulesEngineDevtoolsServiceOptions extends DevtoolsCommonOptions {
/** Size of events list emitted by rules engine; When undefined all history will be kept */
rulesEngineStackLimit?: number;
}
/** Rules Engine debug event Message Content */
export interface RulesEngineDebugEventsContentMessage extends OtterMessageContent<'rulesEngineEvents'> {
/** Map of registered rulesets */
rulesetMap: Record<string, Ruleset>;
/** List of event from the Rules Engine Debugger */
events: DebugEvent[];
}
type RulesEngineMessageContents = RulesEngineDebugEventsContentMessage;
/** List of possible DataTypes for RulesEngine messages */
export type RulesEngineMessageDataTypes = MessageDataTypes<RulesEngineMessageContents>;
/** List of all messages for configuration purpose */
export type AvailableRulesEngineMessageContents = RulesEngineMessageContents | ConnectContentMessage | RequestMessagesContentMessage<RulesEngineMessageDataTypes>;
export declare const isRulesEngineMessage: (message: any) => message is AvailableRulesEngineMessageContents;
export {};
//# sourceMappingURL=rules-engine-devkit.interface.d.ts.map