@snap/camera-kit
Version:
Camera Kit Web
47 lines • 4.29 kB
TypeScript
import { PartialContainer } from "../../dependency-injection/PartialContainer";
/**
* These metrics reporters must be run once in the top-level DI container. They only depend on globally-available
* services.
*
* The businessEventsReporter is special, it doesn't create any of its own metrics, it simply listens to the global
* metricsEventTarget and reports metrics emitted there to our backend.
*/
export declare const reportGloballyScopedMetrics: PartialContainer<{
reportBenchmarks: Promise<void>;
reportLegalState: void;
reportLensAndAssetDownload: void;
reportHttpMetrics: void;
reportPlatformCapabilities: Promise<void>;
}, {
configuration: import("../..").CameraKitConfiguration;
requestStateEventTarget: import("../../handlers/requestStateEmittingHandler").RequestStateEventTarget;
metricsClient: import("../../clients/metricsClient").MetricsClient;
legalState: import("@snap/state-management").StateMachine<import("@snap/state-management").Action<"requestLegalPrompt", undefined> | import("@snap/state-management").Action<"accept", string> | import("@snap/state-management").Action<"reject", string>, import("@snap/state-management").State<"unknown", undefined> | import("@snap/state-management").State<"accepted", undefined> | import("@snap/state-management").State<"rejected", undefined>>;
metricsEventTarget: import("../metricsEventTarget").MetricsEventTarget;
}>;
/**
* These metrics reporters must be run once for each CameraKitSession DI container created. They may depend on services
* which are only available at the session scope (e.g. the CameraKitSession itself).
*/
export declare const reportSessionScopedMetrics: PartialContainer<{
reportLensValidationFailed: void;
reportLensView: Promise<void>;
reportLensWait: void;
reportUserSession: Promise<void>;
reportSessionException: void;
}, {
configuration: import("../..").CameraKitConfiguration;
metricsClient: import("../../clients/metricsClient").MetricsClient;
metricsEventTarget: import("../metricsEventTarget").MetricsEventTarget;
lensState: import("@snap/state-management").StateMachine<import("@snap/state-management").Action<"applyLens", {
lens: import("../..").Lens;
launchData?: import("../..").LensLaunchData | undefined;
}> | import("@snap/state-management").Action<"downloadComplete", import("../..").Lens> | import("@snap/state-management").Action<"turnedOn", import("../..").Lens> | import("@snap/state-management").Action<"resourcesLoaded", import("../..").Lens> | import("@snap/state-management").Action<"firstFrameProcessed", import("../..").Lens> | import("@snap/state-management").Action<"applyLensComplete", import("../..").Lens> | import("@snap/state-management").Action<"applyLensFailed", {
error: import("../../session/lensState").LensErrors;
lens: import("../..").Lens;
}> | import("@snap/state-management").Action<"applyLensAborted", import("../..").Lens> | import("@snap/state-management").Action<"removeLens", undefined> | import("@snap/state-management").Action<"turnedOff", import("../..").Lens> | import("@snap/state-management").Action<"removeLensComplete", undefined> | import("@snap/state-management").Action<"removeLensFailed", Error>, import("@snap/state-management").State<"noLensApplied", undefined> | import("@snap/state-management").State<"applyingLens", import("../..").Lens> | import("@snap/state-management").State<"lensApplied", import("../..").Lens>>;
sessionState: import("@snap/state-management").StateMachine<import("@snap/state-management").Action<"suspend", import("../../session/CameraKitSession").CameraKitSession> | import("@snap/state-management").Action<"resume", import("../../session/CameraKitSession").CameraKitSession> | import("@snap/state-management").Action<"destroy", undefined>, import("@snap/state-management").State<"inactive", undefined> | import("@snap/state-management").State<"active", import("../../session/CameraKitSession").CameraKitSession> | import("@snap/state-management").State<"destroyed", undefined>>;
CameraKitSession: import("../../session/CameraKitSession").CameraKitSession;
reportGlobalException: import("./reportGlobalException").GlobalExceptionReporter;
}>;
//# sourceMappingURL=reporters.d.ts.map