@dalmore/api-contracts 0.0.0-dev.2cea8e5 → 0.0.0-dev.2fec89f

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 (112) hide show
  1. package/common/constants.d.ts +43 -0
  2. package/common/constants.js +77 -0
  3. package/common/constants.js.map +1 -0
  4. package/common/helpers/index.d.ts +27 -0
  5. package/common/helpers/index.js +43 -0
  6. package/common/helpers/index.js.map +1 -1
  7. package/common/types/account-setting.types.d.ts +5 -0
  8. package/common/types/account.types.d.ts +6 -6
  9. package/common/types/account.types.js +3 -3
  10. package/common/types/account.types.js.map +1 -1
  11. package/common/types/attribution.types.d.ts +578 -0
  12. package/common/types/attribution.types.js +152 -0
  13. package/common/types/attribution.types.js.map +1 -0
  14. package/common/types/auth.types.d.ts +36 -0
  15. package/common/types/auth.types.js +3 -2
  16. package/common/types/auth.types.js.map +1 -1
  17. package/common/types/cap-table.types.d.ts +211 -39
  18. package/common/types/cap-table.types.js +35 -0
  19. package/common/types/cap-table.types.js.map +1 -1
  20. package/common/types/common.types.d.ts +42 -5
  21. package/common/types/common.types.js +24 -3
  22. package/common/types/common.types.js.map +1 -1
  23. package/common/types/comply-advantage-api.types.d.ts +12 -12
  24. package/common/types/csv.types.d.ts +3612 -0
  25. package/common/types/csv.types.js +290 -0
  26. package/common/types/csv.types.js.map +1 -0
  27. package/common/types/disbursement-transaction.types.d.ts +1 -1
  28. package/common/types/disbursement-transaction.types.js +1 -1
  29. package/common/types/disbursement-transaction.types.js.map +1 -1
  30. package/common/types/disbursements.types.d.ts +134 -19
  31. package/common/types/disbursements.types.js +30 -3
  32. package/common/types/disbursements.types.js.map +1 -1
  33. package/common/types/exchange-provider.types.d.ts +12 -12
  34. package/common/types/file.types.d.ts +3 -0
  35. package/common/types/file.types.js +3 -0
  36. package/common/types/file.types.js.map +1 -1
  37. package/common/types/index.d.ts +3 -2
  38. package/common/types/index.js +3 -2
  39. package/common/types/index.js.map +1 -1
  40. package/common/types/individuals.types.d.ts +395 -5
  41. package/common/types/individuals.types.js +11 -14
  42. package/common/types/individuals.types.js.map +1 -1
  43. package/common/types/investor-account.types.d.ts +1 -1
  44. package/common/types/investor-account.types.js +3 -2
  45. package/common/types/investor-account.types.js.map +1 -1
  46. package/common/types/investors-offering.types.d.ts +8 -0
  47. package/common/types/investors-offering.types.js +1 -0
  48. package/common/types/investors-offering.types.js.map +1 -1
  49. package/common/types/invite.types.d.ts +5 -2
  50. package/common/types/invite.types.js +2 -1
  51. package/common/types/invite.types.js.map +1 -1
  52. package/common/types/issuer-offering.types.d.ts +200 -12
  53. package/common/types/issuer-offering.types.js +45 -31
  54. package/common/types/issuer-offering.types.js.map +1 -1
  55. package/common/types/legal-entity.types.d.ts +39 -1
  56. package/common/types/legal-entity.types.js +8 -5
  57. package/common/types/legal-entity.types.js.map +1 -1
  58. package/common/types/mail-template.types.d.ts +4 -4
  59. package/common/types/notification.types.d.ts +1 -0
  60. package/common/types/notification.types.js +3 -0
  61. package/common/types/notification.types.js.map +1 -1
  62. package/common/types/offering-submission.types.js +1 -1
  63. package/common/types/offering.types.d.ts +60 -30
  64. package/common/types/offering.types.js +78 -18
  65. package/common/types/offering.types.js.map +1 -1
  66. package/common/types/payment-methods.types.d.ts +365 -0
  67. package/common/types/payment-methods.types.js +121 -0
  68. package/common/types/payment-methods.types.js.map +1 -1
  69. package/common/types/portfolio.types.d.ts +6 -6
  70. package/common/types/reports.types.d.ts +12 -12
  71. package/common/types/review.types.js +1 -1
  72. package/common/types/review.types.js.map +1 -1
  73. package/common/types/secondary-order.types.d.ts +10 -10
  74. package/common/types/secondary-trade.types.d.ts +10 -10
  75. package/common/types/site.types.d.ts +12 -12
  76. package/common/types/state-machine.types.d.ts +3 -3
  77. package/common/types/state-machine.types.js +1 -1
  78. package/common/types/state-machine.types.js.map +1 -1
  79. package/common/types/task.types.d.ts +8 -0
  80. package/common/types/task.types.js +3 -0
  81. package/common/types/task.types.js.map +1 -1
  82. package/common/types/trade-line-item.types.d.ts +24 -0
  83. package/common/types/trade-line-item.types.js +3 -0
  84. package/common/types/trade-line-item.types.js.map +1 -1
  85. package/common/types/trade.types.d.ts +20 -14
  86. package/common/types/trade.types.js +17 -7
  87. package/common/types/trade.types.js.map +1 -1
  88. package/common/types/transaction.types.d.ts +24 -2
  89. package/common/types/transaction.types.js +26 -1
  90. package/common/types/transaction.types.js.map +1 -1
  91. package/common/types/user.types.d.ts +73 -95
  92. package/common/types/user.types.js +7 -26
  93. package/common/types/user.types.js.map +1 -1
  94. package/common/types/zapier.types.d.ts +126 -0
  95. package/common/types/zapier.types.js +247 -0
  96. package/common/types/zapier.types.js.map +1 -0
  97. package/contracts/clients/csv/index.d.ts +1988 -0
  98. package/contracts/clients/csv/index.js +96 -0
  99. package/contracts/clients/csv/index.js.map +1 -0
  100. package/contracts/clients/index.d.ts +3949 -1061
  101. package/contracts/clients/index.js +8 -2
  102. package/contracts/clients/index.js.map +1 -1
  103. package/contracts/clients/individuals/index.d.ts +381 -5
  104. package/contracts/clients/legal-entities/index.d.ts +1 -1
  105. package/contracts/clients/offerings/index.d.ts +20 -5
  106. package/contracts/clients/review/index.d.ts +85 -0
  107. package/contracts/clients/review/index.js +27 -0
  108. package/contracts/clients/review/index.js.map +1 -0
  109. package/contracts/clients/webhooks/index.d.ts +506 -0
  110. package/contracts/clients/webhooks/index.js +118 -0
  111. package/contracts/clients/webhooks/index.js.map +1 -0
  112. package/package.json +1 -1
@@ -0,0 +1,578 @@
1
+ import { z } from 'zod';
2
+ import { Request } from 'express';
3
+ /**
4
+ * UTM Source enum - Common marketing sources
5
+ */
6
+ export declare enum UtmSource {
7
+ GOOGLE = "GOOGLE",
8
+ FACEBOOK = "FACEBOOK",
9
+ TWITTER = "TWITTER",
10
+ LINKEDIN = "LINKEDIN",
11
+ INSTAGRAM = "INSTAGRAM",
12
+ TIKTOK = "TIKTOK",
13
+ EMAIL = "EMAIL",
14
+ DIRECT = "DIRECT",
15
+ ORGANIC = "ORGANIC",
16
+ REFERRAL = "REFERRAL",
17
+ OTHER = "OTHER"
18
+ }
19
+ /**
20
+ * Zod enum schema for UTM Source
21
+ */
22
+ export declare const UtmSourceZod: z.ZodNativeEnum<typeof UtmSource>;
23
+ /**
24
+ * Attribution Touch Data (from cookie)
25
+ * This represents the raw data structure stored in the cookie
26
+ * Platform click IDs are stored as a record: { "gclid": "abc123", "fbclid": "xyz789", "ttclid": "def456" }
27
+ */
28
+ export declare const AttributionTouchDataSchema: z.ZodObject<{
29
+ utmSource: z.ZodNativeEnum<typeof UtmSource>;
30
+ utmMedium: z.ZodString;
31
+ utmCampaign: z.ZodOptional<z.ZodNullable<z.ZodString>>;
32
+ utmTerm: z.ZodOptional<z.ZodNullable<z.ZodString>>;
33
+ utmContent: z.ZodOptional<z.ZodNullable<z.ZodString>>;
34
+ platformClickIds: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodString>>>;
35
+ ref: z.ZodOptional<z.ZodNullable<z.ZodString>>;
36
+ landingPage: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>>;
37
+ documentReferrer: z.ZodOptional<z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>>;
38
+ }, "strip", z.ZodTypeAny, {
39
+ utmSource: UtmSource;
40
+ utmMedium: string;
41
+ landingPage?: string | null | undefined;
42
+ utmCampaign?: string | null | undefined;
43
+ utmTerm?: string | null | undefined;
44
+ utmContent?: string | null | undefined;
45
+ platformClickIds?: Record<string, string> | null | undefined;
46
+ ref?: string | null | undefined;
47
+ documentReferrer?: string | null | undefined;
48
+ }, {
49
+ utmSource: UtmSource;
50
+ utmMedium: string;
51
+ landingPage?: string | null | undefined;
52
+ utmCampaign?: string | null | undefined;
53
+ utmTerm?: string | null | undefined;
54
+ utmContent?: string | null | undefined;
55
+ platformClickIds?: Record<string, string> | null | undefined;
56
+ ref?: string | null | undefined;
57
+ documentReferrer?: string | null | undefined;
58
+ }>;
59
+ export type AttributionTouchData = z.infer<typeof AttributionTouchDataSchema>;
60
+ /**
61
+ * Attribution Touch Response Schema
62
+ * This represents the entity structure returned from the API
63
+ */
64
+ export declare const AttributionTouchSchema: z.ZodObject<{
65
+ id: z.ZodString;
66
+ __entity: z.ZodOptional<z.ZodString>;
67
+ createdAt: z.ZodUnion<[z.ZodString, z.ZodDate]>;
68
+ updatedAt: z.ZodUnion<[z.ZodString, z.ZodDate]>;
69
+ deletedAt: z.ZodNullable<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
70
+ } & {
71
+ utmSource: z.ZodNullable<z.ZodNativeEnum<typeof UtmSource>>;
72
+ utmMedium: z.ZodNullable<z.ZodString>;
73
+ utmCampaign: z.ZodNullable<z.ZodString>;
74
+ utmTerm: z.ZodNullable<z.ZodString>;
75
+ utmContent: z.ZodNullable<z.ZodString>;
76
+ platformClickIds: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodString>>;
77
+ ref: z.ZodNullable<z.ZodString>;
78
+ landingPage: z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
79
+ documentReferrer: z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
80
+ isFirstTouch: z.ZodBoolean;
81
+ isLastTouch: z.ZodBoolean;
82
+ touchCount: z.ZodNumber;
83
+ userId: z.ZodString;
84
+ accountId: z.ZodString;
85
+ tradeId: z.ZodNullable<z.ZodString>;
86
+ }, "strip", z.ZodTypeAny, {
87
+ id: string;
88
+ createdAt: string | Date;
89
+ updatedAt: string | Date;
90
+ deletedAt: string | Date | null;
91
+ accountId: string;
92
+ userId: string;
93
+ tradeId: string | null;
94
+ landingPage: string | null;
95
+ utmSource: UtmSource | null;
96
+ utmMedium: string | null;
97
+ utmCampaign: string | null;
98
+ utmTerm: string | null;
99
+ utmContent: string | null;
100
+ platformClickIds: Record<string, string> | null;
101
+ ref: string | null;
102
+ documentReferrer: string | null;
103
+ isFirstTouch: boolean;
104
+ isLastTouch: boolean;
105
+ touchCount: number;
106
+ __entity?: string | undefined;
107
+ }, {
108
+ id: string;
109
+ createdAt: string | Date;
110
+ updatedAt: string | Date;
111
+ deletedAt: string | Date | null;
112
+ accountId: string;
113
+ userId: string;
114
+ tradeId: string | null;
115
+ landingPage: string | null;
116
+ utmSource: UtmSource | null;
117
+ utmMedium: string | null;
118
+ utmCampaign: string | null;
119
+ utmTerm: string | null;
120
+ utmContent: string | null;
121
+ platformClickIds: Record<string, string> | null;
122
+ ref: string | null;
123
+ documentReferrer: string | null;
124
+ isFirstTouch: boolean;
125
+ isLastTouch: boolean;
126
+ touchCount: number;
127
+ __entity?: string | undefined;
128
+ }>;
129
+ export type AttributionTouch = z.infer<typeof AttributionTouchSchema>;
130
+ /**
131
+ * Cookie name constant for attribution data
132
+ */
133
+ export declare const ATTRIBUTION_COOKIE_NAME = "dalmore_attribution";
134
+ /**
135
+ * Cookie parsing helper type
136
+ */
137
+ export type AttributionCookie = AttributionTouchData;
138
+ /**
139
+ * Parse attribution cookie from request
140
+ *
141
+ * Uses Zod's safeParse to validate and parse the cookie data.
142
+ * Returns null if cookie is not found or validation fails.
143
+ *
144
+ * @param request - Express request object
145
+ * @returns Parsed and validated attribution data or null if not found/invalid
146
+ */
147
+ export declare function parseAttributionCookie(request: Request): AttributionTouchData | null;
148
+ /**
149
+ * Attribution Touches Include Options
150
+ */
151
+ export declare const attributionTouchesInclude: z.ZodEnum<["user", "account", "trade"]>;
152
+ /**
153
+ * @description Query parameters for including related entities
154
+ */
155
+ export declare const AttributionTouchesIncludeQuery: z.ZodObject<{
156
+ include: z.ZodEffects<z.ZodEffects<z.ZodOptional<z.ZodString>, string[], string | undefined>, string[], string | undefined>;
157
+ }, "strip", z.ZodTypeAny, {
158
+ include: string[];
159
+ }, {
160
+ include?: string | undefined;
161
+ }>;
162
+ export interface AttributionTouchesIncludeQuery extends z.infer<typeof AttributionTouchesIncludeQuery> {
163
+ }
164
+ /**
165
+ * Attribution Touches Filters
166
+ */
167
+ export declare const AttributionTouchesFiltersZod: z.ZodObject<{
168
+ userId: z.ZodOptional<z.ZodString>;
169
+ accountId: z.ZodOptional<z.ZodString>;
170
+ tradeId: z.ZodOptional<z.ZodString>;
171
+ isFirstTouch: z.ZodOptional<z.ZodBoolean>;
172
+ isLastTouch: z.ZodOptional<z.ZodBoolean>;
173
+ utmSource: z.ZodOptional<z.ZodNativeEnum<typeof UtmSource>>;
174
+ utmMedium: z.ZodOptional<z.ZodString>;
175
+ utmCampaign: z.ZodOptional<z.ZodString>;
176
+ }, "strip", z.ZodTypeAny, {
177
+ accountId?: string | undefined;
178
+ userId?: string | undefined;
179
+ tradeId?: string | undefined;
180
+ utmSource?: UtmSource | undefined;
181
+ utmMedium?: string | undefined;
182
+ utmCampaign?: string | undefined;
183
+ isFirstTouch?: boolean | undefined;
184
+ isLastTouch?: boolean | undefined;
185
+ }, {
186
+ accountId?: string | undefined;
187
+ userId?: string | undefined;
188
+ tradeId?: string | undefined;
189
+ utmSource?: UtmSource | undefined;
190
+ utmMedium?: string | undefined;
191
+ utmCampaign?: string | undefined;
192
+ isFirstTouch?: boolean | undefined;
193
+ isLastTouch?: boolean | undefined;
194
+ }>;
195
+ export type AttributionTouchesFilters = z.infer<typeof AttributionTouchesFiltersZod>;
196
+ /**
197
+ * Paginated Attribution Touch Response
198
+ */
199
+ export declare const IPaginatedAttributionTouch: z.ZodObject<{
200
+ items: z.ZodArray<z.ZodObject<{
201
+ id: z.ZodString;
202
+ __entity: z.ZodOptional<z.ZodString>;
203
+ createdAt: z.ZodUnion<[z.ZodString, z.ZodDate]>;
204
+ updatedAt: z.ZodUnion<[z.ZodString, z.ZodDate]>;
205
+ deletedAt: z.ZodNullable<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
206
+ } & {
207
+ utmSource: z.ZodNullable<z.ZodNativeEnum<typeof UtmSource>>;
208
+ utmMedium: z.ZodNullable<z.ZodString>;
209
+ utmCampaign: z.ZodNullable<z.ZodString>;
210
+ utmTerm: z.ZodNullable<z.ZodString>;
211
+ utmContent: z.ZodNullable<z.ZodString>;
212
+ platformClickIds: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodString>>;
213
+ ref: z.ZodNullable<z.ZodString>;
214
+ landingPage: z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
215
+ documentReferrer: z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
216
+ isFirstTouch: z.ZodBoolean;
217
+ isLastTouch: z.ZodBoolean;
218
+ touchCount: z.ZodNumber;
219
+ userId: z.ZodString;
220
+ accountId: z.ZodString;
221
+ tradeId: z.ZodNullable<z.ZodString>;
222
+ }, "strip", z.ZodTypeAny, {
223
+ id: string;
224
+ createdAt: string | Date;
225
+ updatedAt: string | Date;
226
+ deletedAt: string | Date | null;
227
+ accountId: string;
228
+ userId: string;
229
+ tradeId: string | null;
230
+ landingPage: string | null;
231
+ utmSource: UtmSource | null;
232
+ utmMedium: string | null;
233
+ utmCampaign: string | null;
234
+ utmTerm: string | null;
235
+ utmContent: string | null;
236
+ platformClickIds: Record<string, string> | null;
237
+ ref: string | null;
238
+ documentReferrer: string | null;
239
+ isFirstTouch: boolean;
240
+ isLastTouch: boolean;
241
+ touchCount: number;
242
+ __entity?: string | undefined;
243
+ }, {
244
+ id: string;
245
+ createdAt: string | Date;
246
+ updatedAt: string | Date;
247
+ deletedAt: string | Date | null;
248
+ accountId: string;
249
+ userId: string;
250
+ tradeId: string | null;
251
+ landingPage: string | null;
252
+ utmSource: UtmSource | null;
253
+ utmMedium: string | null;
254
+ utmCampaign: string | null;
255
+ utmTerm: string | null;
256
+ utmContent: string | null;
257
+ platformClickIds: Record<string, string> | null;
258
+ ref: string | null;
259
+ documentReferrer: string | null;
260
+ isFirstTouch: boolean;
261
+ isLastTouch: boolean;
262
+ touchCount: number;
263
+ __entity?: string | undefined;
264
+ }>, "many">;
265
+ meta: z.ZodObject<{
266
+ itemCount: z.ZodNumber;
267
+ totalItems: z.ZodOptional<z.ZodNumber>;
268
+ itemsPerPage: z.ZodNumber;
269
+ totalPages: z.ZodOptional<z.ZodNumber>;
270
+ currentPage: z.ZodNumber;
271
+ }, "strip", z.ZodTypeAny, {
272
+ itemCount: number;
273
+ itemsPerPage: number;
274
+ currentPage: number;
275
+ totalItems?: number | undefined;
276
+ totalPages?: number | undefined;
277
+ }, {
278
+ itemCount: number;
279
+ itemsPerPage: number;
280
+ currentPage: number;
281
+ totalItems?: number | undefined;
282
+ totalPages?: number | undefined;
283
+ }>;
284
+ }, "strip", z.ZodTypeAny, {
285
+ items: {
286
+ id: string;
287
+ createdAt: string | Date;
288
+ updatedAt: string | Date;
289
+ deletedAt: string | Date | null;
290
+ accountId: string;
291
+ userId: string;
292
+ tradeId: string | null;
293
+ landingPage: string | null;
294
+ utmSource: UtmSource | null;
295
+ utmMedium: string | null;
296
+ utmCampaign: string | null;
297
+ utmTerm: string | null;
298
+ utmContent: string | null;
299
+ platformClickIds: Record<string, string> | null;
300
+ ref: string | null;
301
+ documentReferrer: string | null;
302
+ isFirstTouch: boolean;
303
+ isLastTouch: boolean;
304
+ touchCount: number;
305
+ __entity?: string | undefined;
306
+ }[];
307
+ meta: {
308
+ itemCount: number;
309
+ itemsPerPage: number;
310
+ currentPage: number;
311
+ totalItems?: number | undefined;
312
+ totalPages?: number | undefined;
313
+ };
314
+ }, {
315
+ items: {
316
+ id: string;
317
+ createdAt: string | Date;
318
+ updatedAt: string | Date;
319
+ deletedAt: string | Date | null;
320
+ accountId: string;
321
+ userId: string;
322
+ tradeId: string | null;
323
+ landingPage: string | null;
324
+ utmSource: UtmSource | null;
325
+ utmMedium: string | null;
326
+ utmCampaign: string | null;
327
+ utmTerm: string | null;
328
+ utmContent: string | null;
329
+ platformClickIds: Record<string, string> | null;
330
+ ref: string | null;
331
+ documentReferrer: string | null;
332
+ isFirstTouch: boolean;
333
+ isLastTouch: boolean;
334
+ touchCount: number;
335
+ __entity?: string | undefined;
336
+ }[];
337
+ meta: {
338
+ itemCount: number;
339
+ itemsPerPage: number;
340
+ currentPage: number;
341
+ totalItems?: number | undefined;
342
+ totalPages?: number | undefined;
343
+ };
344
+ }>;
345
+ export type IPaginatedAttributionTouch = z.infer<typeof IPaginatedAttributionTouch>;
346
+ /**
347
+ * User Attribution Touch Summary Response
348
+ * Contains first and last touch for a user, total touches, and conversion path
349
+ */
350
+ export declare const UserAttributionTouchSummarySchema: z.ZodObject<{
351
+ firstTouch: z.ZodNullable<z.ZodObject<{
352
+ id: z.ZodString;
353
+ __entity: z.ZodOptional<z.ZodString>;
354
+ createdAt: z.ZodUnion<[z.ZodString, z.ZodDate]>;
355
+ updatedAt: z.ZodUnion<[z.ZodString, z.ZodDate]>;
356
+ deletedAt: z.ZodNullable<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
357
+ } & {
358
+ utmSource: z.ZodNullable<z.ZodNativeEnum<typeof UtmSource>>;
359
+ utmMedium: z.ZodNullable<z.ZodString>;
360
+ utmCampaign: z.ZodNullable<z.ZodString>;
361
+ utmTerm: z.ZodNullable<z.ZodString>;
362
+ utmContent: z.ZodNullable<z.ZodString>;
363
+ platformClickIds: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodString>>;
364
+ ref: z.ZodNullable<z.ZodString>;
365
+ landingPage: z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
366
+ documentReferrer: z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
367
+ isFirstTouch: z.ZodBoolean;
368
+ isLastTouch: z.ZodBoolean;
369
+ touchCount: z.ZodNumber;
370
+ userId: z.ZodString;
371
+ accountId: z.ZodString;
372
+ tradeId: z.ZodNullable<z.ZodString>;
373
+ }, "strip", z.ZodTypeAny, {
374
+ id: string;
375
+ createdAt: string | Date;
376
+ updatedAt: string | Date;
377
+ deletedAt: string | Date | null;
378
+ accountId: string;
379
+ userId: string;
380
+ tradeId: string | null;
381
+ landingPage: string | null;
382
+ utmSource: UtmSource | null;
383
+ utmMedium: string | null;
384
+ utmCampaign: string | null;
385
+ utmTerm: string | null;
386
+ utmContent: string | null;
387
+ platformClickIds: Record<string, string> | null;
388
+ ref: string | null;
389
+ documentReferrer: string | null;
390
+ isFirstTouch: boolean;
391
+ isLastTouch: boolean;
392
+ touchCount: number;
393
+ __entity?: string | undefined;
394
+ }, {
395
+ id: string;
396
+ createdAt: string | Date;
397
+ updatedAt: string | Date;
398
+ deletedAt: string | Date | null;
399
+ accountId: string;
400
+ userId: string;
401
+ tradeId: string | null;
402
+ landingPage: string | null;
403
+ utmSource: UtmSource | null;
404
+ utmMedium: string | null;
405
+ utmCampaign: string | null;
406
+ utmTerm: string | null;
407
+ utmContent: string | null;
408
+ platformClickIds: Record<string, string> | null;
409
+ ref: string | null;
410
+ documentReferrer: string | null;
411
+ isFirstTouch: boolean;
412
+ isLastTouch: boolean;
413
+ touchCount: number;
414
+ __entity?: string | undefined;
415
+ }>>;
416
+ lastTouch: z.ZodNullable<z.ZodObject<{
417
+ id: z.ZodString;
418
+ __entity: z.ZodOptional<z.ZodString>;
419
+ createdAt: z.ZodUnion<[z.ZodString, z.ZodDate]>;
420
+ updatedAt: z.ZodUnion<[z.ZodString, z.ZodDate]>;
421
+ deletedAt: z.ZodNullable<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
422
+ } & {
423
+ utmSource: z.ZodNullable<z.ZodNativeEnum<typeof UtmSource>>;
424
+ utmMedium: z.ZodNullable<z.ZodString>;
425
+ utmCampaign: z.ZodNullable<z.ZodString>;
426
+ utmTerm: z.ZodNullable<z.ZodString>;
427
+ utmContent: z.ZodNullable<z.ZodString>;
428
+ platformClickIds: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodString>>;
429
+ ref: z.ZodNullable<z.ZodString>;
430
+ landingPage: z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
431
+ documentReferrer: z.ZodNullable<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
432
+ isFirstTouch: z.ZodBoolean;
433
+ isLastTouch: z.ZodBoolean;
434
+ touchCount: z.ZodNumber;
435
+ userId: z.ZodString;
436
+ accountId: z.ZodString;
437
+ tradeId: z.ZodNullable<z.ZodString>;
438
+ }, "strip", z.ZodTypeAny, {
439
+ id: string;
440
+ createdAt: string | Date;
441
+ updatedAt: string | Date;
442
+ deletedAt: string | Date | null;
443
+ accountId: string;
444
+ userId: string;
445
+ tradeId: string | null;
446
+ landingPage: string | null;
447
+ utmSource: UtmSource | null;
448
+ utmMedium: string | null;
449
+ utmCampaign: string | null;
450
+ utmTerm: string | null;
451
+ utmContent: string | null;
452
+ platformClickIds: Record<string, string> | null;
453
+ ref: string | null;
454
+ documentReferrer: string | null;
455
+ isFirstTouch: boolean;
456
+ isLastTouch: boolean;
457
+ touchCount: number;
458
+ __entity?: string | undefined;
459
+ }, {
460
+ id: string;
461
+ createdAt: string | Date;
462
+ updatedAt: string | Date;
463
+ deletedAt: string | Date | null;
464
+ accountId: string;
465
+ userId: string;
466
+ tradeId: string | null;
467
+ landingPage: string | null;
468
+ utmSource: UtmSource | null;
469
+ utmMedium: string | null;
470
+ utmCampaign: string | null;
471
+ utmTerm: string | null;
472
+ utmContent: string | null;
473
+ platformClickIds: Record<string, string> | null;
474
+ ref: string | null;
475
+ documentReferrer: string | null;
476
+ isFirstTouch: boolean;
477
+ isLastTouch: boolean;
478
+ touchCount: number;
479
+ __entity?: string | undefined;
480
+ }>>;
481
+ totalTouches: z.ZodNumber;
482
+ conversionPath: z.ZodArray<z.ZodString, "many">;
483
+ }, "strip", z.ZodTypeAny, {
484
+ firstTouch: {
485
+ id: string;
486
+ createdAt: string | Date;
487
+ updatedAt: string | Date;
488
+ deletedAt: string | Date | null;
489
+ accountId: string;
490
+ userId: string;
491
+ tradeId: string | null;
492
+ landingPage: string | null;
493
+ utmSource: UtmSource | null;
494
+ utmMedium: string | null;
495
+ utmCampaign: string | null;
496
+ utmTerm: string | null;
497
+ utmContent: string | null;
498
+ platformClickIds: Record<string, string> | null;
499
+ ref: string | null;
500
+ documentReferrer: string | null;
501
+ isFirstTouch: boolean;
502
+ isLastTouch: boolean;
503
+ touchCount: number;
504
+ __entity?: string | undefined;
505
+ } | null;
506
+ lastTouch: {
507
+ id: string;
508
+ createdAt: string | Date;
509
+ updatedAt: string | Date;
510
+ deletedAt: string | Date | null;
511
+ accountId: string;
512
+ userId: string;
513
+ tradeId: string | null;
514
+ landingPage: string | null;
515
+ utmSource: UtmSource | null;
516
+ utmMedium: string | null;
517
+ utmCampaign: string | null;
518
+ utmTerm: string | null;
519
+ utmContent: string | null;
520
+ platformClickIds: Record<string, string> | null;
521
+ ref: string | null;
522
+ documentReferrer: string | null;
523
+ isFirstTouch: boolean;
524
+ isLastTouch: boolean;
525
+ touchCount: number;
526
+ __entity?: string | undefined;
527
+ } | null;
528
+ totalTouches: number;
529
+ conversionPath: string[];
530
+ }, {
531
+ firstTouch: {
532
+ id: string;
533
+ createdAt: string | Date;
534
+ updatedAt: string | Date;
535
+ deletedAt: string | Date | null;
536
+ accountId: string;
537
+ userId: string;
538
+ tradeId: string | null;
539
+ landingPage: string | null;
540
+ utmSource: UtmSource | null;
541
+ utmMedium: string | null;
542
+ utmCampaign: string | null;
543
+ utmTerm: string | null;
544
+ utmContent: string | null;
545
+ platformClickIds: Record<string, string> | null;
546
+ ref: string | null;
547
+ documentReferrer: string | null;
548
+ isFirstTouch: boolean;
549
+ isLastTouch: boolean;
550
+ touchCount: number;
551
+ __entity?: string | undefined;
552
+ } | null;
553
+ lastTouch: {
554
+ id: string;
555
+ createdAt: string | Date;
556
+ updatedAt: string | Date;
557
+ deletedAt: string | Date | null;
558
+ accountId: string;
559
+ userId: string;
560
+ tradeId: string | null;
561
+ landingPage: string | null;
562
+ utmSource: UtmSource | null;
563
+ utmMedium: string | null;
564
+ utmCampaign: string | null;
565
+ utmTerm: string | null;
566
+ utmContent: string | null;
567
+ platformClickIds: Record<string, string> | null;
568
+ ref: string | null;
569
+ documentReferrer: string | null;
570
+ isFirstTouch: boolean;
571
+ isLastTouch: boolean;
572
+ touchCount: number;
573
+ __entity?: string | undefined;
574
+ } | null;
575
+ totalTouches: number;
576
+ conversionPath: string[];
577
+ }>;
578
+ export type UserAttributionTouchSummary = z.infer<typeof UserAttributionTouchSummarySchema>;