import { FeatureContext, ScenarioContext, ScenarioContextStep } from './cucumber'; export interface ReportElement { name: string; description?: string; uri?: string; id: string; keyword: string; type: string; elements?: ReportElement[]; steps?: ReportStep[]; tags: ReportTag[]; } export interface ReportTag { name: string; } export interface ReportStep extends ScenarioContextStep { result: ReportStepResult; } export interface ReportStepResult { status: string; duration?: number; error_message?: string; } export default class Reporter { results: ReportElement[]; currentFeature: ReportElement; currentScenario: ReportElement; currentStep: number; private timestamp; constructor(); startFeature(feature: FeatureContext): void; startScenario(scenario: ScenarioContext): void; private getStep(name); private getDuration(); passStep(name: string): void; failStep(name: string, message: string): void; getResults(): ReportElement[]; }