/**
 * Email Provider Loader
 *
 * Integrates URL validation and hash verification to load and validate
 * email provider data with security checks.
 */
import type { EmailProvider } from './index';
export interface LoadResult {
    success: boolean;
    providers: EmailProvider[];
    securityReport: {
        hashVerification: boolean;
        urlValidation: boolean;
        totalProviders: number;
        validUrls: number;
        invalidUrls: number;
        securityLevel: 'SECURE' | 'WARNING' | 'CRITICAL';
        issues: string[];
    };
}
/**
 * Clear the cache (useful for testing or when providers file changes)
 */
export declare function clearCache(): void;
/**
 * Loads and validates email provider data with security checks
 *
 * @param providersPath - Path to the providers JSON file
 * @param expectedHash - Optional expected hash for verification
 * @returns Load result with validation details
 */
export declare function loadProviders(providersPath?: string, expectedHash?: string): LoadResult;
/**
 * Development utility to generate and display current hashes
 */
export declare function initializeSecurity(): Record<string, string>;
/**
 * Express middleware for provider loading with security checks (if using in web apps)
 */
interface SecurityMiddlewareOptions {
    expectedHash?: string;
    allowInvalidUrls?: boolean;
    onSecurityIssue?: (report: LoadResult['securityReport']) => void;
    getProviders?: () => LoadResult;
}
export declare function createSecurityMiddleware(options?: SecurityMiddlewareOptions): (req: any, res: any, next: any) => any;
declare const _default: {
    loadProviders: typeof loadProviders;
    initializeSecurity: typeof initializeSecurity;
    createSecurityMiddleware: typeof createSecurityMiddleware;
    clearCache: typeof clearCache;
};
export default _default;
//# sourceMappingURL=provider-loader.d.ts.map