/** * MCP Authentication Provider * * Model Context Protocol authentication integration that provides authentication * capabilities as MCP tools and handles authentication requests from MCP clients */ /// import { EventEmitter } from "events"; import { UnifiedAuthManager } from "./unified-auth-manager.js"; import { MCPAuthCapability, MCPAuthProvider, AuthenticationResult, RefreshTokenResult, ValidationResult } from "../../types/auth.js"; /** * MCP Auth Provider Configuration */ export interface MCPAuthProviderConfig { version: string; enabledCapabilities: string[]; maxConcurrentRequests: number; requestTimeoutMs: number; enableMetrics: boolean; enableCaching: boolean; } /** * MCP authentication metrics */ export interface MCPAuthMetrics { totalRequests: number; successfulRequests: number; failedRequests: number; averageResponseTime: number; activeRequests: number; capabilityUsage: Record; errorsByType: Record; } /** * MCP Authentication Provider Implementation */ export declare class MCPAuthenticationProvider extends EventEmitter implements MCPAuthProvider { readonly name = "mcp-auth"; readonly version: string; private authManager; private config; private logger; private activeRequests; private requestCounter; private metrics; readonly capabilities: MCPAuthCapability[]; constructor(authManager: UnifiedAuthManager, config?: Partial); /** * Handle MCP authentication request */ authenticate(params: any): Promise; /** * Handle MCP token refresh request */ refresh(params: any): Promise; /** * Handle MCP credential validation request */ validate(params: any): Promise; /** * Handle additional MCP capabilities */ handleCapability(method: string, params: any): Promise; /** * Get MCP provider information */ getProviderInfo(): { name: string; version: string; capabilities: MCPAuthCapability[]; metrics: MCPAuthMetrics | undefined; config: { maxConcurrentRequests: number; requestTimeoutMs: number; enabledCapabilities: number; }; }; /** * Handle revocation request */ private handleRevoke; /** * Handle status request */ private handleStatus; /** * Handle capabilities request */ private handleCapabilities; /** * Handle providers request */ private handleProviders; /** * Handle metrics request */ private handleMetrics; /** * Get metrics */ private getMetrics; /** * Calculate success rate */ private calculateSuccessRate; /** * Track active request */ private trackRequest; /** * Untrack request */ private untrackRequest; /** * Handle request timeout */ private handleRequestTimeout; /** * Update metrics */ private updateMetrics; /** * Create request context */ private createRequestContext; /** * Generate unique request ID */ private generateRequestId; /** * Parameter validation methods */ private validateAuthenticateParams; private validateRefreshParams; private validateValidateParams; private validateRevokeParams; /** * Create MCP-specific error */ private createMCPError; /** * Create auth error */ private createAuthError; } //# sourceMappingURL=mcp-auth-provider.d.ts.map