UNPKG

frontend-standards-checker

Version:

A comprehensive frontend standards validation tool with TypeScript support

136 lines 3.77 kB
import type { IConfigLoader, ILogger, IStandardsConfiguration, IConfigurationExport, IDefaultRulesStructure } from '../types/index.js'; /** * Configuration loader and manager * Handles loading custom rules and project configuration */ export declare class ConfigLoader implements IConfigLoader { readonly rootDir: string; readonly logger: ILogger; readonly configFileName: string; private readonly helper; constructor(rootDir: string, logger: ILogger); /** * Resolve the configuration file path * @param customConfigPath Optional custom config path * @returns Resolved config file path */ private resolveConfigPath; /** * Load configuration from file or use defaults * @param customConfigPath Optional custom config path * @returns Configuration object */ load(customConfigPath?: string | null): Promise<IStandardsConfiguration>; /** * Merge custom configuration with defaults * @param customConfig Custom configuration * @returns Merged configuration */ mergeWithDefaults(customConfig: IConfigurationExport): IStandardsConfiguration; /** * Handle function-based configuration */ private handleFunctionConfig; /** * Handle array-based configuration */ private handleArrayConfig; /** * Handle object-based configuration */ private handleObjectConfig; /** * Determine final rules based on configuration */ private determineFinalRules; /** * Check if a file is a configuration file that should be excluded from validation * @param filePath The file path to check * @returns True if the file is a configuration file */ private isConfigFile; /** * Get default configuration * @returns Default configuration */ getDefaultConfig(): IStandardsConfiguration; /** * Get default rules organized by category * @returns Default rules structure */ getDefaultRules(): IDefaultRulesStructure; /** * Get structure validation rules * @returns Structure rules */ private getStructureRules; /** * Get naming validation rules * @returns Naming rules */ private getNamingRules; /** * Get content validation rules * @returns Content rules */ private getContentRules; /** * Convert object format rules to ValidationRule array */ private convertObjectRulesToArray; /** * Get style validation rules * @returns Style rules */ private getStyleRules; /** * Get documentation validation rules * @returns Documentation rules */ private getDocumentationRules; /** * Get TypeScript specific rules */ private getTypeScriptRules; /** * Get React specific rules */ private getReactRules; /** * Get import rules */ private getImportRules; /** * Get performance rules */ private getPerformanceRules; /** * Get accessibility rules */ private getAccessibilityRules; /** * Check if content has unused imports */ private hasUnusedImports; /** * Check if a specific import line contains unused imports */ private isUnusedImportLine; /** * Check if import is a common framework import that might be used implicitly */ private isFrameworkImport; /** * Extract imported names from an import line */ private extractImportedNames; /** * Check if any of the imported names are unused */ private hasAnyUnusedName; /** * Check if a specific imported name is unused */ private isNameUnused; } //# sourceMappingURL=config-loader.d.ts.map