import { IncomingMessage, ServerResponse } from 'http';
import { ServerConfig } from '../config/server-config.js';
/**
 * OAuth Discovery Endpoints Handler
 * Implements MCP Authorization specification (RFC 9728) endpoints
 */
export declare class OAuthEndpointsHandler {
    private config;
    constructor(config: ServerConfig);
    /**
     * Handle OAuth Protected Resource Metadata endpoint
     * GET /.well-known/oauth-protected-resource
     */
    handleProtectedResourceMetadata(req: IncomingMessage, res: ServerResponse): void;
    /**
     * Handle OAuth Authorization Server Metadata endpoint
     * GET /.well-known/oauth-authorization-server
     */
    handleAuthorizationServerMetadata(req: IncomingMessage, res: ServerResponse): void;
    /**
     * Handle OAuth Dynamic Client Registration endpoint
     * POST /.well-known/oauth-dynamic-client-registration
     */
    handleDynamicClientRegistration(req: IncomingMessage, res: ServerResponse): void;
    /**
     * Generate secure, comprehensive redirect URIs following MCP and OAuth 2.1 standards
     * Supports all major MCP clients while maintaining security
     */
    private generateSecureRedirectUris;
    /**
     * Send JSON response with proper CORS headers
     */
    private sendJsonResponse;
    /**
     * Send CORS response for OPTIONS requests
     */
    private sendCorsResponse;
}
//# sourceMappingURL=oauth-endpoints.d.ts.map