@blackcode_sa/metaestetics-api 1.4.2 → 1.4.3

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/dist/index.d.ts CHANGED
@@ -779,11 +779,99 @@ declare enum Currency {
779
779
  AUD = "AUD"
780
780
  }
781
781
 
782
+ /**
783
+ * Enum for practice types
784
+ */
785
+ declare enum PracticeType {
786
+ GENERAL_PRACTICE = "general_practice",
787
+ DENTAL = "dental",
788
+ DERMATOLOGY = "dermatology",
789
+ CARDIOLOGY = "cardiology",
790
+ ORTHOPEDICS = "orthopedics",
791
+ GYNECOLOGY = "gynecology",
792
+ PEDIATRICS = "pediatrics",
793
+ OPHTHALMOLOGY = "ophthalmology",
794
+ NEUROLOGY = "neurology",
795
+ PSYCHIATRY = "psychiatry",
796
+ UROLOGY = "urology",
797
+ ONCOLOGY = "oncology",
798
+ ENDOCRINOLOGY = "endocrinology",
799
+ GASTROENTEROLOGY = "gastroenterology",
800
+ PULMONOLOGY = "pulmonology",
801
+ RHEUMATOLOGY = "rheumatology",
802
+ PHYSICAL_THERAPY = "physical_therapy",
803
+ NUTRITION = "nutrition",
804
+ ALTERNATIVE_MEDICINE = "alternative_medicine",
805
+ OTHER = "other"
806
+ }
807
+ /**
808
+ * Enum for languages
809
+ */
810
+ declare enum Language {
811
+ ENGLISH = "english",
812
+ GERMAN = "german",
813
+ ITALIAN = "italian",
814
+ FRENCH = "french",
815
+ SPANISH = "spanish"
816
+ }
817
+ /**
818
+ * Enum for all possible clinic tags
819
+ */
820
+ declare enum ClinicTag {
821
+ PARKING = "parking",
822
+ WIFI = "wifi",
823
+ WHEELCHAIR_ACCESS = "wheelchair_access",
824
+ CAFE = "cafe",
825
+ PHARMACY = "pharmacy",
826
+ WAITING_ROOM = "waiting_room",
827
+ CARD_PAYMENT = "card_payment",
828
+ INSURANCE = "insurance",
829
+ CHILDREN_AREA = "children_area",
830
+ TV = "tv",
831
+ AIR_CONDITIONING = "air_conditioning",
832
+ WATER_DISPENSER = "water_dispenser",
833
+ VENDING_MACHINE = "vending_machine",
834
+ ELEVATOR = "elevator",
835
+ RAMP = "ramp",
836
+ HANDICAP_PARKING = "handicap_parking",
837
+ BRAILLE = "braille",
838
+ SIGN_LANGUAGE = "sign_language",
839
+ EMERGENCY_SERVICE = "emergency_service",
840
+ LAB = "lab",
841
+ XRAY = "xray",
842
+ ULTRASOUND = "ultrasound",
843
+ DENTAL = "dental",
844
+ PEDIATRIC = "pediatric",
845
+ GYNECOLOGY = "gynecology",
846
+ CARDIOLOGY = "cardiology",
847
+ DERMATOLOGY = "dermatology",
848
+ ORTHOPEDIC = "orthopedic",
849
+ OPHTHALMOLOGY = "ophthalmology",
850
+ TELEMEDICINE = "telemedicine",
851
+ HOME_VISITS = "home_visits",
852
+ ONLINE_BOOKING = "online_booking",
853
+ MOBILE_APP = "mobile_app",
854
+ SMS_NOTIFICATIONS = "sms_notifications",
855
+ EMAIL_NOTIFICATIONS = "email_notifications",
856
+ ENGLISH = "english",
857
+ SERBIAN = "serbian",
858
+ GERMAN = "german",
859
+ RUSSIAN = "russian",
860
+ CHINESE = "chinese",
861
+ SPANISH = "spanish",
862
+ FRENCH = "french",
863
+ OPEN_24_7 = "open_24_7",
864
+ WEEKEND_HOURS = "weekend_hours",
865
+ NIGHT_SHIFT = "night_shift",
866
+ HOLIDAY_HOURS = "holiday_hours"
867
+ }
868
+
782
869
  declare const CLINIC_GROUPS_COLLECTION = "clinic_groups";
783
870
  declare const CLINIC_ADMINS_COLLECTION = "clinic_admins";
784
871
  declare const CLINICS_COLLECTION = "clinics";
872
+
785
873
  /**
786
- * Interfejs za kontakt informacije
874
+ * Interface for clinic contact information
787
875
  */
788
876
  interface ClinicContactInfo {
789
877
  email: string;
@@ -792,7 +880,7 @@ interface ClinicContactInfo {
792
880
  website?: string;
793
881
  }
794
882
  /**
795
- * Interfejs za fizičku lokaciju
883
+ * Interface for clinic location
796
884
  */
797
885
  interface ClinicLocation {
798
886
  address: string;
@@ -804,40 +892,68 @@ interface ClinicLocation {
804
892
  geohash?: string;
805
893
  }
806
894
  /**
807
- * Interfejs za radno vreme
895
+ * Interface for working hours
808
896
  */
809
897
  interface WorkingHours {
810
898
  monday: {
811
899
  open: string;
812
900
  close: string;
901
+ breaks?: {
902
+ start: string;
903
+ end: string;
904
+ }[];
813
905
  } | null;
814
906
  tuesday: {
815
907
  open: string;
816
908
  close: string;
909
+ breaks?: {
910
+ start: string;
911
+ end: string;
912
+ }[];
817
913
  } | null;
818
914
  wednesday: {
819
915
  open: string;
820
916
  close: string;
917
+ breaks?: {
918
+ start: string;
919
+ end: string;
920
+ }[];
821
921
  } | null;
822
922
  thursday: {
823
923
  open: string;
824
924
  close: string;
925
+ breaks?: {
926
+ start: string;
927
+ end: string;
928
+ }[];
825
929
  } | null;
826
930
  friday: {
827
931
  open: string;
828
932
  close: string;
933
+ breaks?: {
934
+ start: string;
935
+ end: string;
936
+ }[];
829
937
  } | null;
830
938
  saturday: {
831
939
  open: string;
832
940
  close: string;
941
+ breaks?: {
942
+ start: string;
943
+ end: string;
944
+ }[];
833
945
  } | null;
834
946
  sunday: {
835
947
  open: string;
836
948
  close: string;
949
+ breaks?: {
950
+ start: string;
951
+ end: string;
952
+ }[];
837
953
  } | null;
838
954
  }
839
955
  /**
840
- * Interfejs za kontakt osobu
956
+ * Interface for contact person
841
957
  */
842
958
  interface ContactPerson {
843
959
  firstName: string;
@@ -846,6 +962,9 @@ interface ContactPerson {
846
962
  email: string;
847
963
  phoneNumber: string;
848
964
  }
965
+ /**
966
+ * Interface for clinic information
967
+ */
849
968
  interface ClinicInfo {
850
969
  id: string;
851
970
  featuredPhoto: string;
@@ -855,7 +974,7 @@ interface ClinicInfo {
855
974
  contactInfo: ClinicContactInfo;
856
975
  }
857
976
  /**
858
- * Interfejs za administratora klinike
977
+ * Interface for clinic admin
859
978
  */
860
979
  interface ClinicAdmin {
861
980
  id: string;
@@ -871,7 +990,7 @@ interface ClinicAdmin {
871
990
  isActive: boolean;
872
991
  }
873
992
  /**
874
- * Tip za kreiranje novog Clinic Admin profila
993
+ * Interface for creating a clinic admin
875
994
  */
876
995
  interface CreateClinicAdminData {
877
996
  userRef: string;
@@ -884,17 +1003,23 @@ interface CreateClinicAdminData {
884
1003
  isActive: boolean;
885
1004
  }
886
1005
  /**
887
- * Tip za ažuriranje Clinic Admin profila
1006
+ * Interface for updating a clinic admin
888
1007
  */
889
1008
  interface UpdateClinicAdminData extends Partial<CreateClinicAdminData> {
890
1009
  updatedAt?: FieldValue;
891
1010
  clinicsManagedInfo?: ClinicInfo[];
892
1011
  }
1012
+ /**
1013
+ * Enum for admin token status
1014
+ */
893
1015
  declare enum AdminTokenStatus {
894
1016
  ACTIVE = "active",
895
1017
  USED = "used",
896
1018
  EXPIRED = "expired"
897
1019
  }
1020
+ /**
1021
+ * Interface for admin token
1022
+ */
898
1023
  interface AdminToken {
899
1024
  id: string;
900
1025
  token: string;
@@ -903,13 +1028,25 @@ interface AdminToken {
903
1028
  createdAt: Timestamp;
904
1029
  expiresAt: Timestamp;
905
1030
  }
1031
+ /**
1032
+ * Interface for admin information
1033
+ */
906
1034
  interface AdminInfo {
907
1035
  id: string;
908
1036
  name: string;
909
1037
  email: string;
910
1038
  }
911
1039
  /**
912
- * Interfejs za grupaciju klinika
1040
+ * Enum for subscription models
1041
+ */
1042
+ declare enum SubscriptionModel {
1043
+ NO_SUBSCRIPTION = "no_subscription",
1044
+ BASIC = "basic",
1045
+ PREMIUM = "premium",
1046
+ ENTERPRISE = "enterprise"
1047
+ }
1048
+ /**
1049
+ * Interface for clinic group
913
1050
  */
914
1051
  interface ClinicGroup {
915
1052
  id: string;
@@ -927,9 +1064,15 @@ interface ClinicGroup {
927
1064
  createdAt: Timestamp;
928
1065
  updatedAt: Timestamp;
929
1066
  isActive: boolean;
1067
+ logo?: string;
1068
+ practiceType?: PracticeType;
1069
+ languages?: Language[];
1070
+ subscriptionModel: SubscriptionModel;
1071
+ calendarSyncEnabled?: boolean;
1072
+ autoConfirmAppointments?: boolean;
930
1073
  }
931
1074
  /**
932
- * Tip za kreiranje nove Clinic Group
1075
+ * Interface for creating a clinic group
933
1076
  */
934
1077
  interface CreateClinicGroupData {
935
1078
  name: string;
@@ -939,19 +1082,28 @@ interface CreateClinicGroupData {
939
1082
  contactPerson: ContactPerson;
940
1083
  ownerId: string;
941
1084
  isActive: boolean;
1085
+ logo?: string;
1086
+ practiceType?: PracticeType;
1087
+ languages?: Language[];
1088
+ subscriptionModel?: SubscriptionModel;
1089
+ calendarSyncEnabled?: boolean;
1090
+ autoConfirmAppointments?: boolean;
942
1091
  }
943
1092
  /**
944
- * Tip za ažuriranje Clinic Group
1093
+ * Interface for updating a clinic group
945
1094
  */
946
1095
  interface UpdateClinicGroupData extends Partial<CreateClinicGroupData> {
947
1096
  updatedAt?: FieldValue;
948
1097
  }
949
1098
  /**
950
- * Tip za kreiranje admin tokena
1099
+ * Interface for creating an admin token
951
1100
  */
952
1101
  interface CreateAdminTokenData {
953
1102
  expiresInDays?: number;
954
1103
  }
1104
+ /**
1105
+ * Interface for doctor information
1106
+ */
955
1107
  interface DoctorInfo {
956
1108
  id: string;
957
1109
  name: string;
@@ -960,6 +1112,9 @@ interface DoctorInfo {
960
1112
  rating: number;
961
1113
  services: string[];
962
1114
  }
1115
+ /**
1116
+ * Interface for service information
1117
+ */
963
1118
  interface ServiceInfo {
964
1119
  id: string;
965
1120
  name: string;
@@ -977,6 +1132,9 @@ interface ServiceInfo {
977
1132
  duration: number;
978
1133
  treatmentBenefits: TreatmentBenefit[];
979
1134
  }
1135
+ /**
1136
+ * Interface for review information
1137
+ */
980
1138
  interface ReviewInfo {
981
1139
  id: string;
982
1140
  rating: number;
@@ -988,7 +1146,7 @@ interface ReviewInfo {
988
1146
  updatedAt: Timestamp;
989
1147
  }
990
1148
  /**
991
- * Interfejs za kliniku
1149
+ * Interface for clinic
992
1150
  */
993
1151
  interface Clinic {
994
1152
  id: string;
@@ -1001,6 +1159,10 @@ interface Clinic {
1001
1159
  tags: ClinicTag[];
1002
1160
  featuredPhotos: string[];
1003
1161
  photos: string[];
1162
+ photosWithTags?: {
1163
+ url: string;
1164
+ tag: string;
1165
+ }[];
1004
1166
  doctors: string[];
1005
1167
  doctorsInfo: DoctorInfo[];
1006
1168
  services: string[];
@@ -1016,9 +1178,10 @@ interface Clinic {
1016
1178
  updatedAt: Timestamp;
1017
1179
  isActive: boolean;
1018
1180
  isVerified: boolean;
1181
+ logo?: string;
1019
1182
  }
1020
1183
  /**
1021
- * Tip za kreiranje nove klinike
1184
+ * Interface for creating a clinic
1022
1185
  */
1023
1186
  interface CreateClinicData {
1024
1187
  clinicGroupId: string;
@@ -1029,77 +1192,81 @@ interface CreateClinicData {
1029
1192
  workingHours: WorkingHours;
1030
1193
  tags: ClinicTag[];
1031
1194
  photos: string[];
1195
+ photosWithTags?: {
1196
+ url: string;
1197
+ tag: string;
1198
+ }[];
1032
1199
  doctors: string[];
1033
1200
  services: string[];
1034
1201
  admins: string[];
1035
1202
  isActive: boolean;
1036
1203
  isVerified: boolean;
1204
+ logo?: string;
1205
+ featuredPhotos?: string[];
1037
1206
  }
1038
1207
  /**
1039
- * Tip za ažuriranje klinike
1208
+ * Interface for updating a clinic
1040
1209
  */
1041
1210
  interface UpdateClinicData extends Partial<CreateClinicData> {
1042
1211
  updatedAt?: FieldValue;
1043
1212
  }
1044
1213
  /**
1045
- * Enum za sve moguće tagove klinike
1214
+ * Interface for clinic admin signup data
1046
1215
  */
1047
- declare enum ClinicTag {
1048
- PARKING = "parking",
1049
- WIFI = "wifi",
1050
- WHEELCHAIR_ACCESS = "wheelchair_access",
1051
- CAFE = "cafe",
1052
- PHARMACY = "pharmacy",
1053
- WAITING_ROOM = "waiting_room",
1054
- CARD_PAYMENT = "card_payment",
1055
- INSURANCE = "insurance",
1056
- CHILDREN_AREA = "children_area",
1057
- TV = "tv",
1058
- AIR_CONDITIONING = "air_conditioning",
1059
- WATER_DISPENSER = "water_dispenser",
1060
- VENDING_MACHINE = "vending_machine",
1061
- ELEVATOR = "elevator",
1062
- RAMP = "ramp",
1063
- HANDICAP_PARKING = "handicap_parking",
1064
- BRAILLE = "braille",
1065
- SIGN_LANGUAGE = "sign_language",
1066
- EMERGENCY_SERVICE = "emergency_service",
1067
- LAB = "lab",
1068
- XRAY = "xray",
1069
- ULTRASOUND = "ultrasound",
1070
- DENTAL = "dental",
1071
- PEDIATRIC = "pediatric",
1072
- GYNECOLOGY = "gynecology",
1073
- CARDIOLOGY = "cardiology",
1074
- DERMATOLOGY = "dermatology",
1075
- ORTHOPEDIC = "orthopedic",
1076
- OPHTHALMOLOGY = "ophthalmology",
1077
- TELEMEDICINE = "telemedicine",
1078
- HOME_VISITS = "home_visits",
1079
- ONLINE_BOOKING = "online_booking",
1080
- MOBILE_APP = "mobile_app",
1081
- SMS_NOTIFICATIONS = "sms_notifications",
1082
- EMAIL_NOTIFICATIONS = "email_notifications",
1083
- ENGLISH = "english",
1084
- SERBIAN = "serbian",
1085
- GERMAN = "german",
1086
- RUSSIAN = "russian",
1087
- CHINESE = "chinese",
1088
- SPANISH = "spanish",
1089
- FRENCH = "french",
1090
- OPEN_24_7 = "open_24_7",
1091
- WEEKEND_HOURS = "weekend_hours",
1092
- NIGHT_SHIFT = "night_shift",
1093
- HOLIDAY_HOURS = "holiday_hours"
1216
+ interface ClinicAdminSignupData {
1217
+ email: string;
1218
+ password: string;
1219
+ firstName: string;
1220
+ lastName: string;
1221
+ title: string;
1222
+ phoneNumber: string;
1223
+ isCreatingNewGroup: boolean;
1224
+ inviteToken?: string;
1225
+ clinicGroupData?: {
1226
+ name: string;
1227
+ hqLocation: ClinicLocation;
1228
+ logo?: string;
1229
+ contactInfo: ClinicContactInfo;
1230
+ subscriptionModel?: SubscriptionModel;
1231
+ };
1232
+ }
1233
+ /**
1234
+ * Interface for clinic group setup data
1235
+ */
1236
+ interface ClinicGroupSetupData {
1237
+ languages: Language[];
1238
+ practiceType: PracticeType;
1239
+ description: string;
1240
+ logo: string;
1241
+ calendarSyncEnabled: boolean;
1242
+ autoConfirmAppointments: boolean;
1094
1243
  }
1095
1244
  /**
1096
- * Interfejs za tagove klinike
1245
+ * Interface for clinic branch setup data
1246
+ */
1247
+ interface ClinicBranchSetupData {
1248
+ name: string;
1249
+ location: ClinicLocation;
1250
+ description?: string;
1251
+ contactInfo: ClinicContactInfo;
1252
+ workingHours: WorkingHours;
1253
+ tags: ClinicTag[];
1254
+ logo?: string;
1255
+ photos: string[];
1256
+ photosWithTags?: {
1257
+ url: string;
1258
+ tag: string;
1259
+ }[];
1260
+ featuredPhotos?: string[];
1261
+ }
1262
+ /**
1263
+ * Interface for clinic tags
1097
1264
  */
1098
1265
  interface ClinicTags {
1099
1266
  tags: ClinicTag[];
1100
1267
  }
1101
1268
  /**
1102
- * Interfejs za recenziju klinike
1269
+ * Interface for clinic review
1103
1270
  */
1104
1271
  interface ClinicReview {
1105
1272
  id: string;
@@ -1143,6 +1310,14 @@ declare class ClinicGroupService extends BaseService {
1143
1310
  * Deaktivira grupaciju klinika
1144
1311
  */
1145
1312
  deactivateClinicGroup(groupId: string): Promise<void>;
1313
+ /**
1314
+ * Sets up additional clinic group information after initial creation
1315
+ *
1316
+ * @param groupId - The ID of the clinic group to set up
1317
+ * @param setupData - The setup data for the clinic group
1318
+ * @returns The updated clinic group
1319
+ */
1320
+ setupClinicGroup(groupId: string, setupData: ClinicGroupSetupData): Promise<ClinicGroup>;
1146
1321
  /**
1147
1322
  * Kreira admin token za grupaciju
1148
1323
  */
@@ -1222,6 +1397,15 @@ declare class ClinicService extends BaseService {
1222
1397
  * Dohvata sve aktivne klinike gde je korisnik admin
1223
1398
  */
1224
1399
  getActiveClinicsByAdmin(adminId: string): Promise<Clinic[]>;
1400
+ /**
1401
+ * Creates a new clinic branch for a clinic group
1402
+ *
1403
+ * @param clinicGroupId - The ID of the clinic group
1404
+ * @param setupData - The setup data for the clinic branch
1405
+ * @param adminId - The ID of the admin creating the branch
1406
+ * @returns The created clinic
1407
+ */
1408
+ createClinicBranch(clinicGroupId: string, setupData: ClinicBranchSetupData, adminId: string): Promise<Clinic>;
1225
1409
  }
1226
1410
 
1227
1411
  declare class ClinicAdminService extends BaseService {
@@ -1563,6 +1747,14 @@ declare class AuthService extends BaseService {
1563
1747
  * Registruje novog korisnika sa email-om i lozinkom
1564
1748
  */
1565
1749
  signUp(email: string, password: string, initialRole?: UserRole): Promise<User>;
1750
+ /**
1751
+ * Registers a new clinic admin user with email and password
1752
+ * Can either create a new clinic group or join an existing one with a token
1753
+ *
1754
+ * @param data - Clinic admin signup data
1755
+ * @returns The created user
1756
+ */
1757
+ signUpClinicAdmin(data: ClinicAdminSignupData): Promise<User>;
1566
1758
  /**
1567
1759
  * Prijavljuje korisnika sa email-om i lozinkom
1568
1760
  */
@@ -7074,18 +7266,18 @@ declare const createPractitionerSchema: z.ZodObject<{
7074
7266
  declare const clinicContactInfoSchema: z.ZodObject<{
7075
7267
  email: z.ZodString;
7076
7268
  phoneNumber: z.ZodString;
7077
- alternativePhoneNumber: z.ZodNullable<z.ZodString>;
7078
- website: z.ZodNullable<z.ZodString>;
7269
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7270
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7079
7271
  }, "strip", z.ZodTypeAny, {
7080
7272
  email: string;
7081
7273
  phoneNumber: string;
7082
- alternativePhoneNumber: string | null;
7083
- website: string | null;
7274
+ alternativePhoneNumber?: string | null | undefined;
7275
+ website?: string | null | undefined;
7084
7276
  }, {
7085
7277
  email: string;
7086
7278
  phoneNumber: string;
7087
- alternativePhoneNumber: string | null;
7088
- website: string | null;
7279
+ alternativePhoneNumber?: string | null | undefined;
7280
+ website?: string | null | undefined;
7089
7281
  }>;
7090
7282
  /**
7091
7283
  * Validaciona šema za fizičku lokaciju
@@ -7097,153 +7289,335 @@ declare const clinicLocationSchema: z.ZodObject<{
7097
7289
  postalCode: z.ZodString;
7098
7290
  latitude: z.ZodNumber;
7099
7291
  longitude: z.ZodNumber;
7100
- geohash: z.ZodNullable<z.ZodString>;
7292
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7101
7293
  }, "strip", z.ZodTypeAny, {
7102
7294
  latitude: number;
7103
7295
  longitude: number;
7104
- geohash: string | null;
7105
7296
  address: string;
7106
7297
  city: string;
7107
7298
  country: string;
7108
7299
  postalCode: string;
7300
+ geohash?: string | null | undefined;
7109
7301
  }, {
7110
7302
  latitude: number;
7111
7303
  longitude: number;
7112
- geohash: string | null;
7113
7304
  address: string;
7114
7305
  city: string;
7115
7306
  country: string;
7116
7307
  postalCode: string;
7308
+ geohash?: string | null | undefined;
7117
7309
  }>;
7118
7310
  declare const workingHoursSchema: z.ZodObject<{
7119
- monday: z.ZodObject<{
7311
+ monday: z.ZodNullable<z.ZodObject<{
7120
7312
  open: z.ZodString;
7121
7313
  close: z.ZodString;
7314
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
7315
+ start: z.ZodString;
7316
+ end: z.ZodString;
7317
+ }, "strip", z.ZodTypeAny, {
7318
+ start: string;
7319
+ end: string;
7320
+ }, {
7321
+ start: string;
7322
+ end: string;
7323
+ }>, "many">>;
7122
7324
  }, "strip", z.ZodTypeAny, {
7123
7325
  open: string;
7124
7326
  close: string;
7327
+ breaks?: {
7328
+ start: string;
7329
+ end: string;
7330
+ }[] | undefined;
7125
7331
  }, {
7126
7332
  open: string;
7127
7333
  close: string;
7128
- }>;
7129
- tuesday: z.ZodObject<{
7334
+ breaks?: {
7335
+ start: string;
7336
+ end: string;
7337
+ }[] | undefined;
7338
+ }>>;
7339
+ tuesday: z.ZodNullable<z.ZodObject<{
7130
7340
  open: z.ZodString;
7131
7341
  close: z.ZodString;
7342
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
7343
+ start: z.ZodString;
7344
+ end: z.ZodString;
7345
+ }, "strip", z.ZodTypeAny, {
7346
+ start: string;
7347
+ end: string;
7348
+ }, {
7349
+ start: string;
7350
+ end: string;
7351
+ }>, "many">>;
7132
7352
  }, "strip", z.ZodTypeAny, {
7133
7353
  open: string;
7134
7354
  close: string;
7355
+ breaks?: {
7356
+ start: string;
7357
+ end: string;
7358
+ }[] | undefined;
7135
7359
  }, {
7136
7360
  open: string;
7137
7361
  close: string;
7138
- }>;
7139
- wednesday: z.ZodObject<{
7362
+ breaks?: {
7363
+ start: string;
7364
+ end: string;
7365
+ }[] | undefined;
7366
+ }>>;
7367
+ wednesday: z.ZodNullable<z.ZodObject<{
7140
7368
  open: z.ZodString;
7141
7369
  close: z.ZodString;
7370
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
7371
+ start: z.ZodString;
7372
+ end: z.ZodString;
7373
+ }, "strip", z.ZodTypeAny, {
7374
+ start: string;
7375
+ end: string;
7376
+ }, {
7377
+ start: string;
7378
+ end: string;
7379
+ }>, "many">>;
7142
7380
  }, "strip", z.ZodTypeAny, {
7143
7381
  open: string;
7144
7382
  close: string;
7383
+ breaks?: {
7384
+ start: string;
7385
+ end: string;
7386
+ }[] | undefined;
7145
7387
  }, {
7146
7388
  open: string;
7147
7389
  close: string;
7148
- }>;
7149
- thursday: z.ZodObject<{
7390
+ breaks?: {
7391
+ start: string;
7392
+ end: string;
7393
+ }[] | undefined;
7394
+ }>>;
7395
+ thursday: z.ZodNullable<z.ZodObject<{
7150
7396
  open: z.ZodString;
7151
7397
  close: z.ZodString;
7398
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
7399
+ start: z.ZodString;
7400
+ end: z.ZodString;
7401
+ }, "strip", z.ZodTypeAny, {
7402
+ start: string;
7403
+ end: string;
7404
+ }, {
7405
+ start: string;
7406
+ end: string;
7407
+ }>, "many">>;
7152
7408
  }, "strip", z.ZodTypeAny, {
7153
7409
  open: string;
7154
7410
  close: string;
7411
+ breaks?: {
7412
+ start: string;
7413
+ end: string;
7414
+ }[] | undefined;
7155
7415
  }, {
7156
7416
  open: string;
7157
7417
  close: string;
7158
- }>;
7159
- friday: z.ZodObject<{
7418
+ breaks?: {
7419
+ start: string;
7420
+ end: string;
7421
+ }[] | undefined;
7422
+ }>>;
7423
+ friday: z.ZodNullable<z.ZodObject<{
7160
7424
  open: z.ZodString;
7161
7425
  close: z.ZodString;
7426
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
7427
+ start: z.ZodString;
7428
+ end: z.ZodString;
7429
+ }, "strip", z.ZodTypeAny, {
7430
+ start: string;
7431
+ end: string;
7432
+ }, {
7433
+ start: string;
7434
+ end: string;
7435
+ }>, "many">>;
7162
7436
  }, "strip", z.ZodTypeAny, {
7163
7437
  open: string;
7164
7438
  close: string;
7439
+ breaks?: {
7440
+ start: string;
7441
+ end: string;
7442
+ }[] | undefined;
7165
7443
  }, {
7166
7444
  open: string;
7167
7445
  close: string;
7168
- }>;
7169
- saturday: z.ZodObject<{
7446
+ breaks?: {
7447
+ start: string;
7448
+ end: string;
7449
+ }[] | undefined;
7450
+ }>>;
7451
+ saturday: z.ZodNullable<z.ZodObject<{
7170
7452
  open: z.ZodString;
7171
7453
  close: z.ZodString;
7454
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
7455
+ start: z.ZodString;
7456
+ end: z.ZodString;
7457
+ }, "strip", z.ZodTypeAny, {
7458
+ start: string;
7459
+ end: string;
7460
+ }, {
7461
+ start: string;
7462
+ end: string;
7463
+ }>, "many">>;
7172
7464
  }, "strip", z.ZodTypeAny, {
7173
7465
  open: string;
7174
7466
  close: string;
7467
+ breaks?: {
7468
+ start: string;
7469
+ end: string;
7470
+ }[] | undefined;
7175
7471
  }, {
7176
7472
  open: string;
7177
7473
  close: string;
7178
- }>;
7179
- sunday: z.ZodObject<{
7474
+ breaks?: {
7475
+ start: string;
7476
+ end: string;
7477
+ }[] | undefined;
7478
+ }>>;
7479
+ sunday: z.ZodNullable<z.ZodObject<{
7180
7480
  open: z.ZodString;
7181
7481
  close: z.ZodString;
7482
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
7483
+ start: z.ZodString;
7484
+ end: z.ZodString;
7485
+ }, "strip", z.ZodTypeAny, {
7486
+ start: string;
7487
+ end: string;
7488
+ }, {
7489
+ start: string;
7490
+ end: string;
7491
+ }>, "many">>;
7182
7492
  }, "strip", z.ZodTypeAny, {
7183
7493
  open: string;
7184
7494
  close: string;
7495
+ breaks?: {
7496
+ start: string;
7497
+ end: string;
7498
+ }[] | undefined;
7185
7499
  }, {
7186
7500
  open: string;
7187
7501
  close: string;
7188
- }>;
7502
+ breaks?: {
7503
+ start: string;
7504
+ end: string;
7505
+ }[] | undefined;
7506
+ }>>;
7189
7507
  }, "strip", z.ZodTypeAny, {
7190
7508
  monday: {
7191
7509
  open: string;
7192
7510
  close: string;
7193
- };
7511
+ breaks?: {
7512
+ start: string;
7513
+ end: string;
7514
+ }[] | undefined;
7515
+ } | null;
7194
7516
  tuesday: {
7195
7517
  open: string;
7196
7518
  close: string;
7197
- };
7519
+ breaks?: {
7520
+ start: string;
7521
+ end: string;
7522
+ }[] | undefined;
7523
+ } | null;
7198
7524
  wednesday: {
7199
7525
  open: string;
7200
7526
  close: string;
7201
- };
7527
+ breaks?: {
7528
+ start: string;
7529
+ end: string;
7530
+ }[] | undefined;
7531
+ } | null;
7202
7532
  thursday: {
7203
7533
  open: string;
7204
7534
  close: string;
7205
- };
7535
+ breaks?: {
7536
+ start: string;
7537
+ end: string;
7538
+ }[] | undefined;
7539
+ } | null;
7206
7540
  friday: {
7207
7541
  open: string;
7208
7542
  close: string;
7209
- };
7543
+ breaks?: {
7544
+ start: string;
7545
+ end: string;
7546
+ }[] | undefined;
7547
+ } | null;
7210
7548
  saturday: {
7211
7549
  open: string;
7212
7550
  close: string;
7213
- };
7551
+ breaks?: {
7552
+ start: string;
7553
+ end: string;
7554
+ }[] | undefined;
7555
+ } | null;
7214
7556
  sunday: {
7215
7557
  open: string;
7216
7558
  close: string;
7217
- };
7559
+ breaks?: {
7560
+ start: string;
7561
+ end: string;
7562
+ }[] | undefined;
7563
+ } | null;
7218
7564
  }, {
7219
7565
  monday: {
7220
7566
  open: string;
7221
7567
  close: string;
7222
- };
7568
+ breaks?: {
7569
+ start: string;
7570
+ end: string;
7571
+ }[] | undefined;
7572
+ } | null;
7223
7573
  tuesday: {
7224
7574
  open: string;
7225
7575
  close: string;
7226
- };
7576
+ breaks?: {
7577
+ start: string;
7578
+ end: string;
7579
+ }[] | undefined;
7580
+ } | null;
7227
7581
  wednesday: {
7228
7582
  open: string;
7229
7583
  close: string;
7230
- };
7584
+ breaks?: {
7585
+ start: string;
7586
+ end: string;
7587
+ }[] | undefined;
7588
+ } | null;
7231
7589
  thursday: {
7232
7590
  open: string;
7233
7591
  close: string;
7234
- };
7592
+ breaks?: {
7593
+ start: string;
7594
+ end: string;
7595
+ }[] | undefined;
7596
+ } | null;
7235
7597
  friday: {
7236
7598
  open: string;
7237
7599
  close: string;
7238
- };
7600
+ breaks?: {
7601
+ start: string;
7602
+ end: string;
7603
+ }[] | undefined;
7604
+ } | null;
7239
7605
  saturday: {
7240
7606
  open: string;
7241
7607
  close: string;
7242
- };
7608
+ breaks?: {
7609
+ start: string;
7610
+ end: string;
7611
+ }[] | undefined;
7612
+ } | null;
7243
7613
  sunday: {
7244
7614
  open: string;
7245
7615
  close: string;
7246
- };
7616
+ breaks?: {
7617
+ start: string;
7618
+ end: string;
7619
+ }[] | undefined;
7620
+ } | null;
7247
7621
  }>;
7248
7622
  /**
7249
7623
  * Validaciona šema za tagove klinike
@@ -7300,7 +7674,7 @@ declare const clinicInfoSchema: z.ZodObject<{
7300
7674
  id: z.ZodString;
7301
7675
  featuredPhoto: z.ZodString;
7302
7676
  name: z.ZodString;
7303
- description: z.ZodNullable<z.ZodString>;
7677
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7304
7678
  location: z.ZodObject<{
7305
7679
  address: z.ZodString;
7306
7680
  city: z.ZodString;
@@ -7308,80 +7682,80 @@ declare const clinicInfoSchema: z.ZodObject<{
7308
7682
  postalCode: z.ZodString;
7309
7683
  latitude: z.ZodNumber;
7310
7684
  longitude: z.ZodNumber;
7311
- geohash: z.ZodNullable<z.ZodString>;
7685
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7312
7686
  }, "strip", z.ZodTypeAny, {
7313
7687
  latitude: number;
7314
7688
  longitude: number;
7315
- geohash: string | null;
7316
7689
  address: string;
7317
7690
  city: string;
7318
7691
  country: string;
7319
7692
  postalCode: string;
7693
+ geohash?: string | null | undefined;
7320
7694
  }, {
7321
7695
  latitude: number;
7322
7696
  longitude: number;
7323
- geohash: string | null;
7324
7697
  address: string;
7325
7698
  city: string;
7326
7699
  country: string;
7327
7700
  postalCode: string;
7701
+ geohash?: string | null | undefined;
7328
7702
  }>;
7329
7703
  contactInfo: z.ZodObject<{
7330
7704
  email: z.ZodString;
7331
7705
  phoneNumber: z.ZodString;
7332
- alternativePhoneNumber: z.ZodNullable<z.ZodString>;
7333
- website: z.ZodNullable<z.ZodString>;
7706
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7707
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7334
7708
  }, "strip", z.ZodTypeAny, {
7335
7709
  email: string;
7336
7710
  phoneNumber: string;
7337
- alternativePhoneNumber: string | null;
7338
- website: string | null;
7711
+ alternativePhoneNumber?: string | null | undefined;
7712
+ website?: string | null | undefined;
7339
7713
  }, {
7340
7714
  email: string;
7341
7715
  phoneNumber: string;
7342
- alternativePhoneNumber: string | null;
7343
- website: string | null;
7716
+ alternativePhoneNumber?: string | null | undefined;
7717
+ website?: string | null | undefined;
7344
7718
  }>;
7345
7719
  }, "strip", z.ZodTypeAny, {
7346
7720
  id: string;
7347
- description: string | null;
7348
7721
  name: string;
7349
7722
  contactInfo: {
7350
7723
  email: string;
7351
7724
  phoneNumber: string;
7352
- alternativePhoneNumber: string | null;
7353
- website: string | null;
7725
+ alternativePhoneNumber?: string | null | undefined;
7726
+ website?: string | null | undefined;
7354
7727
  };
7355
7728
  location: {
7356
7729
  latitude: number;
7357
7730
  longitude: number;
7358
- geohash: string | null;
7359
7731
  address: string;
7360
7732
  city: string;
7361
7733
  country: string;
7362
7734
  postalCode: string;
7735
+ geohash?: string | null | undefined;
7363
7736
  };
7364
7737
  featuredPhoto: string;
7738
+ description?: string | null | undefined;
7365
7739
  }, {
7366
7740
  id: string;
7367
- description: string | null;
7368
7741
  name: string;
7369
7742
  contactInfo: {
7370
7743
  email: string;
7371
7744
  phoneNumber: string;
7372
- alternativePhoneNumber: string | null;
7373
- website: string | null;
7745
+ alternativePhoneNumber?: string | null | undefined;
7746
+ website?: string | null | undefined;
7374
7747
  };
7375
7748
  location: {
7376
7749
  latitude: number;
7377
7750
  longitude: number;
7378
- geohash: string | null;
7379
7751
  address: string;
7380
7752
  city: string;
7381
7753
  country: string;
7382
7754
  postalCode: string;
7755
+ geohash?: string | null | undefined;
7383
7756
  };
7384
7757
  featuredPhoto: string;
7758
+ description?: string | null | undefined;
7385
7759
  }>;
7386
7760
  /**
7387
7761
  * Validaciona šema za informacije o doktoru
@@ -7389,24 +7763,24 @@ declare const clinicInfoSchema: z.ZodObject<{
7389
7763
  declare const doctorInfoSchema: z.ZodObject<{
7390
7764
  id: z.ZodString;
7391
7765
  name: z.ZodString;
7392
- description: z.ZodNullable<z.ZodString>;
7766
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7393
7767
  photo: z.ZodString;
7394
7768
  rating: z.ZodNumber;
7395
7769
  services: z.ZodArray<z.ZodString, "many">;
7396
7770
  }, "strip", z.ZodTypeAny, {
7397
7771
  id: string;
7398
- description: string | null;
7399
7772
  name: string;
7400
7773
  services: string[];
7401
7774
  photo: string;
7402
7775
  rating: number;
7776
+ description?: string | null | undefined;
7403
7777
  }, {
7404
7778
  id: string;
7405
- description: string | null;
7406
7779
  name: string;
7407
7780
  services: string[];
7408
7781
  photo: string;
7409
7782
  rating: number;
7783
+ description?: string | null | undefined;
7410
7784
  }>;
7411
7785
  /**
7412
7786
  * Validaciona šema za informacije o usluzi
@@ -7414,7 +7788,7 @@ declare const doctorInfoSchema: z.ZodObject<{
7414
7788
  declare const serviceInfoSchema: z.ZodObject<{
7415
7789
  id: z.ZodString;
7416
7790
  name: z.ZodString;
7417
- description: z.ZodNullable<z.ZodString>;
7791
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7418
7792
  photo: z.ZodString;
7419
7793
  procedureFamily: z.ZodNativeEnum<typeof ProcedureFamily>;
7420
7794
  category: z.ZodString;
@@ -7430,7 +7804,6 @@ declare const serviceInfoSchema: z.ZodObject<{
7430
7804
  }, "strip", z.ZodTypeAny, {
7431
7805
  id: string;
7432
7806
  duration: number;
7433
- description: string | null;
7434
7807
  name: string;
7435
7808
  doctors: string[];
7436
7809
  photo: string;
@@ -7443,10 +7816,10 @@ declare const serviceInfoSchema: z.ZodObject<{
7443
7816
  pricingMeasure: PricingMeasure;
7444
7817
  currency: Currency;
7445
7818
  treatmentBenefits: TreatmentBenefit[];
7819
+ description?: string | null | undefined;
7446
7820
  }, {
7447
7821
  id: string;
7448
7822
  duration: number;
7449
- description: string | null;
7450
7823
  name: string;
7451
7824
  doctors: string[];
7452
7825
  photo: string;
@@ -7459,6 +7832,7 @@ declare const serviceInfoSchema: z.ZodObject<{
7459
7832
  pricingMeasure: PricingMeasure;
7460
7833
  currency: Currency;
7461
7834
  treatmentBenefits: TreatmentBenefit[];
7835
+ description?: string | null | undefined;
7462
7836
  }>;
7463
7837
  /**
7464
7838
  * Validaciona šema za informacije o recenziji
@@ -7470,13 +7844,13 @@ declare const reviewInfoSchema: z.ZodObject<{
7470
7844
  patientId: z.ZodString;
7471
7845
  patientName: z.ZodString;
7472
7846
  patientPhoto: z.ZodString;
7473
- createdAt: z.ZodDate;
7474
- updatedAt: z.ZodDate;
7847
+ createdAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
7848
+ updatedAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
7475
7849
  }, "strip", z.ZodTypeAny, {
7476
7850
  id: string;
7477
7851
  text: string;
7478
- createdAt: Date;
7479
- updatedAt: Date;
7852
+ createdAt: Timestamp | Date;
7853
+ updatedAt: Timestamp | Date;
7480
7854
  patientId: string;
7481
7855
  rating: number;
7482
7856
  patientName: string;
@@ -7484,8 +7858,8 @@ declare const reviewInfoSchema: z.ZodObject<{
7484
7858
  }, {
7485
7859
  id: string;
7486
7860
  text: string;
7487
- createdAt: Date;
7488
- updatedAt: Date;
7861
+ createdAt: Timestamp | Date;
7862
+ updatedAt: Timestamp | Date;
7489
7863
  patientId: string;
7490
7864
  rating: number;
7491
7865
  patientName: string;
@@ -7504,7 +7878,7 @@ declare const clinicAdminSchema: z.ZodObject<{
7504
7878
  id: z.ZodString;
7505
7879
  featuredPhoto: z.ZodString;
7506
7880
  name: z.ZodString;
7507
- description: z.ZodNullable<z.ZodString>;
7881
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7508
7882
  location: z.ZodObject<{
7509
7883
  address: z.ZodString;
7510
7884
  city: z.ZodString;
@@ -7512,80 +7886,80 @@ declare const clinicAdminSchema: z.ZodObject<{
7512
7886
  postalCode: z.ZodString;
7513
7887
  latitude: z.ZodNumber;
7514
7888
  longitude: z.ZodNumber;
7515
- geohash: z.ZodNullable<z.ZodString>;
7889
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7516
7890
  }, "strip", z.ZodTypeAny, {
7517
7891
  latitude: number;
7518
7892
  longitude: number;
7519
- geohash: string | null;
7520
7893
  address: string;
7521
7894
  city: string;
7522
7895
  country: string;
7523
7896
  postalCode: string;
7897
+ geohash?: string | null | undefined;
7524
7898
  }, {
7525
7899
  latitude: number;
7526
7900
  longitude: number;
7527
- geohash: string | null;
7528
7901
  address: string;
7529
7902
  city: string;
7530
7903
  country: string;
7531
7904
  postalCode: string;
7905
+ geohash?: string | null | undefined;
7532
7906
  }>;
7533
7907
  contactInfo: z.ZodObject<{
7534
7908
  email: z.ZodString;
7535
7909
  phoneNumber: z.ZodString;
7536
- alternativePhoneNumber: z.ZodNullable<z.ZodString>;
7537
- website: z.ZodNullable<z.ZodString>;
7910
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7911
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7538
7912
  }, "strip", z.ZodTypeAny, {
7539
7913
  email: string;
7540
7914
  phoneNumber: string;
7541
- alternativePhoneNumber: string | null;
7542
- website: string | null;
7915
+ alternativePhoneNumber?: string | null | undefined;
7916
+ website?: string | null | undefined;
7543
7917
  }, {
7544
7918
  email: string;
7545
7919
  phoneNumber: string;
7546
- alternativePhoneNumber: string | null;
7547
- website: string | null;
7920
+ alternativePhoneNumber?: string | null | undefined;
7921
+ website?: string | null | undefined;
7548
7922
  }>;
7549
7923
  }, "strip", z.ZodTypeAny, {
7550
7924
  id: string;
7551
- description: string | null;
7552
7925
  name: string;
7553
7926
  contactInfo: {
7554
7927
  email: string;
7555
7928
  phoneNumber: string;
7556
- alternativePhoneNumber: string | null;
7557
- website: string | null;
7929
+ alternativePhoneNumber?: string | null | undefined;
7930
+ website?: string | null | undefined;
7558
7931
  };
7559
7932
  location: {
7560
7933
  latitude: number;
7561
7934
  longitude: number;
7562
- geohash: string | null;
7563
7935
  address: string;
7564
7936
  city: string;
7565
7937
  country: string;
7566
7938
  postalCode: string;
7939
+ geohash?: string | null | undefined;
7567
7940
  };
7568
7941
  featuredPhoto: string;
7942
+ description?: string | null | undefined;
7569
7943
  }, {
7570
7944
  id: string;
7571
- description: string | null;
7572
7945
  name: string;
7573
7946
  contactInfo: {
7574
7947
  email: string;
7575
7948
  phoneNumber: string;
7576
- alternativePhoneNumber: string | null;
7577
- website: string | null;
7949
+ alternativePhoneNumber?: string | null | undefined;
7950
+ website?: string | null | undefined;
7578
7951
  };
7579
7952
  location: {
7580
7953
  latitude: number;
7581
7954
  longitude: number;
7582
- geohash: string | null;
7583
7955
  address: string;
7584
7956
  city: string;
7585
7957
  country: string;
7586
7958
  postalCode: string;
7959
+ geohash?: string | null | undefined;
7587
7960
  };
7588
7961
  featuredPhoto: string;
7962
+ description?: string | null | undefined;
7589
7963
  }>, "many">;
7590
7964
  contactInfo: z.ZodObject<{
7591
7965
  firstName: z.ZodString;
@@ -7607,38 +7981,38 @@ declare const clinicAdminSchema: z.ZodObject<{
7607
7981
  phoneNumber: string;
7608
7982
  }>;
7609
7983
  roleTitle: z.ZodString;
7610
- createdAt: z.ZodDate;
7611
- updatedAt: z.ZodDate;
7984
+ createdAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
7985
+ updatedAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
7612
7986
  isActive: z.ZodBoolean;
7613
7987
  }, "strip", z.ZodTypeAny, {
7614
7988
  id: string;
7615
7989
  isActive: boolean;
7616
- createdAt: Date;
7617
- updatedAt: Date;
7990
+ createdAt: Timestamp | Date;
7991
+ updatedAt: Timestamp | Date;
7618
7992
  isGroupOwner: boolean;
7619
7993
  userRef: string;
7620
7994
  clinicGroupId: string;
7621
7995
  clinicsManaged: string[];
7622
7996
  clinicsManagedInfo: {
7623
7997
  id: string;
7624
- description: string | null;
7625
7998
  name: string;
7626
7999
  contactInfo: {
7627
8000
  email: string;
7628
8001
  phoneNumber: string;
7629
- alternativePhoneNumber: string | null;
7630
- website: string | null;
8002
+ alternativePhoneNumber?: string | null | undefined;
8003
+ website?: string | null | undefined;
7631
8004
  };
7632
8005
  location: {
7633
8006
  latitude: number;
7634
8007
  longitude: number;
7635
- geohash: string | null;
7636
8008
  address: string;
7637
8009
  city: string;
7638
8010
  country: string;
7639
8011
  postalCode: string;
8012
+ geohash?: string | null | undefined;
7640
8013
  };
7641
8014
  featuredPhoto: string;
8015
+ description?: string | null | undefined;
7642
8016
  }[];
7643
8017
  contactInfo: {
7644
8018
  email: string;
@@ -7651,32 +8025,32 @@ declare const clinicAdminSchema: z.ZodObject<{
7651
8025
  }, {
7652
8026
  id: string;
7653
8027
  isActive: boolean;
7654
- createdAt: Date;
7655
- updatedAt: Date;
8028
+ createdAt: Timestamp | Date;
8029
+ updatedAt: Timestamp | Date;
7656
8030
  isGroupOwner: boolean;
7657
8031
  userRef: string;
7658
8032
  clinicGroupId: string;
7659
8033
  clinicsManaged: string[];
7660
8034
  clinicsManagedInfo: {
7661
8035
  id: string;
7662
- description: string | null;
7663
8036
  name: string;
7664
8037
  contactInfo: {
7665
8038
  email: string;
7666
8039
  phoneNumber: string;
7667
- alternativePhoneNumber: string | null;
7668
- website: string | null;
8040
+ alternativePhoneNumber?: string | null | undefined;
8041
+ website?: string | null | undefined;
7669
8042
  };
7670
8043
  location: {
7671
8044
  latitude: number;
7672
8045
  longitude: number;
7673
- geohash: string | null;
7674
8046
  address: string;
7675
8047
  city: string;
7676
8048
  country: string;
7677
8049
  postalCode: string;
8050
+ geohash?: string | null | undefined;
7678
8051
  };
7679
8052
  featuredPhoto: string;
8053
+ description?: string | null | undefined;
7680
8054
  }[];
7681
8055
  contactInfo: {
7682
8056
  email: string;
@@ -7695,21 +8069,21 @@ declare const adminTokenSchema: z.ZodObject<{
7695
8069
  token: z.ZodString;
7696
8070
  status: z.ZodNativeEnum<typeof AdminTokenStatus>;
7697
8071
  usedByUserRef: z.ZodOptional<z.ZodString>;
7698
- createdAt: z.ZodDate;
7699
- expiresAt: z.ZodDate;
8072
+ createdAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
8073
+ expiresAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
7700
8074
  }, "strip", z.ZodTypeAny, {
7701
8075
  id: string;
7702
8076
  status: AdminTokenStatus;
7703
- createdAt: Date;
8077
+ createdAt: Timestamp | Date;
7704
8078
  token: string;
7705
- expiresAt: Date;
8079
+ expiresAt: Timestamp | Date;
7706
8080
  usedByUserRef?: string | undefined;
7707
8081
  }, {
7708
8082
  id: string;
7709
8083
  status: AdminTokenStatus;
7710
- createdAt: Date;
8084
+ createdAt: Timestamp | Date;
7711
8085
  token: string;
7712
- expiresAt: Date;
8086
+ expiresAt: Timestamp | Date;
7713
8087
  usedByUserRef?: string | undefined;
7714
8088
  }>;
7715
8089
  /**
@@ -7728,7 +8102,7 @@ declare const createAdminTokenSchema: z.ZodObject<{
7728
8102
  declare const clinicGroupSchema: z.ZodObject<{
7729
8103
  id: z.ZodString;
7730
8104
  name: z.ZodString;
7731
- description: z.ZodNullable<z.ZodString>;
8105
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7732
8106
  hqLocation: z.ZodObject<{
7733
8107
  address: z.ZodString;
7734
8108
  city: z.ZodString;
@@ -7736,39 +8110,39 @@ declare const clinicGroupSchema: z.ZodObject<{
7736
8110
  postalCode: z.ZodString;
7737
8111
  latitude: z.ZodNumber;
7738
8112
  longitude: z.ZodNumber;
7739
- geohash: z.ZodNullable<z.ZodString>;
8113
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7740
8114
  }, "strip", z.ZodTypeAny, {
7741
8115
  latitude: number;
7742
8116
  longitude: number;
7743
- geohash: string | null;
7744
8117
  address: string;
7745
8118
  city: string;
7746
8119
  country: string;
7747
8120
  postalCode: string;
8121
+ geohash?: string | null | undefined;
7748
8122
  }, {
7749
8123
  latitude: number;
7750
8124
  longitude: number;
7751
- geohash: string | null;
7752
8125
  address: string;
7753
8126
  city: string;
7754
8127
  country: string;
7755
8128
  postalCode: string;
8129
+ geohash?: string | null | undefined;
7756
8130
  }>;
7757
8131
  contactInfo: z.ZodObject<{
7758
8132
  email: z.ZodString;
7759
8133
  phoneNumber: z.ZodString;
7760
- alternativePhoneNumber: z.ZodNullable<z.ZodString>;
7761
- website: z.ZodNullable<z.ZodString>;
8134
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8135
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7762
8136
  }, "strip", z.ZodTypeAny, {
7763
8137
  email: string;
7764
8138
  phoneNumber: string;
7765
- alternativePhoneNumber: string | null;
7766
- website: string | null;
8139
+ alternativePhoneNumber?: string | null | undefined;
8140
+ website?: string | null | undefined;
7767
8141
  }, {
7768
8142
  email: string;
7769
8143
  phoneNumber: string;
7770
- alternativePhoneNumber: string | null;
7771
- website: string | null;
8144
+ alternativePhoneNumber?: string | null | undefined;
8145
+ website?: string | null | undefined;
7772
8146
  }>;
7773
8147
  contactPerson: z.ZodObject<{
7774
8148
  firstName: z.ZodString;
@@ -7794,7 +8168,7 @@ declare const clinicGroupSchema: z.ZodObject<{
7794
8168
  id: z.ZodString;
7795
8169
  featuredPhoto: z.ZodString;
7796
8170
  name: z.ZodString;
7797
- description: z.ZodNullable<z.ZodString>;
8171
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7798
8172
  location: z.ZodObject<{
7799
8173
  address: z.ZodString;
7800
8174
  city: z.ZodString;
@@ -7802,80 +8176,80 @@ declare const clinicGroupSchema: z.ZodObject<{
7802
8176
  postalCode: z.ZodString;
7803
8177
  latitude: z.ZodNumber;
7804
8178
  longitude: z.ZodNumber;
7805
- geohash: z.ZodNullable<z.ZodString>;
8179
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7806
8180
  }, "strip", z.ZodTypeAny, {
7807
8181
  latitude: number;
7808
8182
  longitude: number;
7809
- geohash: string | null;
7810
8183
  address: string;
7811
8184
  city: string;
7812
8185
  country: string;
7813
8186
  postalCode: string;
8187
+ geohash?: string | null | undefined;
7814
8188
  }, {
7815
8189
  latitude: number;
7816
8190
  longitude: number;
7817
- geohash: string | null;
7818
8191
  address: string;
7819
8192
  city: string;
7820
8193
  country: string;
7821
8194
  postalCode: string;
8195
+ geohash?: string | null | undefined;
7822
8196
  }>;
7823
8197
  contactInfo: z.ZodObject<{
7824
8198
  email: z.ZodString;
7825
8199
  phoneNumber: z.ZodString;
7826
- alternativePhoneNumber: z.ZodNullable<z.ZodString>;
7827
- website: z.ZodNullable<z.ZodString>;
8200
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8201
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
7828
8202
  }, "strip", z.ZodTypeAny, {
7829
8203
  email: string;
7830
8204
  phoneNumber: string;
7831
- alternativePhoneNumber: string | null;
7832
- website: string | null;
8205
+ alternativePhoneNumber?: string | null | undefined;
8206
+ website?: string | null | undefined;
7833
8207
  }, {
7834
8208
  email: string;
7835
8209
  phoneNumber: string;
7836
- alternativePhoneNumber: string | null;
7837
- website: string | null;
8210
+ alternativePhoneNumber?: string | null | undefined;
8211
+ website?: string | null | undefined;
7838
8212
  }>;
7839
8213
  }, "strip", z.ZodTypeAny, {
7840
8214
  id: string;
7841
- description: string | null;
7842
8215
  name: string;
7843
8216
  contactInfo: {
7844
8217
  email: string;
7845
8218
  phoneNumber: string;
7846
- alternativePhoneNumber: string | null;
7847
- website: string | null;
8219
+ alternativePhoneNumber?: string | null | undefined;
8220
+ website?: string | null | undefined;
7848
8221
  };
7849
8222
  location: {
7850
8223
  latitude: number;
7851
8224
  longitude: number;
7852
- geohash: string | null;
7853
8225
  address: string;
7854
8226
  city: string;
7855
8227
  country: string;
7856
8228
  postalCode: string;
8229
+ geohash?: string | null | undefined;
7857
8230
  };
7858
8231
  featuredPhoto: string;
8232
+ description?: string | null | undefined;
7859
8233
  }, {
7860
8234
  id: string;
7861
- description: string | null;
7862
8235
  name: string;
7863
8236
  contactInfo: {
7864
8237
  email: string;
7865
8238
  phoneNumber: string;
7866
- alternativePhoneNumber: string | null;
7867
- website: string | null;
8239
+ alternativePhoneNumber?: string | null | undefined;
8240
+ website?: string | null | undefined;
7868
8241
  };
7869
8242
  location: {
7870
8243
  latitude: number;
7871
8244
  longitude: number;
7872
- geohash: string | null;
7873
8245
  address: string;
7874
8246
  city: string;
7875
8247
  country: string;
7876
8248
  postalCode: string;
8249
+ geohash?: string | null | undefined;
7877
8250
  };
7878
8251
  featuredPhoto: string;
8252
+ description?: string | null | undefined;
7879
8253
  }>, "many">;
7880
8254
  admins: z.ZodArray<z.ZodString, "many">;
7881
8255
  adminsInfo: z.ZodArray<z.ZodObject<{
@@ -7896,49 +8270,54 @@ declare const clinicGroupSchema: z.ZodObject<{
7896
8270
  token: z.ZodString;
7897
8271
  status: z.ZodNativeEnum<typeof AdminTokenStatus>;
7898
8272
  usedByUserRef: z.ZodOptional<z.ZodString>;
7899
- createdAt: z.ZodDate;
7900
- expiresAt: z.ZodDate;
8273
+ createdAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
8274
+ expiresAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
7901
8275
  }, "strip", z.ZodTypeAny, {
7902
8276
  id: string;
7903
8277
  status: AdminTokenStatus;
7904
- createdAt: Date;
8278
+ createdAt: Timestamp | Date;
7905
8279
  token: string;
7906
- expiresAt: Date;
8280
+ expiresAt: Timestamp | Date;
7907
8281
  usedByUserRef?: string | undefined;
7908
8282
  }, {
7909
8283
  id: string;
7910
8284
  status: AdminTokenStatus;
7911
- createdAt: Date;
8285
+ createdAt: Timestamp | Date;
7912
8286
  token: string;
7913
- expiresAt: Date;
8287
+ expiresAt: Timestamp | Date;
7914
8288
  usedByUserRef?: string | undefined;
7915
8289
  }>, "many">;
7916
8290
  ownerId: z.ZodString;
7917
- createdAt: z.ZodDate;
7918
- updatedAt: z.ZodDate;
8291
+ createdAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
8292
+ updatedAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
7919
8293
  isActive: z.ZodBoolean;
8294
+ logo: z.ZodOptional<z.ZodString>;
8295
+ practiceType: z.ZodOptional<z.ZodNativeEnum<typeof PracticeType>>;
8296
+ languages: z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof Language>, "many">>;
8297
+ subscriptionModel: z.ZodNativeEnum<typeof SubscriptionModel>;
8298
+ calendarSyncEnabled: z.ZodOptional<z.ZodBoolean>;
8299
+ autoConfirmAppointments: z.ZodOptional<z.ZodBoolean>;
7920
8300
  }, "strip", z.ZodTypeAny, {
7921
8301
  id: string;
7922
- description: string | null;
7923
8302
  isActive: boolean;
7924
- createdAt: Date;
7925
- updatedAt: Date;
8303
+ createdAt: Timestamp | Date;
8304
+ updatedAt: Timestamp | Date;
7926
8305
  name: string;
7927
8306
  clinics: string[];
7928
8307
  contactInfo: {
7929
8308
  email: string;
7930
8309
  phoneNumber: string;
7931
- alternativePhoneNumber: string | null;
7932
- website: string | null;
8310
+ alternativePhoneNumber?: string | null | undefined;
8311
+ website?: string | null | undefined;
7933
8312
  };
7934
8313
  hqLocation: {
7935
8314
  latitude: number;
7936
8315
  longitude: number;
7937
- geohash: string | null;
7938
8316
  address: string;
7939
8317
  city: string;
7940
8318
  country: string;
7941
8319
  postalCode: string;
8320
+ geohash?: string | null | undefined;
7942
8321
  };
7943
8322
  contactPerson: {
7944
8323
  email: string;
@@ -7948,27 +8327,28 @@ declare const clinicGroupSchema: z.ZodObject<{
7948
8327
  phoneNumber: string;
7949
8328
  };
7950
8329
  ownerId: string;
8330
+ subscriptionModel: SubscriptionModel;
7951
8331
  admins: string[];
7952
8332
  clinicsInfo: {
7953
8333
  id: string;
7954
- description: string | null;
7955
8334
  name: string;
7956
8335
  contactInfo: {
7957
8336
  email: string;
7958
8337
  phoneNumber: string;
7959
- alternativePhoneNumber: string | null;
7960
- website: string | null;
8338
+ alternativePhoneNumber?: string | null | undefined;
8339
+ website?: string | null | undefined;
7961
8340
  };
7962
8341
  location: {
7963
8342
  latitude: number;
7964
8343
  longitude: number;
7965
- geohash: string | null;
7966
8344
  address: string;
7967
8345
  city: string;
7968
8346
  country: string;
7969
8347
  postalCode: string;
8348
+ geohash?: string | null | undefined;
7970
8349
  };
7971
8350
  featuredPhoto: string;
8351
+ description?: string | null | undefined;
7972
8352
  }[];
7973
8353
  adminsInfo: {
7974
8354
  id: string;
@@ -7978,33 +8358,38 @@ declare const clinicGroupSchema: z.ZodObject<{
7978
8358
  adminTokens: {
7979
8359
  id: string;
7980
8360
  status: AdminTokenStatus;
7981
- createdAt: Date;
8361
+ createdAt: Timestamp | Date;
7982
8362
  token: string;
7983
- expiresAt: Date;
8363
+ expiresAt: Timestamp | Date;
7984
8364
  usedByUserRef?: string | undefined;
7985
8365
  }[];
8366
+ description?: string | null | undefined;
8367
+ logo?: string | undefined;
8368
+ practiceType?: PracticeType | undefined;
8369
+ languages?: Language[] | undefined;
8370
+ calendarSyncEnabled?: boolean | undefined;
8371
+ autoConfirmAppointments?: boolean | undefined;
7986
8372
  }, {
7987
8373
  id: string;
7988
- description: string | null;
7989
8374
  isActive: boolean;
7990
- createdAt: Date;
7991
- updatedAt: Date;
8375
+ createdAt: Timestamp | Date;
8376
+ updatedAt: Timestamp | Date;
7992
8377
  name: string;
7993
8378
  clinics: string[];
7994
8379
  contactInfo: {
7995
8380
  email: string;
7996
8381
  phoneNumber: string;
7997
- alternativePhoneNumber: string | null;
7998
- website: string | null;
8382
+ alternativePhoneNumber?: string | null | undefined;
8383
+ website?: string | null | undefined;
7999
8384
  };
8000
8385
  hqLocation: {
8001
8386
  latitude: number;
8002
8387
  longitude: number;
8003
- geohash: string | null;
8004
8388
  address: string;
8005
8389
  city: string;
8006
8390
  country: string;
8007
8391
  postalCode: string;
8392
+ geohash?: string | null | undefined;
8008
8393
  };
8009
8394
  contactPerson: {
8010
8395
  email: string;
@@ -8014,27 +8399,28 @@ declare const clinicGroupSchema: z.ZodObject<{
8014
8399
  phoneNumber: string;
8015
8400
  };
8016
8401
  ownerId: string;
8402
+ subscriptionModel: SubscriptionModel;
8017
8403
  admins: string[];
8018
8404
  clinicsInfo: {
8019
8405
  id: string;
8020
- description: string | null;
8021
8406
  name: string;
8022
8407
  contactInfo: {
8023
8408
  email: string;
8024
8409
  phoneNumber: string;
8025
- alternativePhoneNumber: string | null;
8026
- website: string | null;
8410
+ alternativePhoneNumber?: string | null | undefined;
8411
+ website?: string | null | undefined;
8027
8412
  };
8028
8413
  location: {
8029
8414
  latitude: number;
8030
8415
  longitude: number;
8031
- geohash: string | null;
8032
8416
  address: string;
8033
8417
  city: string;
8034
8418
  country: string;
8035
8419
  postalCode: string;
8420
+ geohash?: string | null | undefined;
8036
8421
  };
8037
8422
  featuredPhoto: string;
8423
+ description?: string | null | undefined;
8038
8424
  }[];
8039
8425
  adminsInfo: {
8040
8426
  id: string;
@@ -8044,11 +8430,17 @@ declare const clinicGroupSchema: z.ZodObject<{
8044
8430
  adminTokens: {
8045
8431
  id: string;
8046
8432
  status: AdminTokenStatus;
8047
- createdAt: Date;
8433
+ createdAt: Timestamp | Date;
8048
8434
  token: string;
8049
- expiresAt: Date;
8435
+ expiresAt: Timestamp | Date;
8050
8436
  usedByUserRef?: string | undefined;
8051
8437
  }[];
8438
+ description?: string | null | undefined;
8439
+ logo?: string | undefined;
8440
+ practiceType?: PracticeType | undefined;
8441
+ languages?: Language[] | undefined;
8442
+ calendarSyncEnabled?: boolean | undefined;
8443
+ autoConfirmAppointments?: boolean | undefined;
8052
8444
  }>;
8053
8445
  /**
8054
8446
  * Validaciona šema za recenziju klinike
@@ -8059,13 +8451,13 @@ declare const clinicReviewSchema: z.ZodObject<{
8059
8451
  patientId: z.ZodString;
8060
8452
  rating: z.ZodNumber;
8061
8453
  comment: z.ZodString;
8062
- createdAt: z.ZodDate;
8063
- updatedAt: z.ZodDate;
8454
+ createdAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
8455
+ updatedAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
8064
8456
  isVerified: z.ZodBoolean;
8065
8457
  }, "strip", z.ZodTypeAny, {
8066
8458
  id: string;
8067
- createdAt: Date;
8068
- updatedAt: Date;
8459
+ createdAt: Timestamp | Date;
8460
+ updatedAt: Timestamp | Date;
8069
8461
  patientId: string;
8070
8462
  isVerified: boolean;
8071
8463
  clinicId: string;
@@ -8073,8 +8465,8 @@ declare const clinicReviewSchema: z.ZodObject<{
8073
8465
  comment: string;
8074
8466
  }, {
8075
8467
  id: string;
8076
- createdAt: Date;
8077
- updatedAt: Date;
8468
+ createdAt: Timestamp | Date;
8469
+ updatedAt: Timestamp | Date;
8078
8470
  patientId: string;
8079
8471
  isVerified: boolean;
8080
8472
  clinicId: string;
@@ -8088,7 +8480,7 @@ declare const clinicSchema: z.ZodObject<{
8088
8480
  id: z.ZodString;
8089
8481
  clinicGroupId: z.ZodString;
8090
8482
  name: z.ZodString;
8091
- description: z.ZodNullable<z.ZodString>;
8483
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8092
8484
  location: z.ZodObject<{
8093
8485
  address: z.ZodString;
8094
8486
  city: z.ZodString;
@@ -8096,201 +8488,393 @@ declare const clinicSchema: z.ZodObject<{
8096
8488
  postalCode: z.ZodString;
8097
8489
  latitude: z.ZodNumber;
8098
8490
  longitude: z.ZodNumber;
8099
- geohash: z.ZodNullable<z.ZodString>;
8491
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8100
8492
  }, "strip", z.ZodTypeAny, {
8101
8493
  latitude: number;
8102
8494
  longitude: number;
8103
- geohash: string | null;
8104
8495
  address: string;
8105
8496
  city: string;
8106
8497
  country: string;
8107
8498
  postalCode: string;
8499
+ geohash?: string | null | undefined;
8108
8500
  }, {
8109
8501
  latitude: number;
8110
8502
  longitude: number;
8111
- geohash: string | null;
8112
8503
  address: string;
8113
8504
  city: string;
8114
8505
  country: string;
8115
8506
  postalCode: string;
8507
+ geohash?: string | null | undefined;
8116
8508
  }>;
8117
8509
  contactInfo: z.ZodObject<{
8118
8510
  email: z.ZodString;
8119
8511
  phoneNumber: z.ZodString;
8120
- alternativePhoneNumber: z.ZodNullable<z.ZodString>;
8121
- website: z.ZodNullable<z.ZodString>;
8512
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8513
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8122
8514
  }, "strip", z.ZodTypeAny, {
8123
8515
  email: string;
8124
8516
  phoneNumber: string;
8125
- alternativePhoneNumber: string | null;
8126
- website: string | null;
8517
+ alternativePhoneNumber?: string | null | undefined;
8518
+ website?: string | null | undefined;
8127
8519
  }, {
8128
8520
  email: string;
8129
8521
  phoneNumber: string;
8130
- alternativePhoneNumber: string | null;
8131
- website: string | null;
8522
+ alternativePhoneNumber?: string | null | undefined;
8523
+ website?: string | null | undefined;
8132
8524
  }>;
8133
8525
  workingHours: z.ZodObject<{
8134
- monday: z.ZodObject<{
8526
+ monday: z.ZodNullable<z.ZodObject<{
8135
8527
  open: z.ZodString;
8136
8528
  close: z.ZodString;
8529
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
8530
+ start: z.ZodString;
8531
+ end: z.ZodString;
8532
+ }, "strip", z.ZodTypeAny, {
8533
+ start: string;
8534
+ end: string;
8535
+ }, {
8536
+ start: string;
8537
+ end: string;
8538
+ }>, "many">>;
8137
8539
  }, "strip", z.ZodTypeAny, {
8138
8540
  open: string;
8139
8541
  close: string;
8542
+ breaks?: {
8543
+ start: string;
8544
+ end: string;
8545
+ }[] | undefined;
8140
8546
  }, {
8141
8547
  open: string;
8142
8548
  close: string;
8143
- }>;
8144
- tuesday: z.ZodObject<{
8549
+ breaks?: {
8550
+ start: string;
8551
+ end: string;
8552
+ }[] | undefined;
8553
+ }>>;
8554
+ tuesday: z.ZodNullable<z.ZodObject<{
8145
8555
  open: z.ZodString;
8146
8556
  close: z.ZodString;
8557
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
8558
+ start: z.ZodString;
8559
+ end: z.ZodString;
8560
+ }, "strip", z.ZodTypeAny, {
8561
+ start: string;
8562
+ end: string;
8563
+ }, {
8564
+ start: string;
8565
+ end: string;
8566
+ }>, "many">>;
8147
8567
  }, "strip", z.ZodTypeAny, {
8148
8568
  open: string;
8149
8569
  close: string;
8570
+ breaks?: {
8571
+ start: string;
8572
+ end: string;
8573
+ }[] | undefined;
8150
8574
  }, {
8151
8575
  open: string;
8152
8576
  close: string;
8153
- }>;
8154
- wednesday: z.ZodObject<{
8577
+ breaks?: {
8578
+ start: string;
8579
+ end: string;
8580
+ }[] | undefined;
8581
+ }>>;
8582
+ wednesday: z.ZodNullable<z.ZodObject<{
8155
8583
  open: z.ZodString;
8156
8584
  close: z.ZodString;
8585
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
8586
+ start: z.ZodString;
8587
+ end: z.ZodString;
8588
+ }, "strip", z.ZodTypeAny, {
8589
+ start: string;
8590
+ end: string;
8591
+ }, {
8592
+ start: string;
8593
+ end: string;
8594
+ }>, "many">>;
8157
8595
  }, "strip", z.ZodTypeAny, {
8158
8596
  open: string;
8159
8597
  close: string;
8598
+ breaks?: {
8599
+ start: string;
8600
+ end: string;
8601
+ }[] | undefined;
8160
8602
  }, {
8161
8603
  open: string;
8162
8604
  close: string;
8163
- }>;
8164
- thursday: z.ZodObject<{
8605
+ breaks?: {
8606
+ start: string;
8607
+ end: string;
8608
+ }[] | undefined;
8609
+ }>>;
8610
+ thursday: z.ZodNullable<z.ZodObject<{
8165
8611
  open: z.ZodString;
8166
8612
  close: z.ZodString;
8613
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
8614
+ start: z.ZodString;
8615
+ end: z.ZodString;
8616
+ }, "strip", z.ZodTypeAny, {
8617
+ start: string;
8618
+ end: string;
8619
+ }, {
8620
+ start: string;
8621
+ end: string;
8622
+ }>, "many">>;
8167
8623
  }, "strip", z.ZodTypeAny, {
8168
8624
  open: string;
8169
8625
  close: string;
8626
+ breaks?: {
8627
+ start: string;
8628
+ end: string;
8629
+ }[] | undefined;
8170
8630
  }, {
8171
8631
  open: string;
8172
8632
  close: string;
8173
- }>;
8174
- friday: z.ZodObject<{
8633
+ breaks?: {
8634
+ start: string;
8635
+ end: string;
8636
+ }[] | undefined;
8637
+ }>>;
8638
+ friday: z.ZodNullable<z.ZodObject<{
8175
8639
  open: z.ZodString;
8176
8640
  close: z.ZodString;
8641
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
8642
+ start: z.ZodString;
8643
+ end: z.ZodString;
8644
+ }, "strip", z.ZodTypeAny, {
8645
+ start: string;
8646
+ end: string;
8647
+ }, {
8648
+ start: string;
8649
+ end: string;
8650
+ }>, "many">>;
8177
8651
  }, "strip", z.ZodTypeAny, {
8178
8652
  open: string;
8179
8653
  close: string;
8654
+ breaks?: {
8655
+ start: string;
8656
+ end: string;
8657
+ }[] | undefined;
8180
8658
  }, {
8181
8659
  open: string;
8182
8660
  close: string;
8183
- }>;
8184
- saturday: z.ZodObject<{
8661
+ breaks?: {
8662
+ start: string;
8663
+ end: string;
8664
+ }[] | undefined;
8665
+ }>>;
8666
+ saturday: z.ZodNullable<z.ZodObject<{
8185
8667
  open: z.ZodString;
8186
8668
  close: z.ZodString;
8669
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
8670
+ start: z.ZodString;
8671
+ end: z.ZodString;
8672
+ }, "strip", z.ZodTypeAny, {
8673
+ start: string;
8674
+ end: string;
8675
+ }, {
8676
+ start: string;
8677
+ end: string;
8678
+ }>, "many">>;
8187
8679
  }, "strip", z.ZodTypeAny, {
8188
8680
  open: string;
8189
8681
  close: string;
8682
+ breaks?: {
8683
+ start: string;
8684
+ end: string;
8685
+ }[] | undefined;
8190
8686
  }, {
8191
8687
  open: string;
8192
8688
  close: string;
8193
- }>;
8194
- sunday: z.ZodObject<{
8689
+ breaks?: {
8690
+ start: string;
8691
+ end: string;
8692
+ }[] | undefined;
8693
+ }>>;
8694
+ sunday: z.ZodNullable<z.ZodObject<{
8195
8695
  open: z.ZodString;
8196
8696
  close: z.ZodString;
8697
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
8698
+ start: z.ZodString;
8699
+ end: z.ZodString;
8700
+ }, "strip", z.ZodTypeAny, {
8701
+ start: string;
8702
+ end: string;
8703
+ }, {
8704
+ start: string;
8705
+ end: string;
8706
+ }>, "many">>;
8197
8707
  }, "strip", z.ZodTypeAny, {
8198
8708
  open: string;
8199
8709
  close: string;
8710
+ breaks?: {
8711
+ start: string;
8712
+ end: string;
8713
+ }[] | undefined;
8200
8714
  }, {
8201
8715
  open: string;
8202
8716
  close: string;
8203
- }>;
8717
+ breaks?: {
8718
+ start: string;
8719
+ end: string;
8720
+ }[] | undefined;
8721
+ }>>;
8204
8722
  }, "strip", z.ZodTypeAny, {
8205
8723
  monday: {
8206
8724
  open: string;
8207
8725
  close: string;
8208
- };
8726
+ breaks?: {
8727
+ start: string;
8728
+ end: string;
8729
+ }[] | undefined;
8730
+ } | null;
8209
8731
  tuesday: {
8210
8732
  open: string;
8211
8733
  close: string;
8212
- };
8734
+ breaks?: {
8735
+ start: string;
8736
+ end: string;
8737
+ }[] | undefined;
8738
+ } | null;
8213
8739
  wednesday: {
8214
8740
  open: string;
8215
8741
  close: string;
8216
- };
8742
+ breaks?: {
8743
+ start: string;
8744
+ end: string;
8745
+ }[] | undefined;
8746
+ } | null;
8217
8747
  thursday: {
8218
8748
  open: string;
8219
8749
  close: string;
8220
- };
8750
+ breaks?: {
8751
+ start: string;
8752
+ end: string;
8753
+ }[] | undefined;
8754
+ } | null;
8221
8755
  friday: {
8222
8756
  open: string;
8223
8757
  close: string;
8224
- };
8758
+ breaks?: {
8759
+ start: string;
8760
+ end: string;
8761
+ }[] | undefined;
8762
+ } | null;
8225
8763
  saturday: {
8226
8764
  open: string;
8227
8765
  close: string;
8228
- };
8766
+ breaks?: {
8767
+ start: string;
8768
+ end: string;
8769
+ }[] | undefined;
8770
+ } | null;
8229
8771
  sunday: {
8230
8772
  open: string;
8231
8773
  close: string;
8232
- };
8774
+ breaks?: {
8775
+ start: string;
8776
+ end: string;
8777
+ }[] | undefined;
8778
+ } | null;
8233
8779
  }, {
8234
8780
  monday: {
8235
8781
  open: string;
8236
8782
  close: string;
8237
- };
8783
+ breaks?: {
8784
+ start: string;
8785
+ end: string;
8786
+ }[] | undefined;
8787
+ } | null;
8238
8788
  tuesday: {
8239
8789
  open: string;
8240
8790
  close: string;
8241
- };
8791
+ breaks?: {
8792
+ start: string;
8793
+ end: string;
8794
+ }[] | undefined;
8795
+ } | null;
8242
8796
  wednesday: {
8243
8797
  open: string;
8244
8798
  close: string;
8245
- };
8799
+ breaks?: {
8800
+ start: string;
8801
+ end: string;
8802
+ }[] | undefined;
8803
+ } | null;
8246
8804
  thursday: {
8247
8805
  open: string;
8248
8806
  close: string;
8249
- };
8807
+ breaks?: {
8808
+ start: string;
8809
+ end: string;
8810
+ }[] | undefined;
8811
+ } | null;
8250
8812
  friday: {
8251
8813
  open: string;
8252
8814
  close: string;
8253
- };
8815
+ breaks?: {
8816
+ start: string;
8817
+ end: string;
8818
+ }[] | undefined;
8819
+ } | null;
8254
8820
  saturday: {
8255
8821
  open: string;
8256
8822
  close: string;
8257
- };
8823
+ breaks?: {
8824
+ start: string;
8825
+ end: string;
8826
+ }[] | undefined;
8827
+ } | null;
8258
8828
  sunday: {
8259
8829
  open: string;
8260
8830
  close: string;
8261
- };
8831
+ breaks?: {
8832
+ start: string;
8833
+ end: string;
8834
+ }[] | undefined;
8835
+ } | null;
8262
8836
  }>;
8263
8837
  tags: z.ZodArray<z.ZodNativeEnum<typeof ClinicTag>, "many">;
8264
8838
  featuredPhotos: z.ZodArray<z.ZodString, "many">;
8265
8839
  photos: z.ZodArray<z.ZodString, "many">;
8840
+ photosWithTags: z.ZodOptional<z.ZodArray<z.ZodObject<{
8841
+ url: z.ZodString;
8842
+ tag: z.ZodString;
8843
+ }, "strip", z.ZodTypeAny, {
8844
+ url: string;
8845
+ tag: string;
8846
+ }, {
8847
+ url: string;
8848
+ tag: string;
8849
+ }>, "many">>;
8266
8850
  doctors: z.ZodArray<z.ZodString, "many">;
8267
8851
  doctorsInfo: z.ZodArray<z.ZodObject<{
8268
8852
  id: z.ZodString;
8269
8853
  name: z.ZodString;
8270
- description: z.ZodNullable<z.ZodString>;
8854
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8271
8855
  photo: z.ZodString;
8272
8856
  rating: z.ZodNumber;
8273
8857
  services: z.ZodArray<z.ZodString, "many">;
8274
8858
  }, "strip", z.ZodTypeAny, {
8275
8859
  id: string;
8276
- description: string | null;
8277
8860
  name: string;
8278
8861
  services: string[];
8279
8862
  photo: string;
8280
8863
  rating: number;
8864
+ description?: string | null | undefined;
8281
8865
  }, {
8282
8866
  id: string;
8283
- description: string | null;
8284
8867
  name: string;
8285
8868
  services: string[];
8286
8869
  photo: string;
8287
8870
  rating: number;
8871
+ description?: string | null | undefined;
8288
8872
  }>, "many">;
8289
8873
  services: z.ZodArray<z.ZodString, "many">;
8290
8874
  servicesInfo: z.ZodArray<z.ZodObject<{
8291
8875
  id: z.ZodString;
8292
8876
  name: z.ZodString;
8293
- description: z.ZodNullable<z.ZodString>;
8877
+ description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8294
8878
  photo: z.ZodString;
8295
8879
  procedureFamily: z.ZodNativeEnum<typeof ProcedureFamily>;
8296
8880
  category: z.ZodString;
@@ -8306,7 +8890,6 @@ declare const clinicSchema: z.ZodObject<{
8306
8890
  }, "strip", z.ZodTypeAny, {
8307
8891
  id: string;
8308
8892
  duration: number;
8309
- description: string | null;
8310
8893
  name: string;
8311
8894
  doctors: string[];
8312
8895
  photo: string;
@@ -8319,10 +8902,10 @@ declare const clinicSchema: z.ZodObject<{
8319
8902
  pricingMeasure: PricingMeasure;
8320
8903
  currency: Currency;
8321
8904
  treatmentBenefits: TreatmentBenefit[];
8905
+ description?: string | null | undefined;
8322
8906
  }, {
8323
8907
  id: string;
8324
8908
  duration: number;
8325
- description: string | null;
8326
8909
  name: string;
8327
8910
  doctors: string[];
8328
8911
  photo: string;
@@ -8335,6 +8918,7 @@ declare const clinicSchema: z.ZodObject<{
8335
8918
  pricingMeasure: PricingMeasure;
8336
8919
  currency: Currency;
8337
8920
  treatmentBenefits: TreatmentBenefit[];
8921
+ description?: string | null | undefined;
8338
8922
  }>, "many">;
8339
8923
  reviews: z.ZodArray<z.ZodString, "many">;
8340
8924
  reviewsInfo: z.ZodArray<z.ZodObject<{
@@ -8344,13 +8928,13 @@ declare const clinicSchema: z.ZodObject<{
8344
8928
  patientId: z.ZodString;
8345
8929
  patientName: z.ZodString;
8346
8930
  patientPhoto: z.ZodString;
8347
- createdAt: z.ZodDate;
8348
- updatedAt: z.ZodDate;
8931
+ createdAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
8932
+ updatedAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
8349
8933
  }, "strip", z.ZodTypeAny, {
8350
8934
  id: string;
8351
8935
  text: string;
8352
- createdAt: Date;
8353
- updatedAt: Date;
8936
+ createdAt: Timestamp | Date;
8937
+ updatedAt: Timestamp | Date;
8354
8938
  patientId: string;
8355
8939
  rating: number;
8356
8940
  patientName: string;
@@ -8358,8 +8942,8 @@ declare const clinicSchema: z.ZodObject<{
8358
8942
  }, {
8359
8943
  id: string;
8360
8944
  text: string;
8361
- createdAt: Date;
8362
- updatedAt: Date;
8945
+ createdAt: Timestamp | Date;
8946
+ updatedAt: Timestamp | Date;
8363
8947
  patientId: string;
8364
8948
  rating: number;
8365
8949
  patientName: string;
@@ -8376,17 +8960,17 @@ declare const clinicSchema: z.ZodObject<{
8376
8960
  count: number;
8377
8961
  }>>;
8378
8962
  admins: z.ZodArray<z.ZodString, "many">;
8379
- createdAt: z.ZodDate;
8380
- updatedAt: z.ZodDate;
8963
+ createdAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
8964
+ updatedAt: z.ZodUnion<[z.ZodType<Date, z.ZodTypeDef, Date>, z.ZodType<Timestamp, z.ZodTypeDef, Timestamp>]>;
8381
8965
  isActive: z.ZodBoolean;
8382
8966
  isVerified: z.ZodBoolean;
8967
+ logo: z.ZodOptional<z.ZodString>;
8383
8968
  }, "strip", z.ZodTypeAny, {
8384
8969
  id: string;
8385
- description: string | null;
8386
8970
  tags: ClinicTag[];
8387
8971
  isActive: boolean;
8388
- createdAt: Date;
8389
- updatedAt: Date;
8972
+ createdAt: Timestamp | Date;
8973
+ updatedAt: Timestamp | Date;
8390
8974
  name: string;
8391
8975
  isVerified: boolean;
8392
8976
  doctors: string[];
@@ -8394,68 +8978,95 @@ declare const clinicSchema: z.ZodObject<{
8394
8978
  contactInfo: {
8395
8979
  email: string;
8396
8980
  phoneNumber: string;
8397
- alternativePhoneNumber: string | null;
8398
- website: string | null;
8981
+ alternativePhoneNumber?: string | null | undefined;
8982
+ website?: string | null | undefined;
8399
8983
  };
8400
8984
  location: {
8401
8985
  latitude: number;
8402
8986
  longitude: number;
8403
- geohash: string | null;
8404
8987
  address: string;
8405
8988
  city: string;
8406
8989
  country: string;
8407
8990
  postalCode: string;
8991
+ geohash?: string | null | undefined;
8408
8992
  };
8409
8993
  workingHours: {
8410
8994
  monday: {
8411
8995
  open: string;
8412
8996
  close: string;
8413
- };
8997
+ breaks?: {
8998
+ start: string;
8999
+ end: string;
9000
+ }[] | undefined;
9001
+ } | null;
8414
9002
  tuesday: {
8415
9003
  open: string;
8416
9004
  close: string;
8417
- };
9005
+ breaks?: {
9006
+ start: string;
9007
+ end: string;
9008
+ }[] | undefined;
9009
+ } | null;
8418
9010
  wednesday: {
8419
9011
  open: string;
8420
9012
  close: string;
8421
- };
9013
+ breaks?: {
9014
+ start: string;
9015
+ end: string;
9016
+ }[] | undefined;
9017
+ } | null;
8422
9018
  thursday: {
8423
9019
  open: string;
8424
9020
  close: string;
8425
- };
9021
+ breaks?: {
9022
+ start: string;
9023
+ end: string;
9024
+ }[] | undefined;
9025
+ } | null;
8426
9026
  friday: {
8427
9027
  open: string;
8428
9028
  close: string;
8429
- };
9029
+ breaks?: {
9030
+ start: string;
9031
+ end: string;
9032
+ }[] | undefined;
9033
+ } | null;
8430
9034
  saturday: {
8431
9035
  open: string;
8432
9036
  close: string;
8433
- };
9037
+ breaks?: {
9038
+ start: string;
9039
+ end: string;
9040
+ }[] | undefined;
9041
+ } | null;
8434
9042
  sunday: {
8435
9043
  open: string;
8436
9044
  close: string;
8437
- };
9045
+ breaks?: {
9046
+ start: string;
9047
+ end: string;
9048
+ }[] | undefined;
9049
+ } | null;
8438
9050
  };
8439
9051
  photos: string[];
8440
9052
  services: string[];
8441
9053
  admins: string[];
9054
+ featuredPhotos: string[];
8442
9055
  rating: {
8443
9056
  average: number;
8444
9057
  count: number;
8445
9058
  } | null;
8446
- featuredPhotos: string[];
8447
9059
  doctorsInfo: {
8448
9060
  id: string;
8449
- description: string | null;
8450
9061
  name: string;
8451
9062
  services: string[];
8452
9063
  photo: string;
8453
9064
  rating: number;
9065
+ description?: string | null | undefined;
8454
9066
  }[];
8455
9067
  servicesInfo: {
8456
9068
  id: string;
8457
9069
  duration: number;
8458
- description: string | null;
8459
9070
  name: string;
8460
9071
  doctors: string[];
8461
9072
  photo: string;
@@ -8468,25 +9079,31 @@ declare const clinicSchema: z.ZodObject<{
8468
9079
  pricingMeasure: PricingMeasure;
8469
9080
  currency: Currency;
8470
9081
  treatmentBenefits: TreatmentBenefit[];
9082
+ description?: string | null | undefined;
8471
9083
  }[];
8472
9084
  reviews: string[];
8473
9085
  reviewsInfo: {
8474
9086
  id: string;
8475
9087
  text: string;
8476
- createdAt: Date;
8477
- updatedAt: Date;
9088
+ createdAt: Timestamp | Date;
9089
+ updatedAt: Timestamp | Date;
8478
9090
  patientId: string;
8479
9091
  rating: number;
8480
9092
  patientName: string;
8481
9093
  patientPhoto: string;
8482
9094
  }[];
9095
+ description?: string | null | undefined;
9096
+ logo?: string | undefined;
9097
+ photosWithTags?: {
9098
+ url: string;
9099
+ tag: string;
9100
+ }[] | undefined;
8483
9101
  }, {
8484
9102
  id: string;
8485
- description: string | null;
8486
9103
  tags: ClinicTag[];
8487
9104
  isActive: boolean;
8488
- createdAt: Date;
8489
- updatedAt: Date;
9105
+ createdAt: Timestamp | Date;
9106
+ updatedAt: Timestamp | Date;
8490
9107
  name: string;
8491
9108
  isVerified: boolean;
8492
9109
  doctors: string[];
@@ -8494,68 +9111,95 @@ declare const clinicSchema: z.ZodObject<{
8494
9111
  contactInfo: {
8495
9112
  email: string;
8496
9113
  phoneNumber: string;
8497
- alternativePhoneNumber: string | null;
8498
- website: string | null;
9114
+ alternativePhoneNumber?: string | null | undefined;
9115
+ website?: string | null | undefined;
8499
9116
  };
8500
9117
  location: {
8501
9118
  latitude: number;
8502
9119
  longitude: number;
8503
- geohash: string | null;
8504
9120
  address: string;
8505
9121
  city: string;
8506
9122
  country: string;
8507
9123
  postalCode: string;
9124
+ geohash?: string | null | undefined;
8508
9125
  };
8509
9126
  workingHours: {
8510
9127
  monday: {
8511
9128
  open: string;
8512
9129
  close: string;
8513
- };
9130
+ breaks?: {
9131
+ start: string;
9132
+ end: string;
9133
+ }[] | undefined;
9134
+ } | null;
8514
9135
  tuesday: {
8515
9136
  open: string;
8516
9137
  close: string;
8517
- };
9138
+ breaks?: {
9139
+ start: string;
9140
+ end: string;
9141
+ }[] | undefined;
9142
+ } | null;
8518
9143
  wednesday: {
8519
9144
  open: string;
8520
9145
  close: string;
8521
- };
9146
+ breaks?: {
9147
+ start: string;
9148
+ end: string;
9149
+ }[] | undefined;
9150
+ } | null;
8522
9151
  thursday: {
8523
9152
  open: string;
8524
9153
  close: string;
8525
- };
9154
+ breaks?: {
9155
+ start: string;
9156
+ end: string;
9157
+ }[] | undefined;
9158
+ } | null;
8526
9159
  friday: {
8527
9160
  open: string;
8528
9161
  close: string;
8529
- };
9162
+ breaks?: {
9163
+ start: string;
9164
+ end: string;
9165
+ }[] | undefined;
9166
+ } | null;
8530
9167
  saturday: {
8531
9168
  open: string;
8532
9169
  close: string;
8533
- };
9170
+ breaks?: {
9171
+ start: string;
9172
+ end: string;
9173
+ }[] | undefined;
9174
+ } | null;
8534
9175
  sunday: {
8535
9176
  open: string;
8536
9177
  close: string;
8537
- };
9178
+ breaks?: {
9179
+ start: string;
9180
+ end: string;
9181
+ }[] | undefined;
9182
+ } | null;
8538
9183
  };
8539
9184
  photos: string[];
8540
9185
  services: string[];
8541
9186
  admins: string[];
9187
+ featuredPhotos: string[];
8542
9188
  rating: {
8543
9189
  average: number;
8544
9190
  count: number;
8545
9191
  } | null;
8546
- featuredPhotos: string[];
8547
9192
  doctorsInfo: {
8548
9193
  id: string;
8549
- description: string | null;
8550
9194
  name: string;
8551
9195
  services: string[];
8552
9196
  photo: string;
8553
9197
  rating: number;
9198
+ description?: string | null | undefined;
8554
9199
  }[];
8555
9200
  servicesInfo: {
8556
9201
  id: string;
8557
9202
  duration: number;
8558
- description: string | null;
8559
9203
  name: string;
8560
9204
  doctors: string[];
8561
9205
  photo: string;
@@ -8568,18 +9212,25 @@ declare const clinicSchema: z.ZodObject<{
8568
9212
  pricingMeasure: PricingMeasure;
8569
9213
  currency: Currency;
8570
9214
  treatmentBenefits: TreatmentBenefit[];
9215
+ description?: string | null | undefined;
8571
9216
  }[];
8572
9217
  reviews: string[];
8573
9218
  reviewsInfo: {
8574
9219
  id: string;
8575
9220
  text: string;
8576
- createdAt: Date;
8577
- updatedAt: Date;
9221
+ createdAt: Timestamp | Date;
9222
+ updatedAt: Timestamp | Date;
8578
9223
  patientId: string;
8579
9224
  rating: number;
8580
9225
  patientName: string;
8581
9226
  patientPhoto: string;
8582
9227
  }[];
9228
+ description?: string | null | undefined;
9229
+ logo?: string | undefined;
9230
+ photosWithTags?: {
9231
+ url: string;
9232
+ tag: string;
9233
+ }[] | undefined;
8583
9234
  }>;
8584
9235
  /**
8585
9236
  * Validaciona šema za kreiranje administratora klinike
@@ -8644,7 +9295,7 @@ declare const createClinicAdminSchema: z.ZodObject<{
8644
9295
  */
8645
9296
  declare const createClinicGroupSchema: z.ZodObject<{
8646
9297
  name: z.ZodString;
8647
- description: z.ZodNullable<z.ZodString>;
9298
+ description: z.ZodOptional<z.ZodString>;
8648
9299
  hqLocation: z.ZodObject<{
8649
9300
  address: z.ZodString;
8650
9301
  city: z.ZodString;
@@ -8652,39 +9303,39 @@ declare const createClinicGroupSchema: z.ZodObject<{
8652
9303
  postalCode: z.ZodString;
8653
9304
  latitude: z.ZodNumber;
8654
9305
  longitude: z.ZodNumber;
8655
- geohash: z.ZodNullable<z.ZodString>;
9306
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8656
9307
  }, "strip", z.ZodTypeAny, {
8657
9308
  latitude: number;
8658
9309
  longitude: number;
8659
- geohash: string | null;
8660
9310
  address: string;
8661
9311
  city: string;
8662
9312
  country: string;
8663
9313
  postalCode: string;
9314
+ geohash?: string | null | undefined;
8664
9315
  }, {
8665
9316
  latitude: number;
8666
9317
  longitude: number;
8667
- geohash: string | null;
8668
9318
  address: string;
8669
9319
  city: string;
8670
9320
  country: string;
8671
9321
  postalCode: string;
9322
+ geohash?: string | null | undefined;
8672
9323
  }>;
8673
9324
  contactInfo: z.ZodObject<{
8674
9325
  email: z.ZodString;
8675
9326
  phoneNumber: z.ZodString;
8676
- alternativePhoneNumber: z.ZodNullable<z.ZodString>;
8677
- website: z.ZodNullable<z.ZodString>;
9327
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
9328
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8678
9329
  }, "strip", z.ZodTypeAny, {
8679
9330
  email: string;
8680
9331
  phoneNumber: string;
8681
- alternativePhoneNumber: string | null;
8682
- website: string | null;
9332
+ alternativePhoneNumber?: string | null | undefined;
9333
+ website?: string | null | undefined;
8683
9334
  }, {
8684
9335
  email: string;
8685
9336
  phoneNumber: string;
8686
- alternativePhoneNumber: string | null;
8687
- website: string | null;
9337
+ alternativePhoneNumber?: string | null | undefined;
9338
+ website?: string | null | undefined;
8688
9339
  }>;
8689
9340
  contactPerson: z.ZodObject<{
8690
9341
  firstName: z.ZodString;
@@ -8707,24 +9358,29 @@ declare const createClinicGroupSchema: z.ZodObject<{
8707
9358
  }>;
8708
9359
  ownerId: z.ZodString;
8709
9360
  isActive: z.ZodBoolean;
9361
+ logo: z.ZodOptional<z.ZodString>;
9362
+ practiceType: z.ZodOptional<z.ZodNativeEnum<typeof PracticeType>>;
9363
+ languages: z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof Language>, "many">>;
9364
+ subscriptionModel: z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof SubscriptionModel>>>;
9365
+ calendarSyncEnabled: z.ZodOptional<z.ZodBoolean>;
9366
+ autoConfirmAppointments: z.ZodOptional<z.ZodBoolean>;
8710
9367
  }, "strip", z.ZodTypeAny, {
8711
- description: string | null;
8712
9368
  isActive: boolean;
8713
9369
  name: string;
8714
9370
  contactInfo: {
8715
9371
  email: string;
8716
9372
  phoneNumber: string;
8717
- alternativePhoneNumber: string | null;
8718
- website: string | null;
9373
+ alternativePhoneNumber?: string | null | undefined;
9374
+ website?: string | null | undefined;
8719
9375
  };
8720
9376
  hqLocation: {
8721
9377
  latitude: number;
8722
9378
  longitude: number;
8723
- geohash: string | null;
8724
9379
  address: string;
8725
9380
  city: string;
8726
9381
  country: string;
8727
9382
  postalCode: string;
9383
+ geohash?: string | null | undefined;
8728
9384
  };
8729
9385
  contactPerson: {
8730
9386
  email: string;
@@ -8734,24 +9390,30 @@ declare const createClinicGroupSchema: z.ZodObject<{
8734
9390
  phoneNumber: string;
8735
9391
  };
8736
9392
  ownerId: string;
9393
+ subscriptionModel: SubscriptionModel;
9394
+ description?: string | undefined;
9395
+ logo?: string | undefined;
9396
+ practiceType?: PracticeType | undefined;
9397
+ languages?: Language[] | undefined;
9398
+ calendarSyncEnabled?: boolean | undefined;
9399
+ autoConfirmAppointments?: boolean | undefined;
8737
9400
  }, {
8738
- description: string | null;
8739
9401
  isActive: boolean;
8740
9402
  name: string;
8741
9403
  contactInfo: {
8742
9404
  email: string;
8743
9405
  phoneNumber: string;
8744
- alternativePhoneNumber: string | null;
8745
- website: string | null;
9406
+ alternativePhoneNumber?: string | null | undefined;
9407
+ website?: string | null | undefined;
8746
9408
  };
8747
9409
  hqLocation: {
8748
9410
  latitude: number;
8749
9411
  longitude: number;
8750
- geohash: string | null;
8751
9412
  address: string;
8752
9413
  city: string;
8753
9414
  country: string;
8754
9415
  postalCode: string;
9416
+ geohash?: string | null | undefined;
8755
9417
  };
8756
9418
  contactPerson: {
8757
9419
  email: string;
@@ -8761,6 +9423,13 @@ declare const createClinicGroupSchema: z.ZodObject<{
8761
9423
  phoneNumber: string;
8762
9424
  };
8763
9425
  ownerId: string;
9426
+ description?: string | undefined;
9427
+ logo?: string | undefined;
9428
+ practiceType?: PracticeType | undefined;
9429
+ languages?: Language[] | undefined;
9430
+ subscriptionModel?: SubscriptionModel | undefined;
9431
+ calendarSyncEnabled?: boolean | undefined;
9432
+ autoConfirmAppointments?: boolean | undefined;
8764
9433
  }>;
8765
9434
  /**
8766
9435
  * Validaciona šema za kreiranje klinike
@@ -8768,7 +9437,7 @@ declare const createClinicGroupSchema: z.ZodObject<{
8768
9437
  declare const createClinicSchema: z.ZodObject<{
8769
9438
  clinicGroupId: z.ZodString;
8770
9439
  name: z.ZodString;
8771
- description: z.ZodNullable<z.ZodString>;
9440
+ description: z.ZodOptional<z.ZodString>;
8772
9441
  location: z.ZodObject<{
8773
9442
  address: z.ZodString;
8774
9443
  city: z.ZodString;
@@ -8776,179 +9445,372 @@ declare const createClinicSchema: z.ZodObject<{
8776
9445
  postalCode: z.ZodString;
8777
9446
  latitude: z.ZodNumber;
8778
9447
  longitude: z.ZodNumber;
8779
- geohash: z.ZodNullable<z.ZodString>;
9448
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8780
9449
  }, "strip", z.ZodTypeAny, {
8781
9450
  latitude: number;
8782
9451
  longitude: number;
8783
- geohash: string | null;
8784
9452
  address: string;
8785
9453
  city: string;
8786
9454
  country: string;
8787
9455
  postalCode: string;
9456
+ geohash?: string | null | undefined;
8788
9457
  }, {
8789
9458
  latitude: number;
8790
9459
  longitude: number;
8791
- geohash: string | null;
8792
9460
  address: string;
8793
9461
  city: string;
8794
9462
  country: string;
8795
9463
  postalCode: string;
9464
+ geohash?: string | null | undefined;
8796
9465
  }>;
8797
9466
  contactInfo: z.ZodObject<{
8798
9467
  email: z.ZodString;
8799
9468
  phoneNumber: z.ZodString;
8800
- alternativePhoneNumber: z.ZodNullable<z.ZodString>;
8801
- website: z.ZodNullable<z.ZodString>;
9469
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
9470
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
8802
9471
  }, "strip", z.ZodTypeAny, {
8803
9472
  email: string;
8804
9473
  phoneNumber: string;
8805
- alternativePhoneNumber: string | null;
8806
- website: string | null;
9474
+ alternativePhoneNumber?: string | null | undefined;
9475
+ website?: string | null | undefined;
8807
9476
  }, {
8808
9477
  email: string;
8809
9478
  phoneNumber: string;
8810
- alternativePhoneNumber: string | null;
8811
- website: string | null;
9479
+ alternativePhoneNumber?: string | null | undefined;
9480
+ website?: string | null | undefined;
8812
9481
  }>;
8813
9482
  workingHours: z.ZodObject<{
8814
- monday: z.ZodObject<{
9483
+ monday: z.ZodNullable<z.ZodObject<{
8815
9484
  open: z.ZodString;
8816
9485
  close: z.ZodString;
9486
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
9487
+ start: z.ZodString;
9488
+ end: z.ZodString;
9489
+ }, "strip", z.ZodTypeAny, {
9490
+ start: string;
9491
+ end: string;
9492
+ }, {
9493
+ start: string;
9494
+ end: string;
9495
+ }>, "many">>;
8817
9496
  }, "strip", z.ZodTypeAny, {
8818
9497
  open: string;
8819
9498
  close: string;
9499
+ breaks?: {
9500
+ start: string;
9501
+ end: string;
9502
+ }[] | undefined;
8820
9503
  }, {
8821
9504
  open: string;
8822
9505
  close: string;
8823
- }>;
8824
- tuesday: z.ZodObject<{
9506
+ breaks?: {
9507
+ start: string;
9508
+ end: string;
9509
+ }[] | undefined;
9510
+ }>>;
9511
+ tuesday: z.ZodNullable<z.ZodObject<{
8825
9512
  open: z.ZodString;
8826
9513
  close: z.ZodString;
9514
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
9515
+ start: z.ZodString;
9516
+ end: z.ZodString;
9517
+ }, "strip", z.ZodTypeAny, {
9518
+ start: string;
9519
+ end: string;
9520
+ }, {
9521
+ start: string;
9522
+ end: string;
9523
+ }>, "many">>;
8827
9524
  }, "strip", z.ZodTypeAny, {
8828
9525
  open: string;
8829
9526
  close: string;
9527
+ breaks?: {
9528
+ start: string;
9529
+ end: string;
9530
+ }[] | undefined;
8830
9531
  }, {
8831
9532
  open: string;
8832
9533
  close: string;
8833
- }>;
8834
- wednesday: z.ZodObject<{
9534
+ breaks?: {
9535
+ start: string;
9536
+ end: string;
9537
+ }[] | undefined;
9538
+ }>>;
9539
+ wednesday: z.ZodNullable<z.ZodObject<{
8835
9540
  open: z.ZodString;
8836
9541
  close: z.ZodString;
9542
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
9543
+ start: z.ZodString;
9544
+ end: z.ZodString;
9545
+ }, "strip", z.ZodTypeAny, {
9546
+ start: string;
9547
+ end: string;
9548
+ }, {
9549
+ start: string;
9550
+ end: string;
9551
+ }>, "many">>;
8837
9552
  }, "strip", z.ZodTypeAny, {
8838
9553
  open: string;
8839
9554
  close: string;
9555
+ breaks?: {
9556
+ start: string;
9557
+ end: string;
9558
+ }[] | undefined;
8840
9559
  }, {
8841
9560
  open: string;
8842
9561
  close: string;
8843
- }>;
8844
- thursday: z.ZodObject<{
9562
+ breaks?: {
9563
+ start: string;
9564
+ end: string;
9565
+ }[] | undefined;
9566
+ }>>;
9567
+ thursday: z.ZodNullable<z.ZodObject<{
8845
9568
  open: z.ZodString;
8846
9569
  close: z.ZodString;
9570
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
9571
+ start: z.ZodString;
9572
+ end: z.ZodString;
9573
+ }, "strip", z.ZodTypeAny, {
9574
+ start: string;
9575
+ end: string;
9576
+ }, {
9577
+ start: string;
9578
+ end: string;
9579
+ }>, "many">>;
8847
9580
  }, "strip", z.ZodTypeAny, {
8848
9581
  open: string;
8849
9582
  close: string;
9583
+ breaks?: {
9584
+ start: string;
9585
+ end: string;
9586
+ }[] | undefined;
8850
9587
  }, {
8851
9588
  open: string;
8852
9589
  close: string;
8853
- }>;
8854
- friday: z.ZodObject<{
9590
+ breaks?: {
9591
+ start: string;
9592
+ end: string;
9593
+ }[] | undefined;
9594
+ }>>;
9595
+ friday: z.ZodNullable<z.ZodObject<{
8855
9596
  open: z.ZodString;
8856
9597
  close: z.ZodString;
9598
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
9599
+ start: z.ZodString;
9600
+ end: z.ZodString;
9601
+ }, "strip", z.ZodTypeAny, {
9602
+ start: string;
9603
+ end: string;
9604
+ }, {
9605
+ start: string;
9606
+ end: string;
9607
+ }>, "many">>;
8857
9608
  }, "strip", z.ZodTypeAny, {
8858
9609
  open: string;
8859
9610
  close: string;
9611
+ breaks?: {
9612
+ start: string;
9613
+ end: string;
9614
+ }[] | undefined;
8860
9615
  }, {
8861
9616
  open: string;
8862
9617
  close: string;
8863
- }>;
8864
- saturday: z.ZodObject<{
9618
+ breaks?: {
9619
+ start: string;
9620
+ end: string;
9621
+ }[] | undefined;
9622
+ }>>;
9623
+ saturday: z.ZodNullable<z.ZodObject<{
8865
9624
  open: z.ZodString;
8866
9625
  close: z.ZodString;
9626
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
9627
+ start: z.ZodString;
9628
+ end: z.ZodString;
9629
+ }, "strip", z.ZodTypeAny, {
9630
+ start: string;
9631
+ end: string;
9632
+ }, {
9633
+ start: string;
9634
+ end: string;
9635
+ }>, "many">>;
8867
9636
  }, "strip", z.ZodTypeAny, {
8868
9637
  open: string;
8869
9638
  close: string;
9639
+ breaks?: {
9640
+ start: string;
9641
+ end: string;
9642
+ }[] | undefined;
8870
9643
  }, {
8871
9644
  open: string;
8872
9645
  close: string;
8873
- }>;
8874
- sunday: z.ZodObject<{
9646
+ breaks?: {
9647
+ start: string;
9648
+ end: string;
9649
+ }[] | undefined;
9650
+ }>>;
9651
+ sunday: z.ZodNullable<z.ZodObject<{
8875
9652
  open: z.ZodString;
8876
9653
  close: z.ZodString;
9654
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
9655
+ start: z.ZodString;
9656
+ end: z.ZodString;
9657
+ }, "strip", z.ZodTypeAny, {
9658
+ start: string;
9659
+ end: string;
9660
+ }, {
9661
+ start: string;
9662
+ end: string;
9663
+ }>, "many">>;
8877
9664
  }, "strip", z.ZodTypeAny, {
8878
9665
  open: string;
8879
9666
  close: string;
9667
+ breaks?: {
9668
+ start: string;
9669
+ end: string;
9670
+ }[] | undefined;
8880
9671
  }, {
8881
9672
  open: string;
8882
9673
  close: string;
8883
- }>;
9674
+ breaks?: {
9675
+ start: string;
9676
+ end: string;
9677
+ }[] | undefined;
9678
+ }>>;
8884
9679
  }, "strip", z.ZodTypeAny, {
8885
9680
  monday: {
8886
9681
  open: string;
8887
9682
  close: string;
8888
- };
9683
+ breaks?: {
9684
+ start: string;
9685
+ end: string;
9686
+ }[] | undefined;
9687
+ } | null;
8889
9688
  tuesday: {
8890
9689
  open: string;
8891
9690
  close: string;
8892
- };
9691
+ breaks?: {
9692
+ start: string;
9693
+ end: string;
9694
+ }[] | undefined;
9695
+ } | null;
8893
9696
  wednesday: {
8894
9697
  open: string;
8895
9698
  close: string;
8896
- };
9699
+ breaks?: {
9700
+ start: string;
9701
+ end: string;
9702
+ }[] | undefined;
9703
+ } | null;
8897
9704
  thursday: {
8898
9705
  open: string;
8899
9706
  close: string;
8900
- };
9707
+ breaks?: {
9708
+ start: string;
9709
+ end: string;
9710
+ }[] | undefined;
9711
+ } | null;
8901
9712
  friday: {
8902
9713
  open: string;
8903
9714
  close: string;
8904
- };
9715
+ breaks?: {
9716
+ start: string;
9717
+ end: string;
9718
+ }[] | undefined;
9719
+ } | null;
8905
9720
  saturday: {
8906
9721
  open: string;
8907
9722
  close: string;
8908
- };
9723
+ breaks?: {
9724
+ start: string;
9725
+ end: string;
9726
+ }[] | undefined;
9727
+ } | null;
8909
9728
  sunday: {
8910
9729
  open: string;
8911
9730
  close: string;
8912
- };
9731
+ breaks?: {
9732
+ start: string;
9733
+ end: string;
9734
+ }[] | undefined;
9735
+ } | null;
8913
9736
  }, {
8914
9737
  monday: {
8915
9738
  open: string;
8916
9739
  close: string;
8917
- };
9740
+ breaks?: {
9741
+ start: string;
9742
+ end: string;
9743
+ }[] | undefined;
9744
+ } | null;
8918
9745
  tuesday: {
8919
9746
  open: string;
8920
9747
  close: string;
8921
- };
9748
+ breaks?: {
9749
+ start: string;
9750
+ end: string;
9751
+ }[] | undefined;
9752
+ } | null;
8922
9753
  wednesday: {
8923
9754
  open: string;
8924
9755
  close: string;
8925
- };
9756
+ breaks?: {
9757
+ start: string;
9758
+ end: string;
9759
+ }[] | undefined;
9760
+ } | null;
8926
9761
  thursday: {
8927
9762
  open: string;
8928
9763
  close: string;
8929
- };
9764
+ breaks?: {
9765
+ start: string;
9766
+ end: string;
9767
+ }[] | undefined;
9768
+ } | null;
8930
9769
  friday: {
8931
9770
  open: string;
8932
9771
  close: string;
8933
- };
9772
+ breaks?: {
9773
+ start: string;
9774
+ end: string;
9775
+ }[] | undefined;
9776
+ } | null;
8934
9777
  saturday: {
8935
9778
  open: string;
8936
9779
  close: string;
8937
- };
9780
+ breaks?: {
9781
+ start: string;
9782
+ end: string;
9783
+ }[] | undefined;
9784
+ } | null;
8938
9785
  sunday: {
8939
9786
  open: string;
8940
9787
  close: string;
8941
- };
9788
+ breaks?: {
9789
+ start: string;
9790
+ end: string;
9791
+ }[] | undefined;
9792
+ } | null;
8942
9793
  }>;
8943
9794
  tags: z.ZodArray<z.ZodNativeEnum<typeof ClinicTag>, "many">;
8944
9795
  photos: z.ZodArray<z.ZodString, "many">;
9796
+ photosWithTags: z.ZodOptional<z.ZodArray<z.ZodObject<{
9797
+ url: z.ZodString;
9798
+ tag: z.ZodString;
9799
+ }, "strip", z.ZodTypeAny, {
9800
+ url: string;
9801
+ tag: string;
9802
+ }, {
9803
+ url: string;
9804
+ tag: string;
9805
+ }>, "many">>;
8945
9806
  doctors: z.ZodArray<z.ZodString, "many">;
8946
9807
  services: z.ZodArray<z.ZodString, "many">;
8947
9808
  admins: z.ZodArray<z.ZodString, "many">;
8948
9809
  isActive: z.ZodBoolean;
8949
9810
  isVerified: z.ZodBoolean;
9811
+ logo: z.ZodOptional<z.ZodString>;
9812
+ featuredPhotos: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
8950
9813
  }, "strip", z.ZodTypeAny, {
8951
- description: string | null;
8952
9814
  tags: ClinicTag[];
8953
9815
  isActive: boolean;
8954
9816
  name: string;
@@ -8958,53 +9820,87 @@ declare const createClinicSchema: z.ZodObject<{
8958
9820
  contactInfo: {
8959
9821
  email: string;
8960
9822
  phoneNumber: string;
8961
- alternativePhoneNumber: string | null;
8962
- website: string | null;
9823
+ alternativePhoneNumber?: string | null | undefined;
9824
+ website?: string | null | undefined;
8963
9825
  };
8964
9826
  location: {
8965
9827
  latitude: number;
8966
9828
  longitude: number;
8967
- geohash: string | null;
8968
9829
  address: string;
8969
9830
  city: string;
8970
9831
  country: string;
8971
9832
  postalCode: string;
9833
+ geohash?: string | null | undefined;
8972
9834
  };
8973
9835
  workingHours: {
8974
9836
  monday: {
8975
9837
  open: string;
8976
9838
  close: string;
8977
- };
9839
+ breaks?: {
9840
+ start: string;
9841
+ end: string;
9842
+ }[] | undefined;
9843
+ } | null;
8978
9844
  tuesday: {
8979
9845
  open: string;
8980
9846
  close: string;
8981
- };
9847
+ breaks?: {
9848
+ start: string;
9849
+ end: string;
9850
+ }[] | undefined;
9851
+ } | null;
8982
9852
  wednesday: {
8983
9853
  open: string;
8984
9854
  close: string;
8985
- };
9855
+ breaks?: {
9856
+ start: string;
9857
+ end: string;
9858
+ }[] | undefined;
9859
+ } | null;
8986
9860
  thursday: {
8987
9861
  open: string;
8988
9862
  close: string;
8989
- };
9863
+ breaks?: {
9864
+ start: string;
9865
+ end: string;
9866
+ }[] | undefined;
9867
+ } | null;
8990
9868
  friday: {
8991
9869
  open: string;
8992
9870
  close: string;
8993
- };
9871
+ breaks?: {
9872
+ start: string;
9873
+ end: string;
9874
+ }[] | undefined;
9875
+ } | null;
8994
9876
  saturday: {
8995
9877
  open: string;
8996
9878
  close: string;
8997
- };
9879
+ breaks?: {
9880
+ start: string;
9881
+ end: string;
9882
+ }[] | undefined;
9883
+ } | null;
8998
9884
  sunday: {
8999
9885
  open: string;
9000
9886
  close: string;
9001
- };
9887
+ breaks?: {
9888
+ start: string;
9889
+ end: string;
9890
+ }[] | undefined;
9891
+ } | null;
9002
9892
  };
9003
9893
  photos: string[];
9004
9894
  services: string[];
9005
9895
  admins: string[];
9896
+ description?: string | undefined;
9897
+ logo?: string | undefined;
9898
+ photosWithTags?: {
9899
+ url: string;
9900
+ tag: string;
9901
+ }[] | undefined;
9902
+ featuredPhotos?: string[] | undefined;
9006
9903
  }, {
9007
- description: string | null;
9008
9904
  tags: ClinicTag[];
9009
9905
  isActive: boolean;
9010
9906
  name: string;
@@ -9014,51 +9910,86 @@ declare const createClinicSchema: z.ZodObject<{
9014
9910
  contactInfo: {
9015
9911
  email: string;
9016
9912
  phoneNumber: string;
9017
- alternativePhoneNumber: string | null;
9018
- website: string | null;
9913
+ alternativePhoneNumber?: string | null | undefined;
9914
+ website?: string | null | undefined;
9019
9915
  };
9020
9916
  location: {
9021
9917
  latitude: number;
9022
9918
  longitude: number;
9023
- geohash: string | null;
9024
9919
  address: string;
9025
9920
  city: string;
9026
9921
  country: string;
9027
9922
  postalCode: string;
9923
+ geohash?: string | null | undefined;
9028
9924
  };
9029
9925
  workingHours: {
9030
9926
  monday: {
9031
9927
  open: string;
9032
9928
  close: string;
9033
- };
9929
+ breaks?: {
9930
+ start: string;
9931
+ end: string;
9932
+ }[] | undefined;
9933
+ } | null;
9034
9934
  tuesday: {
9035
9935
  open: string;
9036
9936
  close: string;
9037
- };
9937
+ breaks?: {
9938
+ start: string;
9939
+ end: string;
9940
+ }[] | undefined;
9941
+ } | null;
9038
9942
  wednesday: {
9039
9943
  open: string;
9040
9944
  close: string;
9041
- };
9945
+ breaks?: {
9946
+ start: string;
9947
+ end: string;
9948
+ }[] | undefined;
9949
+ } | null;
9042
9950
  thursday: {
9043
9951
  open: string;
9044
9952
  close: string;
9045
- };
9953
+ breaks?: {
9954
+ start: string;
9955
+ end: string;
9956
+ }[] | undefined;
9957
+ } | null;
9046
9958
  friday: {
9047
9959
  open: string;
9048
9960
  close: string;
9049
- };
9961
+ breaks?: {
9962
+ start: string;
9963
+ end: string;
9964
+ }[] | undefined;
9965
+ } | null;
9050
9966
  saturday: {
9051
9967
  open: string;
9052
9968
  close: string;
9053
- };
9969
+ breaks?: {
9970
+ start: string;
9971
+ end: string;
9972
+ }[] | undefined;
9973
+ } | null;
9054
9974
  sunday: {
9055
9975
  open: string;
9056
9976
  close: string;
9057
- };
9977
+ breaks?: {
9978
+ start: string;
9979
+ end: string;
9980
+ }[] | undefined;
9981
+ } | null;
9058
9982
  };
9059
9983
  photos: string[];
9060
9984
  services: string[];
9061
9985
  admins: string[];
9986
+ description?: string | undefined;
9987
+ logo?: string | undefined;
9988
+ photosWithTags?: {
9989
+ url: string;
9990
+ tag: string;
9991
+ }[] | undefined;
9992
+ featuredPhotos?: string[] | undefined;
9062
9993
  }>;
9063
9994
  /**
9064
9995
  * Validaciona šema za default grupu
@@ -9088,12 +10019,18 @@ declare const createDefaultClinicGroupSchema: z.ZodObject<{
9088
10019
  contactInfo: z.ZodObject<{
9089
10020
  email: z.ZodString;
9090
10021
  phoneNumber: z.ZodString;
10022
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10023
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
9091
10024
  }, "strip", z.ZodTypeAny, {
9092
10025
  email: string;
9093
10026
  phoneNumber: string;
10027
+ alternativePhoneNumber?: string | null | undefined;
10028
+ website?: string | null | undefined;
9094
10029
  }, {
9095
10030
  email: string;
9096
10031
  phoneNumber: string;
10032
+ alternativePhoneNumber?: string | null | undefined;
10033
+ website?: string | null | undefined;
9097
10034
  }>;
9098
10035
  hqLocation: z.ZodObject<{
9099
10036
  address: z.ZodString;
@@ -9102,40 +10039,46 @@ declare const createDefaultClinicGroupSchema: z.ZodObject<{
9102
10039
  postalCode: z.ZodString;
9103
10040
  latitude: z.ZodNumber;
9104
10041
  longitude: z.ZodNumber;
9105
- geohash: z.ZodNullable<z.ZodString>;
10042
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
9106
10043
  }, "strip", z.ZodTypeAny, {
9107
10044
  latitude: number;
9108
10045
  longitude: number;
9109
- geohash: string | null;
9110
10046
  address: string;
9111
10047
  city: string;
9112
10048
  country: string;
9113
10049
  postalCode: string;
10050
+ geohash?: string | null | undefined;
9114
10051
  }, {
9115
10052
  latitude: number;
9116
10053
  longitude: number;
9117
- geohash: string | null;
9118
10054
  address: string;
9119
10055
  city: string;
9120
10056
  country: string;
9121
10057
  postalCode: string;
10058
+ geohash?: string | null | undefined;
9122
10059
  }>;
9123
10060
  isActive: z.ZodBoolean;
10061
+ logo: z.ZodOptional<z.ZodString>;
10062
+ practiceType: z.ZodOptional<z.ZodNativeEnum<typeof PracticeType>>;
10063
+ languages: z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof Language>, "many">>;
10064
+ subscriptionModel: z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof SubscriptionModel>>>;
9124
10065
  }, "strip", z.ZodTypeAny, {
9125
10066
  isActive: boolean;
9126
10067
  name: string;
9127
10068
  contactInfo: {
9128
10069
  email: string;
9129
10070
  phoneNumber: string;
10071
+ alternativePhoneNumber?: string | null | undefined;
10072
+ website?: string | null | undefined;
9130
10073
  };
9131
10074
  hqLocation: {
9132
10075
  latitude: number;
9133
10076
  longitude: number;
9134
- geohash: string | null;
9135
10077
  address: string;
9136
10078
  city: string;
9137
10079
  country: string;
9138
10080
  postalCode: string;
10081
+ geohash?: string | null | undefined;
9139
10082
  };
9140
10083
  contactPerson: {
9141
10084
  email: string;
@@ -9145,21 +10088,27 @@ declare const createDefaultClinicGroupSchema: z.ZodObject<{
9145
10088
  phoneNumber: string;
9146
10089
  };
9147
10090
  ownerId: string;
10091
+ subscriptionModel: SubscriptionModel;
10092
+ logo?: string | undefined;
10093
+ practiceType?: PracticeType | undefined;
10094
+ languages?: Language[] | undefined;
9148
10095
  }, {
9149
10096
  isActive: boolean;
9150
10097
  name: string;
9151
10098
  contactInfo: {
9152
10099
  email: string;
9153
10100
  phoneNumber: string;
10101
+ alternativePhoneNumber?: string | null | undefined;
10102
+ website?: string | null | undefined;
9154
10103
  };
9155
10104
  hqLocation: {
9156
10105
  latitude: number;
9157
10106
  longitude: number;
9158
- geohash: string | null;
9159
10107
  address: string;
9160
10108
  city: string;
9161
10109
  country: string;
9162
10110
  postalCode: string;
10111
+ geohash?: string | null | undefined;
9163
10112
  };
9164
10113
  contactPerson: {
9165
10114
  email: string;
@@ -9169,6 +10118,1491 @@ declare const createDefaultClinicGroupSchema: z.ZodObject<{
9169
10118
  phoneNumber: string;
9170
10119
  };
9171
10120
  ownerId: string;
10121
+ logo?: string | undefined;
10122
+ practiceType?: PracticeType | undefined;
10123
+ languages?: Language[] | undefined;
10124
+ subscriptionModel?: SubscriptionModel | undefined;
10125
+ }>;
10126
+ /**
10127
+ * Validaciona šema za kreiranje administratora klinike
10128
+ */
10129
+ declare const clinicAdminSignupSchema: z.ZodObject<{
10130
+ email: z.ZodString;
10131
+ password: z.ZodString;
10132
+ firstName: z.ZodString;
10133
+ lastName: z.ZodString;
10134
+ title: z.ZodString;
10135
+ phoneNumber: z.ZodString;
10136
+ isCreatingNewGroup: z.ZodBoolean;
10137
+ inviteToken: z.ZodOptional<z.ZodString>;
10138
+ clinicGroupData: z.ZodOptional<z.ZodObject<{
10139
+ name: z.ZodString;
10140
+ hqLocation: z.ZodObject<{
10141
+ address: z.ZodString;
10142
+ city: z.ZodString;
10143
+ country: z.ZodString;
10144
+ postalCode: z.ZodString;
10145
+ latitude: z.ZodNumber;
10146
+ longitude: z.ZodNumber;
10147
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10148
+ }, "strip", z.ZodTypeAny, {
10149
+ latitude: number;
10150
+ longitude: number;
10151
+ address: string;
10152
+ city: string;
10153
+ country: string;
10154
+ postalCode: string;
10155
+ geohash?: string | null | undefined;
10156
+ }, {
10157
+ latitude: number;
10158
+ longitude: number;
10159
+ address: string;
10160
+ city: string;
10161
+ country: string;
10162
+ postalCode: string;
10163
+ geohash?: string | null | undefined;
10164
+ }>;
10165
+ logo: z.ZodOptional<z.ZodString>;
10166
+ contactInfo: z.ZodObject<{
10167
+ email: z.ZodString;
10168
+ phoneNumber: z.ZodString;
10169
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10170
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10171
+ }, "strip", z.ZodTypeAny, {
10172
+ email: string;
10173
+ phoneNumber: string;
10174
+ alternativePhoneNumber?: string | null | undefined;
10175
+ website?: string | null | undefined;
10176
+ }, {
10177
+ email: string;
10178
+ phoneNumber: string;
10179
+ alternativePhoneNumber?: string | null | undefined;
10180
+ website?: string | null | undefined;
10181
+ }>;
10182
+ subscriptionModel: z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof SubscriptionModel>>>;
10183
+ }, "strip", z.ZodTypeAny, {
10184
+ name: string;
10185
+ contactInfo: {
10186
+ email: string;
10187
+ phoneNumber: string;
10188
+ alternativePhoneNumber?: string | null | undefined;
10189
+ website?: string | null | undefined;
10190
+ };
10191
+ hqLocation: {
10192
+ latitude: number;
10193
+ longitude: number;
10194
+ address: string;
10195
+ city: string;
10196
+ country: string;
10197
+ postalCode: string;
10198
+ geohash?: string | null | undefined;
10199
+ };
10200
+ subscriptionModel: SubscriptionModel;
10201
+ logo?: string | undefined;
10202
+ }, {
10203
+ name: string;
10204
+ contactInfo: {
10205
+ email: string;
10206
+ phoneNumber: string;
10207
+ alternativePhoneNumber?: string | null | undefined;
10208
+ website?: string | null | undefined;
10209
+ };
10210
+ hqLocation: {
10211
+ latitude: number;
10212
+ longitude: number;
10213
+ address: string;
10214
+ city: string;
10215
+ country: string;
10216
+ postalCode: string;
10217
+ geohash?: string | null | undefined;
10218
+ };
10219
+ logo?: string | undefined;
10220
+ subscriptionModel?: SubscriptionModel | undefined;
10221
+ }>>;
10222
+ }, "strip", z.ZodTypeAny, {
10223
+ email: string;
10224
+ title: string;
10225
+ firstName: string;
10226
+ lastName: string;
10227
+ phoneNumber: string;
10228
+ password: string;
10229
+ isCreatingNewGroup: boolean;
10230
+ inviteToken?: string | undefined;
10231
+ clinicGroupData?: {
10232
+ name: string;
10233
+ contactInfo: {
10234
+ email: string;
10235
+ phoneNumber: string;
10236
+ alternativePhoneNumber?: string | null | undefined;
10237
+ website?: string | null | undefined;
10238
+ };
10239
+ hqLocation: {
10240
+ latitude: number;
10241
+ longitude: number;
10242
+ address: string;
10243
+ city: string;
10244
+ country: string;
10245
+ postalCode: string;
10246
+ geohash?: string | null | undefined;
10247
+ };
10248
+ subscriptionModel: SubscriptionModel;
10249
+ logo?: string | undefined;
10250
+ } | undefined;
10251
+ }, {
10252
+ email: string;
10253
+ title: string;
10254
+ firstName: string;
10255
+ lastName: string;
10256
+ phoneNumber: string;
10257
+ password: string;
10258
+ isCreatingNewGroup: boolean;
10259
+ inviteToken?: string | undefined;
10260
+ clinicGroupData?: {
10261
+ name: string;
10262
+ contactInfo: {
10263
+ email: string;
10264
+ phoneNumber: string;
10265
+ alternativePhoneNumber?: string | null | undefined;
10266
+ website?: string | null | undefined;
10267
+ };
10268
+ hqLocation: {
10269
+ latitude: number;
10270
+ longitude: number;
10271
+ address: string;
10272
+ city: string;
10273
+ country: string;
10274
+ postalCode: string;
10275
+ geohash?: string | null | undefined;
10276
+ };
10277
+ logo?: string | undefined;
10278
+ subscriptionModel?: SubscriptionModel | undefined;
10279
+ } | undefined;
10280
+ }>;
10281
+ /**
10282
+ * Validaciona šema za kreiranje grupacije klinika
10283
+ */
10284
+ declare const clinicGroupSetupSchema: z.ZodObject<{
10285
+ languages: z.ZodArray<z.ZodNativeEnum<typeof Language>, "many">;
10286
+ practiceType: z.ZodNativeEnum<typeof PracticeType>;
10287
+ description: z.ZodString;
10288
+ logo: z.ZodString;
10289
+ calendarSyncEnabled: z.ZodBoolean;
10290
+ autoConfirmAppointments: z.ZodBoolean;
10291
+ }, "strip", z.ZodTypeAny, {
10292
+ description: string;
10293
+ logo: string;
10294
+ practiceType: PracticeType;
10295
+ languages: Language[];
10296
+ calendarSyncEnabled: boolean;
10297
+ autoConfirmAppointments: boolean;
10298
+ }, {
10299
+ description: string;
10300
+ logo: string;
10301
+ practiceType: PracticeType;
10302
+ languages: Language[];
10303
+ calendarSyncEnabled: boolean;
10304
+ autoConfirmAppointments: boolean;
10305
+ }>;
10306
+ /**
10307
+ * Validaciona šema za kreiranje klinike
10308
+ */
10309
+ declare const clinicBranchSetupSchema: z.ZodObject<{
10310
+ name: z.ZodString;
10311
+ location: z.ZodObject<{
10312
+ address: z.ZodString;
10313
+ city: z.ZodString;
10314
+ country: z.ZodString;
10315
+ postalCode: z.ZodString;
10316
+ latitude: z.ZodNumber;
10317
+ longitude: z.ZodNumber;
10318
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10319
+ }, "strip", z.ZodTypeAny, {
10320
+ latitude: number;
10321
+ longitude: number;
10322
+ address: string;
10323
+ city: string;
10324
+ country: string;
10325
+ postalCode: string;
10326
+ geohash?: string | null | undefined;
10327
+ }, {
10328
+ latitude: number;
10329
+ longitude: number;
10330
+ address: string;
10331
+ city: string;
10332
+ country: string;
10333
+ postalCode: string;
10334
+ geohash?: string | null | undefined;
10335
+ }>;
10336
+ description: z.ZodOptional<z.ZodString>;
10337
+ contactInfo: z.ZodObject<{
10338
+ email: z.ZodString;
10339
+ phoneNumber: z.ZodString;
10340
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10341
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10342
+ }, "strip", z.ZodTypeAny, {
10343
+ email: string;
10344
+ phoneNumber: string;
10345
+ alternativePhoneNumber?: string | null | undefined;
10346
+ website?: string | null | undefined;
10347
+ }, {
10348
+ email: string;
10349
+ phoneNumber: string;
10350
+ alternativePhoneNumber?: string | null | undefined;
10351
+ website?: string | null | undefined;
10352
+ }>;
10353
+ workingHours: z.ZodObject<{
10354
+ monday: z.ZodNullable<z.ZodObject<{
10355
+ open: z.ZodString;
10356
+ close: z.ZodString;
10357
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
10358
+ start: z.ZodString;
10359
+ end: z.ZodString;
10360
+ }, "strip", z.ZodTypeAny, {
10361
+ start: string;
10362
+ end: string;
10363
+ }, {
10364
+ start: string;
10365
+ end: string;
10366
+ }>, "many">>;
10367
+ }, "strip", z.ZodTypeAny, {
10368
+ open: string;
10369
+ close: string;
10370
+ breaks?: {
10371
+ start: string;
10372
+ end: string;
10373
+ }[] | undefined;
10374
+ }, {
10375
+ open: string;
10376
+ close: string;
10377
+ breaks?: {
10378
+ start: string;
10379
+ end: string;
10380
+ }[] | undefined;
10381
+ }>>;
10382
+ tuesday: z.ZodNullable<z.ZodObject<{
10383
+ open: z.ZodString;
10384
+ close: z.ZodString;
10385
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
10386
+ start: z.ZodString;
10387
+ end: z.ZodString;
10388
+ }, "strip", z.ZodTypeAny, {
10389
+ start: string;
10390
+ end: string;
10391
+ }, {
10392
+ start: string;
10393
+ end: string;
10394
+ }>, "many">>;
10395
+ }, "strip", z.ZodTypeAny, {
10396
+ open: string;
10397
+ close: string;
10398
+ breaks?: {
10399
+ start: string;
10400
+ end: string;
10401
+ }[] | undefined;
10402
+ }, {
10403
+ open: string;
10404
+ close: string;
10405
+ breaks?: {
10406
+ start: string;
10407
+ end: string;
10408
+ }[] | undefined;
10409
+ }>>;
10410
+ wednesday: z.ZodNullable<z.ZodObject<{
10411
+ open: z.ZodString;
10412
+ close: z.ZodString;
10413
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
10414
+ start: z.ZodString;
10415
+ end: z.ZodString;
10416
+ }, "strip", z.ZodTypeAny, {
10417
+ start: string;
10418
+ end: string;
10419
+ }, {
10420
+ start: string;
10421
+ end: string;
10422
+ }>, "many">>;
10423
+ }, "strip", z.ZodTypeAny, {
10424
+ open: string;
10425
+ close: string;
10426
+ breaks?: {
10427
+ start: string;
10428
+ end: string;
10429
+ }[] | undefined;
10430
+ }, {
10431
+ open: string;
10432
+ close: string;
10433
+ breaks?: {
10434
+ start: string;
10435
+ end: string;
10436
+ }[] | undefined;
10437
+ }>>;
10438
+ thursday: z.ZodNullable<z.ZodObject<{
10439
+ open: z.ZodString;
10440
+ close: z.ZodString;
10441
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
10442
+ start: z.ZodString;
10443
+ end: z.ZodString;
10444
+ }, "strip", z.ZodTypeAny, {
10445
+ start: string;
10446
+ end: string;
10447
+ }, {
10448
+ start: string;
10449
+ end: string;
10450
+ }>, "many">>;
10451
+ }, "strip", z.ZodTypeAny, {
10452
+ open: string;
10453
+ close: string;
10454
+ breaks?: {
10455
+ start: string;
10456
+ end: string;
10457
+ }[] | undefined;
10458
+ }, {
10459
+ open: string;
10460
+ close: string;
10461
+ breaks?: {
10462
+ start: string;
10463
+ end: string;
10464
+ }[] | undefined;
10465
+ }>>;
10466
+ friday: z.ZodNullable<z.ZodObject<{
10467
+ open: z.ZodString;
10468
+ close: z.ZodString;
10469
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
10470
+ start: z.ZodString;
10471
+ end: z.ZodString;
10472
+ }, "strip", z.ZodTypeAny, {
10473
+ start: string;
10474
+ end: string;
10475
+ }, {
10476
+ start: string;
10477
+ end: string;
10478
+ }>, "many">>;
10479
+ }, "strip", z.ZodTypeAny, {
10480
+ open: string;
10481
+ close: string;
10482
+ breaks?: {
10483
+ start: string;
10484
+ end: string;
10485
+ }[] | undefined;
10486
+ }, {
10487
+ open: string;
10488
+ close: string;
10489
+ breaks?: {
10490
+ start: string;
10491
+ end: string;
10492
+ }[] | undefined;
10493
+ }>>;
10494
+ saturday: z.ZodNullable<z.ZodObject<{
10495
+ open: z.ZodString;
10496
+ close: z.ZodString;
10497
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
10498
+ start: z.ZodString;
10499
+ end: z.ZodString;
10500
+ }, "strip", z.ZodTypeAny, {
10501
+ start: string;
10502
+ end: string;
10503
+ }, {
10504
+ start: string;
10505
+ end: string;
10506
+ }>, "many">>;
10507
+ }, "strip", z.ZodTypeAny, {
10508
+ open: string;
10509
+ close: string;
10510
+ breaks?: {
10511
+ start: string;
10512
+ end: string;
10513
+ }[] | undefined;
10514
+ }, {
10515
+ open: string;
10516
+ close: string;
10517
+ breaks?: {
10518
+ start: string;
10519
+ end: string;
10520
+ }[] | undefined;
10521
+ }>>;
10522
+ sunday: z.ZodNullable<z.ZodObject<{
10523
+ open: z.ZodString;
10524
+ close: z.ZodString;
10525
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
10526
+ start: z.ZodString;
10527
+ end: z.ZodString;
10528
+ }, "strip", z.ZodTypeAny, {
10529
+ start: string;
10530
+ end: string;
10531
+ }, {
10532
+ start: string;
10533
+ end: string;
10534
+ }>, "many">>;
10535
+ }, "strip", z.ZodTypeAny, {
10536
+ open: string;
10537
+ close: string;
10538
+ breaks?: {
10539
+ start: string;
10540
+ end: string;
10541
+ }[] | undefined;
10542
+ }, {
10543
+ open: string;
10544
+ close: string;
10545
+ breaks?: {
10546
+ start: string;
10547
+ end: string;
10548
+ }[] | undefined;
10549
+ }>>;
10550
+ }, "strip", z.ZodTypeAny, {
10551
+ monday: {
10552
+ open: string;
10553
+ close: string;
10554
+ breaks?: {
10555
+ start: string;
10556
+ end: string;
10557
+ }[] | undefined;
10558
+ } | null;
10559
+ tuesday: {
10560
+ open: string;
10561
+ close: string;
10562
+ breaks?: {
10563
+ start: string;
10564
+ end: string;
10565
+ }[] | undefined;
10566
+ } | null;
10567
+ wednesday: {
10568
+ open: string;
10569
+ close: string;
10570
+ breaks?: {
10571
+ start: string;
10572
+ end: string;
10573
+ }[] | undefined;
10574
+ } | null;
10575
+ thursday: {
10576
+ open: string;
10577
+ close: string;
10578
+ breaks?: {
10579
+ start: string;
10580
+ end: string;
10581
+ }[] | undefined;
10582
+ } | null;
10583
+ friday: {
10584
+ open: string;
10585
+ close: string;
10586
+ breaks?: {
10587
+ start: string;
10588
+ end: string;
10589
+ }[] | undefined;
10590
+ } | null;
10591
+ saturday: {
10592
+ open: string;
10593
+ close: string;
10594
+ breaks?: {
10595
+ start: string;
10596
+ end: string;
10597
+ }[] | undefined;
10598
+ } | null;
10599
+ sunday: {
10600
+ open: string;
10601
+ close: string;
10602
+ breaks?: {
10603
+ start: string;
10604
+ end: string;
10605
+ }[] | undefined;
10606
+ } | null;
10607
+ }, {
10608
+ monday: {
10609
+ open: string;
10610
+ close: string;
10611
+ breaks?: {
10612
+ start: string;
10613
+ end: string;
10614
+ }[] | undefined;
10615
+ } | null;
10616
+ tuesday: {
10617
+ open: string;
10618
+ close: string;
10619
+ breaks?: {
10620
+ start: string;
10621
+ end: string;
10622
+ }[] | undefined;
10623
+ } | null;
10624
+ wednesday: {
10625
+ open: string;
10626
+ close: string;
10627
+ breaks?: {
10628
+ start: string;
10629
+ end: string;
10630
+ }[] | undefined;
10631
+ } | null;
10632
+ thursday: {
10633
+ open: string;
10634
+ close: string;
10635
+ breaks?: {
10636
+ start: string;
10637
+ end: string;
10638
+ }[] | undefined;
10639
+ } | null;
10640
+ friday: {
10641
+ open: string;
10642
+ close: string;
10643
+ breaks?: {
10644
+ start: string;
10645
+ end: string;
10646
+ }[] | undefined;
10647
+ } | null;
10648
+ saturday: {
10649
+ open: string;
10650
+ close: string;
10651
+ breaks?: {
10652
+ start: string;
10653
+ end: string;
10654
+ }[] | undefined;
10655
+ } | null;
10656
+ sunday: {
10657
+ open: string;
10658
+ close: string;
10659
+ breaks?: {
10660
+ start: string;
10661
+ end: string;
10662
+ }[] | undefined;
10663
+ } | null;
10664
+ }>;
10665
+ tags: z.ZodArray<z.ZodNativeEnum<typeof ClinicTag>, "many">;
10666
+ logo: z.ZodOptional<z.ZodString>;
10667
+ photos: z.ZodArray<z.ZodString, "many">;
10668
+ photosWithTags: z.ZodOptional<z.ZodArray<z.ZodObject<{
10669
+ url: z.ZodString;
10670
+ tag: z.ZodString;
10671
+ }, "strip", z.ZodTypeAny, {
10672
+ url: string;
10673
+ tag: string;
10674
+ }, {
10675
+ url: string;
10676
+ tag: string;
10677
+ }>, "many">>;
10678
+ featuredPhotos: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
10679
+ }, "strip", z.ZodTypeAny, {
10680
+ tags: ClinicTag[];
10681
+ name: string;
10682
+ contactInfo: {
10683
+ email: string;
10684
+ phoneNumber: string;
10685
+ alternativePhoneNumber?: string | null | undefined;
10686
+ website?: string | null | undefined;
10687
+ };
10688
+ location: {
10689
+ latitude: number;
10690
+ longitude: number;
10691
+ address: string;
10692
+ city: string;
10693
+ country: string;
10694
+ postalCode: string;
10695
+ geohash?: string | null | undefined;
10696
+ };
10697
+ workingHours: {
10698
+ monday: {
10699
+ open: string;
10700
+ close: string;
10701
+ breaks?: {
10702
+ start: string;
10703
+ end: string;
10704
+ }[] | undefined;
10705
+ } | null;
10706
+ tuesday: {
10707
+ open: string;
10708
+ close: string;
10709
+ breaks?: {
10710
+ start: string;
10711
+ end: string;
10712
+ }[] | undefined;
10713
+ } | null;
10714
+ wednesday: {
10715
+ open: string;
10716
+ close: string;
10717
+ breaks?: {
10718
+ start: string;
10719
+ end: string;
10720
+ }[] | undefined;
10721
+ } | null;
10722
+ thursday: {
10723
+ open: string;
10724
+ close: string;
10725
+ breaks?: {
10726
+ start: string;
10727
+ end: string;
10728
+ }[] | undefined;
10729
+ } | null;
10730
+ friday: {
10731
+ open: string;
10732
+ close: string;
10733
+ breaks?: {
10734
+ start: string;
10735
+ end: string;
10736
+ }[] | undefined;
10737
+ } | null;
10738
+ saturday: {
10739
+ open: string;
10740
+ close: string;
10741
+ breaks?: {
10742
+ start: string;
10743
+ end: string;
10744
+ }[] | undefined;
10745
+ } | null;
10746
+ sunday: {
10747
+ open: string;
10748
+ close: string;
10749
+ breaks?: {
10750
+ start: string;
10751
+ end: string;
10752
+ }[] | undefined;
10753
+ } | null;
10754
+ };
10755
+ photos: string[];
10756
+ description?: string | undefined;
10757
+ logo?: string | undefined;
10758
+ photosWithTags?: {
10759
+ url: string;
10760
+ tag: string;
10761
+ }[] | undefined;
10762
+ featuredPhotos?: string[] | undefined;
10763
+ }, {
10764
+ tags: ClinicTag[];
10765
+ name: string;
10766
+ contactInfo: {
10767
+ email: string;
10768
+ phoneNumber: string;
10769
+ alternativePhoneNumber?: string | null | undefined;
10770
+ website?: string | null | undefined;
10771
+ };
10772
+ location: {
10773
+ latitude: number;
10774
+ longitude: number;
10775
+ address: string;
10776
+ city: string;
10777
+ country: string;
10778
+ postalCode: string;
10779
+ geohash?: string | null | undefined;
10780
+ };
10781
+ workingHours: {
10782
+ monday: {
10783
+ open: string;
10784
+ close: string;
10785
+ breaks?: {
10786
+ start: string;
10787
+ end: string;
10788
+ }[] | undefined;
10789
+ } | null;
10790
+ tuesday: {
10791
+ open: string;
10792
+ close: string;
10793
+ breaks?: {
10794
+ start: string;
10795
+ end: string;
10796
+ }[] | undefined;
10797
+ } | null;
10798
+ wednesday: {
10799
+ open: string;
10800
+ close: string;
10801
+ breaks?: {
10802
+ start: string;
10803
+ end: string;
10804
+ }[] | undefined;
10805
+ } | null;
10806
+ thursday: {
10807
+ open: string;
10808
+ close: string;
10809
+ breaks?: {
10810
+ start: string;
10811
+ end: string;
10812
+ }[] | undefined;
10813
+ } | null;
10814
+ friday: {
10815
+ open: string;
10816
+ close: string;
10817
+ breaks?: {
10818
+ start: string;
10819
+ end: string;
10820
+ }[] | undefined;
10821
+ } | null;
10822
+ saturday: {
10823
+ open: string;
10824
+ close: string;
10825
+ breaks?: {
10826
+ start: string;
10827
+ end: string;
10828
+ }[] | undefined;
10829
+ } | null;
10830
+ sunday: {
10831
+ open: string;
10832
+ close: string;
10833
+ breaks?: {
10834
+ start: string;
10835
+ end: string;
10836
+ }[] | undefined;
10837
+ } | null;
10838
+ };
10839
+ photos: string[];
10840
+ description?: string | undefined;
10841
+ logo?: string | undefined;
10842
+ photosWithTags?: {
10843
+ url: string;
10844
+ tag: string;
10845
+ }[] | undefined;
10846
+ featuredPhotos?: string[] | undefined;
10847
+ }>;
10848
+ /**
10849
+ * Validaciona šema za updating clinic admin
10850
+ */
10851
+ declare const updateClinicAdminSchema: z.ZodObject<{
10852
+ userRef: z.ZodOptional<z.ZodString>;
10853
+ clinicGroupId: z.ZodOptional<z.ZodOptional<z.ZodString>>;
10854
+ isGroupOwner: z.ZodOptional<z.ZodBoolean>;
10855
+ clinicsManaged: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
10856
+ contactInfo: z.ZodOptional<z.ZodObject<{
10857
+ firstName: z.ZodString;
10858
+ lastName: z.ZodString;
10859
+ title: z.ZodString;
10860
+ email: z.ZodString;
10861
+ phoneNumber: z.ZodString;
10862
+ }, "strip", z.ZodTypeAny, {
10863
+ email: string;
10864
+ title: string;
10865
+ firstName: string;
10866
+ lastName: string;
10867
+ phoneNumber: string;
10868
+ }, {
10869
+ email: string;
10870
+ title: string;
10871
+ firstName: string;
10872
+ lastName: string;
10873
+ phoneNumber: string;
10874
+ }>>;
10875
+ roleTitle: z.ZodOptional<z.ZodString>;
10876
+ isActive: z.ZodOptional<z.ZodBoolean>;
10877
+ }, "strip", z.ZodTypeAny, {
10878
+ isActive?: boolean | undefined;
10879
+ isGroupOwner?: boolean | undefined;
10880
+ userRef?: string | undefined;
10881
+ clinicGroupId?: string | undefined;
10882
+ clinicsManaged?: string[] | undefined;
10883
+ contactInfo?: {
10884
+ email: string;
10885
+ title: string;
10886
+ firstName: string;
10887
+ lastName: string;
10888
+ phoneNumber: string;
10889
+ } | undefined;
10890
+ roleTitle?: string | undefined;
10891
+ }, {
10892
+ isActive?: boolean | undefined;
10893
+ isGroupOwner?: boolean | undefined;
10894
+ userRef?: string | undefined;
10895
+ clinicGroupId?: string | undefined;
10896
+ clinicsManaged?: string[] | undefined;
10897
+ contactInfo?: {
10898
+ email: string;
10899
+ title: string;
10900
+ firstName: string;
10901
+ lastName: string;
10902
+ phoneNumber: string;
10903
+ } | undefined;
10904
+ roleTitle?: string | undefined;
10905
+ }>;
10906
+ /**
10907
+ * Validaciona šema za updating clinic group
10908
+ */
10909
+ declare const updateClinicGroupSchema: z.ZodObject<{
10910
+ name: z.ZodOptional<z.ZodString>;
10911
+ description: z.ZodOptional<z.ZodOptional<z.ZodString>>;
10912
+ hqLocation: z.ZodOptional<z.ZodObject<{
10913
+ address: z.ZodString;
10914
+ city: z.ZodString;
10915
+ country: z.ZodString;
10916
+ postalCode: z.ZodString;
10917
+ latitude: z.ZodNumber;
10918
+ longitude: z.ZodNumber;
10919
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10920
+ }, "strip", z.ZodTypeAny, {
10921
+ latitude: number;
10922
+ longitude: number;
10923
+ address: string;
10924
+ city: string;
10925
+ country: string;
10926
+ postalCode: string;
10927
+ geohash?: string | null | undefined;
10928
+ }, {
10929
+ latitude: number;
10930
+ longitude: number;
10931
+ address: string;
10932
+ city: string;
10933
+ country: string;
10934
+ postalCode: string;
10935
+ geohash?: string | null | undefined;
10936
+ }>>;
10937
+ contactInfo: z.ZodOptional<z.ZodObject<{
10938
+ email: z.ZodString;
10939
+ phoneNumber: z.ZodString;
10940
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10941
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
10942
+ }, "strip", z.ZodTypeAny, {
10943
+ email: string;
10944
+ phoneNumber: string;
10945
+ alternativePhoneNumber?: string | null | undefined;
10946
+ website?: string | null | undefined;
10947
+ }, {
10948
+ email: string;
10949
+ phoneNumber: string;
10950
+ alternativePhoneNumber?: string | null | undefined;
10951
+ website?: string | null | undefined;
10952
+ }>>;
10953
+ contactPerson: z.ZodOptional<z.ZodObject<{
10954
+ firstName: z.ZodString;
10955
+ lastName: z.ZodString;
10956
+ title: z.ZodString;
10957
+ email: z.ZodString;
10958
+ phoneNumber: z.ZodString;
10959
+ }, "strip", z.ZodTypeAny, {
10960
+ email: string;
10961
+ title: string;
10962
+ firstName: string;
10963
+ lastName: string;
10964
+ phoneNumber: string;
10965
+ }, {
10966
+ email: string;
10967
+ title: string;
10968
+ firstName: string;
10969
+ lastName: string;
10970
+ phoneNumber: string;
10971
+ }>>;
10972
+ ownerId: z.ZodOptional<z.ZodString>;
10973
+ isActive: z.ZodOptional<z.ZodBoolean>;
10974
+ logo: z.ZodOptional<z.ZodOptional<z.ZodString>>;
10975
+ practiceType: z.ZodOptional<z.ZodOptional<z.ZodNativeEnum<typeof PracticeType>>>;
10976
+ languages: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof Language>, "many">>>;
10977
+ subscriptionModel: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodNativeEnum<typeof SubscriptionModel>>>>;
10978
+ calendarSyncEnabled: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
10979
+ autoConfirmAppointments: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
10980
+ }, "strip", z.ZodTypeAny, {
10981
+ description?: string | undefined;
10982
+ isActive?: boolean | undefined;
10983
+ name?: string | undefined;
10984
+ contactInfo?: {
10985
+ email: string;
10986
+ phoneNumber: string;
10987
+ alternativePhoneNumber?: string | null | undefined;
10988
+ website?: string | null | undefined;
10989
+ } | undefined;
10990
+ hqLocation?: {
10991
+ latitude: number;
10992
+ longitude: number;
10993
+ address: string;
10994
+ city: string;
10995
+ country: string;
10996
+ postalCode: string;
10997
+ geohash?: string | null | undefined;
10998
+ } | undefined;
10999
+ contactPerson?: {
11000
+ email: string;
11001
+ title: string;
11002
+ firstName: string;
11003
+ lastName: string;
11004
+ phoneNumber: string;
11005
+ } | undefined;
11006
+ ownerId?: string | undefined;
11007
+ logo?: string | undefined;
11008
+ practiceType?: PracticeType | undefined;
11009
+ languages?: Language[] | undefined;
11010
+ subscriptionModel?: SubscriptionModel | undefined;
11011
+ calendarSyncEnabled?: boolean | undefined;
11012
+ autoConfirmAppointments?: boolean | undefined;
11013
+ }, {
11014
+ description?: string | undefined;
11015
+ isActive?: boolean | undefined;
11016
+ name?: string | undefined;
11017
+ contactInfo?: {
11018
+ email: string;
11019
+ phoneNumber: string;
11020
+ alternativePhoneNumber?: string | null | undefined;
11021
+ website?: string | null | undefined;
11022
+ } | undefined;
11023
+ hqLocation?: {
11024
+ latitude: number;
11025
+ longitude: number;
11026
+ address: string;
11027
+ city: string;
11028
+ country: string;
11029
+ postalCode: string;
11030
+ geohash?: string | null | undefined;
11031
+ } | undefined;
11032
+ contactPerson?: {
11033
+ email: string;
11034
+ title: string;
11035
+ firstName: string;
11036
+ lastName: string;
11037
+ phoneNumber: string;
11038
+ } | undefined;
11039
+ ownerId?: string | undefined;
11040
+ logo?: string | undefined;
11041
+ practiceType?: PracticeType | undefined;
11042
+ languages?: Language[] | undefined;
11043
+ subscriptionModel?: SubscriptionModel | undefined;
11044
+ calendarSyncEnabled?: boolean | undefined;
11045
+ autoConfirmAppointments?: boolean | undefined;
11046
+ }>;
11047
+ /**
11048
+ * Validaciona šema za updating clinic
11049
+ */
11050
+ declare const updateClinicSchema: z.ZodObject<{
11051
+ clinicGroupId: z.ZodOptional<z.ZodString>;
11052
+ name: z.ZodOptional<z.ZodString>;
11053
+ description: z.ZodOptional<z.ZodOptional<z.ZodString>>;
11054
+ location: z.ZodOptional<z.ZodObject<{
11055
+ address: z.ZodString;
11056
+ city: z.ZodString;
11057
+ country: z.ZodString;
11058
+ postalCode: z.ZodString;
11059
+ latitude: z.ZodNumber;
11060
+ longitude: z.ZodNumber;
11061
+ geohash: z.ZodOptional<z.ZodNullable<z.ZodString>>;
11062
+ }, "strip", z.ZodTypeAny, {
11063
+ latitude: number;
11064
+ longitude: number;
11065
+ address: string;
11066
+ city: string;
11067
+ country: string;
11068
+ postalCode: string;
11069
+ geohash?: string | null | undefined;
11070
+ }, {
11071
+ latitude: number;
11072
+ longitude: number;
11073
+ address: string;
11074
+ city: string;
11075
+ country: string;
11076
+ postalCode: string;
11077
+ geohash?: string | null | undefined;
11078
+ }>>;
11079
+ contactInfo: z.ZodOptional<z.ZodObject<{
11080
+ email: z.ZodString;
11081
+ phoneNumber: z.ZodString;
11082
+ alternativePhoneNumber: z.ZodOptional<z.ZodNullable<z.ZodString>>;
11083
+ website: z.ZodOptional<z.ZodNullable<z.ZodString>>;
11084
+ }, "strip", z.ZodTypeAny, {
11085
+ email: string;
11086
+ phoneNumber: string;
11087
+ alternativePhoneNumber?: string | null | undefined;
11088
+ website?: string | null | undefined;
11089
+ }, {
11090
+ email: string;
11091
+ phoneNumber: string;
11092
+ alternativePhoneNumber?: string | null | undefined;
11093
+ website?: string | null | undefined;
11094
+ }>>;
11095
+ workingHours: z.ZodOptional<z.ZodObject<{
11096
+ monday: z.ZodNullable<z.ZodObject<{
11097
+ open: z.ZodString;
11098
+ close: z.ZodString;
11099
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
11100
+ start: z.ZodString;
11101
+ end: z.ZodString;
11102
+ }, "strip", z.ZodTypeAny, {
11103
+ start: string;
11104
+ end: string;
11105
+ }, {
11106
+ start: string;
11107
+ end: string;
11108
+ }>, "many">>;
11109
+ }, "strip", z.ZodTypeAny, {
11110
+ open: string;
11111
+ close: string;
11112
+ breaks?: {
11113
+ start: string;
11114
+ end: string;
11115
+ }[] | undefined;
11116
+ }, {
11117
+ open: string;
11118
+ close: string;
11119
+ breaks?: {
11120
+ start: string;
11121
+ end: string;
11122
+ }[] | undefined;
11123
+ }>>;
11124
+ tuesday: z.ZodNullable<z.ZodObject<{
11125
+ open: z.ZodString;
11126
+ close: z.ZodString;
11127
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
11128
+ start: z.ZodString;
11129
+ end: z.ZodString;
11130
+ }, "strip", z.ZodTypeAny, {
11131
+ start: string;
11132
+ end: string;
11133
+ }, {
11134
+ start: string;
11135
+ end: string;
11136
+ }>, "many">>;
11137
+ }, "strip", z.ZodTypeAny, {
11138
+ open: string;
11139
+ close: string;
11140
+ breaks?: {
11141
+ start: string;
11142
+ end: string;
11143
+ }[] | undefined;
11144
+ }, {
11145
+ open: string;
11146
+ close: string;
11147
+ breaks?: {
11148
+ start: string;
11149
+ end: string;
11150
+ }[] | undefined;
11151
+ }>>;
11152
+ wednesday: z.ZodNullable<z.ZodObject<{
11153
+ open: z.ZodString;
11154
+ close: z.ZodString;
11155
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
11156
+ start: z.ZodString;
11157
+ end: z.ZodString;
11158
+ }, "strip", z.ZodTypeAny, {
11159
+ start: string;
11160
+ end: string;
11161
+ }, {
11162
+ start: string;
11163
+ end: string;
11164
+ }>, "many">>;
11165
+ }, "strip", z.ZodTypeAny, {
11166
+ open: string;
11167
+ close: string;
11168
+ breaks?: {
11169
+ start: string;
11170
+ end: string;
11171
+ }[] | undefined;
11172
+ }, {
11173
+ open: string;
11174
+ close: string;
11175
+ breaks?: {
11176
+ start: string;
11177
+ end: string;
11178
+ }[] | undefined;
11179
+ }>>;
11180
+ thursday: z.ZodNullable<z.ZodObject<{
11181
+ open: z.ZodString;
11182
+ close: z.ZodString;
11183
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
11184
+ start: z.ZodString;
11185
+ end: z.ZodString;
11186
+ }, "strip", z.ZodTypeAny, {
11187
+ start: string;
11188
+ end: string;
11189
+ }, {
11190
+ start: string;
11191
+ end: string;
11192
+ }>, "many">>;
11193
+ }, "strip", z.ZodTypeAny, {
11194
+ open: string;
11195
+ close: string;
11196
+ breaks?: {
11197
+ start: string;
11198
+ end: string;
11199
+ }[] | undefined;
11200
+ }, {
11201
+ open: string;
11202
+ close: string;
11203
+ breaks?: {
11204
+ start: string;
11205
+ end: string;
11206
+ }[] | undefined;
11207
+ }>>;
11208
+ friday: z.ZodNullable<z.ZodObject<{
11209
+ open: z.ZodString;
11210
+ close: z.ZodString;
11211
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
11212
+ start: z.ZodString;
11213
+ end: z.ZodString;
11214
+ }, "strip", z.ZodTypeAny, {
11215
+ start: string;
11216
+ end: string;
11217
+ }, {
11218
+ start: string;
11219
+ end: string;
11220
+ }>, "many">>;
11221
+ }, "strip", z.ZodTypeAny, {
11222
+ open: string;
11223
+ close: string;
11224
+ breaks?: {
11225
+ start: string;
11226
+ end: string;
11227
+ }[] | undefined;
11228
+ }, {
11229
+ open: string;
11230
+ close: string;
11231
+ breaks?: {
11232
+ start: string;
11233
+ end: string;
11234
+ }[] | undefined;
11235
+ }>>;
11236
+ saturday: z.ZodNullable<z.ZodObject<{
11237
+ open: z.ZodString;
11238
+ close: z.ZodString;
11239
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
11240
+ start: z.ZodString;
11241
+ end: z.ZodString;
11242
+ }, "strip", z.ZodTypeAny, {
11243
+ start: string;
11244
+ end: string;
11245
+ }, {
11246
+ start: string;
11247
+ end: string;
11248
+ }>, "many">>;
11249
+ }, "strip", z.ZodTypeAny, {
11250
+ open: string;
11251
+ close: string;
11252
+ breaks?: {
11253
+ start: string;
11254
+ end: string;
11255
+ }[] | undefined;
11256
+ }, {
11257
+ open: string;
11258
+ close: string;
11259
+ breaks?: {
11260
+ start: string;
11261
+ end: string;
11262
+ }[] | undefined;
11263
+ }>>;
11264
+ sunday: z.ZodNullable<z.ZodObject<{
11265
+ open: z.ZodString;
11266
+ close: z.ZodString;
11267
+ breaks: z.ZodOptional<z.ZodArray<z.ZodObject<{
11268
+ start: z.ZodString;
11269
+ end: z.ZodString;
11270
+ }, "strip", z.ZodTypeAny, {
11271
+ start: string;
11272
+ end: string;
11273
+ }, {
11274
+ start: string;
11275
+ end: string;
11276
+ }>, "many">>;
11277
+ }, "strip", z.ZodTypeAny, {
11278
+ open: string;
11279
+ close: string;
11280
+ breaks?: {
11281
+ start: string;
11282
+ end: string;
11283
+ }[] | undefined;
11284
+ }, {
11285
+ open: string;
11286
+ close: string;
11287
+ breaks?: {
11288
+ start: string;
11289
+ end: string;
11290
+ }[] | undefined;
11291
+ }>>;
11292
+ }, "strip", z.ZodTypeAny, {
11293
+ monday: {
11294
+ open: string;
11295
+ close: string;
11296
+ breaks?: {
11297
+ start: string;
11298
+ end: string;
11299
+ }[] | undefined;
11300
+ } | null;
11301
+ tuesday: {
11302
+ open: string;
11303
+ close: string;
11304
+ breaks?: {
11305
+ start: string;
11306
+ end: string;
11307
+ }[] | undefined;
11308
+ } | null;
11309
+ wednesday: {
11310
+ open: string;
11311
+ close: string;
11312
+ breaks?: {
11313
+ start: string;
11314
+ end: string;
11315
+ }[] | undefined;
11316
+ } | null;
11317
+ thursday: {
11318
+ open: string;
11319
+ close: string;
11320
+ breaks?: {
11321
+ start: string;
11322
+ end: string;
11323
+ }[] | undefined;
11324
+ } | null;
11325
+ friday: {
11326
+ open: string;
11327
+ close: string;
11328
+ breaks?: {
11329
+ start: string;
11330
+ end: string;
11331
+ }[] | undefined;
11332
+ } | null;
11333
+ saturday: {
11334
+ open: string;
11335
+ close: string;
11336
+ breaks?: {
11337
+ start: string;
11338
+ end: string;
11339
+ }[] | undefined;
11340
+ } | null;
11341
+ sunday: {
11342
+ open: string;
11343
+ close: string;
11344
+ breaks?: {
11345
+ start: string;
11346
+ end: string;
11347
+ }[] | undefined;
11348
+ } | null;
11349
+ }, {
11350
+ monday: {
11351
+ open: string;
11352
+ close: string;
11353
+ breaks?: {
11354
+ start: string;
11355
+ end: string;
11356
+ }[] | undefined;
11357
+ } | null;
11358
+ tuesday: {
11359
+ open: string;
11360
+ close: string;
11361
+ breaks?: {
11362
+ start: string;
11363
+ end: string;
11364
+ }[] | undefined;
11365
+ } | null;
11366
+ wednesday: {
11367
+ open: string;
11368
+ close: string;
11369
+ breaks?: {
11370
+ start: string;
11371
+ end: string;
11372
+ }[] | undefined;
11373
+ } | null;
11374
+ thursday: {
11375
+ open: string;
11376
+ close: string;
11377
+ breaks?: {
11378
+ start: string;
11379
+ end: string;
11380
+ }[] | undefined;
11381
+ } | null;
11382
+ friday: {
11383
+ open: string;
11384
+ close: string;
11385
+ breaks?: {
11386
+ start: string;
11387
+ end: string;
11388
+ }[] | undefined;
11389
+ } | null;
11390
+ saturday: {
11391
+ open: string;
11392
+ close: string;
11393
+ breaks?: {
11394
+ start: string;
11395
+ end: string;
11396
+ }[] | undefined;
11397
+ } | null;
11398
+ sunday: {
11399
+ open: string;
11400
+ close: string;
11401
+ breaks?: {
11402
+ start: string;
11403
+ end: string;
11404
+ }[] | undefined;
11405
+ } | null;
11406
+ }>>;
11407
+ tags: z.ZodOptional<z.ZodArray<z.ZodNativeEnum<typeof ClinicTag>, "many">>;
11408
+ photos: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
11409
+ photosWithTags: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
11410
+ url: z.ZodString;
11411
+ tag: z.ZodString;
11412
+ }, "strip", z.ZodTypeAny, {
11413
+ url: string;
11414
+ tag: string;
11415
+ }, {
11416
+ url: string;
11417
+ tag: string;
11418
+ }>, "many">>>;
11419
+ doctors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
11420
+ services: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
11421
+ admins: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
11422
+ isActive: z.ZodOptional<z.ZodBoolean>;
11423
+ isVerified: z.ZodOptional<z.ZodBoolean>;
11424
+ logo: z.ZodOptional<z.ZodOptional<z.ZodString>>;
11425
+ featuredPhotos: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
11426
+ }, "strip", z.ZodTypeAny, {
11427
+ description?: string | undefined;
11428
+ tags?: ClinicTag[] | undefined;
11429
+ isActive?: boolean | undefined;
11430
+ name?: string | undefined;
11431
+ isVerified?: boolean | undefined;
11432
+ doctors?: string[] | undefined;
11433
+ clinicGroupId?: string | undefined;
11434
+ contactInfo?: {
11435
+ email: string;
11436
+ phoneNumber: string;
11437
+ alternativePhoneNumber?: string | null | undefined;
11438
+ website?: string | null | undefined;
11439
+ } | undefined;
11440
+ logo?: string | undefined;
11441
+ location?: {
11442
+ latitude: number;
11443
+ longitude: number;
11444
+ address: string;
11445
+ city: string;
11446
+ country: string;
11447
+ postalCode: string;
11448
+ geohash?: string | null | undefined;
11449
+ } | undefined;
11450
+ workingHours?: {
11451
+ monday: {
11452
+ open: string;
11453
+ close: string;
11454
+ breaks?: {
11455
+ start: string;
11456
+ end: string;
11457
+ }[] | undefined;
11458
+ } | null;
11459
+ tuesday: {
11460
+ open: string;
11461
+ close: string;
11462
+ breaks?: {
11463
+ start: string;
11464
+ end: string;
11465
+ }[] | undefined;
11466
+ } | null;
11467
+ wednesday: {
11468
+ open: string;
11469
+ close: string;
11470
+ breaks?: {
11471
+ start: string;
11472
+ end: string;
11473
+ }[] | undefined;
11474
+ } | null;
11475
+ thursday: {
11476
+ open: string;
11477
+ close: string;
11478
+ breaks?: {
11479
+ start: string;
11480
+ end: string;
11481
+ }[] | undefined;
11482
+ } | null;
11483
+ friday: {
11484
+ open: string;
11485
+ close: string;
11486
+ breaks?: {
11487
+ start: string;
11488
+ end: string;
11489
+ }[] | undefined;
11490
+ } | null;
11491
+ saturday: {
11492
+ open: string;
11493
+ close: string;
11494
+ breaks?: {
11495
+ start: string;
11496
+ end: string;
11497
+ }[] | undefined;
11498
+ } | null;
11499
+ sunday: {
11500
+ open: string;
11501
+ close: string;
11502
+ breaks?: {
11503
+ start: string;
11504
+ end: string;
11505
+ }[] | undefined;
11506
+ } | null;
11507
+ } | undefined;
11508
+ photos?: string[] | undefined;
11509
+ photosWithTags?: {
11510
+ url: string;
11511
+ tag: string;
11512
+ }[] | undefined;
11513
+ services?: string[] | undefined;
11514
+ admins?: string[] | undefined;
11515
+ featuredPhotos?: string[] | undefined;
11516
+ }, {
11517
+ description?: string | undefined;
11518
+ tags?: ClinicTag[] | undefined;
11519
+ isActive?: boolean | undefined;
11520
+ name?: string | undefined;
11521
+ isVerified?: boolean | undefined;
11522
+ doctors?: string[] | undefined;
11523
+ clinicGroupId?: string | undefined;
11524
+ contactInfo?: {
11525
+ email: string;
11526
+ phoneNumber: string;
11527
+ alternativePhoneNumber?: string | null | undefined;
11528
+ website?: string | null | undefined;
11529
+ } | undefined;
11530
+ logo?: string | undefined;
11531
+ location?: {
11532
+ latitude: number;
11533
+ longitude: number;
11534
+ address: string;
11535
+ city: string;
11536
+ country: string;
11537
+ postalCode: string;
11538
+ geohash?: string | null | undefined;
11539
+ } | undefined;
11540
+ workingHours?: {
11541
+ monday: {
11542
+ open: string;
11543
+ close: string;
11544
+ breaks?: {
11545
+ start: string;
11546
+ end: string;
11547
+ }[] | undefined;
11548
+ } | null;
11549
+ tuesday: {
11550
+ open: string;
11551
+ close: string;
11552
+ breaks?: {
11553
+ start: string;
11554
+ end: string;
11555
+ }[] | undefined;
11556
+ } | null;
11557
+ wednesday: {
11558
+ open: string;
11559
+ close: string;
11560
+ breaks?: {
11561
+ start: string;
11562
+ end: string;
11563
+ }[] | undefined;
11564
+ } | null;
11565
+ thursday: {
11566
+ open: string;
11567
+ close: string;
11568
+ breaks?: {
11569
+ start: string;
11570
+ end: string;
11571
+ }[] | undefined;
11572
+ } | null;
11573
+ friday: {
11574
+ open: string;
11575
+ close: string;
11576
+ breaks?: {
11577
+ start: string;
11578
+ end: string;
11579
+ }[] | undefined;
11580
+ } | null;
11581
+ saturday: {
11582
+ open: string;
11583
+ close: string;
11584
+ breaks?: {
11585
+ start: string;
11586
+ end: string;
11587
+ }[] | undefined;
11588
+ } | null;
11589
+ sunday: {
11590
+ open: string;
11591
+ close: string;
11592
+ breaks?: {
11593
+ start: string;
11594
+ end: string;
11595
+ }[] | undefined;
11596
+ } | null;
11597
+ } | undefined;
11598
+ photos?: string[] | undefined;
11599
+ photosWithTags?: {
11600
+ url: string;
11601
+ tag: string;
11602
+ }[] | undefined;
11603
+ services?: string[] | undefined;
11604
+ admins?: string[] | undefined;
11605
+ featuredPhotos?: string[] | undefined;
9172
11606
  }>;
9173
11607
 
9174
11608
  declare enum FirebaseErrorCode {
@@ -9435,4 +11869,4 @@ interface Technology {
9435
11869
  updatedAt: Date;
9436
11870
  }
9437
11871
 
9438
- export { AUTH_ERRORS, type AddAllergyData, type AddBlockingConditionData, type AddContraindicationData, type AddMedicationData, type AddressData, type Allergy, type AllergySubtype, AllergyType, type AllergyTypeWithSubtype, type AppointmentNotification, type AppointmentReminderNotification, AuthError, AuthService, type BaseNotification, BlockingCondition, type Brand, CLINICS_COLLECTION, CLINIC_ADMINS_COLLECTION, CLINIC_GROUPS_COLLECTION, type Category, CertificationLevel, CertificationSpecialty, type Clinic, type ClinicAdmin, ClinicAdminService, type ClinicContactInfo, type ClinicGroup, ClinicGroupService, type ClinicLocation, type ClinicReview, ClinicService, type ClinicTags, Contraindication, CosmeticAllergySubtype, type CreateClinicAdminData, type CreateClinicData, type CreateClinicGroupData, type CreateDocumentTemplateData, type CreatePatientLocationInfoData, type CreatePatientMedicalInfoData, type CreatePatientProfileData, type CreatePatientSensitiveInfoData, type CreatePractitionerData, type CreateUserData, Currency, DOCUMENTATION_TEMPLATES_COLLECTION, type DocumentElement, DocumentElementType, type DocumentTemplate, DocumentationTemplateService, DynamicVariable, type EmergencyContact, EnvironmentalAllergySubtype, FILLED_DOCUMENTS_COLLECTION, type FilledDocument, FilledDocumentService, FilledDocumentStatus, FirebaseErrorCode, type FirebaseUser, FoodAllergySubtype, type GamificationInfo, Gender, HeadingLevel, ListType, type LocationData, MedicationAllergySubtype, type Notification, NotificationService, NotificationStatus, NotificationType, PATIENTS_COLLECTION, PATIENT_APPOINTMENTS_COLLECTION, PATIENT_LOCATION_INFO_COLLECTION, PATIENT_MEDICAL_HISTORY_COLLECTION, PATIENT_MEDICAL_INFO_COLLECTION, PATIENT_SENSITIVE_INFO_COLLECTION, PRACTITIONERS_COLLECTION, type PatientClinic, type PatientDoctor, type PatientLocationInfo, type PatientMedicalInfo, type PatientProfile, type PatientProfileComplete, type PatientSensitiveInfo, PatientService, type PostRequirementNotification, type Practitioner, type PractitionerBasicInfo, type PractitionerCertification, type PractitionerClinicProcedures, type PractitionerReview, PractitionerService, type PractitionerWorkingHours, type PreRequirementNotification, PricingMeasure, ProcedureFamily, type Product, type Requirement, type Subcategory, type Technology, TreatmentBenefit, USER_ERRORS, type UpdateAllergyData, type UpdateBlockingConditionData, type UpdateClinicAdminData, type UpdateClinicData, type UpdateClinicGroupData, type UpdateContraindicationData, type UpdateDocumentTemplateData, type UpdateMedicationData, type UpdatePatientLocationInfoData, type UpdatePatientMedicalInfoData, type UpdatePatientProfileData, type UpdatePatientSensitiveInfoData, type UpdatePractitionerData, type UpdateVitalStatsData, type User, UserRole, UserService, type ValidationSchema, type VitalStats, type WorkingHours, addAllergySchema, addBlockingConditionSchema, addContraindicationSchema, addMedicationSchema, addressDataSchema, adminInfoSchema, adminTokenSchema, allergySchema, allergySubtypeSchema, appointmentNotificationSchema, appointmentReminderNotificationSchema, baseNotificationSchema, blockingConditionSchema, clinicAdminOptionsSchema, clinicAdminSchema, clinicContactInfoSchema, clinicGroupSchema, clinicInfoSchema, clinicLocationSchema, clinicReviewSchema, clinicSchema, clinicTagsSchema, contactPersonSchema, contraindicationSchema, createAdminTokenSchema, createClinicAdminSchema, createClinicGroupSchema, createClinicSchema, createDefaultClinicGroupSchema, createDocumentTemplateSchema, createPatientLocationInfoSchema, createPatientMedicalInfoSchema, createPatientProfileSchema, createPatientSensitiveInfoSchema, createPractitionerSchema, createUserOptionsSchema, doctorInfoSchema, documentElementSchema, documentElementWithoutIdSchema, documentTemplateSchema, emailSchema, emergencyContactSchema, gamificationSchema, getFirebaseApp, getFirebaseAuth, getFirebaseDB, getFirebaseInstance, initializeFirebase, locationDataSchema, medicationSchema, notificationSchema, passwordSchema, patientClinicSchema, patientDoctorSchema, patientLocationInfoSchema, patientMedicalInfoSchema, patientProfileSchema, patientSensitiveInfoSchema, postRequirementNotificationSchema, practitionerBasicInfoSchema, practitionerCertificationSchema, practitionerClinicProceduresSchema, practitionerReviewSchema, practitionerSchema, practitionerWorkingHoursSchema, preRequirementNotificationSchema, reviewInfoSchema, serviceInfoSchema, timestampSchema, updateAllergySchema, updateBlockingConditionSchema, updateContraindicationSchema, updateDocumentTemplateSchema, updateMedicationSchema, updatePatientMedicalInfoSchema, updateVitalStatsSchema, userRoleSchema, userRolesSchema, userSchema, vitalStatsSchema, workingHoursSchema };
11872
+ export { AUTH_ERRORS, type AddAllergyData, type AddBlockingConditionData, type AddContraindicationData, type AddMedicationData, type AddressData, type Allergy, type AllergySubtype, AllergyType, type AllergyTypeWithSubtype, type AppointmentNotification, type AppointmentReminderNotification, AuthError, AuthService, type BaseNotification, BlockingCondition, type Brand, CLINICS_COLLECTION, CLINIC_ADMINS_COLLECTION, CLINIC_GROUPS_COLLECTION, type Category, CertificationLevel, CertificationSpecialty, type Clinic, type ClinicAdmin, ClinicAdminService, type ClinicContactInfo, type ClinicGroup, ClinicGroupService, type ClinicLocation, type ClinicReview, ClinicService, type ClinicTags, Contraindication, CosmeticAllergySubtype, type CreateClinicAdminData, type CreateClinicData, type CreateClinicGroupData, type CreateDocumentTemplateData, type CreatePatientLocationInfoData, type CreatePatientMedicalInfoData, type CreatePatientProfileData, type CreatePatientSensitiveInfoData, type CreatePractitionerData, type CreateUserData, Currency, DOCUMENTATION_TEMPLATES_COLLECTION, type DocumentElement, DocumentElementType, type DocumentTemplate, DocumentationTemplateService, DynamicVariable, type EmergencyContact, EnvironmentalAllergySubtype, FILLED_DOCUMENTS_COLLECTION, type FilledDocument, FilledDocumentService, FilledDocumentStatus, FirebaseErrorCode, type FirebaseUser, FoodAllergySubtype, type GamificationInfo, Gender, HeadingLevel, ListType, type LocationData, MedicationAllergySubtype, type Notification, NotificationService, NotificationStatus, NotificationType, PATIENTS_COLLECTION, PATIENT_APPOINTMENTS_COLLECTION, PATIENT_LOCATION_INFO_COLLECTION, PATIENT_MEDICAL_HISTORY_COLLECTION, PATIENT_MEDICAL_INFO_COLLECTION, PATIENT_SENSITIVE_INFO_COLLECTION, PRACTITIONERS_COLLECTION, type PatientClinic, type PatientDoctor, type PatientLocationInfo, type PatientMedicalInfo, type PatientProfile, type PatientProfileComplete, type PatientSensitiveInfo, PatientService, type PostRequirementNotification, type Practitioner, type PractitionerBasicInfo, type PractitionerCertification, type PractitionerClinicProcedures, type PractitionerReview, PractitionerService, type PractitionerWorkingHours, type PreRequirementNotification, PricingMeasure, ProcedureFamily, type Product, type Requirement, type Subcategory, type Technology, TreatmentBenefit, USER_ERRORS, type UpdateAllergyData, type UpdateBlockingConditionData, type UpdateClinicAdminData, type UpdateClinicData, type UpdateClinicGroupData, type UpdateContraindicationData, type UpdateDocumentTemplateData, type UpdateMedicationData, type UpdatePatientLocationInfoData, type UpdatePatientMedicalInfoData, type UpdatePatientProfileData, type UpdatePatientSensitiveInfoData, type UpdatePractitionerData, type UpdateVitalStatsData, type User, UserRole, UserService, type ValidationSchema, type VitalStats, type WorkingHours, addAllergySchema, addBlockingConditionSchema, addContraindicationSchema, addMedicationSchema, addressDataSchema, adminInfoSchema, adminTokenSchema, allergySchema, allergySubtypeSchema, appointmentNotificationSchema, appointmentReminderNotificationSchema, baseNotificationSchema, blockingConditionSchema, clinicAdminOptionsSchema, clinicAdminSchema, clinicAdminSignupSchema, clinicBranchSetupSchema, clinicContactInfoSchema, clinicGroupSchema, clinicGroupSetupSchema, clinicInfoSchema, clinicLocationSchema, clinicReviewSchema, clinicSchema, clinicTagsSchema, contactPersonSchema, contraindicationSchema, createAdminTokenSchema, createClinicAdminSchema, createClinicGroupSchema, createClinicSchema, createDefaultClinicGroupSchema, createDocumentTemplateSchema, createPatientLocationInfoSchema, createPatientMedicalInfoSchema, createPatientProfileSchema, createPatientSensitiveInfoSchema, createPractitionerSchema, createUserOptionsSchema, doctorInfoSchema, documentElementSchema, documentElementWithoutIdSchema, documentTemplateSchema, emailSchema, emergencyContactSchema, gamificationSchema, getFirebaseApp, getFirebaseAuth, getFirebaseDB, getFirebaseInstance, initializeFirebase, locationDataSchema, medicationSchema, notificationSchema, passwordSchema, patientClinicSchema, patientDoctorSchema, patientLocationInfoSchema, patientMedicalInfoSchema, patientProfileSchema, patientSensitiveInfoSchema, postRequirementNotificationSchema, practitionerBasicInfoSchema, practitionerCertificationSchema, practitionerClinicProceduresSchema, practitionerReviewSchema, practitionerSchema, practitionerWorkingHoursSchema, preRequirementNotificationSchema, reviewInfoSchema, serviceInfoSchema, timestampSchema, updateAllergySchema, updateBlockingConditionSchema, updateClinicAdminSchema, updateClinicGroupSchema, updateClinicSchema, updateContraindicationSchema, updateDocumentTemplateSchema, updateMedicationSchema, updatePatientMedicalInfoSchema, updateVitalStatsSchema, userRoleSchema, userRolesSchema, userSchema, vitalStatsSchema, workingHoursSchema };