import type TrackedContext from '../instances/trackedContext.js'; import TrackedInstance from '../instances/trackedInstance.js'; import type TestFrameworkInstance from '../instances/testFrameworkInstance.js'; export default class TestFramework { static instances: Map; testFrameworks: Array; testFrameworkVersions: Record; binSessionId: string | null; /** * Constructor for the TestFramework * @param {Array} testFrameworks - List of Test frameworks * @param {Map} testFrameworkVersions - Name of the Test frameworks * @param {string} binSessionId - BinSessionId */ constructor(testFrameworks: Array, testFrameworkVersions: Record, binSessionId: string); /** * get all instances * @return {Map} - return all instances Map */ getInstances(): Map; /** * set testFrameworkInstance * @param {TrackedContext} context * @param {TestFrameworkInstance} instance */ setInstance(context: TrackedContext, instance: TestFrameworkInstance): void; /** * Find instance and track any state for the test framework * @returns instance */ static getTrackedInstance(): any; /** * Set tracked instance * @returns {string} The name of the test framework */ static setTrackedInstance(context: TrackedContext, instance: TestFrameworkInstance): void; /** * get all test framework versions * @returns {Map} - return all versions of framework available. */ getTestFrameworksVersions(): Record; /** * get all test frameworks * @returns {Array} - return all test frameworks */ getTestFrameworks(): string[]; /** * Track an event * @param {TestFrameworkState} testFrameworkState * @param {HookState} hookState * @param {*} args * @returns {void} */ trackEvent(testFrameworkState: State, hookState: State, args?: unknown): void; /** * run test hooks * @param {TestFrameworkInstance} instance * @param {TestFrameworkState} testFrameworkState * @param {HookState} hookState * @param {*} args */ runHooks(instance: TestFrameworkInstance, testFrameworkState: State, hookState: State, args?: unknown): Promise; /** * Register an observer * @param {TestFrameworkState} testFrameworkState * @param {HookState} hookState * @param {*} callback * @returns {void} */ static registerObserver(testFrameworkState: State, hookState: State, callback: Function): void; /** * Resolve instance for the test framework * @param {TestFrameworkInstance} testFrameworkInstance * @param {string} key * @returns {TestFrameworkInstance} */ static getState(instance: TestFrameworkInstance, key: string): any; static hasState(instance: TestFrameworkInstance, key: string): boolean; /** * Set the state * @param {TrackedInstance} instance - The instance * @param {string} key - The key * @param {*} value - The value * @returns */ static setState(instance: TrackedInstance, key: string, value: unknown): void; updateInstanceState(instance: TestFrameworkInstance, testFrameworkState: State, hookState: State): void; } //# sourceMappingURL=testFramework.d.ts.map