/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { IDeltaManager } from "@fluidframework/container-definitions/internal";
import { IContainerRuntimeEvents } from "@fluidframework/container-runtime-definitions/internal";
import { IEventProvider } from "@fluidframework/core-interfaces";
import { IDocumentMessage, ISequencedDocumentMessage } from "@fluidframework/driver-definitions/internal";
import { ITelemetryLoggerExt } from "@fluidframework/telemetry-utils/internal";
/**
 * We report various latency-related errors when waiting for op roundtrip takes longer than that amout of time.
 */
export declare const latencyThreshold = 5000;
export interface IPerfSignalReport {
    /**
     * Identifier for the signal being submitted in order to
     * allow collection of data around the roundtrip of signal messages.
     */
    signalSequenceNumber: number;
    /**
     * Number of signals that were expected but not received.
     */
    signalsLost: number;
    /**
     * Timestamp before submitting the signal we will trace.
     */
    signalTimestamp: number;
    /**
     * Expected Signal Sequence to be received.
     */
    trackingSignalSequenceNumber: number | undefined;
}
/**
 * Starts monitoring and generation of telemetry related to op performance.
 *
 * @param clientId - The clientId of the current container.
 * @param deltaManager - DeltaManager instance to monitor.
 * @param containerRuntimeEvents - Emitter of events for the container runtime.
 * @param logger - Telemetry logger to write events to.
 */
export declare function ReportOpPerfTelemetry(clientId: string | undefined, deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>, containerRuntimeEvents: IEventProvider<IContainerRuntimeEvents>, logger: ITelemetryLoggerExt): void;
//# sourceMappingURL=connectionTelemetry.d.ts.map