/** @packageDocumentation * @module Core */ import { BeEvent } from "@bentley/bentleyjs-core"; import { RegisteredRuleset, Ruleset } from "@bentley/presentation-common"; /** * Presentation ruleset registry. * @public */ export interface RulesetManager { /** @alpha */ onRulesetModified: BeEvent<(curr: RegisteredRuleset, prev: Ruleset) => void>; /** * Get a ruleset with the specified id. */ get(id: string): Promise; /** * Register the supplied ruleset */ add(ruleset: Ruleset): Promise; /** * Modify the given pre-registered ruleset * @alpha */ modify(ruleset: RegisteredRuleset, newRules: Omit): Promise; /** * Unregister the supplied ruleset */ remove(ruleset: RegisteredRuleset | [string, string]): Promise; /** * Remove all rulesets registered in this session. */ clear(): Promise; } /** @internal */ export declare class RulesetManagerImpl implements RulesetManager { private _clientRulesets; onRulesetModified: BeEvent<(curr: RegisteredRuleset, prev: Ruleset) => void>; static create(): RulesetManagerImpl; /** * Get a ruleset with the specified id. */ get(id: string): Promise; /** * Register the supplied ruleset */ add(ruleset: Ruleset): Promise; /** * Modifies the given pre-registered ruleset */ modify(ruleset: RegisteredRuleset, newRules: Omit): Promise; /** * Unregister the supplied ruleset */ remove(ruleset: RegisteredRuleset | [string, string]): Promise; /** * Remove all rulesets registered in this session. */ clear(): Promise; } //# sourceMappingURL=RulesetManager.d.ts.map