UNPKG

@ivandt/json-rules

Version:

Rule parsing engine for JSON rules

27 lines (26 loc) 1.01 kB
import { Condition } from "../types"; export interface SubRuleResult { parent?: Condition; subRule: Condition; } export declare class RuleHelper { #private; /** * Extracts all sub-rules from a condition. * @param condition The condition to extract sub-rules from. * @param results The sub-conditions result set * @param root The root condition which holds the condition to extract sub-rules from. */ extractSubRules(condition: Condition, results?: SubRuleResult[], root?: Condition): SubRuleResult[]; /** * Removes all subrules from the provided condition. * @param haystack The condition to search in and remove all sub-rules from. */ removeAllSubRules(haystack: Condition): Condition | null; /** * Removes all null properties from an object. * @param obj The object to remove null properties from. * @param defaults The default values to remove. */ stripNullProps(obj: Record<string, any>, defaults?: any[]): any; }