@gauf/tracker
Version:
Browser tracker with perfect customization
29 lines • 1.01 kB
TypeScript
import Emitter, { Listener } from "@gauf/tracker/emitter";
export declare type Settings = {
metrics?: string[];
};
declare type MetricSourceListener = {
listener: {
handler: (event: Event) => void;
useCapture?: boolean;
};
name: string;
};
declare type MetricSourceListeners = MetricSourceListener[];
declare type MetricSource = {
event: string;
extractor?: Extractor;
useCapture?: boolean;
};
declare type Extractor = (event: any) => object;
export default class MetricBehaviorEmitter extends Emitter {
static readonly key: string;
protected metricSourceListeners: MetricSourceListeners;
constructor(listener: Listener, settings?: Settings);
activate(): void;
deactivate(): void;
protected createMetricSourceListener(metricSource: MetricSource): MetricSourceListener;
protected createHandler(name: string, extractor?: Extractor): (event: Event) => void;
}
export {};
//# sourceMappingURL=behavior.d.ts.map