harmony-plugin-manager
Version:
A comprehensive TypeScript library for generating harmonious color palettes with WCAG 2.1 accessibility compliance
56 lines • 1.98 kB
TypeScript
/**
* Validation utilities for plugin metadata, settings, and configurations
*
* Provides comprehensive validation for:
* - Plugin metadata (name, version, dependencies, tags)
* - Plugin settings (enabled state, priority, configuration)
* - Semantic versioning compliance
* - Naming conventions
*/
import type { PluginMetadata, PluginSettings } from '../core/types';
export declare class ValidationUtils {
/**
* Validates plugin metadata for completeness and correctness
* Checks name, version, dependencies, and tags
*
* @param metadata - Plugin metadata to validate
* @throws {Error} When validation fails
*/
static validatePluginMetadata(metadata: PluginMetadata): void;
/**
* Validates plugin settings for type correctness
* Ensures enabled is boolean, priority is number, and config is object
*
* @param settings - Plugin settings to validate
* @throws {Error} When validation fails
*/
static validatePluginSettings(settings: PluginSettings): void;
/**
* Validates plugin name format and uniqueness requirements
* Enforces alphanumeric characters, hyphens, and underscores only
*
* @param name - Plugin name to validate
* @throws {Error} When validation fails
*/
static validatePluginName(name: string): void;
/**
* Validates that a field is a non-empty string
*/
private static validateRequiredStringField;
/**
* Validates semantic version format using regex
* Supports major.minor.patch with optional pre-release and build metadata
*/
private static isValidSemVer;
/**
* Validates array of plugin dependencies
* Ensures each dependency follows naming conventions
*/
private static validateDependencies;
/**
* Validates array of plugin tags
* Ensures each tag is a non-empty string
*/
private static validateTags;
}
//# sourceMappingURL=validation.utils.d.ts.map