@syntropysoft/praetorian
Version:
Praetorian CLI – A universal multi-environment configuration validator for DevSecOps teams. Validate, compare, and secure YAML/ENV files with ease.
51 lines • 1.59 kB
TypeScript
/**
* @file src/application/services/RuleLoaderService.ts
* @description Service for loading and composing validation rules (SOLID SRP refactored)
*/
import { RuleConfig, RuleLoadResult } from '../../shared/types/rules';
/**
* @interface RuleLoaderOptions
* @description Options for the rule loader
*/
interface RuleLoaderOptions {
/** Working directory for relative paths */
workingDirectory?: string;
/** Whether to include core rules by default */
includeCoreRules?: boolean;
/** Whether to validate loaded rules */
validateRules?: boolean;
}
/**
* @class RuleLoaderService
* @description Service for loading and composing validation rules (SOLID SRP)
*/
export declare class RuleLoaderService {
private readonly workingDirectory;
private readonly includeCoreRules;
private readonly validateRules;
constructor(options?: RuleLoaderOptions);
/**
* Loads rules from a configuration
* @param config - Rule configuration
* @returns Promise with loaded rules and any errors/warnings
*/
loadRules(config: RuleConfig): Promise<RuleLoadResult>;
/**
* Gets base rules to start with
* @returns Base rules
*/
private getBaseRules;
/**
* Loads multiple rule sets
* @param ruleSetPaths - Array of rule set paths
* @returns Array of rule load results
*/
private loadRuleSets;
/**
* Gets available core rule sets
* @returns Available core rule set names
*/
getAvailableCoreRuleSets(): string[];
}
export {};
//# sourceMappingURL=RuleLoaderService.d.ts.map