import Reporter from "@wdio/reporter";
import { LEVEL, STATUS, TYPE } from "./constants";
import { Issue } from "./entities";
import { Attribute } from "./ReporterOptions";
declare class ReportPortalReporter extends Reporter {
    get isSynchronised(): boolean;
    set isSynchronised(value: boolean);
    static sendLog(level: LEVEL | keyof typeof LEVEL, message: any): void;
    static sendFile(level: LEVEL | keyof typeof LEVEL, name: string, content: any, type?: string, message?: string): void;
    static sendLogToTest(test: any, level: LEVEL | keyof typeof LEVEL, message: any): void;
    static sendFileToTest(test: any, level: LEVEL | keyof typeof LEVEL, name: string, content: any, type?: string, message?: string): void;
    static finishTestManually(test: any): void;
    static addDescriptionToCurrentSuite(description: string): void;
    static addDescriptionToAllSuites(description: string): void;
    private static getValidatedAttribute;
    static addAttribute(attribute: Attribute): void;
    static addAttributeToSuite(attribute: Attribute): void;
    private static reporterName;
    private launchId;
    private client;
    private storage;
    private tempLaunchId;
    private readonly reporterOptions;
    private isMultiremote;
    private isCucumberFramework;
    private sanitizedCapabilities;
    private sessionId;
    private rpPromisesCompleted;
    private specFilePath;
    private featureStatus;
    private featureName;
    private currentTestAttributes;
    private currentSuiteAttributes;
    private currentSuiteDescription;
    private suitesDescription;
    constructor(options: any);
    onSuiteStart(suite: any): void;
    onSuiteEnd(suite: any): void;
    onTestStart(test: any, type?: TYPE): any;
    onTestPass(test: any): void;
    onTestFail(test: any): void;
    onTestSkip(test: any): void;
    testFinished(test: any, status: STATUS, issue?: Issue): void;
    onRunnerStart(runner: any): void;
    onRunnerEnd(runnerStats: any): Promise<any>;
    onBeforeCommand(command: any): void;
    onAfterCommand(command: any): void;
    onHookStart(hook: any): void;
    onHookEnd(hook: any): void;
    private getReportPortalClient;
    private addDescriptionToCurrentSuite;
    private addDescriptionToAllSuites;
    private addAttribute;
    private addAttributeToSuite;
    private finishTestManually;
    private sendLog;
    private sendFile;
    private sendLogToTest;
    private sendFileToTest;
    private registerListeners;
    private now;
}
export = ReportPortalReporter;
