ngx-matomo-client
Version:
Matomo (fka. Piwik) client for Angular applications
40 lines (39 loc) • 2.08 kB
TypeScript
import { ElementRef, OnDestroy } from '@angular/core';
import { MatomoTracker } from '../tracker/matomo-tracker.service';
import * as i0 from "@angular/core";
export interface TrackArgs {
category?: string;
action?: string;
name?: string;
value?: number;
}
type EventName = keyof GlobalEventHandlersEventMap | string;
type DOMEventInput = EventName | EventName[] | null | undefined;
export declare class MatomoTrackerDirective implements OnDestroy {
private readonly tracker;
private readonly elementRef;
private sub?;
/** Set the event category */
matomoCategory?: string;
/** Set the event action */
matomoAction?: string;
/** Set the event name */
matomoName?: string;
/** Set the event value */
matomoValue?: number;
constructor(tracker: MatomoTracker, elementRef: ElementRef);
/** Track a Matomo event whenever specified DOM event is triggered */
set matomoTracker(input: DOMEventInput);
ngOnDestroy(): void;
/** Track an event using category, action, name and value set as @Input() */
trackEvent(): void;
/** Track an event using category, action and name set as @Input() and provided value */
trackEvent(value: number): void;
/** Track an event using category and action set as @Input() and provided name and value */
trackEvent(name: string, value?: number): void;
/** Track an event using provided category, action, name and value (any @Input() is used as a default value) */
trackEvent(args: TrackArgs): void;
static ɵfac: i0.ɵɵFactoryDeclaration<MatomoTrackerDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<MatomoTrackerDirective, "[matomoTracker]", ["matomo"], { "matomoCategory": { "alias": "matomoCategory"; "required": false; }; "matomoAction": { "alias": "matomoAction"; "required": false; }; "matomoName": { "alias": "matomoName"; "required": false; }; "matomoValue": { "alias": "matomoValue"; "required": false; }; "matomoTracker": { "alias": "matomoTracker"; "required": false; }; }, {}, never, never, true, never>;
}
export {};