clarity-js
Version:
An analytics library that uses web page interactions to generate aggregated insights
67 lines (62 loc) • 1.51 kB
TypeScript
/* Helper Interface */
// Reference: https://wicg.github.io/netinfo/#networkinformation-interface
export interface NavigatorConnection extends EventTarget {
effectiveType: string;
downlinkMax: number;
downlink: number;
rtt: number;
saveData: boolean;
}
/* Event Data */
export interface NavigationData {
fetchStart: number;
connectStart: number;
connectEnd: number;
requestStart: number;
responseStart: number;
responseEnd: number;
domInteractive: number;
domComplete: number;
loadEventStart: number;
loadEventEnd: number;
redirectCount: number;
size: number;
type: string;
protocol: string;
encodedSize: number;
decodedSize: number;
}
export const enum FunctionNames {
HistoryCompute = 1,
Restart = 2,
DiagnosticStart = 3,
ScriptHandler = 4,
ChangeRecompute = 5,
ClickHandler = 6,
ClipboardRecompute = 7,
InteractionStart = 8,
InputRecompute = 9,
PointerMouse = 10,
PointerTouch = 11,
ResizeRecompute = 12,
ScrollRecompute = 13,
ScrollCompute = 14,
SelectionRecompute = 15,
SubmitRecompute = 16,
UnloadRecompute = 17,
VisibilityRecompute = 18,
DocumentCompute = 19,
LayoutStart = 20,
MutationStart = 21,
MutationHandle = 22,
MutationGenerate = 23,
RegionCompute = 24,
PerformanceStart = 25,
ObserverObserve = 26,
ObserverHandle = 27,
}
declare global {
interface Function {
dn?: FunctionNames;
}
}