import { FullConfig } from "@playwright/test"; import { Reporter, Suite, TestCase, TestResult, TestStep } from "@playwright/test/reporter"; import { IStrategy, AdapterConfig } from "testit-js-commons"; export type ReporterOptions = { detail?: boolean; outputFolder?: string; suiteTitle?: boolean; environmentInfo?: Record; tmsOptions?: AdapterConfig; }; declare class TmsReporter implements Reporter { config: FullConfig; suite: Suite; options: ReporterOptions; strategy: IStrategy; private readonly additions; private testCache; private stepsMap; private attachmentStepsCache; private attachmentsMap; private loadTestPromises; private setupPromise; private readonly adapterConfig; private bufferedResults; constructor(options: ReporterOptions); onBegin(config: FullConfig, suite: Suite): void; onTestBegin(test: TestCase): void; onTestEnd(test: TestCase, result: TestResult): void; private _processAttachmentsWithExtensions; private metadataContext; onStepBegin(test: TestCase, _result: TestResult, step: TestStep): void; onEnd(): Promise; addSkippedResults(): Promise; private runLoadTest; printsToStdio(): boolean; private getDictionariesByTest; private getAutotestData; private isMetadataAttachment; /** Playwright copies inline attach to disk — reporter often gets path only, not body. */ private readAttachmentBuffer; /** Each testit.*() call may add a separate tms-metadata.json; merge all of them. */ private applyMetadataAttachments; private loadTest; } export default TmsReporter; export * from "./labels";