UNPKG

@jss-rule-engine/core

Version:

Rule engine for Sitecore JSS

51 lines (50 loc) 3.2 kB
import { RuleEngineRequestContext, RuleEngineContext, RuleEngineSitecoreContext, ParsedRuleXmlData, OperatorFunctionDefinition, ConditionFunctionDefinition, ActionFunctionDefinition } from './types/ruleEngine'; export interface IJssRuleEngine { commandDefinitions: Map<string, ActionFunctionDefinition>; ruleDefinitions: Map<string, ConditionFunctionDefinition>; operatorDefinitions: Map<string, OperatorFunctionDefinition>; debug: boolean; sitecoreContext?: RuleEngineSitecoreContext; requestContext?: RuleEngineRequestContext; mockDate?: Date; setOptions(options?: RuleEngineContext): void; initialize(options?: any): void; registerAction(id: string, command: ActionFunctionDefinition): void; registerCondition(id: string, rule: ConditionFunctionDefinition): void; registerOperator(id: string, operator: OperatorFunctionDefinition): void; parseRuleXml(ruleXml: string, ruleEngineContext: RuleEngineContext): ParsedRuleXmlData | null; setSitecoreContext(sitecoreContext: RuleEngineSitecoreContext): void; setRequestContext(requestContext?: RuleEngineRequestContext): void; setMockDate(dateObj: Date): void; getRuleEngineContext(): RuleEngineContext; runRule(parsedRule: ParsedRuleXmlData | null, ruleEngineContext: RuleEngineContext): Promise<any>; runRuleActions(parsedRule: ParsedRuleXmlData | null, ruleActions: any, ruleEngineContext: RuleEngineContext): Promise<void>; prefetchItems(ruleEngineContext: RuleEngineContext): void; parseAndRunRule(ruleXml: any, context?: RuleEngineContext): Promise<any>; debugMessage(...args: any[]): void; } export declare class JssRuleEngine implements IJssRuleEngine { commandDefinitions: Map<string, ActionFunctionDefinition>; ruleDefinitions: Map<string, ConditionFunctionDefinition>; operatorDefinitions: Map<string, OperatorFunctionDefinition>; debug: boolean; sitecoreContext?: RuleEngineSitecoreContext; requestContext?: RuleEngineRequestContext; mockDate?: Date; constructor(options?: RuleEngineContext); setOptions(options?: RuleEngineContext): void; initialize(_options: any): void; registerAction(id: string, command: ActionFunctionDefinition): void; registerCondition(id: string, rule: ConditionFunctionDefinition): void; registerOperator(id: string, operator: OperatorFunctionDefinition): void; parseRuleXml(ruleXml: string, ruleEngineContext: RuleEngineContext): ParsedRuleXmlData | null; setSitecoreContext(sitecoreContext: RuleEngineSitecoreContext): void; setRequestContext(requestContext?: RuleEngineRequestContext): void; setMockDate(dateObj: Date): void; getRuleEngineContext(): RuleEngineContext; runRule(parsedRule: ParsedRuleXmlData | null, ruleEngineContext: RuleEngineContext): Promise<true | null>; runRuleActions(parsedRule: ParsedRuleXmlData | null, ruleActions: any, ruleEngineContext: RuleEngineContext): Promise<void>; prefetchItems(_ruleEngineContext: RuleEngineContext): void; parseAndRunRule(ruleXml: any, context?: RuleEngineContext): Promise<true | null>; debugMessage(..._args: any[]): void; }