dentalplan-crmtypes 1.0.0

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.
package/index.d.ts ADDED
@@ -0,0 +1,385 @@
1
+ export type CRMApiResponse<T> = {
2
+ ok: true;
3
+ result: T;
4
+ } | {
5
+ ok: false;
6
+ error: {
7
+ code: string;
8
+ message: string;
9
+ details?: unknown;
10
+ };
11
+ };
12
+ export interface CRMPagedResult<T> {
13
+ items: T[];
14
+ total: number;
15
+ take: number;
16
+ skip: number;
17
+ }
18
+ export declare enum CRMUserType {
19
+ internal = "internal",
20
+ external = "external"
21
+ }
22
+ export declare enum CRMUserRole {
23
+ superadmin = "superadmin",
24
+ admin = "admin",
25
+ manager = "manager",
26
+ agent = "agent",
27
+ user = "user",
28
+ bot = "bot"
29
+ }
30
+ export declare enum CRMTeamType {
31
+ customer = "customer",
32
+ clinic = "clinic",
33
+ lab = "lab",
34
+ internal = "internal"
35
+ }
36
+ export declare enum CRMChannelType {
37
+ whatsapp = "whatsapp",
38
+ instagram = "instagram",
39
+ email = "email",
40
+ webchat = "webchat",
41
+ sms = "sms"
42
+ }
43
+ export declare enum CRMConversationBox {
44
+ inbox = "inbox",
45
+ archived = "archived"
46
+ }
47
+ export declare enum CRMMessageDirection {
48
+ inbound = "inbound",
49
+ outbound = "outbound"
50
+ }
51
+ export declare enum CRMLeadStatus {
52
+ open = "open",
53
+ closed = "closed"
54
+ }
55
+ export declare enum CRMLeadCloseReason {
56
+ won = "won",
57
+ lost = "lost"
58
+ }
59
+ export declare enum CRMOfferStatus {
60
+ draft = "draft",
61
+ sent = "sent",
62
+ accepted = "accepted",
63
+ rejected = "rejected",
64
+ expired = "expired"
65
+ }
66
+ export declare enum CRMAppointmentType {
67
+ online = "online",
68
+ clinic_visit = "clinic_visit",
69
+ treatment_day = "treatment_day",
70
+ follow_up = "follow_up"
71
+ }
72
+ export declare enum CRMTaskStatus {
73
+ open = "open",
74
+ done = "done",
75
+ cancelled = "cancelled"
76
+ }
77
+ export declare enum CRMLeadActivityType {
78
+ created = "created",
79
+ updated = "updated",
80
+ stage_changed = "stage_changed",
81
+ source_changed = "source_changed",
82
+ assigned_changed = "assigned_changed",
83
+ note_added = "note_added",
84
+ note_updated = "note_updated",
85
+ note_deleted = "note_deleted",
86
+ offer_created = "offer_created",
87
+ offer_updated = "offer_updated",
88
+ appointment_created = "appointment_created",
89
+ appointment_updated = "appointment_updated",
90
+ trip_updated = "trip_updated",
91
+ converted_to_patient = "converted_to_patient",
92
+ merged = "merged",
93
+ deleted = "deleted"
94
+ }
95
+ export interface CRMTenantDTO {
96
+ id: string;
97
+ code: string;
98
+ name: string;
99
+ apiKey: string;
100
+ isActive: boolean;
101
+ createdAt: string;
102
+ updatedAt: string;
103
+ }
104
+ export interface CRMTeamDTO {
105
+ id: string;
106
+ tenantId: string;
107
+ externalId: string | null;
108
+ name: string;
109
+ type: CRMTeamType;
110
+ isActive: boolean;
111
+ createdAt: string;
112
+ updatedAt: string;
113
+ }
114
+ export interface CRMUserDTO {
115
+ id: string;
116
+ tenantId: string;
117
+ teamId: string | null;
118
+ externalId: string | null;
119
+ type: CRMUserType;
120
+ role: CRMUserRole;
121
+ email: string | null;
122
+ name: string | null;
123
+ avatarUrl: string | null;
124
+ isActive: boolean;
125
+ createdAt: string;
126
+ updatedAt: string;
127
+ }
128
+ export interface CRMContactDTO {
129
+ id: string;
130
+ tenantId: string;
131
+ externalId: string | null;
132
+ name: string | null;
133
+ phone: string | null;
134
+ email: string | null;
135
+ avatarUrl: string | null;
136
+ country: string | null;
137
+ city: string | null;
138
+ language: string | null;
139
+ note: string | null;
140
+ isActive: boolean;
141
+ createdAt: string;
142
+ updatedAt: string;
143
+ }
144
+ export interface CRMChannelAccountDTO {
145
+ id: string;
146
+ tenantId: string;
147
+ type: CRMChannelType;
148
+ name: string;
149
+ address: string | null;
150
+ isActive: boolean;
151
+ createdAt: string;
152
+ updatedAt: string;
153
+ }
154
+ export interface CRMConversationDTO {
155
+ id: string;
156
+ tenantId: string;
157
+ contactId: string;
158
+ channelAccountId: string;
159
+ box: CRMConversationBox;
160
+ assignedToUserId: string | null;
161
+ leadId: string | null;
162
+ lastMessageAt: string | null;
163
+ lastMessageText: string | null;
164
+ unreadCount: number;
165
+ createdAt: string;
166
+ updatedAt: string;
167
+ }
168
+ export interface CRMMessageDTO {
169
+ id: string;
170
+ tenantId: string;
171
+ conversationId: string;
172
+ externalId: string | null;
173
+ direction: CRMMessageDirection;
174
+ text: string | null;
175
+ payload: unknown | null;
176
+ sentAt: string;
177
+ createdAt: string;
178
+ }
179
+ export interface CRMLeadSourceDTO {
180
+ id: string;
181
+ tenantId: string;
182
+ key: string;
183
+ name: string;
184
+ color: string | null;
185
+ order: number;
186
+ isActive: boolean;
187
+ createdAt: string;
188
+ updatedAt: string;
189
+ }
190
+ export interface CRMPipelineStageDTO {
191
+ id: string;
192
+ tenantId: string;
193
+ key: string;
194
+ name: string;
195
+ order: number;
196
+ isClosed: boolean;
197
+ isActive: boolean;
198
+ createdAt: string;
199
+ updatedAt: string;
200
+ }
201
+ export interface CRMLeadDTO {
202
+ id: string;
203
+ tenantId: string;
204
+ teamId: string | null;
205
+ contactId: string;
206
+ stageId: string;
207
+ sourceId: string | null;
208
+ createdByUserId: string | null;
209
+ assignedToUserId: string | null;
210
+ status: CRMLeadStatus;
211
+ closeReason: CRMLeadCloseReason | null;
212
+ notes: string | null;
213
+ estValue: string | null;
214
+ currency: string | null;
215
+ interest: string | null;
216
+ desiredStartDate: string | null;
217
+ desiredEndDate: string | null;
218
+ companionCount: number | null;
219
+ accommodationNeed: boolean;
220
+ transferNeed: boolean;
221
+ externalLeadId: string | null;
222
+ externalPatientId: string | null;
223
+ convertedAt: string | null;
224
+ createdAt: string;
225
+ updatedAt: string;
226
+ }
227
+ export interface CRMLeadActivityDTO {
228
+ id: string;
229
+ tenantId: string;
230
+ leadId: string;
231
+ type: CRMLeadActivityType;
232
+ message: string | null;
233
+ meta: unknown | null;
234
+ byUserId: string | null;
235
+ createdAt: string;
236
+ }
237
+ export interface CRMOfferDTO {
238
+ id: string;
239
+ tenantId: string;
240
+ leadId: string;
241
+ status: CRMOfferStatus;
242
+ title: string | null;
243
+ summary: string | null;
244
+ total: string | null;
245
+ currency: string | null;
246
+ externalOfferId: string | null;
247
+ meta: unknown | null;
248
+ createdAt: string;
249
+ updatedAt: string;
250
+ }
251
+ export interface CRMAppointmentDTO {
252
+ id: string;
253
+ tenantId: string;
254
+ leadId: string;
255
+ type: CRMAppointmentType;
256
+ startsAt: string;
257
+ endsAt: string | null;
258
+ location: string | null;
259
+ note: string | null;
260
+ meta: unknown | null;
261
+ createdAt: string;
262
+ updatedAt: string;
263
+ }
264
+ export interface CRMTripPlanDTO {
265
+ id: string;
266
+ tenantId: string;
267
+ leadId: string;
268
+ arrivalAt: string | null;
269
+ departureAt: string | null;
270
+ flightInfo: string | null;
271
+ hotelName: string | null;
272
+ hotelAddress: string | null;
273
+ transferNeed: boolean;
274
+ companionCount: number | null;
275
+ meta: unknown | null;
276
+ createdAt: string;
277
+ updatedAt: string;
278
+ }
279
+ export interface CRMTaskDTO {
280
+ id: string;
281
+ tenantId: string;
282
+ leadId: string;
283
+ title: string;
284
+ status: CRMTaskStatus;
285
+ dueAt: string | null;
286
+ assignedToUserId: string | null;
287
+ note: string | null;
288
+ createdAt: string;
289
+ updatedAt: string;
290
+ }
291
+ export interface CRMAuthTokenDTO {
292
+ accessToken: string;
293
+ user: CRMUserDTO;
294
+ team: CRMTeamDTO | null;
295
+ }
296
+ export interface CRMGetOrCreateUserBody {
297
+ externalUserId: string;
298
+ externalTeamId?: string;
299
+ teamName?: string;
300
+ teamType?: CRMTeamType;
301
+ email?: string;
302
+ name?: string;
303
+ role?: CRMUserRole;
304
+ avatarUrl?: string;
305
+ }
306
+ export interface CRMPostInboundMessageBody {
307
+ channelAccountId: string;
308
+ channel: CRMChannelType;
309
+ externalMessageId?: string;
310
+ contactPhone?: string;
311
+ contactEmail?: string;
312
+ contactExternalId?: string;
313
+ contactName?: string;
314
+ text?: string;
315
+ payload?: unknown;
316
+ sentAt: string;
317
+ autoCreateLead?: boolean;
318
+ }
319
+ export interface CRMUpsertContactBody {
320
+ externalId?: string;
321
+ name?: string;
322
+ phone?: string;
323
+ email?: string;
324
+ avatarUrl?: string;
325
+ country?: string;
326
+ city?: string;
327
+ language?: string;
328
+ note?: string;
329
+ }
330
+ export interface CRMCreateLeadBody {
331
+ contactId?: string;
332
+ contactCreate?: CRMUpsertContactBody;
333
+ stageId: string;
334
+ sourceId?: string;
335
+ assignedToUserId?: string;
336
+ notes?: string;
337
+ estValue?: number;
338
+ currency?: string;
339
+ interest?: string;
340
+ }
341
+ export interface CRMUpdateLeadStageBody {
342
+ leadId: string;
343
+ stageId: string;
344
+ }
345
+ export interface CRMTripPlanUpsertBody {
346
+ arrivalAt?: string;
347
+ departureAt?: string;
348
+ flightInfo?: string;
349
+ hotelName?: string;
350
+ hotelAddress?: string;
351
+ transferNeed?: boolean;
352
+ companionCount?: number;
353
+ meta?: unknown;
354
+ }
355
+ export interface CRMCreateAppointmentBody {
356
+ type: CRMAppointmentType;
357
+ startsAt: string;
358
+ endsAt?: string;
359
+ location?: string;
360
+ note?: string;
361
+ meta?: unknown;
362
+ }
363
+ export interface CRMCreateOfferBody {
364
+ title?: string;
365
+ summary?: string;
366
+ total?: number;
367
+ currency?: string;
368
+ externalOfferId?: string;
369
+ meta?: unknown;
370
+ }
371
+ export interface CRMListQuery {
372
+ take?: number;
373
+ skip?: number;
374
+ }
375
+ export interface CRMConversationListQuery extends CRMListQuery {
376
+ box?: CRMConversationBox;
377
+ filter?: 'all' | 'mine' | 'unassigned';
378
+ q?: string;
379
+ }
380
+ export interface CRMLeadListQuery extends CRMListQuery {
381
+ stageId?: string;
382
+ assigned?: 'mine' | 'unassigned' | 'all';
383
+ q?: string;
384
+ }
385
+ //# sourceMappingURL=index.d.ts.map
package/index.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/index.js ADDED
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ // ─── Core response wrapper ────────────────────────────────────────────────────
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.CRMLeadActivityType = exports.CRMTaskStatus = exports.CRMAppointmentType = exports.CRMOfferStatus = exports.CRMLeadCloseReason = exports.CRMLeadStatus = exports.CRMMessageDirection = exports.CRMConversationBox = exports.CRMChannelType = exports.CRMTeamType = exports.CRMUserRole = exports.CRMUserType = void 0;
5
+ // ─── Enums ────────────────────────────────────────────────────────────────────
6
+ var CRMUserType;
7
+ (function (CRMUserType) {
8
+ CRMUserType["internal"] = "internal";
9
+ CRMUserType["external"] = "external";
10
+ })(CRMUserType || (exports.CRMUserType = CRMUserType = {}));
11
+ var CRMUserRole;
12
+ (function (CRMUserRole) {
13
+ CRMUserRole["superadmin"] = "superadmin";
14
+ CRMUserRole["admin"] = "admin";
15
+ CRMUserRole["manager"] = "manager";
16
+ CRMUserRole["agent"] = "agent";
17
+ CRMUserRole["user"] = "user";
18
+ CRMUserRole["bot"] = "bot";
19
+ })(CRMUserRole || (exports.CRMUserRole = CRMUserRole = {}));
20
+ var CRMTeamType;
21
+ (function (CRMTeamType) {
22
+ CRMTeamType["customer"] = "customer";
23
+ CRMTeamType["clinic"] = "clinic";
24
+ CRMTeamType["lab"] = "lab";
25
+ CRMTeamType["internal"] = "internal";
26
+ })(CRMTeamType || (exports.CRMTeamType = CRMTeamType = {}));
27
+ var CRMChannelType;
28
+ (function (CRMChannelType) {
29
+ CRMChannelType["whatsapp"] = "whatsapp";
30
+ CRMChannelType["instagram"] = "instagram";
31
+ CRMChannelType["email"] = "email";
32
+ CRMChannelType["webchat"] = "webchat";
33
+ CRMChannelType["sms"] = "sms";
34
+ })(CRMChannelType || (exports.CRMChannelType = CRMChannelType = {}));
35
+ var CRMConversationBox;
36
+ (function (CRMConversationBox) {
37
+ CRMConversationBox["inbox"] = "inbox";
38
+ CRMConversationBox["archived"] = "archived";
39
+ })(CRMConversationBox || (exports.CRMConversationBox = CRMConversationBox = {}));
40
+ var CRMMessageDirection;
41
+ (function (CRMMessageDirection) {
42
+ CRMMessageDirection["inbound"] = "inbound";
43
+ CRMMessageDirection["outbound"] = "outbound";
44
+ })(CRMMessageDirection || (exports.CRMMessageDirection = CRMMessageDirection = {}));
45
+ var CRMLeadStatus;
46
+ (function (CRMLeadStatus) {
47
+ CRMLeadStatus["open"] = "open";
48
+ CRMLeadStatus["closed"] = "closed";
49
+ })(CRMLeadStatus || (exports.CRMLeadStatus = CRMLeadStatus = {}));
50
+ var CRMLeadCloseReason;
51
+ (function (CRMLeadCloseReason) {
52
+ CRMLeadCloseReason["won"] = "won";
53
+ CRMLeadCloseReason["lost"] = "lost";
54
+ })(CRMLeadCloseReason || (exports.CRMLeadCloseReason = CRMLeadCloseReason = {}));
55
+ var CRMOfferStatus;
56
+ (function (CRMOfferStatus) {
57
+ CRMOfferStatus["draft"] = "draft";
58
+ CRMOfferStatus["sent"] = "sent";
59
+ CRMOfferStatus["accepted"] = "accepted";
60
+ CRMOfferStatus["rejected"] = "rejected";
61
+ CRMOfferStatus["expired"] = "expired";
62
+ })(CRMOfferStatus || (exports.CRMOfferStatus = CRMOfferStatus = {}));
63
+ var CRMAppointmentType;
64
+ (function (CRMAppointmentType) {
65
+ CRMAppointmentType["online"] = "online";
66
+ CRMAppointmentType["clinic_visit"] = "clinic_visit";
67
+ CRMAppointmentType["treatment_day"] = "treatment_day";
68
+ CRMAppointmentType["follow_up"] = "follow_up";
69
+ })(CRMAppointmentType || (exports.CRMAppointmentType = CRMAppointmentType = {}));
70
+ var CRMTaskStatus;
71
+ (function (CRMTaskStatus) {
72
+ CRMTaskStatus["open"] = "open";
73
+ CRMTaskStatus["done"] = "done";
74
+ CRMTaskStatus["cancelled"] = "cancelled";
75
+ })(CRMTaskStatus || (exports.CRMTaskStatus = CRMTaskStatus = {}));
76
+ var CRMLeadActivityType;
77
+ (function (CRMLeadActivityType) {
78
+ CRMLeadActivityType["created"] = "created";
79
+ CRMLeadActivityType["updated"] = "updated";
80
+ CRMLeadActivityType["stage_changed"] = "stage_changed";
81
+ CRMLeadActivityType["source_changed"] = "source_changed";
82
+ CRMLeadActivityType["assigned_changed"] = "assigned_changed";
83
+ CRMLeadActivityType["note_added"] = "note_added";
84
+ CRMLeadActivityType["note_updated"] = "note_updated";
85
+ CRMLeadActivityType["note_deleted"] = "note_deleted";
86
+ CRMLeadActivityType["offer_created"] = "offer_created";
87
+ CRMLeadActivityType["offer_updated"] = "offer_updated";
88
+ CRMLeadActivityType["appointment_created"] = "appointment_created";
89
+ CRMLeadActivityType["appointment_updated"] = "appointment_updated";
90
+ CRMLeadActivityType["trip_updated"] = "trip_updated";
91
+ CRMLeadActivityType["converted_to_patient"] = "converted_to_patient";
92
+ CRMLeadActivityType["merged"] = "merged";
93
+ CRMLeadActivityType["deleted"] = "deleted";
94
+ })(CRMLeadActivityType || (exports.CRMLeadActivityType = CRMLeadActivityType = {}));
95
+ //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,iFAAiF;;;AAajF,iFAAiF;AAEjF,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,oCAAqB,CAAA;IACrB,oCAAqB,CAAA;AACvB,CAAC,EAHW,WAAW,2BAAX,WAAW,QAGtB;AAED,IAAY,WAOX;AAPD,WAAY,WAAW;IACrB,wCAAyB,CAAA;IACzB,8BAAe,CAAA;IACf,kCAAmB,CAAA;IACnB,8BAAe,CAAA;IACf,4BAAa,CAAA;IACb,0BAAW,CAAA;AACb,CAAC,EAPW,WAAW,2BAAX,WAAW,QAOtB;AAED,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,oCAAqB,CAAA;IACrB,gCAAiB,CAAA;IACjB,0BAAW,CAAA;IACX,oCAAqB,CAAA;AACvB,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB;AAED,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,yCAAuB,CAAA;IACvB,iCAAe,CAAA;IACf,qCAAmB,CAAA;IACnB,6BAAW,CAAA;AACb,CAAC,EANW,cAAc,8BAAd,cAAc,QAMzB;AAED,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,qCAAe,CAAA;IACf,2CAAqB,CAAA;AACvB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,4CAAqB,CAAA;AACvB,CAAC,EAHW,mBAAmB,mCAAnB,mBAAmB,QAG9B;AAED,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,kCAAiB,CAAA;AACnB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAED,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,iCAAW,CAAA;IACX,mCAAa,CAAA;AACf,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAED,IAAY,cAMX;AAND,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,+BAAa,CAAA;IACb,uCAAqB,CAAA;IACrB,uCAAqB,CAAA;IACrB,qCAAmB,CAAA;AACrB,CAAC,EANW,cAAc,8BAAd,cAAc,QAMzB;AAED,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,uCAAiB,CAAA;IACjB,mDAA6B,CAAA;IAC7B,qDAA+B,CAAA;IAC/B,6CAAuB,CAAA;AACzB,CAAC,EALW,kBAAkB,kCAAlB,kBAAkB,QAK7B;AAED,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,8BAAa,CAAA;IACb,8BAAa,CAAA;IACb,wCAAuB,CAAA;AACzB,CAAC,EAJW,aAAa,6BAAb,aAAa,QAIxB;AAED,IAAY,mBAiBX;AAjBD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,0CAAmB,CAAA;IACnB,sDAA+B,CAAA;IAC/B,wDAAiC,CAAA;IACjC,4DAAqC,CAAA;IACrC,gDAAyB,CAAA;IACzB,oDAA6B,CAAA;IAC7B,oDAA6B,CAAA;IAC7B,sDAA+B,CAAA;IAC/B,sDAA+B,CAAA;IAC/B,kEAA2C,CAAA;IAC3C,kEAA2C,CAAA;IAC3C,oDAA6B,CAAA;IAC7B,oEAA6C,CAAA;IAC7C,wCAAiB,CAAA;IACjB,0CAAmB,CAAA;AACrB,CAAC,EAjBW,mBAAmB,mCAAnB,mBAAmB,QAiB9B"}
package/package.json ADDED
@@ -0,0 +1,12 @@
1
+ {
2
+ "name": "dentalplan-crmtypes",
3
+ "version": "1.0.0",
4
+ "description": "Shared CRM types and DTOs",
5
+ "main": "index.js",
6
+ "types": "index.d.ts",
7
+ "publishConfig": {
8
+ "access": "public"
9
+ },
10
+ "keywords": ["crm", "types", "typescript"],
11
+ "license": "MIT"
12
+ }