import { DomainEvent, Result } from '@serenity-js/core/lib/domain'; import { JSONObject } from '@serenity-js/core/lib/io/json'; import { ActivityPeriod, RehearsalPeriod, ReportExporter, ScenePeriod } from '@serenity-js/core/lib/reporting'; import { Stage, StageCrewMember } from '@serenity-js/core/lib/stage'; import { Runner } from 'protractor'; import { ProtractorActivityReport, ProtractorReport, ProtractorSceneReport } from './protractor_report'; export declare class ProtractorReporter implements StageCrewMember { private runner; private static Events_of_Interest; private stage; private journal; private timing; constructor(runner: Runner); assignTo(stage: Stage): void; notifyOf(event: DomainEvent): void; finalResults(): PromiseLike; private sceneStarts(event); private sceneFinished(event); private record; private notifyProtractor(outcome, duration); } /** * Transforms the tree structure of the RehearsalPeriod to a format acceptable by Protractor */ export declare class ProtractorReportExporter implements ReportExporter { private passing; constructor(passing?: (r: Result) => boolean); exportRehearsal(node: RehearsalPeriod): PromiseLike; exportScene(node: ScenePeriod): PromiseLike; exportActivity(node: ActivityPeriod): PromiseLike; }