evo360-types 1.3.61 → 1.3.63

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.
@@ -1,8 +1,8 @@
1
1
  import { z } from "zod";
2
2
  export declare const zPaymentStatusSchema: z.ZodEnum<["paid", "partial", "pending", "not_informed"]>;
3
- export declare const zMedAppointmentStatusSchema: z.ZodEnum<["scheduled", "confirmed", "completed", "pre_checkin", "waiting", "no_show", "cancelled", "extra_slot", "in_progress", "rescheduled"]>;
3
+ export declare const zAppointmentStatusTypeSchema: z.ZodEnum<["scheduled", "confirmed", "rescheduled", "pre_checkin", "waiting", "in_progress", "completed", "no_show", "cancelled", "cancelled_by_clinic", "cancelled_by_patient", "extra_slot", "awaiting_payment", "paid", "awaiting_documents", "blocked", "waiting_list", "expired"]>;
4
4
  export declare const zAppointmentModeSchema: z.ZodEnum<["telemedicine", "in_person"]>;
5
- export declare const zAppointmentTypeSchema: z.ZodEnum<["blocked", "consultation", "procedure", "follow_up"]>;
5
+ export declare const zAppointmentTypeBaseSchema: z.ZodEnum<["blocked", "consultation", "follow_up", "procedure", "surgery", "exam", "evaluation", "emergency", "check_up", "vaccination", "fit_test", "therapy", "meeting"]>;
6
6
  export declare const zAppointmentAddressSchema: z.ZodObject<{
7
7
  address_name: z.ZodOptional<z.ZodString>;
8
8
  address_line1: z.ZodOptional<z.ZodString>;
@@ -144,10 +144,12 @@ export declare const zAppointmentSchema: z.ZodObject<z.objectUtil.extendShape<{
144
144
  calendarId: z.ZodNumber;
145
145
  startDate: z.ZodString;
146
146
  endDate: z.ZodString;
147
- status: z.ZodEnum<["scheduled", "confirmed", "completed", "pre_checkin", "waiting", "no_show", "cancelled", "extra_slot", "in_progress", "rescheduled"]>;
147
+ status: z.ZodString;
148
+ statusBase: z.ZodEnum<["scheduled", "confirmed", "rescheduled", "pre_checkin", "waiting", "in_progress", "completed", "no_show", "cancelled", "cancelled_by_clinic", "cancelled_by_patient", "extra_slot", "awaiting_payment", "paid", "awaiting_documents", "blocked", "waiting_list", "expired"]>;
148
149
  notes: z.ZodOptional<z.ZodString>;
149
150
  appointmentMode: z.ZodEnum<["telemedicine", "in_person"]>;
150
- appointmentType: z.ZodEnum<["blocked", "consultation", "procedure", "follow_up"]>;
151
+ appointmentType: z.ZodString;
152
+ appointmentBaseType: z.ZodEnum<["blocked", "consultation", "follow_up", "procedure", "surgery", "exam", "evaluation", "emergency", "check_up", "vaccination", "fit_test", "therapy", "meeting"]>;
151
153
  specialty: z.ZodOptional<z.ZodString>;
152
154
  address: z.ZodOptional<z.ZodObject<{
153
155
  address_name: z.ZodOptional<z.ZodString>;
@@ -312,10 +314,12 @@ export declare const zAppointmentSchema: z.ZodObject<z.objectUtil.extendShape<{
312
314
  calendarId: z.ZodNumber;
313
315
  startDate: z.ZodString;
314
316
  endDate: z.ZodString;
315
- status: z.ZodEnum<["scheduled", "confirmed", "completed", "pre_checkin", "waiting", "no_show", "cancelled", "extra_slot", "in_progress", "rescheduled"]>;
317
+ status: z.ZodString;
318
+ statusBase: z.ZodEnum<["scheduled", "confirmed", "rescheduled", "pre_checkin", "waiting", "in_progress", "completed", "no_show", "cancelled", "cancelled_by_clinic", "cancelled_by_patient", "extra_slot", "awaiting_payment", "paid", "awaiting_documents", "blocked", "waiting_list", "expired"]>;
316
319
  notes: z.ZodOptional<z.ZodString>;
317
320
  appointmentMode: z.ZodEnum<["telemedicine", "in_person"]>;
318
- appointmentType: z.ZodEnum<["blocked", "consultation", "procedure", "follow_up"]>;
321
+ appointmentType: z.ZodString;
322
+ appointmentBaseType: z.ZodEnum<["blocked", "consultation", "follow_up", "procedure", "surgery", "exam", "evaluation", "emergency", "check_up", "vaccination", "fit_test", "therapy", "meeting"]>;
319
323
  specialty: z.ZodOptional<z.ZodString>;
320
324
  address: z.ZodOptional<z.ZodObject<{
321
325
  address_name: z.ZodOptional<z.ZodString>;
@@ -480,10 +484,12 @@ export declare const zAppointmentSchema: z.ZodObject<z.objectUtil.extendShape<{
480
484
  calendarId: z.ZodNumber;
481
485
  startDate: z.ZodString;
482
486
  endDate: z.ZodString;
483
- status: z.ZodEnum<["scheduled", "confirmed", "completed", "pre_checkin", "waiting", "no_show", "cancelled", "extra_slot", "in_progress", "rescheduled"]>;
487
+ status: z.ZodString;
488
+ statusBase: z.ZodEnum<["scheduled", "confirmed", "rescheduled", "pre_checkin", "waiting", "in_progress", "completed", "no_show", "cancelled", "cancelled_by_clinic", "cancelled_by_patient", "extra_slot", "awaiting_payment", "paid", "awaiting_documents", "blocked", "waiting_list", "expired"]>;
484
489
  notes: z.ZodOptional<z.ZodString>;
485
490
  appointmentMode: z.ZodEnum<["telemedicine", "in_person"]>;
486
- appointmentType: z.ZodEnum<["blocked", "consultation", "procedure", "follow_up"]>;
491
+ appointmentType: z.ZodString;
492
+ appointmentBaseType: z.ZodEnum<["blocked", "consultation", "follow_up", "procedure", "surgery", "exam", "evaluation", "emergency", "check_up", "vaccination", "fit_test", "therapy", "meeting"]>;
487
493
  specialty: z.ZodOptional<z.ZodString>;
488
494
  address: z.ZodOptional<z.ZodObject<{
489
495
  address_name: z.ZodOptional<z.ZodString>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.zAppointmentSchema = exports.zProcedureSchema = exports.zPaymentSchema = exports.zInsuranceSchema = exports.zAppointmentProfessionalSchema = exports.zAppointmentPatientSchema = exports.zAppointmentAddressSchema = exports.zAppointmentTypeSchema = exports.zAppointmentModeSchema = exports.zMedAppointmentStatusSchema = exports.zPaymentStatusSchema = void 0;
3
+ exports.zAppointmentSchema = exports.zProcedureSchema = exports.zPaymentSchema = exports.zInsuranceSchema = exports.zAppointmentProfessionalSchema = exports.zAppointmentPatientSchema = exports.zAppointmentAddressSchema = exports.zAppointmentTypeBaseSchema = exports.zAppointmentModeSchema = exports.zAppointmentStatusTypeSchema = exports.zPaymentStatusSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const zod_schemas_1 = require("../../shared/zod-schemas");
6
6
  // Enums para validação
@@ -10,24 +10,43 @@ exports.zPaymentStatusSchema = zod_1.z.enum([
10
10
  "pending",
11
11
  "not_informed",
12
12
  ]);
13
- exports.zMedAppointmentStatusSchema = zod_1.z.enum([
13
+ // Schema para os tipos base de status de agendamento (para validação do statusBase)
14
+ exports.zAppointmentStatusTypeSchema = zod_1.z.enum([
14
15
  "scheduled",
15
16
  "confirmed",
16
- "completed",
17
+ "rescheduled",
17
18
  "pre_checkin",
18
19
  "waiting",
20
+ "in_progress",
21
+ "completed",
19
22
  "no_show",
20
23
  "cancelled",
24
+ "cancelled_by_clinic",
25
+ "cancelled_by_patient",
21
26
  "extra_slot",
22
- "in_progress",
23
- "rescheduled",
27
+ "awaiting_payment",
28
+ "paid",
29
+ "awaiting_documents",
30
+ "blocked",
31
+ "waiting_list",
32
+ "expired",
24
33
  ]);
25
34
  exports.zAppointmentModeSchema = zod_1.z.enum(["telemedicine", "in_person"]);
26
- exports.zAppointmentTypeSchema = zod_1.z.enum([
35
+ // Schema para os tipos base de agendamento (para validação do appointmentBaseType)
36
+ exports.zAppointmentTypeBaseSchema = zod_1.z.enum([
27
37
  "blocked",
28
38
  "consultation",
29
- "procedure",
30
39
  "follow_up",
40
+ "procedure",
41
+ "surgery",
42
+ "exam",
43
+ "evaluation",
44
+ "emergency",
45
+ "check_up",
46
+ "vaccination",
47
+ "fit_test",
48
+ "therapy",
49
+ "meeting",
31
50
  ]);
32
51
  // Schema para endereço
33
52
  exports.zAppointmentAddressSchema = zod_1.z.object({
@@ -96,10 +115,12 @@ exports.zAppointmentSchema = zod_schemas_1.zFireDocSchema
96
115
  calendarId: zod_1.z.number(),
97
116
  startDate: zod_1.z.string().datetime(), // ISO string
98
117
  endDate: zod_1.z.string().datetime(), // ISO string
99
- status: exports.zMedAppointmentStatusSchema,
118
+ status: zod_1.z.string(), // Status customizado do dicionário
119
+ statusBase: exports.zAppointmentStatusTypeSchema, // Tipo base para lógica
100
120
  notes: zod_1.z.string().optional(),
101
121
  appointmentMode: exports.zAppointmentModeSchema,
102
- appointmentType: exports.zAppointmentTypeSchema,
122
+ appointmentType: zod_1.z.string(), // Tipo customizado do dicionário
123
+ appointmentBaseType: exports.zAppointmentTypeBaseSchema, // Tipo base para lógica
103
124
  specialty: zod_1.z.string().optional(),
104
125
  address: exports.zAppointmentAddressSchema.optional(),
105
126
  procedures: zod_1.z.array(exports.zProcedureSchema).optional(),
@@ -9,26 +9,45 @@ export const zPaymentStatusSchema = z.enum([
9
9
  "not_informed",
10
10
  ]);
11
11
 
12
- export const zMedAppointmentStatusSchema = z.enum([
12
+ // Schema para os tipos base de status de agendamento (para validação do statusBase)
13
+ export const zAppointmentStatusTypeSchema = z.enum([
13
14
  "scheduled",
14
15
  "confirmed",
15
- "completed",
16
+ "rescheduled",
16
17
  "pre_checkin",
17
18
  "waiting",
19
+ "in_progress",
20
+ "completed",
18
21
  "no_show",
19
22
  "cancelled",
23
+ "cancelled_by_clinic",
24
+ "cancelled_by_patient",
20
25
  "extra_slot",
21
- "in_progress",
22
- "rescheduled",
26
+ "awaiting_payment",
27
+ "paid",
28
+ "awaiting_documents",
29
+ "blocked",
30
+ "waiting_list",
31
+ "expired",
23
32
  ]);
24
33
 
25
34
  export const zAppointmentModeSchema = z.enum(["telemedicine", "in_person"]);
26
35
 
27
- export const zAppointmentTypeSchema = z.enum([
36
+ // Schema para os tipos base de agendamento (para validação do appointmentBaseType)
37
+ export const zAppointmentTypeBaseSchema = z.enum([
28
38
  "blocked",
29
39
  "consultation",
30
- "procedure",
31
40
  "follow_up",
41
+ "procedure",
42
+ "surgery",
43
+ "exam",
44
+ "evaluation",
45
+ "emergency",
46
+ "check_up",
47
+ "vaccination",
48
+ "fit_test",
49
+ "therapy",
50
+ "meeting",
32
51
  ]);
33
52
 
34
53
  // Schema para endereço
@@ -104,10 +123,12 @@ export const zAppointmentSchema = zFireDocSchema
104
123
  calendarId: z.number(),
105
124
  startDate: z.string().datetime(), // ISO string
106
125
  endDate: z.string().datetime(), // ISO string
107
- status: zMedAppointmentStatusSchema,
126
+ status: z.string(), // Status customizado do dicionário
127
+ statusBase: zAppointmentStatusTypeSchema, // Tipo base para lógica
108
128
  notes: z.string().optional(),
109
129
  appointmentMode: zAppointmentModeSchema,
110
- appointmentType: zAppointmentTypeSchema,
130
+ appointmentType: z.string(), // Tipo customizado do dicionário
131
+ appointmentBaseType: zAppointmentTypeBaseSchema, // Tipo base para lógica
111
132
  specialty: z.string().optional(),
112
133
  address: zAppointmentAddressSchema.optional(),
113
134
  procedures: z.array(zProcedureSchema).optional(),
@@ -409,7 +409,8 @@ export declare const zAppointmentRequestTypeSchema: z.ZodObject<z.objectUtil.ext
409
409
  category?: string | null | undefined;
410
410
  }>, "many">>>;
411
411
  }>, z.ZodTypeAny, "passthrough">>;
412
- export declare const zAppointmentStatusTypeSchema: z.ZodEnum<["rs", "cf", "ci", "co", "cx", "ns"]>;
412
+ export declare const zDicAppointmentStatusTypeSchema: z.ZodEnum<["scheduled", "confirmed", "rescheduled", "pre_checkin", "waiting", "in_progress", "completed", "no_show", "cancelled", "cancelled_by_clinic", "cancelled_by_patient", "extra_slot", "awaiting_payment", "paid", "awaiting_documents", "blocked", "waiting_list", "expired"]>;
413
+ export declare const zDicAppointmentTypeBaseSchema: z.ZodEnum<["blocked", "consultation", "follow_up", "procedure", "surgery", "exam", "evaluation", "emergency", "check_up", "vaccination", "fit_test", "therapy", "meeting"]>;
413
414
  export declare const zAppointmentStatusSchema: z.ZodObject<z.objectUtil.extendShape<{
414
415
  id: z.ZodString;
415
416
  ref: z.ZodAny;
@@ -419,31 +420,66 @@ export declare const zAppointmentStatusSchema: z.ZodObject<z.objectUtil.extendSh
419
420
  updated_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
420
421
  deleted_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
421
422
  }, {
422
- code: z.ZodString;
423
423
  name: z.ZodString;
424
- type: z.ZodDefault<z.ZodEnum<["rs", "cf", "ci", "co", "cx", "ns"]>>;
424
+ order: z.ZodNumber;
425
+ base_type: z.ZodEnum<["scheduled", "confirmed", "rescheduled", "pre_checkin", "waiting", "in_progress", "completed", "no_show", "cancelled", "cancelled_by_clinic", "cancelled_by_patient", "extra_slot", "awaiting_payment", "paid", "awaiting_documents", "blocked", "waiting_list", "expired"]>;
425
426
  }>, "strip", z.ZodTypeAny, {
426
- code: string;
427
427
  name: string;
428
428
  id: string;
429
429
  tenant: string;
430
430
  model_ver: number;
431
- type: "rs" | "cf" | "ci" | "co" | "cx" | "ns";
431
+ order: number;
432
+ base_type: "scheduled" | "confirmed" | "rescheduled" | "pre_checkin" | "waiting" | "in_progress" | "completed" | "no_show" | "cancelled" | "cancelled_by_clinic" | "cancelled_by_patient" | "extra_slot" | "awaiting_payment" | "paid" | "awaiting_documents" | "blocked" | "waiting_list" | "expired";
433
+ ref?: any;
434
+ created_at?: Date | null | undefined;
435
+ updated_at?: Date | null | undefined;
436
+ deleted_at?: Date | null | undefined;
437
+ }, {
438
+ name: string;
439
+ id: string;
440
+ tenant: string;
441
+ order: number;
442
+ base_type: "scheduled" | "confirmed" | "rescheduled" | "pre_checkin" | "waiting" | "in_progress" | "completed" | "no_show" | "cancelled" | "cancelled_by_clinic" | "cancelled_by_patient" | "extra_slot" | "awaiting_payment" | "paid" | "awaiting_documents" | "blocked" | "waiting_list" | "expired";
443
+ ref?: any;
444
+ model_ver?: number | undefined;
445
+ created_at?: Date | null | undefined;
446
+ updated_at?: Date | null | undefined;
447
+ deleted_at?: Date | null | undefined;
448
+ }>;
449
+ export declare const zAppointmentTypeSchema: z.ZodObject<z.objectUtil.extendShape<{
450
+ id: z.ZodString;
451
+ ref: z.ZodAny;
452
+ tenant: z.ZodString;
453
+ model_ver: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
454
+ created_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
455
+ updated_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
456
+ deleted_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
457
+ }, {
458
+ name: z.ZodString;
459
+ order: z.ZodNumber;
460
+ base_type: z.ZodEnum<["blocked", "consultation", "follow_up", "procedure", "surgery", "exam", "evaluation", "emergency", "check_up", "vaccination", "fit_test", "therapy", "meeting"]>;
461
+ }>, "strip", z.ZodTypeAny, {
462
+ name: string;
463
+ id: string;
464
+ tenant: string;
465
+ model_ver: number;
466
+ order: number;
467
+ base_type: "blocked" | "consultation" | "follow_up" | "procedure" | "surgery" | "exam" | "evaluation" | "emergency" | "check_up" | "vaccination" | "fit_test" | "therapy" | "meeting";
432
468
  ref?: any;
433
469
  created_at?: Date | null | undefined;
434
470
  updated_at?: Date | null | undefined;
435
471
  deleted_at?: Date | null | undefined;
436
472
  }, {
437
- code: string;
438
473
  name: string;
439
474
  id: string;
440
475
  tenant: string;
476
+ order: number;
477
+ base_type: "blocked" | "consultation" | "follow_up" | "procedure" | "surgery" | "exam" | "evaluation" | "emergency" | "check_up" | "vaccination" | "fit_test" | "therapy" | "meeting";
441
478
  ref?: any;
442
479
  model_ver?: number | undefined;
443
480
  created_at?: Date | null | undefined;
444
481
  updated_at?: Date | null | undefined;
445
482
  deleted_at?: Date | null | undefined;
446
- type?: "rs" | "cf" | "ci" | "co" | "cx" | "ns" | undefined;
447
483
  }>;
448
484
  export declare const zMedicationSchema: z.ZodObject<{
449
485
  name: z.ZodString;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.zMedicalCouncilSchema = exports.zMedicalCouncilUFSchema = exports.zAllergySchema = exports.zAllergyKindSchema = exports.zChronicConditionSchema = exports.zSeveritySchema = exports.zMedicationSchema = exports.zAppointmentStatusSchema = exports.zAppointmentStatusTypeSchema = exports.zAppointmentRequestTypeSchema = exports.zAppointmentSourceSchema = exports.zPatientSourceSchema = exports.zSpecialtySchema = exports.zSpecialtyTypeSchema = void 0;
3
+ exports.zMedicalCouncilSchema = exports.zMedicalCouncilUFSchema = exports.zAllergySchema = exports.zAllergyKindSchema = exports.zChronicConditionSchema = exports.zSeveritySchema = exports.zMedicationSchema = exports.zAppointmentTypeSchema = exports.zAppointmentStatusSchema = exports.zDicAppointmentTypeBaseSchema = exports.zDicAppointmentStatusTypeSchema = exports.zAppointmentRequestTypeSchema = exports.zAppointmentSourceSchema = exports.zPatientSourceSchema = exports.zSpecialtySchema = exports.zSpecialtyTypeSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const zod_schemas_1 = require("../../shared/zod-schemas");
6
6
  exports.zSpecialtyTypeSchema = zod_schemas_1.zFireDocSchema
@@ -41,18 +41,54 @@ exports.zAppointmentRequestTypeSchema = zod_schemas_1.zFireDocSchema
41
41
  tags: zod_1.z.array(zod_schemas_1.zTagSchema).nullable().optional(),
42
42
  })
43
43
  .passthrough();
44
- exports.zAppointmentStatusTypeSchema = zod_1.z.enum([
45
- "rs",
46
- "cf",
47
- "ci",
48
- "co",
49
- "cx",
50
- "ns",
44
+ // Schema para os tipos base de status de agendamento (para uso em dicionários)
45
+ exports.zDicAppointmentStatusTypeSchema = zod_1.z.enum([
46
+ "scheduled",
47
+ "confirmed",
48
+ "rescheduled",
49
+ "pre_checkin",
50
+ "waiting",
51
+ "in_progress",
52
+ "completed",
53
+ "no_show",
54
+ "cancelled",
55
+ "cancelled_by_clinic",
56
+ "cancelled_by_patient",
57
+ "extra_slot",
58
+ "awaiting_payment",
59
+ "paid",
60
+ "awaiting_documents",
61
+ "blocked",
62
+ "waiting_list",
63
+ "expired",
51
64
  ]);
65
+ // Schema para os tipos base de agendamento (para uso em dicionários)
66
+ exports.zDicAppointmentTypeBaseSchema = zod_1.z.enum([
67
+ "blocked",
68
+ "consultation",
69
+ "follow_up",
70
+ "procedure",
71
+ "surgery",
72
+ "exam",
73
+ "evaluation",
74
+ "emergency",
75
+ "check_up",
76
+ "vaccination",
77
+ "fit_test",
78
+ "therapy",
79
+ "meeting",
80
+ ]);
81
+ // Schema para IAppointmentStatus (status customizados do usuário)
52
82
  exports.zAppointmentStatusSchema = zod_schemas_1.zFireDocSchema.extend({
53
- code: zod_1.z.string().min(1).max(10),
54
83
  name: zod_1.z.string().min(1).max(255),
55
- type: exports.zAppointmentStatusTypeSchema.default("rs"),
84
+ order: zod_1.z.number(),
85
+ base_type: exports.zDicAppointmentStatusTypeSchema,
86
+ });
87
+ // Schema para IAppointmentType (tipos customizados do usuário)
88
+ exports.zAppointmentTypeSchema = zod_schemas_1.zFireDocSchema.extend({
89
+ name: zod_1.z.string().min(1).max(255),
90
+ order: zod_1.z.number(),
91
+ base_type: exports.zDicAppointmentTypeBaseSchema,
56
92
  });
57
93
  exports.zMedicationSchema = zod_1.z.object({
58
94
  name: zod_1.z.string().min(1).max(255),
@@ -44,19 +44,57 @@ export const zAppointmentRequestTypeSchema = zFireDocSchema
44
44
  })
45
45
  .passthrough();
46
46
 
47
- export const zAppointmentStatusTypeSchema = z.enum([
48
- "rs",
49
- "cf",
50
- "ci",
51
- "co",
52
- "cx",
53
- "ns",
47
+ // Schema para os tipos base de status de agendamento (para uso em dicionários)
48
+ export const zDicAppointmentStatusTypeSchema = z.enum([
49
+ "scheduled",
50
+ "confirmed",
51
+ "rescheduled",
52
+ "pre_checkin",
53
+ "waiting",
54
+ "in_progress",
55
+ "completed",
56
+ "no_show",
57
+ "cancelled",
58
+ "cancelled_by_clinic",
59
+ "cancelled_by_patient",
60
+ "extra_slot",
61
+ "awaiting_payment",
62
+ "paid",
63
+ "awaiting_documents",
64
+ "blocked",
65
+ "waiting_list",
66
+ "expired",
54
67
  ]);
55
68
 
69
+ // Schema para os tipos base de agendamento (para uso em dicionários)
70
+ export const zDicAppointmentTypeBaseSchema = z.enum([
71
+ "blocked",
72
+ "consultation",
73
+ "follow_up",
74
+ "procedure",
75
+ "surgery",
76
+ "exam",
77
+ "evaluation",
78
+ "emergency",
79
+ "check_up",
80
+ "vaccination",
81
+ "fit_test",
82
+ "therapy",
83
+ "meeting",
84
+ ]);
85
+
86
+ // Schema para IAppointmentStatus (status customizados do usuário)
56
87
  export const zAppointmentStatusSchema = zFireDocSchema.extend({
57
- code: z.string().min(1).max(10),
58
88
  name: z.string().min(1).max(255),
59
- type: zAppointmentStatusTypeSchema.default("rs"),
89
+ order: z.number(),
90
+ base_type: zDicAppointmentStatusTypeSchema,
91
+ });
92
+
93
+ // Schema para IAppointmentType (tipos customizados do usuário)
94
+ export const zAppointmentTypeSchema = zFireDocSchema.extend({
95
+ name: z.string().min(1).max(255),
96
+ order: z.number(),
97
+ base_type: zDicAppointmentTypeBaseSchema,
60
98
  });
61
99
 
62
100
  export const zMedicationSchema = z.object({
@@ -1108,7 +1108,7 @@ export declare const zSurveySubmissionSchema: z.ZodObject<z.objectUtil.extendSha
1108
1108
  id: string;
1109
1109
  tenant: string;
1110
1110
  model_ver: number;
1111
- status: "in_progress" | "not_started" | "completed";
1111
+ status: "in_progress" | "completed" | "not_started";
1112
1112
  user_name: string;
1113
1113
  modified_after_completion: boolean;
1114
1114
  answer_count: number;
@@ -1138,7 +1138,7 @@ export declare const zSurveySubmissionSchema: z.ZodObject<z.objectUtil.extendSha
1138
1138
  }, {
1139
1139
  id: string;
1140
1140
  tenant: string;
1141
- status: "in_progress" | "not_started" | "completed";
1141
+ status: "in_progress" | "completed" | "not_started";
1142
1142
  ref?: any;
1143
1143
  model_ver?: number | undefined;
1144
1144
  created_at?: Date | null | undefined;
@@ -1192,7 +1192,7 @@ export declare const zSurveyInviteeSchema: z.ZodObject<z.objectUtil.extendShape<
1192
1192
  model_ver: number;
1193
1193
  phone: string;
1194
1194
  isAnonymous: boolean;
1195
- submission_status: "in_progress" | "not_started" | "completed";
1195
+ submission_status: "in_progress" | "completed" | "not_started";
1196
1196
  ref?: any;
1197
1197
  created_at?: Date | null | undefined;
1198
1198
  updated_at?: Date | null | undefined;
@@ -1218,7 +1218,7 @@ export declare const zSurveyInviteeSchema: z.ZodObject<z.objectUtil.extendShape<
1218
1218
  invitedUserId?: string | undefined;
1219
1219
  isAnonymous?: boolean | undefined;
1220
1220
  submissionId?: string | undefined;
1221
- submission_status?: "in_progress" | "not_started" | "completed" | undefined;
1221
+ submission_status?: "in_progress" | "completed" | "not_started" | undefined;
1222
1222
  }>;
1223
1223
  export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendShape<{
1224
1224
  id: z.ZodString;
@@ -1369,7 +1369,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1369
1369
  model_ver: number;
1370
1370
  phone: string;
1371
1371
  isAnonymous: boolean;
1372
- submission_status: "in_progress" | "not_started" | "completed";
1372
+ submission_status: "in_progress" | "completed" | "not_started";
1373
1373
  ref?: any;
1374
1374
  created_at?: Date | null | undefined;
1375
1375
  updated_at?: Date | null | undefined;
@@ -1395,7 +1395,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1395
1395
  invitedUserId?: string | undefined;
1396
1396
  isAnonymous?: boolean | undefined;
1397
1397
  submissionId?: string | undefined;
1398
- submission_status?: "in_progress" | "not_started" | "completed" | undefined;
1398
+ submission_status?: "in_progress" | "completed" | "not_started" | undefined;
1399
1399
  }>, "many">>>;
1400
1400
  invitee_count: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
1401
1401
  submissions: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<z.objectUtil.extendShape<{
@@ -1471,7 +1471,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1471
1471
  id: string;
1472
1472
  tenant: string;
1473
1473
  model_ver: number;
1474
- status: "in_progress" | "not_started" | "completed";
1474
+ status: "in_progress" | "completed" | "not_started";
1475
1475
  user_name: string;
1476
1476
  modified_after_completion: boolean;
1477
1477
  answer_count: number;
@@ -1501,7 +1501,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1501
1501
  }, {
1502
1502
  id: string;
1503
1503
  tenant: string;
1504
- status: "in_progress" | "not_started" | "completed";
1504
+ status: "in_progress" | "completed" | "not_started";
1505
1505
  ref?: any;
1506
1506
  model_ver?: number | undefined;
1507
1507
  created_at?: Date | null | undefined;
@@ -1539,7 +1539,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1539
1539
  id: string;
1540
1540
  tenant: string;
1541
1541
  model_ver: number;
1542
- status: "draft" | "open" | "closed" | "in_progress" | "paused";
1542
+ status: "draft" | "in_progress" | "open" | "closed" | "paused";
1543
1543
  submission_count: number;
1544
1544
  start_date: Date | null;
1545
1545
  end_date: Date | null;
@@ -1595,7 +1595,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1595
1595
  id: string;
1596
1596
  tenant: string;
1597
1597
  model_ver: number;
1598
- status: "in_progress" | "not_started" | "completed";
1598
+ status: "in_progress" | "completed" | "not_started";
1599
1599
  user_name: string;
1600
1600
  modified_after_completion: boolean;
1601
1601
  answer_count: number;
@@ -1631,7 +1631,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1631
1631
  model_ver: number;
1632
1632
  phone: string;
1633
1633
  isAnonymous: boolean;
1634
- submission_status: "in_progress" | "not_started" | "completed";
1634
+ submission_status: "in_progress" | "completed" | "not_started";
1635
1635
  ref?: any;
1636
1636
  created_at?: Date | null | undefined;
1637
1637
  updated_at?: Date | null | undefined;
@@ -1646,7 +1646,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1646
1646
  name: string;
1647
1647
  id: string;
1648
1648
  tenant: string;
1649
- status: "draft" | "open" | "closed" | "in_progress" | "paused";
1649
+ status: "draft" | "in_progress" | "open" | "closed" | "paused";
1650
1650
  start_date: Date | null;
1651
1651
  end_date: Date | null;
1652
1652
  allow_edit_answers: boolean;
@@ -1695,7 +1695,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1695
1695
  submissions?: {
1696
1696
  id: string;
1697
1697
  tenant: string;
1698
- status: "in_progress" | "not_started" | "completed";
1698
+ status: "in_progress" | "completed" | "not_started";
1699
1699
  ref?: any;
1700
1700
  model_ver?: number | undefined;
1701
1701
  created_at?: Date | null | undefined;
@@ -1744,7 +1744,7 @@ export declare const zSurveyDeploymentSchema: z.ZodObject<z.objectUtil.extendSha
1744
1744
  invitedUserId?: string | undefined;
1745
1745
  isAnonymous?: boolean | undefined;
1746
1746
  submissionId?: string | undefined;
1747
- submission_status?: "in_progress" | "not_started" | "completed" | undefined;
1747
+ submission_status?: "in_progress" | "completed" | "not_started" | undefined;
1748
1748
  }[] | null | undefined;
1749
1749
  invitee_count?: number | undefined;
1750
1750
  submission_not_started_count?: number | undefined;
@@ -1,4 +1,5 @@
1
1
  import type { IFireDoc, IGeoPoint, ITag } from "../../shared";
2
+ import { AppointmentStatusType, AppointmentType } from "../dic";
2
3
  export declare const PaymentStatusEnum: {
3
4
  readonly Paid: "paid";
4
5
  readonly Partial: "partial";
@@ -6,40 +7,11 @@ export declare const PaymentStatusEnum: {
6
7
  readonly NotInformed: "not_informed";
7
8
  };
8
9
  export type PaymentStatus = (typeof PaymentStatusEnum)[keyof typeof PaymentStatusEnum];
9
- export declare const AppointmentStatusEnum: {
10
- readonly Scheduled: "scheduled";
11
- readonly Confirmed: "confirmed";
12
- readonly Completed: "completed";
13
- readonly PreCheckin: "pre_checkin";
14
- readonly Waiting: "waiting";
15
- readonly NoShow: "no_show";
16
- readonly Cancelled: "cancelled";
17
- readonly ExtraSlot: "extra_slot";
18
- readonly InProgress: "in_progress";
19
- readonly Rescheduled: "rescheduled";
20
- };
21
- export type AppointmentStatus = (typeof AppointmentStatusEnum)[keyof typeof AppointmentStatusEnum];
22
10
  export declare const AppointmentModeEnum: {
23
11
  readonly Telemedicine: "telemedicine";
24
12
  readonly InPerson: "in_person";
25
13
  };
26
14
  export type AppointmentMode = (typeof AppointmentModeEnum)[keyof typeof AppointmentModeEnum];
27
- export declare const AppointmentTypeEnum: {
28
- readonly Blocked: "blocked";
29
- readonly Consultation: "consultation";
30
- readonly FollowUp: "follow_up";
31
- readonly Procedure: "procedure";
32
- readonly Surgery: "surgery";
33
- readonly Exam: "exam";
34
- readonly Evaluation: "evaluation";
35
- readonly Emergency: "emergency";
36
- readonly CheckUp: "check_up";
37
- readonly Vaccination: "vaccination";
38
- readonly FitTest: "fit_test";
39
- readonly Therapy: "therapy";
40
- readonly Meeting: "meeting";
41
- };
42
- export type AppointmentType = (typeof AppointmentTypeEnum)[keyof typeof AppointmentTypeEnum];
43
15
  export interface Address {
44
16
  address_name?: string;
45
17
  address_line1?: string;
@@ -95,10 +67,12 @@ export interface Appointment extends IFireDoc {
95
67
  calendarId: number;
96
68
  startDate: string;
97
69
  endDate: string;
98
- status: AppointmentStatus;
70
+ status: string;
71
+ statusBase: AppointmentStatusType;
99
72
  notes?: string;
100
73
  appointmentMode: AppointmentMode;
101
- appointmentType: AppointmentType;
74
+ appointmentType: string;
75
+ appointmentBaseType: AppointmentType;
102
76
  specialty?: string;
103
77
  address?: Address;
104
78
  procedures?: Procedure[];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AppointmentTypeEnum = exports.AppointmentModeEnum = exports.AppointmentStatusEnum = exports.PaymentStatusEnum = void 0;
3
+ exports.AppointmentModeEnum = exports.PaymentStatusEnum = void 0;
4
4
  // Enums para status de pagamento
5
5
  exports.PaymentStatusEnum = {
6
6
  Paid: "paid",
@@ -8,37 +8,8 @@ exports.PaymentStatusEnum = {
8
8
  Pending: "pending",
9
9
  NotInformed: "not_informed",
10
10
  };
11
- // Enums para status do agendamento
12
- exports.AppointmentStatusEnum = {
13
- Scheduled: "scheduled",
14
- Confirmed: "confirmed",
15
- Completed: "completed",
16
- PreCheckin: "pre_checkin",
17
- Waiting: "waiting",
18
- NoShow: "no_show",
19
- Cancelled: "cancelled",
20
- ExtraSlot: "extra_slot",
21
- InProgress: "in_progress",
22
- Rescheduled: "rescheduled",
23
- };
24
11
  // Enums para modo do agendamento
25
12
  exports.AppointmentModeEnum = {
26
13
  Telemedicine: "telemedicine",
27
14
  InPerson: "in_person",
28
15
  };
29
- // Enums para tipo do agendamento
30
- exports.AppointmentTypeEnum = {
31
- Blocked: "blocked", // Horário bloqueado (sem atendimento)
32
- Consultation: "consultation", // Consulta médica
33
- FollowUp: "follow_up", // Retorno de consulta
34
- Procedure: "procedure", // Procedimento clínico
35
- Surgery: "surgery", // Cirurgia
36
- Exam: "exam", // Exame diagnóstico (ex: ultrassom, raio-x)
37
- Evaluation: "evaluation", // Avaliação inicial
38
- Emergency: "emergency", // Atendimento de urgência
39
- CheckUp: "check_up", // Check-up / revisão geral
40
- Vaccination: "vaccination", // Vacinação
41
- FitTest: "fit_test", // Teste de aptidão física / ocupacional
42
- Therapy: "therapy", // Sessão terapêutica (fisioterapia, psicoterapia etc.)
43
- Meeting: "meeting", // Reunião administrativa / interna
44
- };
@@ -1,4 +1,5 @@
1
1
  import type { IFireDoc, IGeoPoint, ITag } from "../../shared";
2
+ import { AppointmentStatusType, AppointmentType } from "../dic";
2
3
  // Enums para status de pagamento
3
4
  export const PaymentStatusEnum = {
4
5
  Paid: "paid",
@@ -10,23 +11,6 @@ export const PaymentStatusEnum = {
10
11
  export type PaymentStatus =
11
12
  (typeof PaymentStatusEnum)[keyof typeof PaymentStatusEnum];
12
13
 
13
- // Enums para status do agendamento
14
- export const AppointmentStatusEnum = {
15
- Scheduled: "scheduled",
16
- Confirmed: "confirmed",
17
- Completed: "completed",
18
- PreCheckin: "pre_checkin",
19
- Waiting: "waiting",
20
- NoShow: "no_show",
21
- Cancelled: "cancelled",
22
- ExtraSlot: "extra_slot",
23
- InProgress: "in_progress",
24
- Rescheduled: "rescheduled",
25
- } as const;
26
-
27
- export type AppointmentStatus =
28
- (typeof AppointmentStatusEnum)[keyof typeof AppointmentStatusEnum];
29
-
30
14
  // Enums para modo do agendamento
31
15
  export const AppointmentModeEnum = {
32
16
  Telemedicine: "telemedicine",
@@ -36,26 +20,6 @@ export const AppointmentModeEnum = {
36
20
  export type AppointmentMode =
37
21
  (typeof AppointmentModeEnum)[keyof typeof AppointmentModeEnum];
38
22
 
39
- // Enums para tipo do agendamento
40
- export const AppointmentTypeEnum = {
41
- Blocked: "blocked", // Horário bloqueado (sem atendimento)
42
- Consultation: "consultation", // Consulta médica
43
- FollowUp: "follow_up", // Retorno de consulta
44
- Procedure: "procedure", // Procedimento clínico
45
- Surgery: "surgery", // Cirurgia
46
- Exam: "exam", // Exame diagnóstico (ex: ultrassom, raio-x)
47
- Evaluation: "evaluation", // Avaliação inicial
48
- Emergency: "emergency", // Atendimento de urgência
49
- CheckUp: "check_up", // Check-up / revisão geral
50
- Vaccination: "vaccination", // Vacinação
51
- FitTest: "fit_test", // Teste de aptidão física / ocupacional
52
- Therapy: "therapy", // Sessão terapêutica (fisioterapia, psicoterapia etc.)
53
- Meeting: "meeting", // Reunião administrativa / interna
54
- } as const;
55
-
56
- export type AppointmentType =
57
- (typeof AppointmentTypeEnum)[keyof typeof AppointmentTypeEnum];
58
-
59
23
  // Interface para endereço
60
24
  export interface Address {
61
25
  address_name?: string;
@@ -124,10 +88,12 @@ export interface Appointment extends IFireDoc {
124
88
  calendarId: number;
125
89
  startDate: string; // ISO string
126
90
  endDate: string; // ISO string
127
- status: AppointmentStatus;
91
+ status: string;
92
+ statusBase: AppointmentStatusType;
128
93
  notes?: string;
129
94
  appointmentMode: AppointmentMode;
130
- appointmentType: AppointmentType;
95
+ appointmentType: string;
96
+ appointmentBaseType: AppointmentType;
131
97
  specialty?: string;
132
98
  address?: Address;
133
99
  procedures?: Procedure[];
@@ -50,20 +50,43 @@ export interface IAppointmentRequestType extends IFireDoc {
50
50
  tags?: ITag[] | null;
51
51
  [key: string]: unknown;
52
52
  }
53
- export type AppointmentStatusType = "rs" | "cf" | "ci" | "co" | "cx" | "ns";
54
- export declare enum IAppointmentStatusType {
55
- Reserved = "rs",
56
- Confirmed = "cf",
57
- CheckedIn = "ci",
58
- CheckedOut = "co",
59
- Canceled = "cx",
60
- NoShow = "ns"
61
- }
62
- export interface IAppointmentStatus extends IFireDoc {
63
- code: string;
64
- name: string;
65
- type: AppointmentStatusType;
66
- }
53
+ export declare const AppointmentStatusTypeEnum: {
54
+ readonly Scheduled: "scheduled";
55
+ readonly Confirmed: "confirmed";
56
+ readonly Rescheduled: "rescheduled";
57
+ readonly PreCheckin: "pre_checkin";
58
+ readonly Waiting: "waiting";
59
+ readonly InProgress: "in_progress";
60
+ readonly Completed: "completed";
61
+ readonly NoShow: "no_show";
62
+ readonly Cancelled: "cancelled";
63
+ readonly CancelledByClinic: "cancelled_by_clinic";
64
+ readonly CancelledByPatient: "cancelled_by_patient";
65
+ readonly ExtraSlot: "extra_slot";
66
+ readonly AwaitingPayment: "awaiting_payment";
67
+ readonly Paid: "paid";
68
+ readonly AwaitingDocuments: "awaiting_documents";
69
+ readonly Blocked: "blocked";
70
+ readonly WaitingList: "waiting_list";
71
+ readonly Expired: "expired";
72
+ };
73
+ export type AppointmentStatusType = (typeof AppointmentStatusTypeEnum)[keyof typeof AppointmentStatusTypeEnum];
74
+ export declare const AppointmentTypeEnum: {
75
+ readonly Blocked: "blocked";
76
+ readonly Consultation: "consultation";
77
+ readonly FollowUp: "follow_up";
78
+ readonly Procedure: "procedure";
79
+ readonly Surgery: "surgery";
80
+ readonly Exam: "exam";
81
+ readonly Evaluation: "evaluation";
82
+ readonly Emergency: "emergency";
83
+ readonly CheckUp: "check_up";
84
+ readonly Vaccination: "vaccination";
85
+ readonly FitTest: "fit_test";
86
+ readonly Therapy: "therapy";
87
+ readonly Meeting: "meeting";
88
+ };
89
+ export type AppointmentType = (typeof AppointmentTypeEnum)[keyof typeof AppointmentTypeEnum];
67
90
  export interface IMedication {
68
91
  name: string;
69
92
  dosage?: string | null;
@@ -85,9 +108,19 @@ export declare enum IAllergyKind {
85
108
  Insect = "Insect",
86
109
  Other = "Other"
87
110
  }
111
+ export interface IAppointmentStatus extends IFireDoc {
112
+ name: string;
113
+ order: number;
114
+ base_type: AppointmentStatusType;
115
+ }
116
+ export interface IAppointmentType extends IFireDoc {
117
+ name: string;
118
+ order: number;
119
+ base_type: AppointmentType;
120
+ }
88
121
  export interface IAllergy extends IFireDoc {
89
- code: string;
90
122
  name: string;
123
+ order: number;
91
124
  kind?: AllergyKind | null;
92
125
  }
93
126
  export interface IMedicalCouncil extends IFireDoc {
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.IAllergyKind = exports.IAppointmentStatusType = exports.IMedDicAction = void 0;
17
+ exports.IAllergyKind = exports.AppointmentTypeEnum = exports.AppointmentStatusTypeEnum = exports.IMedDicAction = void 0;
18
18
  __exportStar(require("../../evo-people/fb_collections"), exports);
19
19
  var IMedDicAction;
20
20
  (function (IMedDicAction) {
@@ -34,15 +34,48 @@ var IMedDicAction;
34
34
  IMedDicAction["Delete_appointment_status"] = "DELETE_APPOINTMENT_STATUS";
35
35
  IMedDicAction["Update_appointment_status"] = "UPDATE_APPOINTMENT_STATUS";
36
36
  })(IMedDicAction || (exports.IMedDicAction = IMedDicAction = {}));
37
- var IAppointmentStatusType;
38
- (function (IAppointmentStatusType) {
39
- IAppointmentStatusType["Reserved"] = "rs";
40
- IAppointmentStatusType["Confirmed"] = "cf";
41
- IAppointmentStatusType["CheckedIn"] = "ci";
42
- IAppointmentStatusType["CheckedOut"] = "co";
43
- IAppointmentStatusType["Canceled"] = "cx";
44
- IAppointmentStatusType["NoShow"] = "ns";
45
- })(IAppointmentStatusType || (exports.IAppointmentStatusType = IAppointmentStatusType = {}));
37
+ // Enums para status do agendamento
38
+ exports.AppointmentStatusTypeEnum = {
39
+ // 🔹 Agendamentos e confirmações
40
+ Scheduled: "scheduled", // Criado, aguardando confirmação
41
+ Confirmed: "confirmed", // Confirmado pelo paciente ou clínica
42
+ Rescheduled: "rescheduled", // Remarcado para outro horário
43
+ // 🔹 Pré-atendimento
44
+ PreCheckin: "pre_checkin", // Paciente realizou check-in antecipado (online)
45
+ Waiting: "waiting", // Paciente chegou, aguardando atendimento
46
+ InProgress: "in_progress", // Atendimento em andamento
47
+ // 🔹 Pós-atendimento
48
+ Completed: "completed", // Atendimento finalizado com sucesso
49
+ NoShow: "no_show", // Paciente não compareceu
50
+ Cancelled: "cancelled", // Cancelado (genérico)
51
+ CancelledByClinic: "cancelled_by_clinic", // Cancelado pela clínica
52
+ CancelledByPatient: "cancelled_by_patient", // Cancelado pelo paciente
53
+ ExtraSlot: "extra_slot", // Encaixe / horário adicional
54
+ // 🔹 Financeiro / Administrativo (opcionais)
55
+ AwaitingPayment: "awaiting_payment", // Aguardando pagamento
56
+ Paid: "paid", // Pagamento confirmado
57
+ AwaitingDocuments: "awaiting_documents", // Aguardando autorização / documentos
58
+ // 🔹 Controle e sistema
59
+ Blocked: "blocked", // Horário bloqueado (sem agendamento)
60
+ WaitingList: "waiting_list", // Em lista de espera
61
+ Expired: "expired", // Agendamento expirado sem atualização
62
+ };
63
+ // Enums para tipo do agendamento
64
+ exports.AppointmentTypeEnum = {
65
+ Blocked: "blocked", // Horário bloqueado (sem atendimento)
66
+ Consultation: "consultation", // Consulta médica
67
+ FollowUp: "follow_up", // Retorno de consulta
68
+ Procedure: "procedure", // Procedimento clínico
69
+ Surgery: "surgery", // Cirurgia
70
+ Exam: "exam", // Exame diagnóstico (ex: ultrassom, raio-x)
71
+ Evaluation: "evaluation", // Avaliação inicial
72
+ Emergency: "emergency", // Atendimento de urgência
73
+ CheckUp: "check_up", // Check-up / revisão geral
74
+ Vaccination: "vaccination", // Vacinação
75
+ FitTest: "fit_test", // Teste de aptidão física / ocupacional
76
+ Therapy: "therapy", // Sessão terapêutica (fisioterapia, psicoterapia etc.)
77
+ Meeting: "meeting", // Reunião administrativa / interna
78
+ };
46
79
  var IAllergyKind;
47
80
  (function (IAllergyKind) {
48
81
  IAllergyKind["Food"] = "Food";
@@ -76,21 +76,59 @@ export interface IAppointmentRequestType extends IFireDoc {
76
76
  [key: string]: unknown; // index signature
77
77
  }
78
78
 
79
- export type AppointmentStatusType = "rs" | "cf" | "ci" | "co" | "cx" | "ns";
80
- export enum IAppointmentStatusType {
81
- Reserved = "rs",
82
- Confirmed = "cf",
83
- CheckedIn = "ci",
84
- CheckedOut = "co",
85
- Canceled = "cx",
86
- NoShow = "ns",
87
- }
79
+ // Enums para status do agendamento
80
+ export const AppointmentStatusTypeEnum = {
81
+ // 🔹 Agendamentos e confirmações
82
+ Scheduled: "scheduled", // Criado, aguardando confirmação
83
+ Confirmed: "confirmed", // Confirmado pelo paciente ou clínica
84
+ Rescheduled: "rescheduled", // Remarcado para outro horário
88
85
 
89
- export interface IAppointmentStatus extends IFireDoc {
90
- code: string;
91
- name: string;
92
- type: AppointmentStatusType;
93
- }
86
+ // 🔹 Pré-atendimento
87
+ PreCheckin: "pre_checkin", // Paciente realizou check-in antecipado (online)
88
+ Waiting: "waiting", // Paciente chegou, aguardando atendimento
89
+ InProgress: "in_progress", // Atendimento em andamento
90
+
91
+ // 🔹 Pós-atendimento
92
+ Completed: "completed", // Atendimento finalizado com sucesso
93
+ NoShow: "no_show", // Paciente não compareceu
94
+ Cancelled: "cancelled", // Cancelado (genérico)
95
+ CancelledByClinic: "cancelled_by_clinic", // Cancelado pela clínica
96
+ CancelledByPatient: "cancelled_by_patient", // Cancelado pelo paciente
97
+ ExtraSlot: "extra_slot", // Encaixe / horário adicional
98
+
99
+ // 🔹 Financeiro / Administrativo (opcionais)
100
+ AwaitingPayment: "awaiting_payment", // Aguardando pagamento
101
+ Paid: "paid", // Pagamento confirmado
102
+ AwaitingDocuments: "awaiting_documents", // Aguardando autorização / documentos
103
+
104
+ // 🔹 Controle e sistema
105
+ Blocked: "blocked", // Horário bloqueado (sem agendamento)
106
+ WaitingList: "waiting_list", // Em lista de espera
107
+ Expired: "expired", // Agendamento expirado sem atualização
108
+ } as const;
109
+
110
+ export type AppointmentStatusType =
111
+ (typeof AppointmentStatusTypeEnum)[keyof typeof AppointmentStatusTypeEnum];
112
+
113
+ // Enums para tipo do agendamento
114
+ export const AppointmentTypeEnum = {
115
+ Blocked: "blocked", // Horário bloqueado (sem atendimento)
116
+ Consultation: "consultation", // Consulta médica
117
+ FollowUp: "follow_up", // Retorno de consulta
118
+ Procedure: "procedure", // Procedimento clínico
119
+ Surgery: "surgery", // Cirurgia
120
+ Exam: "exam", // Exame diagnóstico (ex: ultrassom, raio-x)
121
+ Evaluation: "evaluation", // Avaliação inicial
122
+ Emergency: "emergency", // Atendimento de urgência
123
+ CheckUp: "check_up", // Check-up / revisão geral
124
+ Vaccination: "vaccination", // Vacinação
125
+ FitTest: "fit_test", // Teste de aptidão física / ocupacional
126
+ Therapy: "therapy", // Sessão terapêutica (fisioterapia, psicoterapia etc.)
127
+ Meeting: "meeting", // Reunião administrativa / interna
128
+ } as const;
129
+
130
+ export type AppointmentType =
131
+ (typeof AppointmentTypeEnum)[keyof typeof AppointmentTypeEnum];
94
132
 
95
133
  export interface IMedication {
96
134
  name: string;
@@ -116,9 +154,21 @@ export enum IAllergyKind {
116
154
  Other = "Other",
117
155
  }
118
156
 
157
+ export interface IAppointmentStatus extends IFireDoc {
158
+ name: string;
159
+ order: number;
160
+ base_type: AppointmentStatusType;
161
+ }
162
+
163
+ export interface IAppointmentType extends IFireDoc {
164
+ name: string;
165
+ order: number;
166
+ base_type: AppointmentType;
167
+ }
168
+
119
169
  export interface IAllergy extends IFireDoc {
120
- code: string;
121
170
  name: string;
171
+ order: number;
122
172
  kind?: AllergyKind | null;
123
173
  }
124
174
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "evo360-types",
3
- "version": "1.3.61",
3
+ "version": "1.3.63",
4
4
  "description": "HREVO360 Shared Types",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",