/** * Function Registry Service * * Manages custom and built-in condition functions for the ABAC engine. * Functions can be used in FunctionCondition evaluations within policies. */ import { ConditionFunction } from '../types'; /** * Service for managing condition functions */ export declare class FunctionRegistry { private functions; constructor(); /** * Register a custom function * * @param name - Function name (used in policies) * @param fn - Function implementation */ register(name: string, fn: ConditionFunction): void; /** * Get a function by name * * @param name - Function name * @returns Function implementation or undefined */ get(name: string): ConditionFunction | undefined; /** * Check if a function is registered * * @param name - Function name * @returns true if registered, false otherwise */ has(name: string): boolean; /** * Remove a function * * @param name - Function name * @returns true if removed, false if not found */ remove(name: string): boolean; /** * Get all registered function names * * @returns Array of function names */ getRegisteredFunctions(): string[]; /** * Clear all custom functions (keeps built-in functions) */ clearCustomFunctions(): void; /** * Clear all functions including built-in ones */ clearAll(): void; /** * Get built-in function names * * @returns Array of built-in function names */ private getBuiltInFunctionNames; /** * Register built-in functions */ private registerBuiltInFunctions; /** * Reset to default state (only built-in functions) */ reset(): void; } //# sourceMappingURL=FunctionRegistry.d.ts.map