import type { Frameworks } from '@wdio/types'; import type { BeforeCommandArgs, AfterCommandArgs } from '@wdio/reporter'; import type { Feature, Scenario, CucumberHook, CucumberHookParams, Pickle, ITestCaseHookParameter } from './cucumber-types.js'; import type { BrowserstackConfig, BrowserstackOptions } from './types.js'; import type { TestData, TestMeta, CurrentRunInfo, StdLog, CBTData } from './types.js'; import type { Capabilities } from '@wdio/types'; declare class _InsightsHandler { private _browser; private _framework?; private _tests; private _hooks; private _platformMeta; private _commands; private _gitConfigPath?; private _suiteFile?; static currentTest: CurrentRunInfo; private _currentHook; private _cucumberData; private _userCaps?; private _options?; private listener; currentTestId: string | undefined; cbtQueue: Array; constructor(_browser: WebdriverIO.Browser | WebdriverIO.MultiRemoteBrowser, _framework?: string | undefined, _userCaps?: Capabilities.ResolvedTestrunnerCapabilities, _options?: BrowserstackConfig & BrowserstackOptions); _isAppAutomate(): boolean; registerListeners(): void; setSuiteFile(filename: string): void; before(): Promise; getCucumberHookType(test: CucumberHook | undefined): string | null; getCucumberHookName(hookType: string | undefined): string; getCucumberHookUniqueId(hookType: string, hook: CucumberHook | undefined): string | null; getCucumberFeatureUniqueId(): string; setCurrentHook(hookDetails: CurrentRunInfo): void; sendScenarioObjectSkipped(scenario: Scenario, feature: Feature, uri: string): Promise; processCucumberHook(test: CucumberHook | undefined, params: CucumberHookParams, result?: Frameworks.TestResult): Promise; beforeHook(test: Frameworks.Test | CucumberHook | undefined, context: unknown): Promise; afterHook(test: Frameworks.Test | CucumberHook | undefined, result: Frameworks.TestResult): Promise; getHookRunDataForCucumber(hookData: TestMeta, eventType: string, result?: Frameworks.TestResult): TestData; beforeTest(test: Frameworks.Test): Promise; afterTest(test: Frameworks.Test, result: Frameworks.TestResult): Promise; /** * Cucumber Only */ beforeFeature(uri: string, feature: Feature): Promise; beforeScenario(world: ITestCaseHookParameter): Promise; afterScenario(world: ITestCaseHookParameter): Promise; beforeStep(step: Frameworks.PickleStep, scenario: Pickle): Promise; afterStep(step: Frameworks.PickleStep, scenario: Pickle, result: Frameworks.PickleResult): Promise; /** * misc methods */ appendTestItemLog: (stdLog: StdLog) => Promise; browserCommand(commandType: string, args: BeforeCommandArgs | AfterCommandArgs, test?: Frameworks.Test | ITestCaseHookParameter): Promise; /** * Check if any test steps failed (excluding hook failures) * This is used when ignoreHooksStatus is true to determine test status based only on test steps */ hasTestStepFailures(world: ITestCaseHookParameter): boolean; private attachHookData; private setHooksFromSuite; private getHierarchy; private getRunData; private getTestRunId; private getTestRunIdFromSuite; private getTestRunDataForCucumber; flushCBTDataQueue(): Promise; sendCBTInfo(): Promise; private getIntegrationsObject; private getIdentifier; setGitConfigPath(): Promise; setTestData(test: Frameworks.Test, uuid: string): void; } declare const InsightsHandler: typeof _InsightsHandler; type InsightsHandler = _InsightsHandler; export default InsightsHandler; //# sourceMappingURL=insights-handler.d.ts.map