import { Decision, FeatureFlagDecision, RemoteConfigDecision } from "../../model/model"; import { FlushMetricRegistry } from "../flush/FlushMetricRegistry"; import { Metric } from "../Metric"; import { TimerSample } from "../Timer"; import { Transport, TransportResponse } from "../../transport/Transport"; import { Scheduler } from "../../scheduler/Scheduler"; import { Lifecycle } from "../../lifecycle/Lifecycle"; import { LifecycleChangeListener } from "../../lifecycle/LifecycleChangeListener"; export declare class MonitoringMetricRegistry extends FlushMetricRegistry implements LifecycleChangeListener { private readonly url; private readonly transport; private readonly synchronousTransport; constructor(url: string, transport: Transport, synchronousTransport: Transport, scheduler: Scheduler, pushIntervalMillis: number); protected flushMetrics(metrics: Metric[], sync: boolean): void; private isDispatchTarget; private dispatch; private createRequest; private execute; private batch; onLifecycleChanged(visibility: Lifecycle, _: number): void; } export declare class DecisionMetrics { static experiment(sample: TimerSample, key: number, decision: Decision): void; static featureFlag(sample: TimerSample, key: number, decision: FeatureFlagDecision): void; static remoteConfig(sample: TimerSample, key: string, decision: RemoteConfigDecision): void; } export declare type ApiOperation = "get.workspace" | "post.events" | "get.cohorts" | "get.user-targets" | "get.iam-html"; export declare class ApiCallMetrics { static record(operation: ApiOperation, sample: TimerSample, response: TransportResponse | null): void; private static success; }