UNPKG

@gauf/tracker

Version:

Browser tracker with perfect customization

37 lines 1.42 kB
import Collector, { Settings as CollectorSettings } from "@gauf/tracker/collector"; import { Packed, Packer } from "@gauf/tracker/packer"; import { Transport } from "@gauf/tracker/transport"; export { default as MetricEmitter } from "@gauf/tracker/emitter"; export declare type Metric = { name: string; emitter: string; timestamp: number; payload?: any; }; export declare type Metrics = Metric[]; export declare type Payload = any; export declare type Settings = { heartbeat?: number; collector?: CollectorSettings; transport?: object; packer?: Packer<any>; }; export default class Tracker { protected interval?: number; protected heartbeat: number; protected metrics: Metric[]; protected collector: Collector; protected transport: Transport; protected packer: Packer<any>; protected payload?: Payload; constructor(url: string, trackerSettings?: Settings); activate(payload?: Payload): void; deactivate(): void; protected packData(): Packed<any>; protected createSendInterval(): void; protected createCollector(settings?: CollectorSettings): Collector; protected createTransport(url: string, settings?: object): Transport; protected createPacker(transport: Transport, settings?: Packer<any>): Packer<any>; protected collect(metric: Metric): void; } //# sourceMappingURL=tracker.d.ts.map