@ordojs/security
Version:
Security package for OrdoJS with XSS, CSRF, and injection protection
55 lines • 1.54 kB
TypeScript
/**
* Input Validator
* Comprehensive input validation and sanitization system
*/
import type { InputValidatorConfig, SanitizationOptions, ValidationResult, ValidationRule, ValidationSchema } from './types';
export declare class InputValidator {
private config;
private customRules;
constructor(config?: InputValidatorConfig);
/**
* Validates input against a schema
*/
validate(data: Record<string, any>, schema: ValidationSchema): ValidationResult;
/**
* Sanitizes a single value
*/
sanitize(value: any, options?: SanitizationOptions): any;
/**
* Validates and sanitizes input for SQL injection
*/
validateSqlInput(input: any): {
isValid: boolean;
sanitized: any;
threats: string[];
};
/**
* Validates path for traversal attacks
*/
validatePath(path: string): {
isValid: boolean;
sanitized?: string;
errors: string[];
};
/**
* Creates a validation rule
*/
createRule(name: string, validate: (value: any) => boolean, message: string, sanitize?: (value: any) => any): ValidationRule;
/**
* Gets a validation rule by name
*/
getRule(name: string): ValidationRule | undefined;
/**
* Registers built-in validation rules
*/
private registerBuiltInRules;
/**
* Strips HTML tags from input
*/
private stripHtml;
/**
* Escapes HTML characters
*/
private escapeHtml;
}
//# sourceMappingURL=input-validator.d.ts.map