import type { OAuthConfig, ClientRegistrationRequest, ClientRegistrationResponse } from '../types/http.types.js'; /** * Validation error for client registration. */ export declare class ClientRegistrationError extends Error { readonly errorCode: string; readonly statusCode: number; constructor(errorCode: string, message: string, statusCode?: number); /** * Get the error response body. */ toJSON(): { error: string; error_description: string; }; } /** * Check if a request body is an OAuth Dynamic Client Registration request. * * @param body - The request body to check * @returns True if the body looks like a client registration request */ export declare function isClientRegistrationRequest(body: unknown): body is ClientRegistrationRequest; /** * Validate a client registration request. * * @param request - The client registration request * @throws ClientRegistrationError if validation fails */ export declare function validateClientRegistrationRequest(request: ClientRegistrationRequest): void; /** * Process a client registration request and generate a response. * * @param request - The validated client registration request * @param config - OAuth configuration * @returns Client registration response * * @example * ```typescript * const response = await processClientRegistration( * { redirect_uris: ['http://localhost:3000/callback'], client_name: 'My App' }, * { agentId: 'agent_123', baseUrl: 'http://localhost:5001', environment: 'staging_sandbox' } * ) * ``` */ export declare function processClientRegistration(request: ClientRegistrationRequest, config: OAuthConfig): Promise; //# sourceMappingURL=client-registration.d.ts.map