export interface SecurityCheckerOptions {
    timeout: number;
    userAgent: string;
    followRedirects: boolean;
    maxRedirects: number;
    checkExternalResources: boolean;
    checkBlacklists: boolean;
    performContentAnalysis: boolean;
}
export interface SecurityIssue {
    type: string;
    severity: 'critical' | 'high' | 'medium' | 'low' | 'info';
    title: string;
    recommendation: string;
    details?: string;
    category?: string;
}
export interface SecurityResults {
    results: {
        criticalIssues: number;
        highIssues: number;
        mediumIssues: number;
        lowIssues: number;
        infos: number;
    };
    url: string;
    domain: string;
    scanTime: string;
    summary: {
        riskScore: number;
        status: string;
        criticalIssues: number;
        highIssues: number;
        mediumIssues: number;
        lowIssues: number;
        infos: number;
        details: string[];
    };
    headers: {
        status: 'secure' | 'warning' | 'vulnerable' | 'compromised' | 'critical';
        severity: number;
        details?: string[];
        headerItems?: any[];
    };
    issues: SecurityIssue[];
    findings: {
        headers: Record<string, string | null>;
        headerStatus?: any[];
        blacklists?: BlacklistItem[];
        [key: string]: any;
    };
    redirectChain: string[];
    metadata: {
        serverInfo: string | null;
        technologies: any[];
    };
    remediation: any[];
    scanDuration?: number;
    executiveSummary?: any;
}
export interface MalwarePattern {
    pattern: RegExp;
    severity: 'critical' | 'high' | 'medium' | 'low';
    type: string;
}
export interface SecurityHeader {
    missingImpact?: string;
    invalidImpact?: string;
    invalidDetails?: string;
    name?: string;
    expected?: RegExp;
    recommendation?: string;
}
export interface Resource {
    type: string;
    url: string;
}
export interface BlacklistItem {
    provider: string;
    threatType: string;
    platformType: string;
    timestamp: string;
}
