import { type NamespaceName } from '../../src/types/namespace/namespace-name.js';
import { type ClusterReferenceName, type ClusterReferences, type DeploymentName } from '../../src/types/index.js';
import { type SoloLogger } from '../../src/core/logging/solo-logger.js';
import { Suite } from 'mocha';
import { type BaseTestOptions } from './commands/tests/base-test-options.js';
export declare class EndToEndTestSuite extends Suite {
    readonly testName: string;
    readonly testSuiteName: string;
    readonly namespace: NamespaceName;
    readonly deployment: DeploymentName;
    readonly clusterCount: number;
    readonly consensusNodesCount: number;
    readonly loadBalancerEnabled: boolean;
    readonly pinger: boolean;
    readonly realm: number;
    readonly shard: number;
    readonly serviceMonitor: boolean;
    readonly podLog: boolean;
    readonly minimalSetup: boolean;
    readonly collectDiagnosticLogs: boolean;
    readonly apiPermissionProperties: string;
    readonly applicationEnvironment: string;
    readonly applicationProperties: string;
    readonly bootstrapProperties: string;
    readonly logXml: string;
    readonly settingsTxt: string;
    readonly javaFlightRecorderConfiguration: string;
    readonly testSuiteCallback: (options: BaseTestOptions, preDestroy?: (endToEndTestSuiteInstance: EndToEndTestSuite) => Promise<void>) => void;
    private readonly endToEndTestSuiteInstance;
    readonly testCacheDirectory: string;
    readonly contexts: string[];
    readonly testLogger: SoloLogger;
    readonly createdAccountIds: string[];
    readonly enableLocalBuildPathTesting: boolean;
    readonly localBuildPath: string;
    readonly localBuildReleaseTag: string;
    readonly clusterReferenceNameArray: ClusterReferenceName[];
    readonly clusterReferences: ClusterReferences;
    readonly options: BaseTestOptions;
    constructor(testName: string, testSuiteName: string, namespace: NamespaceName, deployment: DeploymentName, clusterCount: number, consensusNodesCount: number, loadBalancerEnabled: boolean, pinger: boolean, realm: number, shard: number, serviceMonitor: boolean, podLog: boolean, minimalSetup: boolean, collectDiagnosticLogs: boolean, apiPermissionProperties: string, applicationEnvironment: string, applicationProperties: string, bootstrapProperties: string, logXml: string, settingsTxt: string, javaFlightRecorderConfiguration: string, testSuiteCallback: (options: BaseTestOptions, preDestroy?: (endToEndTestSuiteInstance: EndToEndTestSuite) => Promise<void>) => void);
    runTestSuite(): void;
    static preDestroy(endToEndTestSuiteInstance: EndToEndTestSuite): Promise<void>;
}
