import type { IMochaIntegration, EnvironmentValidation, DependencyCheck } from '../../interfaces/infrastructure/mocha-integration';
import type { MultiSessionConfig } from '../../interfaces/core/types';
declare global {
    interface Window {
        MochaMultipleSessions?: {
            testSessionSetup: (config: any) => void;
            onAnySessionEvent: (callback: (event: any) => void) => () => void;
            testSession: (label: string, setupFn: () => void, options?: any) => Promise<string>;
            runSession: (label: string) => Promise<any>;
            runAllSessions: () => Promise<any[]>;
        };
        MochaDetailedReporter?: {
            DetailedJsonReporter: any;
        };
        Mocha?: any;
        mocha?: any;
        chai?: any;
    }
}
export declare class MochaIntegration implements IMochaIntegration {
    private isConfiguredFlag;
    private currentConfig;
    setupTestEnvironment(config: MultiSessionConfig): void;
    isConfigured(): boolean;
    getConfiguration(): any;
    integrateWithExistingLibrary(): void;
    setupDefaultReporter(sessionLabel: string): any;
    bridgeSessionEvents(): void;
    validateEnvironment(): EnvironmentValidation;
    checkDependencies(): DependencyCheck;
}
//# sourceMappingURL=mocha-integration.d.ts.map