import type { IFormatterOptions } from '@cucumber/cucumber';
import { Formatter } from '@cucumber/cucumber';
import type { Payload } from './types.js';
import type { GherkinDocument, Feature, Pickle, PickleStep, TestCase, TestCaseStarted, TestStep, TestStepStarted, TestStepFinished, TestStepResult, Hook } from '@cucumber/messages';
import type { HookParams } from './types.js';
export default class CucumberFormatter extends Formatter {
    private _gherkinDocEvents;
    private _hookEvent;
    private _scenarios;
    private _testCases;
    private _currentTestCase?;
    private _currentPickle?;
    private _suiteMap;
    private _pickleMap;
    private _currentDoc;
    private _startedFeatures;
    private reporter;
    private cid;
    private specs;
    private eventEmitter;
    private scenarioLevelReporter;
    private tagsInTitle;
    private ignoreUndefinedDefinitions;
    private failAmbiguousDefinitions;
    private failedCount;
    private _featureStart?;
    private _scenarioStart?;
    private _testStart?;
    constructor(options: IFormatterOptions);
    updateCurrentPickle(params: HookParams): void;
    normalizeURI(uri: string): string;
    emit(event: string, payload: Payload): void;
    usesSpecGrouping(): boolean;
    featureIsStarted(feature: string): boolean;
    getTitle(featureOrScenario: Feature | Pickle): string;
    afterHook(uri: string, feature: Feature, scenario: Pickle, step: TestStep, result: TestStepResult): void;
    afterTest(uri: string, feature: Feature, scenario: Pickle, step: PickleStep, result: TestStepResult): void;
    onGherkinDocument(gherkinDocEvent: GherkinDocument): void;
    onHook(hookEvent: Hook): void;
    onTestRunStarted(): void;
    onPickleAccepted(pickleEvent: Pickle): void;
    onTestCasePrepared(testCase: TestCase): void;
    onTestCaseStarted(testcase: TestCaseStarted): void;
    onTestStepStarted(testStepStartedEvent: TestStepStarted): void;
    onTestStepFinished(testStepFinishedEvent: TestStepFinished): void;
    onTestCaseFinished(results: TestStepResult[]): void;
    onTestRunFinished(): void;
}
//# sourceMappingURL=cucumberFormatter.d.ts.map