/**
 * Main MSW setup and lifecycle management
 */
import type { RequestHandler } from 'msw';
import type { MockSetupOptions, MSWInstance } from './types';
export { getMockConfig } from './config';
/**
 * Setup MSW based on environment with automatic detection
 */
export declare function setupMocks(options?: MockSetupOptions): Promise<void>;
/**
 * Teardown MSW and clean up resources
 */
export declare function teardownMocks(): Promise<void>;
/**
 * Restart MSW with new configuration
 */
export declare function restartMocks(options?: MockSetupOptions): Promise<void>;
/**
 * Add handlers to existing MSW instance
 */
export declare function addCoreHandlers(...handlers: RequestHandler[]): void;
/**
 * Reset handlers to original state
 */
export declare function resetHandlers(...handlers: RequestHandler[]): void;
/**
 * Restore original handlers
 */
export declare function restoreHandlers(): void;
/**
 * Check if MSW is set up and running
 */
export declare function isMswSetup(): boolean;
/**
 * Check if MSW is currently running
 */
export declare function isMswRunning(): boolean;
/**
 * Get current MSW instance
 */
export declare function getMswInstance(): MSWInstance | null;
/**
 * Auto-setup MSW based on environment (convenience function)
 */
export declare function autoSetupMocks(customHandlers?: RequestHandler[]): Promise<void>;
/**
 * Setup MSW for development environment
 */
export declare function setupDevelopmentMocks(handlers?: RequestHandler[]): Promise<void>;
/**
 * Setup MSW for testing environment
 */
export declare function setupTestingMocks(handlers?: RequestHandler[]): Promise<void>;
/**
 * Setup MSW for Storybook environment
 */
export declare function setupStorybookMocks(handlers?: RequestHandler[]): Promise<void>;
/**
 * Get setup status information
 */
export declare function getSetupStatus(): {
    isSetup: boolean;
    isRunning: boolean;
    hasInstance: boolean;
    config: import("./types").MockConfig | null;
    environment: import("./types").EnvironmentInfo;
};
//# sourceMappingURL=setup.d.ts.map