import { Key, PID } from '../catalog'; import { IRuleChecker, QuantityInformation } from '../rules'; export declare class RuleChecker implements IRuleChecker { private readonly emptySet; private readonly validChildren; private readonly exclusion; private readonly quantityInfo; private readonly pidsToUnits; constructor(pidsToUnits: Map); addChild(parent: PID, child: PID): void; addExclusionSet(parent: PID, exclusionSet: Set): void; addQuantityInfo(parent: PID, child: PID, info: QuantityInformation | undefined): void; isValidChild(parent: Key, child: Key): boolean; getValidChildren(parent: string): Set; getPairwiseMutualExclusionPredicate(parent: string, child: string): (existing: string) => boolean; getIncrementalMutualExclusionPredicate(parent: string): (existing: string) => boolean; getDefaultQuantity(parent: string, child: string): number; isValidQuantity(parent: string, child: string, qty: number): boolean; getQuantityInfo(parent: string, child: string): QuantityInformation | undefined; getExclusionGroups(pid: PID): Array>; getUnits(pid: PID): string; }