UNPKG

tl-shared-security

Version:

Enterprise-grade security module for frontend and backend applications with comprehensive protection against XSS, CSRF, SQL injection, and other security vulnerabilities

40 lines 1.38 kB
import { IFilterXSSOptions } from 'xss'; import DOMPurify from 'dompurify'; export interface XssSanitizerOptions extends IFilterXSSOptions { useDOMPurify?: boolean; domPurifyConfig?: DOMPurify.Config; } export declare class XssSanitizer { private xssFilter; private options; constructor(options?: XssSanitizerOptions); /** * Sanitizes a string input against XSS attacks * @param input - String to sanitize * @returns Sanitized string */ sanitize(input: string): string; /** * Sanitizes an object or array recursively * @param data - Object or array to sanitize * @returns Sanitized object or array */ sanitizeRecursive(data: any): any; /** * Sanitizes HTML attributes to prevent JavaScript execution * @param html - HTML string to sanitize * @returns Sanitized HTML string */ sanitizeHtmlAttributes(html: string): string; /** * Sanitizes a URL to prevent JavaScript execution * @param url - URL to sanitize * @returns Sanitized URL */ sanitizeUrl(url: string): string; } export declare const sanitizeInput: (input: string) => string; export declare const sanitizeRecursive: (data: any) => any; export declare const sanitizeUrl: (url: string) => string; export declare const xssSanitizer: XssSanitizer; //# sourceMappingURL=xssSanitizer.d.ts.map