1 | declare const mixpanel: mixpanel.Mixpanel;
|
2 |
|
3 | declare namespace mixpanel {
|
4 | export type Callback = (err: Error | undefined) => any;
|
5 | export type BatchCallback = (errors: [Error] | undefined) => any;
|
6 |
|
7 | type Scalar = string | number | boolean;
|
8 |
|
9 | export interface InitConfig {
|
10 | [key: string]: any;
|
11 | }
|
12 |
|
13 | export interface PropertyDict {
|
14 | [key: string]: any;
|
15 | }
|
16 |
|
17 | export interface NumberMap {
|
18 | [key: string]: number;
|
19 | }
|
20 |
|
21 | export interface Event {
|
22 | event: string;
|
23 | properties: PropertyDict;
|
24 | }
|
25 | export interface Modifiers {
|
26 | $ip?: string;
|
27 | $ignore_time?: boolean;
|
28 | $time?: string;
|
29 | $ignore_alias?: boolean;
|
30 | }
|
31 |
|
32 | export interface BatchOptions {
|
33 | max_concurrent_requests?: number;
|
34 | max_batch_size?: number;
|
35 | }
|
36 |
|
37 | export interface UnionData {
|
38 | [key: string]: Scalar | Scalar[];
|
39 | }
|
40 |
|
41 | interface Mixpanel {
|
42 | init(mixpanelToken: string, config?: InitConfig): Mixpanel;
|
43 |
|
44 | track(eventName: string, callback?: Callback): void;
|
45 | track(eventName: string, properties: PropertyDict, callback?: Callback): void;
|
46 |
|
47 | track_batch(events: Event[], options?: BatchOptions, callback?: BatchCallback): void;
|
48 | track_batch(events: Event[], callback: BatchCallback): void;
|
49 | track_batch(eventNames: string[], options?: BatchOptions, callback?: BatchCallback): void;
|
50 | track_batch(eventNames: string[], callback?: BatchCallback): void;
|
51 |
|
52 | import(eventName: string, time: Date | number, properties?: PropertyDict, callback?: Callback): void;
|
53 | import(eventName: string, time: Date | number, callback: Callback): void;
|
54 |
|
55 | import_batch(eventNames: string[], options?: BatchOptions, callback?: BatchCallback): void;
|
56 | import_batch(eventNames: string[], callback?: BatchCallback): void;
|
57 | import_batch(events: Event[], callback?: BatchCallback): void;
|
58 |
|
59 | alias(distinctId: string, alias: string, callback?: Callback): void;
|
60 |
|
61 | people: People;
|
62 | }
|
63 |
|
64 | interface People {
|
65 | set(distinctId: string, properties: PropertyDict, callback?: Callback): void;
|
66 | set(distinctId: string, properties: PropertyDict, modifiers?: Modifiers, callback?: Callback): void;
|
67 | set(distinctId: string, propertyName: string, value: string | number, modifiers: Modifiers): void;
|
68 | set(distinctId: string, propertyName: string, value: string | number, callback?: Callback): void;
|
69 | set(distinctId: string, propertyName: string, value: string | number, modifiers: Modifiers, callback: Callback): void;
|
70 |
|
71 | set_once(distinctId: string, propertyName: string, value: string, callback?: Callback): void;
|
72 | set_once( distinctId: string, propertyName: string, value: string, modifiers: Modifiers, callback?: Callback): void;
|
73 | set_once(distinctId: string, properties: PropertyDict, callback?: Callback): void;
|
74 | set_once(distinctId: string, properties: PropertyDict, modifiers?: Modifiers, callback?: Callback): void;
|
75 |
|
76 | increment(distinctId: string, propertyName: string, modifiers?: Modifiers, callback?: Callback): void;
|
77 | increment(distinctId: string, propertyName: string, incrementBy: number, modifiers: Modifiers, callback?: Callback): void;
|
78 | increment(distinctId: string, propertyName: string, incrementBy: number, callback?: Callback): void;
|
79 | increment(distinctId: string, properties: NumberMap, modifiers: Modifiers, callback?: Callback): void;
|
80 | increment(distinctId: string, properties: NumberMap, callback?: Callback): void;
|
81 |
|
82 | append(distinctId: string, propertyName: string, value: any, modifiers: Modifiers, callback?: Callback): void;
|
83 | append(distinctId: string, propertyName: string, value: any, callback?: Callback): void;
|
84 | append(distinctId: string, properties: PropertyDict, callback?: Callback): void;
|
85 | append(distinctId: string, properties: PropertyDict, modifiers: Modifiers, callback?: Callback): void;
|
86 |
|
87 | union(distinctId: string, data: UnionData, modifiers?: Modifiers, callback?: Callback): void;
|
88 | union(distinctId: string, data: UnionData, callback: Callback): void;
|
89 |
|
90 | track_charge(distinctId: string, amount: number | string, properties?: PropertyDict, callback?: Callback): void;
|
91 | track_charge(distinctId: string, amount: number | string, properties: PropertyDict, modifiers?: Modifiers, callback?: Callback): void;
|
92 |
|
93 | clear_charges(distinctId: string, modifiers?: Modifiers, callback?: Callback): void;
|
94 | clear_charges(distinctId: string, callback: Callback): void;
|
95 |
|
96 | delete_user(distinctId: string, modifiers?: Modifiers, callback?: Callback): void;
|
97 | delete_user(distinctId: string, callback: Callback): void;
|
98 | }
|
99 | }
|
100 |
|
101 | export = mixpanel;
|