/** * Unified Client Registration Tests * * Tests client registration for both pre-2025-11-25 and MCP 2025-11-25 protocols. * Implements the priority order: * 1. Preregistration (pre-configured credentials) * 2. Client ID Metadata Document (MCP 2025-11-25 only) * 3. Dynamic Client Registration via RFC 7591 (fallback) */ import { ComplianceTestResult, ClientRegistrationMethod, ServerTestConfig } from '../types/compliance.js'; import { DCRClient } from '../client/dcr-client.js'; /** * Client registration context * Stores the result of successful registration */ export interface ClientRegistrationContext { method: ClientRegistrationMethod; clientId: string; clientSecret?: string; redirectUri?: string; registrationAccessToken?: string; registrationClientUri?: string; } /** * Run unified client registration tests * * Tests all three registration methods and displays results for each: * 1. Preregistration (priority 1) * 2. Client ID Metadata Document (priority 2, MCP 2025-11-25 only) * 3. Dynamic Client Registration (priority 3, fallback) * * The first successful method provides the context for OAuth flow. * * @param config - Test configuration * @param dcrClient - DCR client instance * @param asMetadata - Authorization Server metadata (from cache, optional) * @returns Test results and registration context */ export declare function runClientRegistrationTests(config: ServerTestConfig, dcrClient: DCRClient | null, asMetadata?: Record): Promise<{ results: ComplianceTestResult[]; context?: ClientRegistrationContext; }>; //# sourceMappingURL=client-registration-tests.d.ts.map