evo360-types 1.3.277 → 1.3.283

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.
@@ -7774,8 +7774,8 @@ export declare const zIssuerCompanyIdentitySchema: z.ZodObject<{
7774
7774
  country: z.ZodOptional<z.ZodString>;
7775
7775
  }, z.ZodTypeAny, "passthrough">>>;
7776
7776
  }, "strip", z.ZodTypeAny, {
7777
- legal_name: string;
7778
7777
  cnpj: string;
7778
+ legal_name: string;
7779
7779
  email?: string | undefined;
7780
7780
  address?: z.objectOutputType<{
7781
7781
  street: z.ZodOptional<z.ZodString>;
@@ -7791,8 +7791,8 @@ export declare const zIssuerCompanyIdentitySchema: z.ZodObject<{
7791
7791
  municipal_inscription?: string | undefined;
7792
7792
  trade_name?: string | undefined;
7793
7793
  }, {
7794
- legal_name: string;
7795
7794
  cnpj: string;
7795
+ legal_name: string;
7796
7796
  email?: string | undefined;
7797
7797
  address?: z.objectInputType<{
7798
7798
  street: z.ZodOptional<z.ZodString>;
@@ -7967,8 +7967,8 @@ export declare const zIssuerTaxProfileSchema: z.ZodObject<{
7967
7967
  country: z.ZodOptional<z.ZodString>;
7968
7968
  }, z.ZodTypeAny, "passthrough">>>;
7969
7969
  }, "strip", z.ZodTypeAny, {
7970
- legal_name: string;
7971
7970
  cnpj: string;
7971
+ legal_name: string;
7972
7972
  email?: string | undefined;
7973
7973
  address?: z.objectOutputType<{
7974
7974
  street: z.ZodOptional<z.ZodString>;
@@ -7984,8 +7984,8 @@ export declare const zIssuerTaxProfileSchema: z.ZodObject<{
7984
7984
  municipal_inscription?: string | undefined;
7985
7985
  trade_name?: string | undefined;
7986
7986
  }, {
7987
- legal_name: string;
7988
7987
  cnpj: string;
7988
+ legal_name: string;
7989
7989
  email?: string | undefined;
7990
7990
  address?: z.objectInputType<{
7991
7991
  street: z.ZodOptional<z.ZodString>;
@@ -8581,8 +8581,8 @@ export declare const zIssuerTaxProfileSchema: z.ZodObject<{
8581
8581
  country: z.ZodOptional<z.ZodString>;
8582
8582
  }, z.ZodTypeAny, "passthrough">>>;
8583
8583
  }, "strip", z.ZodTypeAny, {
8584
- legal_name: string;
8585
8584
  cnpj: string;
8585
+ legal_name: string;
8586
8586
  email?: string | undefined;
8587
8587
  address?: z.objectOutputType<{
8588
8588
  street: z.ZodOptional<z.ZodString>;
@@ -8598,8 +8598,8 @@ export declare const zIssuerTaxProfileSchema: z.ZodObject<{
8598
8598
  municipal_inscription?: string | undefined;
8599
8599
  trade_name?: string | undefined;
8600
8600
  }, {
8601
- legal_name: string;
8602
8601
  cnpj: string;
8602
+ legal_name: string;
8603
8603
  email?: string | undefined;
8604
8604
  address?: z.objectInputType<{
8605
8605
  street: z.ZodOptional<z.ZodString>;
@@ -9195,8 +9195,8 @@ export declare const zIssuerTaxProfileSchema: z.ZodObject<{
9195
9195
  country: z.ZodOptional<z.ZodString>;
9196
9196
  }, z.ZodTypeAny, "passthrough">>>;
9197
9197
  }, "strip", z.ZodTypeAny, {
9198
- legal_name: string;
9199
9198
  cnpj: string;
9199
+ legal_name: string;
9200
9200
  email?: string | undefined;
9201
9201
  address?: z.objectOutputType<{
9202
9202
  street: z.ZodOptional<z.ZodString>;
@@ -9212,8 +9212,8 @@ export declare const zIssuerTaxProfileSchema: z.ZodObject<{
9212
9212
  municipal_inscription?: string | undefined;
9213
9213
  trade_name?: string | undefined;
9214
9214
  }, {
9215
- legal_name: string;
9216
9215
  cnpj: string;
9216
+ legal_name: string;
9217
9217
  email?: string | undefined;
9218
9218
  address?: z.objectInputType<{
9219
9219
  street: z.ZodOptional<z.ZodString>;
@@ -1023,3 +1023,404 @@ export declare const zDirectSendPayloadSchema: z.ZodEffects<z.ZodObject<{
1023
1023
  ref: z.ZodOptional<z.ZodAny>;
1024
1024
  }, z.ZodTypeAny, "passthrough">>, "many">>;
1025
1025
  }, z.ZodTypeAny, "passthrough">>;
1026
+ export declare const zNexusDirectSendPayloadSchema: z.ZodEffects<z.ZodObject<{
1027
+ kind: z.ZodLiteral<"notification.send">;
1028
+ classification: z.ZodOptional<z.ZodString>;
1029
+ importance: z.ZodOptional<z.ZodNumber>;
1030
+ recipient: z.ZodObject<{
1031
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1032
+ id: z.ZodOptional<z.ZodString>;
1033
+ ref: z.ZodOptional<z.ZodAny>;
1034
+ address: z.ZodOptional<z.ZodString>;
1035
+ display_name: z.ZodOptional<z.ZodString>;
1036
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1037
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1038
+ id: z.ZodOptional<z.ZodString>;
1039
+ ref: z.ZodOptional<z.ZodAny>;
1040
+ address: z.ZodOptional<z.ZodString>;
1041
+ display_name: z.ZodOptional<z.ZodString>;
1042
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1043
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1044
+ id: z.ZodOptional<z.ZodString>;
1045
+ ref: z.ZodOptional<z.ZodAny>;
1046
+ address: z.ZodOptional<z.ZodString>;
1047
+ display_name: z.ZodOptional<z.ZodString>;
1048
+ }, z.ZodTypeAny, "passthrough">>;
1049
+ channel: z.ZodObject<{
1050
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1051
+ channel_id: z.ZodString;
1052
+ sender_id: z.ZodOptional<z.ZodString>;
1053
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1054
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1055
+ channel_id: z.ZodString;
1056
+ sender_id: z.ZodOptional<z.ZodString>;
1057
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1058
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1059
+ channel_id: z.ZodString;
1060
+ sender_id: z.ZodOptional<z.ZodString>;
1061
+ }, z.ZodTypeAny, "passthrough">>;
1062
+ template: z.ZodOptional<z.ZodObject<{
1063
+ template_id: z.ZodString;
1064
+ locale: z.ZodOptional<z.ZodString>;
1065
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1066
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1067
+ template_id: z.ZodString;
1068
+ locale: z.ZodOptional<z.ZodString>;
1069
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1070
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1071
+ template_id: z.ZodString;
1072
+ locale: z.ZodOptional<z.ZodString>;
1073
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1074
+ }, z.ZodTypeAny, "passthrough">>>;
1075
+ body_text: z.ZodOptional<z.ZodString>;
1076
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1077
+ routine: z.ZodOptional<z.ZodObject<{
1078
+ id: z.ZodString;
1079
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1080
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1081
+ id: z.ZodString;
1082
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1083
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1084
+ id: z.ZodString;
1085
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1086
+ }, z.ZodTypeAny, "passthrough">>>;
1087
+ idempotency_key: z.ZodOptional<z.ZodString>;
1088
+ dedup_key: z.ZodOptional<z.ZodString>;
1089
+ dedup_group_key: z.ZodOptional<z.ZodString>;
1090
+ externalLinks: z.ZodOptional<z.ZodArray<z.ZodObject<{
1091
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1092
+ id: z.ZodString;
1093
+ label: z.ZodOptional<z.ZodString>;
1094
+ ref: z.ZodOptional<z.ZodAny>;
1095
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1096
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1097
+ id: z.ZodString;
1098
+ label: z.ZodOptional<z.ZodString>;
1099
+ ref: z.ZodOptional<z.ZodAny>;
1100
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1101
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1102
+ id: z.ZodString;
1103
+ label: z.ZodOptional<z.ZodString>;
1104
+ ref: z.ZodOptional<z.ZodAny>;
1105
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
1106
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1107
+ kind: z.ZodLiteral<"notification.send">;
1108
+ classification: z.ZodOptional<z.ZodString>;
1109
+ importance: z.ZodOptional<z.ZodNumber>;
1110
+ recipient: z.ZodObject<{
1111
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1112
+ id: z.ZodOptional<z.ZodString>;
1113
+ ref: z.ZodOptional<z.ZodAny>;
1114
+ address: z.ZodOptional<z.ZodString>;
1115
+ display_name: z.ZodOptional<z.ZodString>;
1116
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1117
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1118
+ id: z.ZodOptional<z.ZodString>;
1119
+ ref: z.ZodOptional<z.ZodAny>;
1120
+ address: z.ZodOptional<z.ZodString>;
1121
+ display_name: z.ZodOptional<z.ZodString>;
1122
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1123
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1124
+ id: z.ZodOptional<z.ZodString>;
1125
+ ref: z.ZodOptional<z.ZodAny>;
1126
+ address: z.ZodOptional<z.ZodString>;
1127
+ display_name: z.ZodOptional<z.ZodString>;
1128
+ }, z.ZodTypeAny, "passthrough">>;
1129
+ channel: z.ZodObject<{
1130
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1131
+ channel_id: z.ZodString;
1132
+ sender_id: z.ZodOptional<z.ZodString>;
1133
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1134
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1135
+ channel_id: z.ZodString;
1136
+ sender_id: z.ZodOptional<z.ZodString>;
1137
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1138
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1139
+ channel_id: z.ZodString;
1140
+ sender_id: z.ZodOptional<z.ZodString>;
1141
+ }, z.ZodTypeAny, "passthrough">>;
1142
+ template: z.ZodOptional<z.ZodObject<{
1143
+ template_id: z.ZodString;
1144
+ locale: z.ZodOptional<z.ZodString>;
1145
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1146
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1147
+ template_id: z.ZodString;
1148
+ locale: z.ZodOptional<z.ZodString>;
1149
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1150
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1151
+ template_id: z.ZodString;
1152
+ locale: z.ZodOptional<z.ZodString>;
1153
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1154
+ }, z.ZodTypeAny, "passthrough">>>;
1155
+ body_text: z.ZodOptional<z.ZodString>;
1156
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1157
+ routine: z.ZodOptional<z.ZodObject<{
1158
+ id: z.ZodString;
1159
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1160
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1161
+ id: z.ZodString;
1162
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1163
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1164
+ id: z.ZodString;
1165
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1166
+ }, z.ZodTypeAny, "passthrough">>>;
1167
+ idempotency_key: z.ZodOptional<z.ZodString>;
1168
+ dedup_key: z.ZodOptional<z.ZodString>;
1169
+ dedup_group_key: z.ZodOptional<z.ZodString>;
1170
+ externalLinks: z.ZodOptional<z.ZodArray<z.ZodObject<{
1171
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1172
+ id: z.ZodString;
1173
+ label: z.ZodOptional<z.ZodString>;
1174
+ ref: z.ZodOptional<z.ZodAny>;
1175
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1176
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1177
+ id: z.ZodString;
1178
+ label: z.ZodOptional<z.ZodString>;
1179
+ ref: z.ZodOptional<z.ZodAny>;
1180
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1181
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1182
+ id: z.ZodString;
1183
+ label: z.ZodOptional<z.ZodString>;
1184
+ ref: z.ZodOptional<z.ZodAny>;
1185
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
1186
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1187
+ kind: z.ZodLiteral<"notification.send">;
1188
+ classification: z.ZodOptional<z.ZodString>;
1189
+ importance: z.ZodOptional<z.ZodNumber>;
1190
+ recipient: z.ZodObject<{
1191
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1192
+ id: z.ZodOptional<z.ZodString>;
1193
+ ref: z.ZodOptional<z.ZodAny>;
1194
+ address: z.ZodOptional<z.ZodString>;
1195
+ display_name: z.ZodOptional<z.ZodString>;
1196
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1197
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1198
+ id: z.ZodOptional<z.ZodString>;
1199
+ ref: z.ZodOptional<z.ZodAny>;
1200
+ address: z.ZodOptional<z.ZodString>;
1201
+ display_name: z.ZodOptional<z.ZodString>;
1202
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1203
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1204
+ id: z.ZodOptional<z.ZodString>;
1205
+ ref: z.ZodOptional<z.ZodAny>;
1206
+ address: z.ZodOptional<z.ZodString>;
1207
+ display_name: z.ZodOptional<z.ZodString>;
1208
+ }, z.ZodTypeAny, "passthrough">>;
1209
+ channel: z.ZodObject<{
1210
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1211
+ channel_id: z.ZodString;
1212
+ sender_id: z.ZodOptional<z.ZodString>;
1213
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1214
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1215
+ channel_id: z.ZodString;
1216
+ sender_id: z.ZodOptional<z.ZodString>;
1217
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1218
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1219
+ channel_id: z.ZodString;
1220
+ sender_id: z.ZodOptional<z.ZodString>;
1221
+ }, z.ZodTypeAny, "passthrough">>;
1222
+ template: z.ZodOptional<z.ZodObject<{
1223
+ template_id: z.ZodString;
1224
+ locale: z.ZodOptional<z.ZodString>;
1225
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1226
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1227
+ template_id: z.ZodString;
1228
+ locale: z.ZodOptional<z.ZodString>;
1229
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1230
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1231
+ template_id: z.ZodString;
1232
+ locale: z.ZodOptional<z.ZodString>;
1233
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1234
+ }, z.ZodTypeAny, "passthrough">>>;
1235
+ body_text: z.ZodOptional<z.ZodString>;
1236
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1237
+ routine: z.ZodOptional<z.ZodObject<{
1238
+ id: z.ZodString;
1239
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1240
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1241
+ id: z.ZodString;
1242
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1243
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1244
+ id: z.ZodString;
1245
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1246
+ }, z.ZodTypeAny, "passthrough">>>;
1247
+ idempotency_key: z.ZodOptional<z.ZodString>;
1248
+ dedup_key: z.ZodOptional<z.ZodString>;
1249
+ dedup_group_key: z.ZodOptional<z.ZodString>;
1250
+ externalLinks: z.ZodOptional<z.ZodArray<z.ZodObject<{
1251
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1252
+ id: z.ZodString;
1253
+ label: z.ZodOptional<z.ZodString>;
1254
+ ref: z.ZodOptional<z.ZodAny>;
1255
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1256
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1257
+ id: z.ZodString;
1258
+ label: z.ZodOptional<z.ZodString>;
1259
+ ref: z.ZodOptional<z.ZodAny>;
1260
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1261
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1262
+ id: z.ZodString;
1263
+ label: z.ZodOptional<z.ZodString>;
1264
+ ref: z.ZodOptional<z.ZodAny>;
1265
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
1266
+ }, z.ZodTypeAny, "passthrough">>, z.objectOutputType<{
1267
+ kind: z.ZodLiteral<"notification.send">;
1268
+ classification: z.ZodOptional<z.ZodString>;
1269
+ importance: z.ZodOptional<z.ZodNumber>;
1270
+ recipient: z.ZodObject<{
1271
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1272
+ id: z.ZodOptional<z.ZodString>;
1273
+ ref: z.ZodOptional<z.ZodAny>;
1274
+ address: z.ZodOptional<z.ZodString>;
1275
+ display_name: z.ZodOptional<z.ZodString>;
1276
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1277
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1278
+ id: z.ZodOptional<z.ZodString>;
1279
+ ref: z.ZodOptional<z.ZodAny>;
1280
+ address: z.ZodOptional<z.ZodString>;
1281
+ display_name: z.ZodOptional<z.ZodString>;
1282
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1283
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1284
+ id: z.ZodOptional<z.ZodString>;
1285
+ ref: z.ZodOptional<z.ZodAny>;
1286
+ address: z.ZodOptional<z.ZodString>;
1287
+ display_name: z.ZodOptional<z.ZodString>;
1288
+ }, z.ZodTypeAny, "passthrough">>;
1289
+ channel: z.ZodObject<{
1290
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1291
+ channel_id: z.ZodString;
1292
+ sender_id: z.ZodOptional<z.ZodString>;
1293
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1294
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1295
+ channel_id: z.ZodString;
1296
+ sender_id: z.ZodOptional<z.ZodString>;
1297
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1298
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1299
+ channel_id: z.ZodString;
1300
+ sender_id: z.ZodOptional<z.ZodString>;
1301
+ }, z.ZodTypeAny, "passthrough">>;
1302
+ template: z.ZodOptional<z.ZodObject<{
1303
+ template_id: z.ZodString;
1304
+ locale: z.ZodOptional<z.ZodString>;
1305
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1306
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1307
+ template_id: z.ZodString;
1308
+ locale: z.ZodOptional<z.ZodString>;
1309
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1310
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1311
+ template_id: z.ZodString;
1312
+ locale: z.ZodOptional<z.ZodString>;
1313
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1314
+ }, z.ZodTypeAny, "passthrough">>>;
1315
+ body_text: z.ZodOptional<z.ZodString>;
1316
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1317
+ routine: z.ZodOptional<z.ZodObject<{
1318
+ id: z.ZodString;
1319
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1320
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1321
+ id: z.ZodString;
1322
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1323
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1324
+ id: z.ZodString;
1325
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1326
+ }, z.ZodTypeAny, "passthrough">>>;
1327
+ idempotency_key: z.ZodOptional<z.ZodString>;
1328
+ dedup_key: z.ZodOptional<z.ZodString>;
1329
+ dedup_group_key: z.ZodOptional<z.ZodString>;
1330
+ externalLinks: z.ZodOptional<z.ZodArray<z.ZodObject<{
1331
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1332
+ id: z.ZodString;
1333
+ label: z.ZodOptional<z.ZodString>;
1334
+ ref: z.ZodOptional<z.ZodAny>;
1335
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1336
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1337
+ id: z.ZodString;
1338
+ label: z.ZodOptional<z.ZodString>;
1339
+ ref: z.ZodOptional<z.ZodAny>;
1340
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1341
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1342
+ id: z.ZodString;
1343
+ label: z.ZodOptional<z.ZodString>;
1344
+ ref: z.ZodOptional<z.ZodAny>;
1345
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
1346
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1347
+ kind: z.ZodLiteral<"notification.send">;
1348
+ classification: z.ZodOptional<z.ZodString>;
1349
+ importance: z.ZodOptional<z.ZodNumber>;
1350
+ recipient: z.ZodObject<{
1351
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1352
+ id: z.ZodOptional<z.ZodString>;
1353
+ ref: z.ZodOptional<z.ZodAny>;
1354
+ address: z.ZodOptional<z.ZodString>;
1355
+ display_name: z.ZodOptional<z.ZodString>;
1356
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1357
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1358
+ id: z.ZodOptional<z.ZodString>;
1359
+ ref: z.ZodOptional<z.ZodAny>;
1360
+ address: z.ZodOptional<z.ZodString>;
1361
+ display_name: z.ZodOptional<z.ZodString>;
1362
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1363
+ kind: z.ZodEnum<["patient", "professional", "preconfigured", "raw"]>;
1364
+ id: z.ZodOptional<z.ZodString>;
1365
+ ref: z.ZodOptional<z.ZodAny>;
1366
+ address: z.ZodOptional<z.ZodString>;
1367
+ display_name: z.ZodOptional<z.ZodString>;
1368
+ }, z.ZodTypeAny, "passthrough">>;
1369
+ channel: z.ZodObject<{
1370
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1371
+ channel_id: z.ZodString;
1372
+ sender_id: z.ZodOptional<z.ZodString>;
1373
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1374
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1375
+ channel_id: z.ZodString;
1376
+ sender_id: z.ZodOptional<z.ZodString>;
1377
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1378
+ type: z.ZodEnum<["whatsapp", "email", "sms", "push"]>;
1379
+ channel_id: z.ZodString;
1380
+ sender_id: z.ZodOptional<z.ZodString>;
1381
+ }, z.ZodTypeAny, "passthrough">>;
1382
+ template: z.ZodOptional<z.ZodObject<{
1383
+ template_id: z.ZodString;
1384
+ locale: z.ZodOptional<z.ZodString>;
1385
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1386
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1387
+ template_id: z.ZodString;
1388
+ locale: z.ZodOptional<z.ZodString>;
1389
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1390
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1391
+ template_id: z.ZodString;
1392
+ locale: z.ZodOptional<z.ZodString>;
1393
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1394
+ }, z.ZodTypeAny, "passthrough">>>;
1395
+ body_text: z.ZodOptional<z.ZodString>;
1396
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1397
+ routine: z.ZodOptional<z.ZodObject<{
1398
+ id: z.ZodString;
1399
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1400
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1401
+ id: z.ZodString;
1402
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1403
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1404
+ id: z.ZodString;
1405
+ version: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
1406
+ }, z.ZodTypeAny, "passthrough">>>;
1407
+ idempotency_key: z.ZodOptional<z.ZodString>;
1408
+ dedup_key: z.ZodOptional<z.ZodString>;
1409
+ dedup_group_key: z.ZodOptional<z.ZodString>;
1410
+ externalLinks: z.ZodOptional<z.ZodArray<z.ZodObject<{
1411
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1412
+ id: z.ZodString;
1413
+ label: z.ZodOptional<z.ZodString>;
1414
+ ref: z.ZodOptional<z.ZodAny>;
1415
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1416
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1417
+ id: z.ZodString;
1418
+ label: z.ZodOptional<z.ZodString>;
1419
+ ref: z.ZodOptional<z.ZodAny>;
1420
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1421
+ type: z.ZodEnum<["crm_lead", "med_patient", "med_professional", "med_appointment", "chat_contact"]>;
1422
+ id: z.ZodString;
1423
+ label: z.ZodOptional<z.ZodString>;
1424
+ ref: z.ZodOptional<z.ZodAny>;
1425
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
1426
+ }, z.ZodTypeAny, "passthrough">>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.zDirectSendPayloadSchema = exports.zNotificationLogSchema = exports.zNotificationAttemptSchema = exports.zNotificationMessageSchema = exports.zNotificationErrorSchema = exports.zNotificationProviderMetaSchema = exports.zNotificationTemplateRefSchema = exports.zNotificationChannelRefSchema = exports.zNotificationRecipientSchema = exports.zNotificationLogLevelSchema = exports.zNotificationRecipientKindSchema = exports.zNotificationAttemptStatusSchema = exports.zNotificationMessageStatusSchema = exports.zNotificationChannelTypeSchema = void 0;
3
+ exports.zNexusDirectSendPayloadSchema = exports.zDirectSendPayloadSchema = exports.zNotificationLogSchema = exports.zNotificationAttemptSchema = exports.zNotificationMessageSchema = exports.zNotificationErrorSchema = exports.zNotificationProviderMetaSchema = exports.zNotificationTemplateRefSchema = exports.zNotificationChannelRefSchema = exports.zNotificationRecipientSchema = exports.zNotificationLogLevelSchema = exports.zNotificationRecipientKindSchema = exports.zNotificationAttemptStatusSchema = exports.zNotificationMessageStatusSchema = exports.zNotificationChannelTypeSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const zod_schemas_1 = require("../shared/zod-schemas");
6
6
  const zod_schemas_2 = require("../evo-task/zod-schemas");
@@ -159,19 +159,74 @@ exports.zDirectSendPayloadSchema = zod_1.z
159
159
  if (data.channel.type !== "whatsapp")
160
160
  return;
161
161
  const hasTemplate = Boolean(data.template?.template_id?.trim());
162
- const hasBody = Boolean(data.body_text?.trim());
163
- if (!hasTemplate && !hasBody) {
162
+ /** Texto de sessão sem HSM: campo dedicado ou `variables.text` (string) quando não há template. */
163
+ const variablesText = typeof data.variables?.text === "string" ? data.variables.text.trim() : "";
164
+ const hasExplicitBody = Boolean(data.body_text?.trim());
165
+ const hasSessionText = hasExplicitBody || (!hasTemplate && variablesText.length > 0);
166
+ if (hasTemplate) {
167
+ if (hasExplicitBody) {
168
+ ctx.addIssue({
169
+ code: zod_1.z.ZodIssueCode.custom,
170
+ message: "WhatsApp: com template (HSM), não envie body_text; use variables para os parâmetros do template.",
171
+ path: ["body_text"],
172
+ });
173
+ }
174
+ return;
175
+ }
176
+ if (!hasSessionText) {
164
177
  ctx.addIssue({
165
178
  code: zod_1.z.ZodIssueCode.custom,
166
- message: "WhatsApp: informe template.template_id (HSM) ou body_text (texto de sessão).",
179
+ message: "WhatsApp: informe template.template_id (HSM), ou body_text, ou variables.text (texto de sessão).",
167
180
  path: ["template"],
168
181
  });
169
182
  }
170
- if (hasTemplate && hasBody) {
183
+ });
184
+ // ---- Nexus direct send (no tenant required — Nexus scope) ----
185
+ exports.zNexusDirectSendPayloadSchema = zod_1.z
186
+ .object({
187
+ kind: zod_1.z.literal("notification.send"),
188
+ classification: zod_1.z.string().optional(),
189
+ importance: zod_1.z.number().min(0).max(100).optional(),
190
+ recipient: exports.zNotificationRecipientSchema,
191
+ channel: exports.zNotificationChannelRefSchema,
192
+ template: exports.zNotificationTemplateRefSchema.optional(),
193
+ body_text: zod_1.z.string().max(4096).optional(),
194
+ variables: zod_1.z.record(zod_1.z.unknown()).optional(),
195
+ routine: zod_1.z
196
+ .object({
197
+ id: zod_1.z.string(),
198
+ version: zod_1.z.union([zod_1.z.number(), zod_1.z.string()]).optional(),
199
+ })
200
+ .passthrough()
201
+ .optional(),
202
+ idempotency_key: zod_1.z.string().optional(),
203
+ dedup_key: zod_1.z.string().optional(),
204
+ dedup_group_key: zod_1.z.string().optional(),
205
+ externalLinks: zod_1.z.array(zod_schemas_2.zExternalLinkSchema).optional(),
206
+ })
207
+ .passthrough()
208
+ .superRefine((data, ctx) => {
209
+ if (data.channel.type !== "whatsapp")
210
+ return;
211
+ const hasTemplate = Boolean(data.template?.template_id?.trim());
212
+ const variablesText = typeof data.variables?.text === "string" ? data.variables.text.trim() : "";
213
+ const hasExplicitBody = Boolean(data.body_text?.trim());
214
+ const hasSessionText = hasExplicitBody || (!hasTemplate && variablesText.length > 0);
215
+ if (hasTemplate) {
216
+ if (hasExplicitBody) {
217
+ ctx.addIssue({
218
+ code: zod_1.z.ZodIssueCode.custom,
219
+ message: "WhatsApp: com template (HSM), não envie body_text; use variables para os parâmetros do template.",
220
+ path: ["body_text"],
221
+ });
222
+ }
223
+ return;
224
+ }
225
+ if (!hasSessionText) {
171
226
  ctx.addIssue({
172
227
  code: zod_1.z.ZodIssueCode.custom,
173
- message: "WhatsApp: use apenas template.template_id ou body_text, não ambos.",
174
- path: ["body_text"],
228
+ message: "WhatsApp: informe template.template_id (HSM), ou body_text, ou variables.text (texto de sessão).",
229
+ path: ["template"],
175
230
  });
176
231
  }
177
232
  });
@@ -173,21 +173,85 @@ export const zDirectSendPayloadSchema = z
173
173
  .superRefine((data, ctx) => {
174
174
  if (data.channel.type !== "whatsapp") return;
175
175
  const hasTemplate = Boolean(data.template?.template_id?.trim());
176
- const hasBody = Boolean(data.body_text?.trim());
177
- if (!hasTemplate && !hasBody) {
176
+ /** Texto de sessão sem HSM: campo dedicado ou `variables.text` (string) quando não há template. */
177
+ const variablesText =
178
+ typeof data.variables?.text === "string" ? data.variables.text.trim() : "";
179
+ const hasExplicitBody = Boolean(data.body_text?.trim());
180
+ const hasSessionText = hasExplicitBody || (!hasTemplate && variablesText.length > 0);
181
+
182
+ if (hasTemplate) {
183
+ if (hasExplicitBody) {
184
+ ctx.addIssue({
185
+ code: z.ZodIssueCode.custom,
186
+ message:
187
+ "WhatsApp: com template (HSM), não envie body_text; use variables para os parâmetros do template.",
188
+ path: ["body_text"],
189
+ });
190
+ }
191
+ return;
192
+ }
193
+
194
+ if (!hasSessionText) {
178
195
  ctx.addIssue({
179
196
  code: z.ZodIssueCode.custom,
180
197
  message:
181
- "WhatsApp: informe template.template_id (HSM) ou body_text (texto de sessão).",
198
+ "WhatsApp: informe template.template_id (HSM), ou body_text, ou variables.text (texto de sessão).",
182
199
  path: ["template"],
183
200
  });
184
201
  }
185
- if (hasTemplate && hasBody) {
202
+ });
203
+
204
+ // ---- Nexus direct send (no tenant required — Nexus scope) ----
205
+
206
+ export const zNexusDirectSendPayloadSchema = z
207
+ .object({
208
+ kind: z.literal("notification.send"),
209
+ classification: z.string().optional(),
210
+ importance: z.number().min(0).max(100).optional(),
211
+ recipient: zNotificationRecipientSchema,
212
+ channel: zNotificationChannelRefSchema,
213
+ template: zNotificationTemplateRefSchema.optional(),
214
+ body_text: z.string().max(4096).optional(),
215
+ variables: z.record(z.unknown()).optional(),
216
+ routine: z
217
+ .object({
218
+ id: z.string(),
219
+ version: z.union([z.number(), z.string()]).optional(),
220
+ })
221
+ .passthrough()
222
+ .optional(),
223
+ idempotency_key: z.string().optional(),
224
+ dedup_key: z.string().optional(),
225
+ dedup_group_key: z.string().optional(),
226
+ externalLinks: z.array(zExternalLinkSchema).optional(),
227
+ })
228
+ .passthrough()
229
+ .superRefine((data, ctx) => {
230
+ if (data.channel.type !== "whatsapp") return;
231
+ const hasTemplate = Boolean(data.template?.template_id?.trim());
232
+ const variablesText =
233
+ typeof data.variables?.text === "string" ? data.variables.text.trim() : "";
234
+ const hasExplicitBody = Boolean(data.body_text?.trim());
235
+ const hasSessionText = hasExplicitBody || (!hasTemplate && variablesText.length > 0);
236
+
237
+ if (hasTemplate) {
238
+ if (hasExplicitBody) {
239
+ ctx.addIssue({
240
+ code: z.ZodIssueCode.custom,
241
+ message:
242
+ "WhatsApp: com template (HSM), não envie body_text; use variables para os parâmetros do template.",
243
+ path: ["body_text"],
244
+ });
245
+ }
246
+ return;
247
+ }
248
+
249
+ if (!hasSessionText) {
186
250
  ctx.addIssue({
187
251
  code: z.ZodIssueCode.custom,
188
252
  message:
189
- "WhatsApp: use apenas template.template_id ou body_text, não ambos.",
190
- path: ["body_text"],
253
+ "WhatsApp: informe template.template_id (HSM), ou body_text, ou variables.text (texto de sessão).",
254
+ path: ["template"],
191
255
  });
192
256
  }
193
257
  });
package/dist/index.d.ts CHANGED
@@ -21,6 +21,7 @@ export * from "./types/evo-finops";
21
21
  export * from "./types/evo-notif-user";
22
22
  export * from "./types/evo-notifications";
23
23
  export * from "./types/evo-task-runner";
24
+ export * from "./types/nex-customers";
24
25
  export * from "./apps/shared/zod-schemas";
25
26
  export * from "./apps/evo-core/zod-schemas";
26
27
  export * from "./apps/evo-tenant/zod-schemas";
package/dist/index.js CHANGED
@@ -38,6 +38,7 @@ __exportStar(require("./types/evo-finops"), exports);
38
38
  __exportStar(require("./types/evo-notif-user"), exports);
39
39
  __exportStar(require("./types/evo-notifications"), exports);
40
40
  __exportStar(require("./types/evo-task-runner"), exports);
41
+ __exportStar(require("./types/nex-customers"), exports);
41
42
  // zod schemas
42
43
  __exportStar(require("./apps/shared/zod-schemas"), exports);
43
44
  __exportStar(require("./apps/evo-core/zod-schemas"), exports);
package/dist/index.ts CHANGED
@@ -22,6 +22,7 @@ export * from "./types/evo-finops";
22
22
  export * from "./types/evo-notif-user";
23
23
  export * from "./types/evo-notifications";
24
24
  export * from "./types/evo-task-runner";
25
+ export * from "./types/nex-customers";
25
26
 
26
27
  // zod schemas
27
28
  export * from "./apps/shared/zod-schemas";
@@ -218,3 +218,12 @@ export type NotificationProviderUpdatePatch = Partial<{
218
218
  display_name: string;
219
219
  description: string;
220
220
  }>;
221
+ export declare const NEX_NOTIFICATIONS_APP = "nex-notifications";
222
+ export declare const NexNotificationsCollections: {
223
+ readonly Messages: "messages";
224
+ readonly Attempts: "attempts";
225
+ readonly Logs: "logs";
226
+ readonly EmailChannels: "email_channels";
227
+ readonly EmailTemplates: "email_templates";
228
+ };
229
+ export type NexNotificationsCollectionName = (typeof NexNotificationsCollections)[keyof typeof NexNotificationsCollections];
@@ -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.NotificationRecipientKindEnum = exports.NotificationAttemptStatusEnum = exports.NotificationMessageStatusEnum = exports.NotificationChannelTypeEnum = exports.NotificationsTopics = exports.NotificationTaskKindEnum = exports.EvoNotificationsCollections = exports.EvoNotificationsPermissions = void 0;
17
+ exports.NexNotificationsCollections = exports.NEX_NOTIFICATIONS_APP = exports.NotificationRecipientKindEnum = exports.NotificationAttemptStatusEnum = exports.NotificationMessageStatusEnum = exports.NotificationChannelTypeEnum = exports.NotificationsTopics = exports.NotificationTaskKindEnum = exports.EvoNotificationsCollections = exports.EvoNotificationsPermissions = void 0;
18
18
  __exportStar(require("./fb_collections"), exports);
19
19
  // Permissões para as notificações
20
20
  exports.EvoNotificationsPermissions = {
@@ -89,3 +89,17 @@ exports.NotificationRecipientKindEnum = {
89
89
  Preconfigured: "preconfigured",
90
90
  Raw: "raw",
91
91
  };
92
+ // ======================================================
93
+ // nex-notifications (Nexus / backoffice scope)
94
+ //
95
+ // Same structure as evo-notifications but scoped to Nexus (no tenant).
96
+ // Firestore path: core/nexus/apps/nex-notifications/...
97
+ // ======================================================
98
+ exports.NEX_NOTIFICATIONS_APP = "nex-notifications";
99
+ exports.NexNotificationsCollections = {
100
+ Messages: "messages",
101
+ Attempts: "attempts",
102
+ Logs: "logs",
103
+ EmailChannels: "email_channels",
104
+ EmailTemplates: "email_templates",
105
+ };
@@ -368,3 +368,23 @@ export type NotificationProviderUpdatePatch = Partial<{
368
368
  display_name: string;
369
369
  description: string;
370
370
  }>;
371
+
372
+ // ======================================================
373
+ // nex-notifications (Nexus / backoffice scope)
374
+ //
375
+ // Same structure as evo-notifications but scoped to Nexus (no tenant).
376
+ // Firestore path: core/nexus/apps/nex-notifications/...
377
+ // ======================================================
378
+
379
+ export const NEX_NOTIFICATIONS_APP = "nex-notifications";
380
+
381
+ export const NexNotificationsCollections = {
382
+ Messages: "messages",
383
+ Attempts: "attempts",
384
+ Logs: "logs",
385
+ EmailChannels: "email_channels",
386
+ EmailTemplates: "email_templates",
387
+ } as const;
388
+
389
+ export type NexNotificationsCollectionName =
390
+ (typeof NexNotificationsCollections)[keyof typeof NexNotificationsCollections];
@@ -0,0 +1,33 @@
1
+ import type { IFireGlobalDoc } from '../shared';
2
+ export type NexCustomerDocumentType = 'cpf' | 'cnpj';
3
+ export type NexCustomerStatus = 'active' | 'inactive';
4
+ export interface INexCustomerTenantRef {
5
+ tenant: string;
6
+ display_name?: string | null;
7
+ }
8
+ export interface INexCustomerAddress {
9
+ zip?: string | null;
10
+ street?: string | null;
11
+ number?: string | null;
12
+ complement?: string | null;
13
+ district?: string | null;
14
+ city?: string | null;
15
+ state?: string | null;
16
+ }
17
+ export interface INexCustomerFiscalData {
18
+ municipal_registration?: string | null;
19
+ state_registration?: string | null;
20
+ }
21
+ export interface INexCustomer extends IFireGlobalDoc {
22
+ name: string;
23
+ trade_name?: string | null;
24
+ document_type: NexCustomerDocumentType;
25
+ document_number: string;
26
+ status: NexCustomerStatus;
27
+ tenant_refs: INexCustomerTenantRef[];
28
+ email?: string | null;
29
+ phone?: string | null;
30
+ address?: INexCustomerAddress | null;
31
+ fiscal_data?: INexCustomerFiscalData | null;
32
+ notes?: string | null;
33
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,57 @@
1
+ import type { IFireGlobalDoc } from '../shared';
2
+
3
+ // ── Enums / Literals ──
4
+
5
+ export type NexCustomerDocumentType = 'cpf' | 'cnpj';
6
+ export type NexCustomerStatus = 'active' | 'inactive';
7
+
8
+ // ── Sub-interfaces ──
9
+
10
+ export interface INexCustomerTenantRef {
11
+ tenant: string;
12
+ display_name?: string | null;
13
+ }
14
+
15
+ export interface INexCustomerAddress {
16
+ zip?: string | null;
17
+ street?: string | null;
18
+ number?: string | null;
19
+ complement?: string | null;
20
+ district?: string | null;
21
+ city?: string | null;
22
+ state?: string | null;
23
+ }
24
+
25
+ export interface INexCustomerFiscalData {
26
+ municipal_registration?: string | null;
27
+ state_registration?: string | null;
28
+ }
29
+
30
+ // ── Main Document ──
31
+
32
+ export interface INexCustomer extends IFireGlobalDoc {
33
+ // Identification
34
+ name: string;
35
+ trade_name?: string | null;
36
+ document_type: NexCustomerDocumentType;
37
+ document_number: string;
38
+
39
+ // Status
40
+ status: NexCustomerStatus;
41
+
42
+ // Linked tenants
43
+ tenant_refs: INexCustomerTenantRef[];
44
+
45
+ // Contact
46
+ email?: string | null;
47
+ phone?: string | null;
48
+
49
+ // Address
50
+ address?: INexCustomerAddress | null;
51
+
52
+ // Fiscal data (PJ)
53
+ fiscal_data?: INexCustomerFiscalData | null;
54
+
55
+ // Notes
56
+ notes?: string | null;
57
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "evo360-types",
3
- "version": "1.3.277",
3
+ "version": "1.3.283",
4
4
  "description": "HREVO360 Shared Types",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",