/** * MSW handler management system */ import type { RequestHandler } from 'msw'; import type { MockHandlerRegistry } from '../types'; /** * Handler manager for organizing and managing MSW request handlers */ export declare class HandlerManager implements MockHandlerRegistry { private handlers; private groups; /** * Register a handler with optional ID and group */ register(handler: RequestHandler, id?: string, group?: string): void; /** * Unregister a handler by ID or instance */ unregister(handlerOrId: RequestHandler | string): void; /** * Get all handlers */ getHandlers(): RequestHandler[]; /** * Get handlers by group */ getHandlersByGroup(group: string): RequestHandler[]; /** * Get handler by ID */ getHandler(id: string): RequestHandler | undefined; /** * Check if handler exists */ hasHandler(handlerOrId: RequestHandler | string): boolean; /** * Clear all handlers */ clear(): void; /** * Clear handlers by group */ clearGroup(group: string): void; /** * Get all groups */ getGroups(): string[]; /** * Get handler count */ getHandlerCount(): number; /** * Get group handler count */ getGroupHandlerCount(group: string): number; /** * Register multiple handlers */ registerMany(handlers: RequestHandler[], group?: string): void; /** * Create a scoped handler manager for a specific group */ createScope(group: string): ScopedHandlerManager; /** * Generate a unique handler ID */ private generateHandlerId; /** * Export handlers for MSW setup */ export(): RequestHandler[]; /** * Import handlers from another manager */ import(other: HandlerManager, group?: string): void; /** * Clone the handler manager */ clone(): HandlerManager; } /** * Scoped handler manager for working with specific groups */ export declare class ScopedHandlerManager { private parent; private group; constructor(parent: HandlerManager, group: string); /** * Register handler in this scope */ register(handler: RequestHandler, id?: string): void; /** * Unregister handler from this scope */ unregister(handlerOrId: RequestHandler | string): void; /** * Get handlers in this scope */ getHandlers(): RequestHandler[]; /** * Clear all handlers in this scope */ clear(): void; /** * Get handler count in this scope */ getHandlerCount(): number; /** * Register multiple handlers in this scope */ registerMany(handlers: RequestHandler[]): void; } /** * Global handler manager instance */ export declare const globalHandlerManager: HandlerManager; //# sourceMappingURL=handler-manager.d.ts.map