import type { Response } from 'express'; import { GuiReportBuilder, GuiReportBuilderResult } from '../../report-builder/gui'; import { BrowserFeature, Feature } from '../../constants'; import type { GuiCliOptions, ServerArgs } from '../index'; import type { TestBranch, TestEqualDiffsData, TestRefUpdateData } from '../../tests-tree-builder/gui'; import type { ReporterTestResult } from '../../adapters/test-result'; import type { Tree, TreeImage } from '../../tests-tree-builder/base'; import type { TestSpec } from '../../adapters/tool/types'; import type { AssertViewResult, ImageInfoUpdated } from '../../types'; import type { TestAdapter } from '../../adapters/test/index'; import type { TestCollectionAdapter } from '../../adapters/test-collection'; import type { ConfigAdapter } from '../../adapters/config'; export type ToolRunnerTree = GuiReportBuilderResult & Pick & { features: Feature[]; browserFeatures: Record; }; export interface UndoAcceptImagesResult { updatedImages: TreeImage[]; removedResults: string[]; } export declare class ToolRunner { private _testFiles; private _toolAdapter; private _tree; protected _collection: TestCollectionAdapter | null; private _globalOpts; private _guiOpts; private _reportPath; private _reporterConfig; private _eventSource; protected _reportBuilder: GuiReportBuilder | null; private _testAdapters; private _expectedImagesCache; static create(this: new (args: ServerArgs) => T, args: ServerArgs): T; constructor({ paths, toolAdapter, cli }: ServerArgs); get config(): ConfigAdapter; get tree(): ToolRunnerTree | null; initialize(): Promise; _readTests(): Promise; protected _ensureReportBuilder(): GuiReportBuilder; protected _ensureTestCollection(): TestCollectionAdapter; finalize(): Promise; addClient(connection: Response): void; sendClientEvent(event: string, data: unknown): void; getTestsDataToUpdateRefs(imageIds: string[]): TestRefUpdateData[]; getImageDataToFindEqualDiffs(imageIds: string[]): TestEqualDiffsData[]; updateReferenceImage(tests: TestRefUpdateData[]): Promise; undoAcceptImages(tests: TestRefUpdateData[]): Promise; findEqualDiffs(images: TestEqualDiffsData[]): Promise; run(tests?: TestSpec[]): Promise; protected _handleRunnableCollection(): Promise; protected _getTestAdapterById(updateData: TestRefUpdateData): TestAdapter; protected _prepareAssertViewResults(imagesInfo: TestRefUpdateData['imagesInfo'], testAdapter: TestAdapter): AssertViewResult[]; protected _handleReferenceUpdate(testResult: ReporterTestResult, imageInfo: ImageInfoUpdated, state: string): void; _fillTestsTree(): Promise; protected _loadDataFromDatabase(): Promise; protected _resolveImgPath(imgPath: string): string; }