@vrplatform/log 2.0.97 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/build/main/baselog.d.ts +19 -0
  2. package/build/main/baselog.js +137 -0
  3. package/build/main/baselog.js.map +1 -0
  4. package/build/main/color.d.ts +54 -0
  5. package/build/main/color.js +371 -0
  6. package/build/main/color.js.map +1 -0
  7. package/build/main/common.d.ts +29 -0
  8. package/build/main/common.js +86 -0
  9. package/build/main/common.js.map +1 -0
  10. package/build/main/index.spec.d.ts +0 -0
  11. package/build/main/index.spec.js +2 -0
  12. package/build/main/index.spec.js.map +1 -0
  13. package/build/main/log/baselog.js +3 -0
  14. package/build/main/log/baselog.js.map +1 -1
  15. package/build/main/tracking/index.d.ts +2 -2
  16. package/build/main/tracking/index.js +19 -4
  17. package/build/main/tracking/index.js.map +1 -1
  18. package/build/main/tracking/types.d.ts +3 -3
  19. package/build/main/tsconfig.main.tsbuildinfo +1 -1
  20. package/build/main/type.d.ts +39 -0
  21. package/build/main/{tracking/eventTypes.js → type.js} +1 -1
  22. package/build/main/type.js.map +1 -0
  23. package/build/module/baselog.d.ts +19 -0
  24. package/build/module/baselog.js +120 -0
  25. package/build/module/baselog.js.map +1 -0
  26. package/build/module/color.d.ts +54 -0
  27. package/build/module/color.js +375 -0
  28. package/build/module/color.js.map +1 -0
  29. package/build/module/common.d.ts +29 -0
  30. package/build/module/common.js +80 -0
  31. package/build/module/common.js.map +1 -0
  32. package/build/module/index.spec.d.ts +0 -0
  33. package/build/module/index.spec.js +2 -0
  34. package/build/module/index.spec.js.map +1 -0
  35. package/build/module/log/baselog.js +3 -0
  36. package/build/module/log/baselog.js.map +1 -1
  37. package/build/module/tracking/index.d.ts +2 -2
  38. package/build/module/tracking/index.js +19 -4
  39. package/build/module/tracking/index.js.map +1 -1
  40. package/build/module/tracking/types.d.ts +3 -3
  41. package/build/module/tsconfig.esm.tsbuildinfo +1 -1
  42. package/build/module/type.d.ts +39 -0
  43. package/build/module/type.js +2 -0
  44. package/build/module/type.js.map +1 -0
  45. package/package.json +10 -9
  46. package/src/log/baselog.ts +3 -1
  47. package/src/tracking/index.ts +13 -5
  48. package/src/tracking/types.ts +11 -6
  49. package/build/main/tracking/_intercom.d.ts +0 -109
  50. package/build/main/tracking/_intercom.js +0 -139
  51. package/build/main/tracking/_intercom.js.map +0 -1
  52. package/build/main/tracking/eventTypes.d.ts +0 -16
  53. package/build/main/tracking/eventTypes.js.map +0 -1
  54. package/build/main/tracking/intercom.d.ts +0 -109
  55. package/build/main/tracking/intercom.js +0 -139
  56. package/build/main/tracking/intercom.js.map +0 -1
  57. package/build/main/tracking/test.d.ts +0 -1
  58. package/build/main/tracking/test.js +0 -23
  59. package/build/main/tracking/test.js.map +0 -1
  60. package/build/module/tracking/_intercom.d.ts +0 -109
  61. package/build/module/tracking/_intercom.js +0 -136
  62. package/build/module/tracking/_intercom.js.map +0 -1
  63. package/build/module/tracking/eventTypes.d.ts +0 -16
  64. package/build/module/tracking/eventTypes.js +0 -2
  65. package/build/module/tracking/eventTypes.js.map +0 -1
  66. package/build/module/tracking/intercom.d.ts +0 -109
  67. package/build/module/tracking/intercom.js +0 -136
  68. package/build/module/tracking/intercom.js.map +0 -1
  69. package/build/module/tracking/test.d.ts +0 -1
  70. package/build/module/tracking/test.js +0 -21
  71. package/build/module/tracking/test.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import type { billing_payment_method_type_enum, recurringFeeType_enum } from '@finalytic/graphql';
2
- import type { Maybe } from '@finalytic/utils';
1
+ import type { recurringFeeType_enum } from '@vrplatform/graphql';
2
+ export type Maybe<T> = T | null | undefined;
3
3
  export type TrackProps<T extends TrackingEvent> = OptionalUser<{
4
4
  groupId: string;
5
5
  packageName: string;
@@ -153,7 +153,7 @@ export type TenantStatus = 'active' | 'inactive';
153
153
  export type SubscriptionStatus = 'active' | 'cancelled' | 'draft' | 'errored' | 'paused' | 'pending' | 'voided';
154
154
  export type OwnerStatementStatus = 'preview' | 'draft' | 'inReview' | 'void' | 'published' | 'posted';
155
155
  export type TaxStatementStatus = 'draft' | 'ignored' | 'inReview' | 'ready' | 'submitted' | 'error';
156
- export type PaymentMethodType = billing_payment_method_type_enum;
156
+ export type PaymentMethodType = 'card' | 'direct_debit' | 'direct_debit_ach' | 'direct_debit_bacs' | 'transfer' | 'transfer_automated' | 'external';
157
157
  type AccountInvitationAcceptedProps = MaybePartial<{
158
158
  userId: string;
159
159
  userEmail: string;
@@ -1 +1 @@
1
- {"root":["../../src/index.ts","../../src/log/baselog.ts","../../src/log/color.ts","../../src/log/common.ts","../../src/log/index.spec.ts","../../src/log/index.ts","../../src/log/type.ts","../../src/tracking/index.ts","../../src/tracking/mixpanel.ts","../../src/tracking/types.ts","../../src/utils/convertkeystosnakecase.ts","../../src/utils/convertvaluestostring.ts","../../src/utils/index.ts","../../src/utils/istest.ts","../../src/utils/isvrpmember.ts"],"version":"5.7.2"}
1
+ {"root":["../../src/index.ts","../../src/log/baselog.ts","../../src/log/color.ts","../../src/log/common.ts","../../src/log/index.spec.ts","../../src/log/index.ts","../../src/log/type.ts","../../src/tracking/index.ts","../../src/tracking/mixpanel.ts","../../src/tracking/types.ts","../../src/utils/convertkeystosnakecase.ts","../../src/utils/convertvaluestostring.ts","../../src/utils/index.ts","../../src/utils/istest.ts","../../src/utils/isvrpmember.ts"],"version":"5.9.2"}
@@ -0,0 +1,39 @@
1
+ export type LogFn = (message: any, additionalContext?: Record<string, any>) => void;
2
+ export type LogFns = {
3
+ error: LogFn;
4
+ info: LogFn;
5
+ debug: LogFn;
6
+ warn: LogFn;
7
+ };
8
+ export type Log = LogFns & {
9
+ child: (data: ChildLogOptions) => Log;
10
+ addContext: (data: Record<string, any>) => void;
11
+ };
12
+ export type ChildLogOptions = {
13
+ correlationId?: string;
14
+ name?: string;
15
+ request?: any;
16
+ context?: Record<string, any>;
17
+ };
18
+ type Res = Response | {
19
+ status: number;
20
+ statusText?: string;
21
+ headers?: Record<string, string>;
22
+ body?: any;
23
+ response?: Response;
24
+ };
25
+ export type BaseLog = Log & {
26
+ flush(): Promise<void> | void;
27
+ };
28
+ export type WorkerLog = BaseLog & {
29
+ respond(response: Res | Promise<Res> | (() => Res | Promise<Res>)): Promise<Response>;
30
+ };
31
+ export type RequestLike = {
32
+ headers: {
33
+ get: (key: string) => string | null;
34
+ };
35
+ method: string;
36
+ url: string;
37
+ json: () => Promise<any>;
38
+ };
39
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type.js","sourceRoot":"src/","sources":["type.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vrplatform/log",
3
- "version": "2.0.97",
3
+ "version": "3.0.1",
4
4
  "main": "build/main/index.js",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -17,16 +17,17 @@
17
17
  "LICENSE"
18
18
  ],
19
19
  "dependencies": {
20
- "@axiomhq/js": "1.3.0",
21
- "@finalytic/graphql": "2.0.162",
22
- "intercom-client": "6.0.0-beta.3",
23
- "serialize-error": "11.0.3"
20
+ "@axiomhq/js": "1.3.1",
21
+ "intercom-client": "6.0.0-beta.3"
24
22
  },
25
23
  "devDependencies": {
26
- "@finalytic/utils": "4.9.30",
27
- "@biomejs/biome": "^1.9.4",
28
- "@types/bun": "^1.1.14",
29
- "typescript": "5.7.2"
24
+ "@vrplatform/graphql": "^1.1.3",
25
+ "@biomejs/biome": "^2.2.4",
26
+ "@types/bun": "^1.2.22",
27
+ "typescript": "5.9.2"
28
+ },
29
+ "peerDependencies": {
30
+ "@vrplatform/graphql": "*"
30
31
  },
31
32
  "trustedDependencies": [
32
33
  "@biomejs/biome"
@@ -1,5 +1,4 @@
1
1
  import { Axiom } from '@axiomhq/js';
2
- import { serializeError } from 'serialize-error';
3
2
  import { logger } from './color';
4
3
  import { getCorrelationId, requestToContext } from './common';
5
4
  import type {
@@ -186,6 +185,9 @@ export function createBaseLog(
186
185
  context: { ...childContext, ...context },
187
186
  }),
188
187
  error: (message, error, data) => {
188
+ if (message instanceof Error) {
189
+ return baseLog('error', message.message, error as any, message);
190
+ }
189
191
  const m =
190
192
  typeof message === 'string'
191
193
  ? message
@@ -100,20 +100,20 @@ declare module 'intercom-client' {
100
100
 
101
101
  import { useHasuraClient } from '@finalytic/graphql';
102
102
  import { Intercom } from 'intercom-client';
103
- import { type LogBindings, type WorkerLog, useLog } from '../log';
103
+ import { type LogBindings, useLog, type WorkerLog } from '../log';
104
104
  import { isTest, isVrpMember } from '../utils';
105
105
  import { convertValuesToString } from '../utils/convertValuesToString';
106
106
  import { MixpanelClient } from './mixpanel';
107
107
  import type {
108
108
  GroupProps,
109
109
  IdentifyProps,
110
- TrackProps,
111
110
  TrackingEvent,
111
+ TrackProps,
112
112
  } from './types';
113
113
 
114
- export * from './types';
115
114
  export * from 'intercom-client';
116
115
  export * from '../utils';
116
+ export * from './types';
117
117
 
118
118
  export type Tracking = ReturnType<typeof useTracking>;
119
119
  export type UseTracking = {
@@ -193,7 +193,8 @@ export const useTracking = (
193
193
  tenantId: groupId,
194
194
  userId: userId,
195
195
  props: properties,
196
- trackedAt: timestamp ? timestamp.toISOString() : undefined,
196
+ // TODO: @philipp check
197
+ // trackedAt: timestamp ? timestamp.toISOString() : undefined,
197
198
  packageName,
198
199
  },
199
200
  }).id
@@ -247,7 +248,7 @@ export const useTracking = (
247
248
  const _lastSeenAt = traits?.lastSeenAt
248
249
  ? Math.floor(new Date(traits.lastSeenAt).getTime() / 1000)
249
250
  : traits?.lastSeenAt !== null
250
- ? Math.floor(new Date().getTime() / 1000)
251
+ ? Math.floor(Date.now() / 1000)
251
252
  : undefined;
252
253
 
253
254
  // upsert mixpanel user
@@ -255,12 +256,19 @@ export const useTracking = (
255
256
  mixpanel.identify(userId);
256
257
 
257
258
  const {
259
+ // biome-ignore lint/correctness/noUnusedVariables: <explanation>
258
260
  firstName,
261
+ // biome-ignore lint/correctness/noUnusedVariables: <explanation>
259
262
  lastName,
263
+ // biome-ignore lint/correctness/noUnusedVariables: <explanation>
260
264
  name,
265
+ // biome-ignore lint/correctness/noUnusedVariables: <explanation>
261
266
  email,
267
+ // biome-ignore lint/correctness/noUnusedVariables: <explanation>
262
268
  avatar,
269
+ // biome-ignore lint/correctness/noUnusedVariables: <explanation>
263
270
  lastSeenAt,
271
+ // biome-ignore lint/correctness/noUnusedVariables: <explanation>
264
272
  createdAt,
265
273
  ...rest
266
274
  } = traits || {};
@@ -1,8 +1,6 @@
1
- import type {
2
- billing_payment_method_type_enum,
3
- recurringFeeType_enum,
4
- } from '@finalytic/graphql';
5
- import type { Maybe } from '@finalytic/utils';
1
+ import type { recurringFeeType_enum } from '@vrplatform/graphql';
2
+
3
+ export type Maybe<T> = T | null | undefined;
6
4
 
7
5
  export type TrackProps<T extends TrackingEvent> = OptionalUser<{
8
6
  groupId: string;
@@ -222,7 +220,14 @@ export type TaxStatementStatus =
222
220
  | 'ready'
223
221
  | 'submitted'
224
222
  | 'error';
225
- export type PaymentMethodType = billing_payment_method_type_enum;
223
+ export type PaymentMethodType =
224
+ | 'card'
225
+ | 'direct_debit'
226
+ | 'direct_debit_ach'
227
+ | 'direct_debit_bacs'
228
+ | 'transfer'
229
+ | 'transfer_automated'
230
+ | 'external';
226
231
 
227
232
  // Signup/Onboarding Funnel
228
233
 
@@ -1,109 +0,0 @@
1
- import type { Log } from '../log';
2
- export declare class IntercomAPI {
3
- constructor(token: string, log?: Log);
4
- private headers;
5
- private log?;
6
- private fetch;
7
- getUserByUserId(userId: string): Promise<{
8
- type: "list";
9
- data: {
10
- id: string;
11
- }[] | undefined;
12
- total_count: 0;
13
- pages: {
14
- type: "pages";
15
- page: 1;
16
- per_page: 10;
17
- total_pages: 0;
18
- };
19
- } | undefined>;
20
- createUser({ data, userId, }: {
21
- userId: string;
22
- data: {
23
- email: string;
24
- name: string;
25
- custom_attributes: Record<string, any>;
26
- };
27
- }): Promise<unknown>;
28
- updateUser({ data, contactId, }: {
29
- contactId: string;
30
- data: {
31
- email?: string;
32
- name?: string;
33
- custom_attributes: Record<string, any>;
34
- [key: string]: any;
35
- };
36
- }): Promise<unknown>;
37
- deleteUser(intercom_contact_id: string): Promise<{
38
- id: "6657adf56abd0167d9419d1c";
39
- external_id: "70";
40
- type: "contact";
41
- deleted: true;
42
- } | undefined>;
43
- createCompanyUser(data: {
44
- intercom_contact_id: string;
45
- intercom_company_id: string;
46
- }): Promise<unknown>;
47
- deleteCompanyUser({ intercom_company_id, intercom_contact_id, }: {
48
- intercom_contact_id: string;
49
- intercom_company_id: string;
50
- }): Promise<{
51
- id: "6657adc96abd0167d9419ca7";
52
- } | undefined>;
53
- trackEvent(data: {
54
- user_id: string;
55
- event_name: string;
56
- metadata: Record<string, any>;
57
- }): Promise<unknown>;
58
- getCompanyByTenantId(tenantId: string): Promise<{
59
- type: "list";
60
- data: [{
61
- type: "company";
62
- company_id: "remote_companies_scroll_2";
63
- id: "664df5436abd01f7945e1a78";
64
- app_id: "this_is_an_id111_that_should_be_at_least_";
65
- name: "IntercomQATest1";
66
- remote_created_at: 1716385091;
67
- created_at: 1716385091;
68
- updated_at: 1716385091;
69
- monthly_spend: 0;
70
- session_count: 0;
71
- user_count: 4;
72
- tags: {
73
- type: "tag.list";
74
- tags: [];
75
- };
76
- segments: {
77
- type: "segment.list";
78
- segments: [];
79
- };
80
- custom_attributes: Record<string, string>;
81
- }] | undefined;
82
- pages: {
83
- type: "pages";
84
- next: null;
85
- page: 1;
86
- per_page: 15;
87
- total_pages: 1;
88
- };
89
- total_count: 1;
90
- } | undefined>;
91
- createCompany({ data, tenantId, }: {
92
- tenantId: string;
93
- data: {
94
- name: string;
95
- remote_created_at: number;
96
- custom_attributes: Record<string, any>;
97
- };
98
- }): Promise<unknown>;
99
- updateCompany({ data, companyId, }: {
100
- companyId: string;
101
- data: Record<string, any>;
102
- }): Promise<unknown>;
103
- deleteCompany(intercom_company_id: string): Promise<{
104
- id: "6657adc96abd0167d9419ca7";
105
- object: "company";
106
- deleted: true;
107
- } | undefined>;
108
- }
109
- export declare function useIntercom(token: string, log?: Log): IntercomAPI;
@@ -1,139 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IntercomAPI = void 0;
4
- exports.useIntercom = useIntercom;
5
- class IntercomAPI {
6
- constructor(token, log) {
7
- this.headers = {
8
- 'Content-Type': 'application/json',
9
- Accept: 'application/json',
10
- 'Intercom-Version': '2.11',
11
- Authorization: `Bearer ${token}`,
12
- };
13
- this.log = log;
14
- }
15
- async fetch(path, options) {
16
- if (options?.data) {
17
- options.body = JSON.stringify(options.data);
18
- options.data = undefined;
19
- }
20
- try {
21
- const result = await fetch(`https://api.intercom.io${path}`, {
22
- method: 'GET',
23
- headers: this.headers,
24
- ...options,
25
- });
26
- if (!result.ok) {
27
- this.log?.info('Failed to fetch from Intercom', {
28
- result: {
29
- status: result.status,
30
- statusText: result.statusText,
31
- body: await result.text(),
32
- },
33
- });
34
- if (result.status === 404)
35
- return undefined;
36
- if (result.status === 429) {
37
- console.log('Intercom rate limit exceeded, waiting for 1 minute');
38
- // X-RateLimit-Reset: 1487332520 => timestamp from header response when resetting
39
- const reset = Number(result.headers.get('X-RateLimit-Reset'));
40
- if (reset) {
41
- const now = Math.floor(Date.now() / 1000);
42
- const wait = reset - now + 1;
43
- console.log(`Waiting for ${wait} seconds`);
44
- await new Promise((resolve) => setTimeout(resolve, wait * 1000));
45
- return await this.fetch(path, options);
46
- }
47
- }
48
- }
49
- return result.status === 202 ? {} : (await result.json());
50
- }
51
- catch (error) {
52
- this.log?.error(error);
53
- return undefined;
54
- }
55
- }
56
- // User
57
- async getUserByUserId(userId) {
58
- return await this.fetch('/contacts/search', {
59
- method: 'POST',
60
- data: {
61
- query: {
62
- field: 'external_id',
63
- operator: '=',
64
- value: userId,
65
- },
66
- },
67
- });
68
- }
69
- async createUser({ data, userId, }) {
70
- return await this.fetch('/contacts', {
71
- method: 'POST',
72
- data: { ...data, external_id: userId },
73
- });
74
- }
75
- async updateUser({ data, contactId, }) {
76
- return await this.fetch(`/contacts/${contactId}`, {
77
- method: 'PUT',
78
- data,
79
- });
80
- }
81
- async deleteUser(intercom_contact_id) {
82
- return await this.fetch(`/contacts/${intercom_contact_id}`, {
83
- method: 'DELETE',
84
- });
85
- }
86
- async createCompanyUser(data) {
87
- return await this.fetch(`/contacts/${data.intercom_contact_id}/companies`, {
88
- method: 'POST',
89
- data: {
90
- id: data.intercom_company_id,
91
- },
92
- });
93
- }
94
- async deleteCompanyUser({ intercom_company_id, intercom_contact_id, }) {
95
- return await this.fetch(`/contacts/${intercom_contact_id}/companies/${intercom_company_id}`, {
96
- method: 'DELETE',
97
- });
98
- }
99
- async trackEvent(data) {
100
- return await this.fetch('/events', {
101
- method: 'POST',
102
- data: {
103
- created_at: Math.floor(new Date().getTime() / 1000), // to seconds
104
- ...data,
105
- },
106
- });
107
- }
108
- // Company
109
- async getCompanyByTenantId(tenantId) {
110
- return await this.fetch(`/companies?company_id=${tenantId}`, {
111
- method: 'GET',
112
- });
113
- }
114
- async createCompany({ data, tenantId, }) {
115
- return await this.fetch('/companies', {
116
- method: 'POST',
117
- data: {
118
- ...data,
119
- company_id: tenantId,
120
- },
121
- });
122
- }
123
- async updateCompany({ data, companyId, }) {
124
- return await this.fetch(`/companies/${companyId}`, {
125
- method: 'PUT',
126
- data,
127
- });
128
- }
129
- async deleteCompany(intercom_company_id) {
130
- return await this.fetch(`/companies/${intercom_company_id}`, {
131
- method: 'DELETE',
132
- });
133
- }
134
- }
135
- exports.IntercomAPI = IntercomAPI;
136
- function useIntercom(token, log) {
137
- return new IntercomAPI(token, log);
138
- }
139
- //# sourceMappingURL=_intercom.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_intercom.js","sourceRoot":"src/","sources":["tracking/_intercom.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- type AuthEvent = 'account_signin_completed' | 'account_signup_code_requested' | 'account_signup_code_completed' | 'account_signup_code_failed' | 'account_signup_completed' | 'account_password_reset_requested' | 'account_password_reset_failed' | 'account_password_reset_completed' | 'account_invitation_accepted' | 'account_signed_out';
2
- type TeamEvent = 'team_added' | 'team_info_updated' | 'team_deleted' | 'team_member_removed';
3
- type ConnectionEvent = 'connection_created' | 'connection_reconnected' | 'connection_deleted' | 'connection_requested';
4
- type OwnershipEvent = 'ownership_created' | 'ownership_updated' | 'ownership_deleted';
5
- type OwnerEvent = 'owner_created' | 'owner_updated' | 'owner_deleted' | 'owner_tax_info_modal_opened' | 'owner_tax_info_modal_submitted';
6
- type SetupEvent = 'setup_classes_set' | 'setup_accounting_version_completed' | 'setup_accounting_config_completed' | 'setup_owner_imported' | 'setup_listing_imported';
7
- type AutomationEvent = 'automation_created' | 'automation_updated' | 'automation_deleted';
8
- type TaxStatementEvent = 'tax_statement_preview_opened' | 'tax_statement_downloaded';
9
- type GLOwnerStatementEvent = 'gl_owner_statement_preview_opened' | 'gl_owner_statement_downloaded';
10
- type HyperlineEvent = 'hyperline_invoice_ready' | 'hyperline_invoice_settled' | 'hyperline_trial_started' | 'hyperline_trial_ended' | 'hyperline_subscription_activated' | 'hyperline_subscription_cancelled' | 'hyperline_subscription_created' | 'hyperline_subscription_errored' | 'hyperline_subscription_paused' | 'hyperline_subscription_voided' | 'hyperline_subscription_charged' | 'hyperline_customer_created' | 'hyperline_customer_updated' | 'hyperline_payment_method_created' | 'hyperline_payment_method_errored' | 'hyperline_payment_method_deleted';
11
- type ListingEvent = 'listing_activated' | 'listing_deactivated';
12
- type ReportEvent = 'listings_reported';
13
- type UserEvent = 'update_refresh_accepted' | 'owner_statement_opened';
14
- type TestEvent = 'test_event' | 'test_error';
15
- export type TrackingEvent = AuthEvent | TeamEvent | ConnectionEvent | OwnershipEvent | OwnerEvent | SetupEvent | AutomationEvent | TaxStatementEvent | GLOwnerStatementEvent | HyperlineEvent | UserEvent | ListingEvent | ReportEvent | TestEvent;
16
- export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"eventTypes.js","sourceRoot":"src/","sources":["tracking/eventTypes.ts"],"names":[],"mappings":""}
@@ -1,109 +0,0 @@
1
- import type { Log } from '../log';
2
- export declare class IntercomAPI {
3
- constructor(token: string, log?: Log);
4
- private headers;
5
- private log?;
6
- private fetch;
7
- getUserByUserId(userId: string): Promise<{
8
- type: "list";
9
- data: {
10
- id: string;
11
- }[] | undefined;
12
- total_count: 0;
13
- pages: {
14
- type: "pages";
15
- page: 1;
16
- per_page: 10;
17
- total_pages: 0;
18
- };
19
- } | undefined>;
20
- createUser({ data, userId, }: {
21
- userId: string;
22
- data: {
23
- email: string;
24
- name: string;
25
- custom_attributes: Record<string, any>;
26
- };
27
- }): Promise<unknown>;
28
- updateUser({ data, contactId, }: {
29
- contactId: string;
30
- data: {
31
- email?: string;
32
- name?: string;
33
- custom_attributes: Record<string, any>;
34
- [key: string]: any;
35
- };
36
- }): Promise<unknown>;
37
- deleteUser(intercom_contact_id: string): Promise<{
38
- id: "6657adf56abd0167d9419d1c";
39
- external_id: "70";
40
- type: "contact";
41
- deleted: true;
42
- } | undefined>;
43
- createCompanyUser(data: {
44
- intercom_contact_id: string;
45
- intercom_company_id: string;
46
- }): Promise<unknown>;
47
- deleteCompanyUser({ intercom_company_id, intercom_contact_id, }: {
48
- intercom_contact_id: string;
49
- intercom_company_id: string;
50
- }): Promise<{
51
- id: "6657adc96abd0167d9419ca7";
52
- } | undefined>;
53
- trackEvent(data: {
54
- user_id: string;
55
- event_name: string;
56
- metadata: Record<string, any>;
57
- }): Promise<unknown>;
58
- getCompanyByTenantId(tenantId: string): Promise<{
59
- type: "list";
60
- data: [{
61
- type: "company";
62
- company_id: "remote_companies_scroll_2";
63
- id: "664df5436abd01f7945e1a78";
64
- app_id: "this_is_an_id111_that_should_be_at_least_";
65
- name: "IntercomQATest1";
66
- remote_created_at: 1716385091;
67
- created_at: 1716385091;
68
- updated_at: 1716385091;
69
- monthly_spend: 0;
70
- session_count: 0;
71
- user_count: 4;
72
- tags: {
73
- type: "tag.list";
74
- tags: [];
75
- };
76
- segments: {
77
- type: "segment.list";
78
- segments: [];
79
- };
80
- custom_attributes: Record<string, string>;
81
- }] | undefined;
82
- pages: {
83
- type: "pages";
84
- next: null;
85
- page: 1;
86
- per_page: 15;
87
- total_pages: 1;
88
- };
89
- total_count: 1;
90
- } | undefined>;
91
- createCompany({ data, tenantId, }: {
92
- tenantId: string;
93
- data: {
94
- name: string;
95
- remote_created_at: number;
96
- custom_attributes: Record<string, any>;
97
- };
98
- }): Promise<unknown>;
99
- updateCompany({ data, companyId, }: {
100
- companyId: string;
101
- data: Record<string, any>;
102
- }): Promise<unknown>;
103
- deleteCompany(intercom_company_id: string): Promise<{
104
- id: "6657adc96abd0167d9419ca7";
105
- object: "company";
106
- deleted: true;
107
- } | undefined>;
108
- }
109
- export declare function useIntercom(token: string, log?: Log): IntercomAPI;