UNPKG

@proug/mcp-cve-intelligence-server-lite

Version:

Lite Model Context Protocol server for comprehensive CVE intelligence gathering with multi-source exploit discovery, designed for security professionals and cybersecurity researchers

44 lines 2.19 kB
import type { CVESource } from '../types/cve.js'; import { BaseCVESourceImplementation } from './base.js'; interface SourceValidationDetails { isValid: boolean; errors: string[]; warnings: string[]; enabled: boolean; hasApiKey: boolean; } export { BaseCVESourceImplementation }; export declare class SourceFactory { private static sourceImplementations; static registerSourceImplementation(type: string, implementationClass: new (config: CVESource, apiKey?: string) => BaseCVESourceImplementation): void; static createSourceImplementation(sourceName: string, config: CVESource, apiKey?: string): BaseCVESourceImplementation; static createSourceImplementations(sources: Record<string, CVESource>, apiKeys?: Record<string, string>): Record<string, BaseCVESourceImplementation>; /** * Validates all source configurations and returns aggregated results */ static validateAllSources(sources: Record<string, CVESource>, apiKeys?: Record<string, string>): { isValid: boolean; errors: string[]; warnings: string[]; sourceResults: Record<string, SourceValidationDetails>; }; /** * Validates a specific source configuration */ static validateSource(name: string, config: CVESource, apiKey?: string): { isValid: boolean; errors: string[]; warnings: string[]; }; static getEnabledImplementations(implementations: Record<string, BaseCVESourceImplementation>): BaseCVESourceImplementation[]; static getImplementationsByFeature(implementations: Record<string, BaseCVESourceImplementation>, feature: string): BaseCVESourceImplementation[]; static getAvailableSourceTypes(): string[]; private static determineSourceType; private static getApiKeyForSource; /** * Resolves API keys for all sources using distributed logic */ static resolveApiKeysForSources(sources: Record<string, CVESource>, providedApiKeys?: Record<string, string>): Record<string, string | undefined>; static testAllConnections(implementations: Record<string, BaseCVESourceImplementation>): Promise<Record<string, boolean>>; } //# sourceMappingURL=factory.d.ts.map