UNPKG

mcp-swagger-parser

Version:

Enterprise-grade OpenAPI/Swagger specification parser for Model Context Protocol (MCP) projects

62 lines 1.9 kB
/** * Security extractor for OpenAPI specifications */ import type { OpenAPISpec, SecuritySchemeObject, SecurityRequirementObject } from '../types/index'; export interface ExtractedSecurityScheme { name: string; scheme: SecuritySchemeObject; usageCount: number; usedInOperations: string[]; } export interface SecurityAnalysis { schemes: ExtractedSecurityScheme[]; globalSecurity: SecurityRequirementObject[]; operationSecurity: Record<string, SecurityRequirementObject[]>; unsecuredOperations: string[]; } export declare class SecurityExtractor { /** * Extract all security information from OpenAPI specification */ static extractSecurity(spec: OpenAPISpec): SecurityAnalysis; /** * Extract security schemes from components */ private static extractSecuritySchemes; /** * Analyze security scheme usage throughout the specification */ private static analyzeSecurityUsage; /** * Extract operation-level security requirements */ private static extractOperationSecurity; /** * Find operations without security requirements */ private static findUnsecuredOperations; /** * Check if object is a reference */ private static isReferenceObject; /** * Get security scheme statistics */ static getSecurityStats(analysis: SecurityAnalysis): { totalSchemes: number; schemeTypes: Record<string, number>; unusedSchemes: number; globalSecurityCount: number; unsecuredOperationsCount: number; mostUsedScheme: string | null; leastUsedScheme: string | null; }; /** * Validate security configuration */ static validateSecurityConfig(analysis: SecurityAnalysis): { warnings: string[]; recommendations: string[]; }; } //# sourceMappingURL=security-extractor.d.ts.map