house-types 2.9.6 → 2.9.8

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
@@ -1,3 +1,267 @@
1
- export * from "./types";
2
- export * from "./constants";
1
+ export declare const PROPERTY_TYPES: readonly ["House", "Apartment", "Studio", "Room"];
2
+ export declare const CITIES: readonly ["'s-Hertogenbosch", "Amsterdam", "Arnhem", "Breda", "Delft", "Eindhoven", "Groningen", "Haarlem", "Leiden", "Maastricht", "Nijmegen", "Rotterdam", "The Hague", "Utrecht", "Zwolle"];
3
+ export declare const GENDERS: readonly ["Male", "Female", "Other"];
4
+ export declare const FLATMATES_GENDERS: readonly ["Male", "Female", "Mixed"];
5
+ export declare const FREQUENCIES: readonly ["5", "15", "60", "180", "360", "1440", "10080"];
6
+ export declare const RADIUSES: readonly ["2", "5", "10", "20"];
7
+ export declare const PRICES: readonly ["250", "300", "350", "400", "450", "500", "550", "600", "650", "700", "750", "800", "850", "900", "950", "1000", "1050", "1100", "1150", "1200", "1250", "1300", "1350", "1400", "1450", "1500", "1550", "1600", "1650", "1700", "1750", "1800", "1850", "1900", "1950", "2000", "2050", "2100", "2150", "2200", "2250", "2300", "2350", "2400", "2450", "2500", "2550", "2600", "2650", "2700", "2750", "2800", "2850", "2900", "2950", "3000", "3050", "3100", "3150", "3200", "3250", "3300", "3350", "3400", "3450", "3500", "3550", "3600", "3650", "3700", "3750", "3800", "3850", "3900", "3950", "4000", "4050", "4100", "4150", "4200", "4250", "4300", "4350", "4400", "4450", "4500", "4550", "4600", "4650", "4700", "4750", "4800", "4850", "4900", "4950", "5000", "5050", "5100", "5150", "5200"];
8
+ export declare const SURFACES: readonly ["5", "10", "15", "20", "30", "40", "50", "75", "100", "125", "150"];
9
+ export declare const BEDROOMS: readonly ["1", "2", "3", "4", "5", "6", "7"];
10
+ export declare const FLATMATES: readonly ["1", "2", "3", "4", "5", "6", "7"];
11
+ import { z } from "zod";
12
+ export declare const AlertSchema: z.ZodObject<{
13
+ city: z.ZodEnum<["'s-Hertogenbosch", "Amsterdam", "Arnhem", "Breda", "Delft", "Eindhoven", "Groningen", "Haarlem", "Leiden", "Maastricht", "Nijmegen", "Rotterdam", "The Hague", "Utrecht", "Zwolle"]>;
14
+ radius: z.ZodOptional<z.ZodEffects<z.ZodEnum<["2", "5", "10", "20"]>, number, "5" | "2" | "10" | "20">>;
15
+ propertyType: z.ZodOptional<z.ZodArray<z.ZodEnum<["House", "Apartment", "Studio", "Room"]>, "many">>;
16
+ maxPrice: z.ZodEffects<z.ZodEnum<["250", "300", "350", "400", "450", "500", "550", "600", "650", "700", "750", "800", "850", "900", "950", "1000", "1050", "1100", "1150", "1200", "1250", "1300", "1350", "1400", "1450", "1500", "1550", "1600", "1650", "1700", "1750", "1800", "1850", "1900", "1950", "2000", "2050", "2100", "2150", "2200", "2250", "2300", "2350", "2400", "2450", "2500", "2550", "2600", "2650", "2700", "2750", "2800", "2850", "2900", "2950", "3000", "3050", "3100", "3150", "3200", "3250", "3300", "3350", "3400", "3450", "3500", "3550", "3600", "3650", "3700", "3750", "3800", "3850", "3900", "3950", "4000", "4050", "4100", "4150", "4200", "4250", "4300", "4350", "4400", "4450", "4500", "4550", "4600", "4650", "4700", "4750", "4800", "4850", "4900", "4950", "5000", "5050", "5100", "5150", "5200"]>, number, "250" | "300" | "350" | "400" | "450" | "500" | "550" | "600" | "650" | "700" | "750" | "800" | "850" | "900" | "950" | "1000" | "1050" | "1100" | "1150" | "1200" | "1250" | "1300" | "1350" | "1400" | "1450" | "1500" | "1550" | "1600" | "1650" | "1700" | "1750" | "1800" | "1850" | "1900" | "1950" | "2000" | "2050" | "2100" | "2150" | "2200" | "2250" | "2300" | "2350" | "2400" | "2450" | "2500" | "2550" | "2600" | "2650" | "2700" | "2750" | "2800" | "2850" | "2900" | "2950" | "3000" | "3050" | "3100" | "3150" | "3200" | "3250" | "3300" | "3350" | "3400" | "3450" | "3500" | "3550" | "3600" | "3650" | "3700" | "3750" | "3800" | "3850" | "3900" | "3950" | "4000" | "4050" | "4100" | "4150" | "4200" | "4250" | "4300" | "4350" | "4400" | "4450" | "4500" | "4550" | "4600" | "4650" | "4700" | "4750" | "4800" | "4850" | "4900" | "4950" | "5000" | "5050" | "5100" | "5150" | "5200">;
17
+ minSurface: z.ZodOptional<z.ZodEffects<z.ZodEnum<["5", "10", "15", "20", "30", "40", "50", "75", "100", "125", "150"]>, number, "5" | "15" | "10" | "20" | "30" | "40" | "50" | "75" | "100" | "125" | "150">>;
18
+ minBedrooms: z.ZodOptional<z.ZodEffects<z.ZodEnum<["1", "2", "3", "4", "5", "6", "7"]>, number, "5" | "2" | "1" | "3" | "4" | "6" | "7">>;
19
+ furnished: z.ZodOptional<z.ZodBoolean>;
20
+ maxFlatmates: z.ZodOptional<z.ZodEffects<z.ZodEnum<["1", "2", "3", "4", "5", "6", "7"]>, number, "5" | "2" | "1" | "3" | "4" | "6" | "7">>;
21
+ flatmatesGender: z.ZodOptional<z.ZodEnum<["Male", "Female", "Mixed"]>>;
22
+ gender: z.ZodOptional<z.ZodEnum<["Male", "Female", "Other"]>>;
23
+ frequency: z.ZodEffects<z.ZodEnum<["5", "15", "60", "180", "360", "1440", "10080"]>, number, "5" | "15" | "60" | "180" | "360" | "1440" | "10080">;
24
+ createdAt: z.ZodString;
25
+ }, "strip", z.ZodTypeAny, {
26
+ city: "'s-Hertogenbosch" | "Amsterdam" | "Arnhem" | "Breda" | "Delft" | "Eindhoven" | "Groningen" | "Haarlem" | "Leiden" | "Maastricht" | "Nijmegen" | "Rotterdam" | "The Hague" | "Utrecht" | "Zwolle";
27
+ maxPrice: number;
28
+ frequency: number;
29
+ createdAt: string;
30
+ radius?: number | undefined;
31
+ propertyType?: ("House" | "Apartment" | "Studio" | "Room")[] | undefined;
32
+ minSurface?: number | undefined;
33
+ minBedrooms?: number | undefined;
34
+ furnished?: boolean | undefined;
35
+ maxFlatmates?: number | undefined;
36
+ flatmatesGender?: "Male" | "Female" | "Mixed" | undefined;
37
+ gender?: "Male" | "Female" | "Other" | undefined;
38
+ }, {
39
+ city: "'s-Hertogenbosch" | "Amsterdam" | "Arnhem" | "Breda" | "Delft" | "Eindhoven" | "Groningen" | "Haarlem" | "Leiden" | "Maastricht" | "Nijmegen" | "Rotterdam" | "The Hague" | "Utrecht" | "Zwolle";
40
+ maxPrice: "250" | "300" | "350" | "400" | "450" | "500" | "550" | "600" | "650" | "700" | "750" | "800" | "850" | "900" | "950" | "1000" | "1050" | "1100" | "1150" | "1200" | "1250" | "1300" | "1350" | "1400" | "1450" | "1500" | "1550" | "1600" | "1650" | "1700" | "1750" | "1800" | "1850" | "1900" | "1950" | "2000" | "2050" | "2100" | "2150" | "2200" | "2250" | "2300" | "2350" | "2400" | "2450" | "2500" | "2550" | "2600" | "2650" | "2700" | "2750" | "2800" | "2850" | "2900" | "2950" | "3000" | "3050" | "3100" | "3150" | "3200" | "3250" | "3300" | "3350" | "3400" | "3450" | "3500" | "3550" | "3600" | "3650" | "3700" | "3750" | "3800" | "3850" | "3900" | "3950" | "4000" | "4050" | "4100" | "4150" | "4200" | "4250" | "4300" | "4350" | "4400" | "4450" | "4500" | "4550" | "4600" | "4650" | "4700" | "4750" | "4800" | "4850" | "4900" | "4950" | "5000" | "5050" | "5100" | "5150" | "5200";
41
+ frequency: "5" | "15" | "60" | "180" | "360" | "1440" | "10080";
42
+ createdAt: string;
43
+ radius?: "5" | "2" | "10" | "20" | undefined;
44
+ propertyType?: ("House" | "Apartment" | "Studio" | "Room")[] | undefined;
45
+ minSurface?: "5" | "15" | "10" | "20" | "30" | "40" | "50" | "75" | "100" | "125" | "150" | undefined;
46
+ minBedrooms?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
47
+ furnished?: boolean | undefined;
48
+ maxFlatmates?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
49
+ flatmatesGender?: "Male" | "Female" | "Mixed" | undefined;
50
+ gender?: "Male" | "Female" | "Other" | undefined;
51
+ }>;
52
+ export declare const AlertClientSchema: z.ZodObject<{
53
+ city: z.ZodEnum<["'s-Hertogenbosch", "Amsterdam", "Arnhem", "Breda", "Delft", "Eindhoven", "Groningen", "Haarlem", "Leiden", "Maastricht", "Nijmegen", "Rotterdam", "The Hague", "Utrecht", "Zwolle"]>;
54
+ radius: z.ZodOptional<z.ZodEnum<["2", "5", "10", "20"]>>;
55
+ propertyType: z.ZodOptional<z.ZodArray<z.ZodEnum<["House", "Apartment", "Studio", "Room"]>, "many">>;
56
+ maxPrice: z.ZodEnum<["250", "300", "350", "400", "450", "500", "550", "600", "650", "700", "750", "800", "850", "900", "950", "1000", "1050", "1100", "1150", "1200", "1250", "1300", "1350", "1400", "1450", "1500", "1550", "1600", "1650", "1700", "1750", "1800", "1850", "1900", "1950", "2000", "2050", "2100", "2150", "2200", "2250", "2300", "2350", "2400", "2450", "2500", "2550", "2600", "2650", "2700", "2750", "2800", "2850", "2900", "2950", "3000", "3050", "3100", "3150", "3200", "3250", "3300", "3350", "3400", "3450", "3500", "3550", "3600", "3650", "3700", "3750", "3800", "3850", "3900", "3950", "4000", "4050", "4100", "4150", "4200", "4250", "4300", "4350", "4400", "4450", "4500", "4550", "4600", "4650", "4700", "4750", "4800", "4850", "4900", "4950", "5000", "5050", "5100", "5150", "5200"]>;
57
+ minSurface: z.ZodOptional<z.ZodEnum<["5", "10", "15", "20", "30", "40", "50", "75", "100", "125", "150"]>>;
58
+ minBedrooms: z.ZodOptional<z.ZodEnum<["1", "2", "3", "4", "5", "6", "7"]>>;
59
+ furnished: z.ZodOptional<z.ZodBoolean>;
60
+ maxFlatmates: z.ZodOptional<z.ZodEnum<["1", "2", "3", "4", "5", "6", "7"]>>;
61
+ flatmatesGender: z.ZodOptional<z.ZodEnum<["Male", "Female", "Mixed"]>>;
62
+ gender: z.ZodOptional<z.ZodEnum<["Male", "Female", "Other"]>>;
63
+ frequency: z.ZodEnum<["5", "15", "60", "180", "360", "1440", "10080"]>;
64
+ }, "strip", z.ZodTypeAny, {
65
+ city: "'s-Hertogenbosch" | "Amsterdam" | "Arnhem" | "Breda" | "Delft" | "Eindhoven" | "Groningen" | "Haarlem" | "Leiden" | "Maastricht" | "Nijmegen" | "Rotterdam" | "The Hague" | "Utrecht" | "Zwolle";
66
+ maxPrice: "250" | "300" | "350" | "400" | "450" | "500" | "550" | "600" | "650" | "700" | "750" | "800" | "850" | "900" | "950" | "1000" | "1050" | "1100" | "1150" | "1200" | "1250" | "1300" | "1350" | "1400" | "1450" | "1500" | "1550" | "1600" | "1650" | "1700" | "1750" | "1800" | "1850" | "1900" | "1950" | "2000" | "2050" | "2100" | "2150" | "2200" | "2250" | "2300" | "2350" | "2400" | "2450" | "2500" | "2550" | "2600" | "2650" | "2700" | "2750" | "2800" | "2850" | "2900" | "2950" | "3000" | "3050" | "3100" | "3150" | "3200" | "3250" | "3300" | "3350" | "3400" | "3450" | "3500" | "3550" | "3600" | "3650" | "3700" | "3750" | "3800" | "3850" | "3900" | "3950" | "4000" | "4050" | "4100" | "4150" | "4200" | "4250" | "4300" | "4350" | "4400" | "4450" | "4500" | "4550" | "4600" | "4650" | "4700" | "4750" | "4800" | "4850" | "4900" | "4950" | "5000" | "5050" | "5100" | "5150" | "5200";
67
+ frequency: "5" | "15" | "60" | "180" | "360" | "1440" | "10080";
68
+ radius?: "5" | "2" | "10" | "20" | undefined;
69
+ propertyType?: ("House" | "Apartment" | "Studio" | "Room")[] | undefined;
70
+ minSurface?: "5" | "15" | "10" | "20" | "30" | "40" | "50" | "75" | "100" | "125" | "150" | undefined;
71
+ minBedrooms?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
72
+ furnished?: boolean | undefined;
73
+ maxFlatmates?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
74
+ flatmatesGender?: "Male" | "Female" | "Mixed" | undefined;
75
+ gender?: "Male" | "Female" | "Other" | undefined;
76
+ }, {
77
+ city: "'s-Hertogenbosch" | "Amsterdam" | "Arnhem" | "Breda" | "Delft" | "Eindhoven" | "Groningen" | "Haarlem" | "Leiden" | "Maastricht" | "Nijmegen" | "Rotterdam" | "The Hague" | "Utrecht" | "Zwolle";
78
+ maxPrice: "250" | "300" | "350" | "400" | "450" | "500" | "550" | "600" | "650" | "700" | "750" | "800" | "850" | "900" | "950" | "1000" | "1050" | "1100" | "1150" | "1200" | "1250" | "1300" | "1350" | "1400" | "1450" | "1500" | "1550" | "1600" | "1650" | "1700" | "1750" | "1800" | "1850" | "1900" | "1950" | "2000" | "2050" | "2100" | "2150" | "2200" | "2250" | "2300" | "2350" | "2400" | "2450" | "2500" | "2550" | "2600" | "2650" | "2700" | "2750" | "2800" | "2850" | "2900" | "2950" | "3000" | "3050" | "3100" | "3150" | "3200" | "3250" | "3300" | "3350" | "3400" | "3450" | "3500" | "3550" | "3600" | "3650" | "3700" | "3750" | "3800" | "3850" | "3900" | "3950" | "4000" | "4050" | "4100" | "4150" | "4200" | "4250" | "4300" | "4350" | "4400" | "4450" | "4500" | "4550" | "4600" | "4650" | "4700" | "4750" | "4800" | "4850" | "4900" | "4950" | "5000" | "5050" | "5100" | "5150" | "5200";
79
+ frequency: "5" | "15" | "60" | "180" | "360" | "1440" | "10080";
80
+ radius?: "5" | "2" | "10" | "20" | undefined;
81
+ propertyType?: ("House" | "Apartment" | "Studio" | "Room")[] | undefined;
82
+ minSurface?: "5" | "15" | "10" | "20" | "30" | "40" | "50" | "75" | "100" | "125" | "150" | undefined;
83
+ minBedrooms?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
84
+ furnished?: boolean | undefined;
85
+ maxFlatmates?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
86
+ flatmatesGender?: "Male" | "Female" | "Mixed" | undefined;
87
+ gender?: "Male" | "Female" | "Other" | undefined;
88
+ }>;
89
+ export type Alert = z.infer<typeof AlertSchema>;
90
+ export type AlertClient = z.infer<typeof AlertClientSchema>;
91
+ export declare const UserSchema: z.ZodObject<{
92
+ notificationsEnabled: z.ZodDefault<z.ZodBoolean>;
93
+ email: z.ZodString;
94
+ lastNotified: z.ZodOptional<z.ZodString>;
95
+ alerts: z.ZodArray<z.ZodObject<{
96
+ city: z.ZodEnum<["'s-Hertogenbosch", "Amsterdam", "Arnhem", "Breda", "Delft", "Eindhoven", "Groningen", "Haarlem", "Leiden", "Maastricht", "Nijmegen", "Rotterdam", "The Hague", "Utrecht", "Zwolle"]>;
97
+ radius: z.ZodOptional<z.ZodEffects<z.ZodEnum<["2", "5", "10", "20"]>, number, "5" | "2" | "10" | "20">>;
98
+ propertyType: z.ZodOptional<z.ZodArray<z.ZodEnum<["House", "Apartment", "Studio", "Room"]>, "many">>;
99
+ maxPrice: z.ZodEffects<z.ZodEnum<["250", "300", "350", "400", "450", "500", "550", "600", "650", "700", "750", "800", "850", "900", "950", "1000", "1050", "1100", "1150", "1200", "1250", "1300", "1350", "1400", "1450", "1500", "1550", "1600", "1650", "1700", "1750", "1800", "1850", "1900", "1950", "2000", "2050", "2100", "2150", "2200", "2250", "2300", "2350", "2400", "2450", "2500", "2550", "2600", "2650", "2700", "2750", "2800", "2850", "2900", "2950", "3000", "3050", "3100", "3150", "3200", "3250", "3300", "3350", "3400", "3450", "3500", "3550", "3600", "3650", "3700", "3750", "3800", "3850", "3900", "3950", "4000", "4050", "4100", "4150", "4200", "4250", "4300", "4350", "4400", "4450", "4500", "4550", "4600", "4650", "4700", "4750", "4800", "4850", "4900", "4950", "5000", "5050", "5100", "5150", "5200"]>, number, "250" | "300" | "350" | "400" | "450" | "500" | "550" | "600" | "650" | "700" | "750" | "800" | "850" | "900" | "950" | "1000" | "1050" | "1100" | "1150" | "1200" | "1250" | "1300" | "1350" | "1400" | "1450" | "1500" | "1550" | "1600" | "1650" | "1700" | "1750" | "1800" | "1850" | "1900" | "1950" | "2000" | "2050" | "2100" | "2150" | "2200" | "2250" | "2300" | "2350" | "2400" | "2450" | "2500" | "2550" | "2600" | "2650" | "2700" | "2750" | "2800" | "2850" | "2900" | "2950" | "3000" | "3050" | "3100" | "3150" | "3200" | "3250" | "3300" | "3350" | "3400" | "3450" | "3500" | "3550" | "3600" | "3650" | "3700" | "3750" | "3800" | "3850" | "3900" | "3950" | "4000" | "4050" | "4100" | "4150" | "4200" | "4250" | "4300" | "4350" | "4400" | "4450" | "4500" | "4550" | "4600" | "4650" | "4700" | "4750" | "4800" | "4850" | "4900" | "4950" | "5000" | "5050" | "5100" | "5150" | "5200">;
100
+ minSurface: z.ZodOptional<z.ZodEffects<z.ZodEnum<["5", "10", "15", "20", "30", "40", "50", "75", "100", "125", "150"]>, number, "5" | "15" | "10" | "20" | "30" | "40" | "50" | "75" | "100" | "125" | "150">>;
101
+ minBedrooms: z.ZodOptional<z.ZodEffects<z.ZodEnum<["1", "2", "3", "4", "5", "6", "7"]>, number, "5" | "2" | "1" | "3" | "4" | "6" | "7">>;
102
+ furnished: z.ZodOptional<z.ZodBoolean>;
103
+ maxFlatmates: z.ZodOptional<z.ZodEffects<z.ZodEnum<["1", "2", "3", "4", "5", "6", "7"]>, number, "5" | "2" | "1" | "3" | "4" | "6" | "7">>;
104
+ flatmatesGender: z.ZodOptional<z.ZodEnum<["Male", "Female", "Mixed"]>>;
105
+ gender: z.ZodOptional<z.ZodEnum<["Male", "Female", "Other"]>>;
106
+ frequency: z.ZodEffects<z.ZodEnum<["5", "15", "60", "180", "360", "1440", "10080"]>, number, "5" | "15" | "60" | "180" | "360" | "1440" | "10080">;
107
+ createdAt: z.ZodString;
108
+ }, "strip", z.ZodTypeAny, {
109
+ city: "'s-Hertogenbosch" | "Amsterdam" | "Arnhem" | "Breda" | "Delft" | "Eindhoven" | "Groningen" | "Haarlem" | "Leiden" | "Maastricht" | "Nijmegen" | "Rotterdam" | "The Hague" | "Utrecht" | "Zwolle";
110
+ maxPrice: number;
111
+ frequency: number;
112
+ createdAt: string;
113
+ radius?: number | undefined;
114
+ propertyType?: ("House" | "Apartment" | "Studio" | "Room")[] | undefined;
115
+ minSurface?: number | undefined;
116
+ minBedrooms?: number | undefined;
117
+ furnished?: boolean | undefined;
118
+ maxFlatmates?: number | undefined;
119
+ flatmatesGender?: "Male" | "Female" | "Mixed" | undefined;
120
+ gender?: "Male" | "Female" | "Other" | undefined;
121
+ }, {
122
+ city: "'s-Hertogenbosch" | "Amsterdam" | "Arnhem" | "Breda" | "Delft" | "Eindhoven" | "Groningen" | "Haarlem" | "Leiden" | "Maastricht" | "Nijmegen" | "Rotterdam" | "The Hague" | "Utrecht" | "Zwolle";
123
+ maxPrice: "250" | "300" | "350" | "400" | "450" | "500" | "550" | "600" | "650" | "700" | "750" | "800" | "850" | "900" | "950" | "1000" | "1050" | "1100" | "1150" | "1200" | "1250" | "1300" | "1350" | "1400" | "1450" | "1500" | "1550" | "1600" | "1650" | "1700" | "1750" | "1800" | "1850" | "1900" | "1950" | "2000" | "2050" | "2100" | "2150" | "2200" | "2250" | "2300" | "2350" | "2400" | "2450" | "2500" | "2550" | "2600" | "2650" | "2700" | "2750" | "2800" | "2850" | "2900" | "2950" | "3000" | "3050" | "3100" | "3150" | "3200" | "3250" | "3300" | "3350" | "3400" | "3450" | "3500" | "3550" | "3600" | "3650" | "3700" | "3750" | "3800" | "3850" | "3900" | "3950" | "4000" | "4050" | "4100" | "4150" | "4200" | "4250" | "4300" | "4350" | "4400" | "4450" | "4500" | "4550" | "4600" | "4650" | "4700" | "4750" | "4800" | "4850" | "4900" | "4950" | "5000" | "5050" | "5100" | "5150" | "5200";
124
+ frequency: "5" | "15" | "60" | "180" | "360" | "1440" | "10080";
125
+ createdAt: string;
126
+ radius?: "5" | "2" | "10" | "20" | undefined;
127
+ propertyType?: ("House" | "Apartment" | "Studio" | "Room")[] | undefined;
128
+ minSurface?: "5" | "15" | "10" | "20" | "30" | "40" | "50" | "75" | "100" | "125" | "150" | undefined;
129
+ minBedrooms?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
130
+ furnished?: boolean | undefined;
131
+ maxFlatmates?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
132
+ flatmatesGender?: "Male" | "Female" | "Mixed" | undefined;
133
+ gender?: "Male" | "Female" | "Other" | undefined;
134
+ }>, "many">;
135
+ }, "strip", z.ZodTypeAny, {
136
+ notificationsEnabled: boolean;
137
+ email: string;
138
+ alerts: {
139
+ city: "'s-Hertogenbosch" | "Amsterdam" | "Arnhem" | "Breda" | "Delft" | "Eindhoven" | "Groningen" | "Haarlem" | "Leiden" | "Maastricht" | "Nijmegen" | "Rotterdam" | "The Hague" | "Utrecht" | "Zwolle";
140
+ maxPrice: number;
141
+ frequency: number;
142
+ createdAt: string;
143
+ radius?: number | undefined;
144
+ propertyType?: ("House" | "Apartment" | "Studio" | "Room")[] | undefined;
145
+ minSurface?: number | undefined;
146
+ minBedrooms?: number | undefined;
147
+ furnished?: boolean | undefined;
148
+ maxFlatmates?: number | undefined;
149
+ flatmatesGender?: "Male" | "Female" | "Mixed" | undefined;
150
+ gender?: "Male" | "Female" | "Other" | undefined;
151
+ }[];
152
+ lastNotified?: string | undefined;
153
+ }, {
154
+ email: string;
155
+ alerts: {
156
+ city: "'s-Hertogenbosch" | "Amsterdam" | "Arnhem" | "Breda" | "Delft" | "Eindhoven" | "Groningen" | "Haarlem" | "Leiden" | "Maastricht" | "Nijmegen" | "Rotterdam" | "The Hague" | "Utrecht" | "Zwolle";
157
+ maxPrice: "250" | "300" | "350" | "400" | "450" | "500" | "550" | "600" | "650" | "700" | "750" | "800" | "850" | "900" | "950" | "1000" | "1050" | "1100" | "1150" | "1200" | "1250" | "1300" | "1350" | "1400" | "1450" | "1500" | "1550" | "1600" | "1650" | "1700" | "1750" | "1800" | "1850" | "1900" | "1950" | "2000" | "2050" | "2100" | "2150" | "2200" | "2250" | "2300" | "2350" | "2400" | "2450" | "2500" | "2550" | "2600" | "2650" | "2700" | "2750" | "2800" | "2850" | "2900" | "2950" | "3000" | "3050" | "3100" | "3150" | "3200" | "3250" | "3300" | "3350" | "3400" | "3450" | "3500" | "3550" | "3600" | "3650" | "3700" | "3750" | "3800" | "3850" | "3900" | "3950" | "4000" | "4050" | "4100" | "4150" | "4200" | "4250" | "4300" | "4350" | "4400" | "4450" | "4500" | "4550" | "4600" | "4650" | "4700" | "4750" | "4800" | "4850" | "4900" | "4950" | "5000" | "5050" | "5100" | "5150" | "5200";
158
+ frequency: "5" | "15" | "60" | "180" | "360" | "1440" | "10080";
159
+ createdAt: string;
160
+ radius?: "5" | "2" | "10" | "20" | undefined;
161
+ propertyType?: ("House" | "Apartment" | "Studio" | "Room")[] | undefined;
162
+ minSurface?: "5" | "15" | "10" | "20" | "30" | "40" | "50" | "75" | "100" | "125" | "150" | undefined;
163
+ minBedrooms?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
164
+ furnished?: boolean | undefined;
165
+ maxFlatmates?: "5" | "2" | "1" | "3" | "4" | "6" | "7" | undefined;
166
+ flatmatesGender?: "Male" | "Female" | "Mixed" | undefined;
167
+ gender?: "Male" | "Female" | "Other" | undefined;
168
+ }[];
169
+ notificationsEnabled?: boolean | undefined;
170
+ lastNotified?: string | undefined;
171
+ }>;
172
+ export type User = z.infer<typeof UserSchema>;
173
+ export declare const ParsedHouseSchema: z.ZodObject<{
174
+ source: z.ZodString;
175
+ id: z.ZodString;
176
+ city: z.ZodString;
177
+ price: z.ZodString;
178
+ availabilityDate: z.ZodOptional<z.ZodString>;
179
+ propertyType: z.ZodString;
180
+ bedrooms: z.ZodString;
181
+ roommates: z.ZodOptional<z.ZodString>;
182
+ gender: z.ZodOptional<z.ZodString>;
183
+ propertyGender: z.ZodOptional<z.ZodString>;
184
+ bathrooms: z.ZodOptional<z.ZodString>;
185
+ furnished: z.ZodOptional<z.ZodBoolean>;
186
+ image: z.ZodOptional<z.ZodString>;
187
+ createdAt: z.ZodString;
188
+ }, "strip", z.ZodTypeAny, {
189
+ city: string;
190
+ propertyType: string;
191
+ createdAt: string;
192
+ source: string;
193
+ id: string;
194
+ price: string;
195
+ bedrooms: string;
196
+ furnished?: boolean | undefined;
197
+ gender?: string | undefined;
198
+ availabilityDate?: string | undefined;
199
+ roommates?: string | undefined;
200
+ propertyGender?: string | undefined;
201
+ bathrooms?: string | undefined;
202
+ image?: string | undefined;
203
+ }, {
204
+ city: string;
205
+ propertyType: string;
206
+ createdAt: string;
207
+ source: string;
208
+ id: string;
209
+ price: string;
210
+ bedrooms: string;
211
+ furnished?: boolean | undefined;
212
+ gender?: string | undefined;
213
+ availabilityDate?: string | undefined;
214
+ roommates?: string | undefined;
215
+ propertyGender?: string | undefined;
216
+ bathrooms?: string | undefined;
217
+ image?: string | undefined;
218
+ }>;
219
+ export type ParsedHouse = z.infer<typeof ParsedHouseSchema>;
220
+ export declare const TransformedHouseSchema: z.ZodObject<{
221
+ price: z.ZodNumber;
222
+ propertyType: z.ZodEnum<["House", "Apartment", "Studio", "Room"]>;
223
+ bedrooms: z.ZodNumber;
224
+ roommates: z.ZodOptional<z.ZodNumber>;
225
+ source: z.ZodString;
226
+ id: z.ZodString;
227
+ city: z.ZodString;
228
+ availabilityDate: z.ZodOptional<z.ZodString>;
229
+ gender: z.ZodOptional<z.ZodString>;
230
+ propertyGender: z.ZodOptional<z.ZodString>;
231
+ bathrooms: z.ZodOptional<z.ZodString>;
232
+ furnished: z.ZodOptional<z.ZodBoolean>;
233
+ image: z.ZodOptional<z.ZodString>;
234
+ createdAt: z.ZodString;
235
+ }, "strip", z.ZodTypeAny, {
236
+ city: string;
237
+ propertyType: "House" | "Apartment" | "Studio" | "Room";
238
+ createdAt: string;
239
+ source: string;
240
+ id: string;
241
+ price: number;
242
+ bedrooms: number;
243
+ furnished?: boolean | undefined;
244
+ gender?: string | undefined;
245
+ availabilityDate?: string | undefined;
246
+ roommates?: number | undefined;
247
+ propertyGender?: string | undefined;
248
+ bathrooms?: string | undefined;
249
+ image?: string | undefined;
250
+ }, {
251
+ city: string;
252
+ propertyType: "House" | "Apartment" | "Studio" | "Room";
253
+ createdAt: string;
254
+ source: string;
255
+ id: string;
256
+ price: number;
257
+ bedrooms: number;
258
+ furnished?: boolean | undefined;
259
+ gender?: string | undefined;
260
+ availabilityDate?: string | undefined;
261
+ roommates?: number | undefined;
262
+ propertyGender?: string | undefined;
263
+ bathrooms?: string | undefined;
264
+ image?: string | undefined;
265
+ }>;
266
+ export type TransformedHouse = z.infer<typeof TransformedHouseSchema>;
3
267
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,mDAAoD,CAAC;AAChF,eAAO,MAAM,MAAM,gMAgBT,CAAC;AAIX,eAAO,MAAM,OAAO,sCAA4B,CAAC;AACjD,eAAO,MAAM,iBAAiB,sCAA4B,CAAC;AAE3D,eAAO,MAAM,WAAW,2DAQd,CAAC;AAEX,eAAO,MAAM,QAAQ,iCAAkC,CAAC;AAExD,eAAO,MAAM,MAAM,4xBAqGT,CAAC;AAEX,eAAO,MAAM,QAAQ,+EAYX,CAAC;AAEX,eAAO,MAAM,QAAQ,8CAA+C,CAAC;AAErE,eAAO,MAAM,SAAS,8CAA+C,CAAC;AAEtE,OAAO,EAAE,CAAC,EAAW,MAAM,KAAK,CAAC;AAsBjC,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiBF,CAAC;AAEvB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAeR,CAAC;AAEvB,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKrB,CAAC;AAEH,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAmB9C,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAE5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
package/dist/index.js CHANGED
@@ -1,2 +1,209 @@
1
- export * from "./types";
2
- export * from "./constants";
1
+ export const PROPERTY_TYPES = ["House", "Apartment", "Studio", "Room"];
2
+ export const CITIES = [
3
+ "'s-Hertogenbosch",
4
+ "Amsterdam",
5
+ "Arnhem",
6
+ "Breda",
7
+ "Delft",
8
+ "Eindhoven",
9
+ "Groningen",
10
+ "Haarlem",
11
+ "Leiden",
12
+ "Maastricht",
13
+ "Nijmegen",
14
+ "Rotterdam",
15
+ "The Hague",
16
+ "Utrecht",
17
+ "Zwolle",
18
+ ];
19
+ const MF = ["Male", "Female"];
20
+ export const GENDERS = [...MF, "Other"];
21
+ export const FLATMATES_GENDERS = [...MF, "Mixed"];
22
+ export const FREQUENCIES = [
23
+ "5",
24
+ "15",
25
+ "60",
26
+ "180",
27
+ "360",
28
+ "1440",
29
+ "10080",
30
+ ];
31
+ export const RADIUSES = ["2", "5", "10", "20"];
32
+ export const PRICES = [
33
+ "250",
34
+ "300",
35
+ "350",
36
+ "400",
37
+ "450",
38
+ "500",
39
+ "550",
40
+ "600",
41
+ "650",
42
+ "700",
43
+ "750",
44
+ "800",
45
+ "850",
46
+ "900",
47
+ "950",
48
+ "1000",
49
+ "1050",
50
+ "1100",
51
+ "1150",
52
+ "1200",
53
+ "1250",
54
+ "1300",
55
+ "1350",
56
+ "1400",
57
+ "1450",
58
+ "1500",
59
+ "1550",
60
+ "1600",
61
+ "1650",
62
+ "1700",
63
+ "1750",
64
+ "1800",
65
+ "1850",
66
+ "1900",
67
+ "1950",
68
+ "2000",
69
+ "2050",
70
+ "2100",
71
+ "2150",
72
+ "2200",
73
+ "2250",
74
+ "2300",
75
+ "2350",
76
+ "2400",
77
+ "2450",
78
+ "2500",
79
+ "2550",
80
+ "2600",
81
+ "2650",
82
+ "2700",
83
+ "2750",
84
+ "2800",
85
+ "2850",
86
+ "2900",
87
+ "2950",
88
+ "3000",
89
+ "3050",
90
+ "3100",
91
+ "3150",
92
+ "3200",
93
+ "3250",
94
+ "3300",
95
+ "3350",
96
+ "3400",
97
+ "3450",
98
+ "3500",
99
+ "3550",
100
+ "3600",
101
+ "3650",
102
+ "3700",
103
+ "3750",
104
+ "3800",
105
+ "3850",
106
+ "3900",
107
+ "3950",
108
+ "4000",
109
+ "4050",
110
+ "4100",
111
+ "4150",
112
+ "4200",
113
+ "4250",
114
+ "4300",
115
+ "4350",
116
+ "4400",
117
+ "4450",
118
+ "4500",
119
+ "4550",
120
+ "4600",
121
+ "4650",
122
+ "4700",
123
+ "4750",
124
+ "4800",
125
+ "4850",
126
+ "4900",
127
+ "4950",
128
+ "5000",
129
+ "5050",
130
+ "5100",
131
+ "5150",
132
+ "5200",
133
+ ];
134
+ export const SURFACES = [
135
+ "5",
136
+ "10",
137
+ "15",
138
+ "20",
139
+ "30",
140
+ "40",
141
+ "50",
142
+ "75",
143
+ "100",
144
+ "125",
145
+ "150",
146
+ ];
147
+ export const BEDROOMS = ["1", "2", "3", "4", "5", "6", "7"];
148
+ export const FLATMATES = ["1", "2", "3", "4", "5", "6", "7"];
149
+ import { z } from "zod";
150
+ const propertyType = z.enum(PROPERTY_TYPES);
151
+ export const AlertSchema = z.object({
152
+ city: z.enum(CITIES),
153
+ radius: z.enum(RADIUSES).transform(Number).optional(),
154
+ propertyType: z.array(propertyType).optional(),
155
+ maxPrice: z.enum(PRICES).transform(Number),
156
+ minSurface: z.enum(SURFACES).transform(Number).optional(),
157
+ minBedrooms: z.enum(BEDROOMS).transform(Number).optional(),
158
+ furnished: z.boolean().optional(),
159
+ maxFlatmates: z.enum(FLATMATES).transform(Number).optional(),
160
+ flatmatesGender: z.enum(FLATMATES_GENDERS).optional(),
161
+ gender: z.enum(GENDERS).optional(),
162
+ frequency: z.enum(FREQUENCIES).transform(Number),
163
+ createdAt: z.string().datetime(),
164
+ });
165
+ export const AlertClientSchema = z.object({
166
+ city: z.enum(CITIES),
167
+ radius: z.enum(RADIUSES).optional(),
168
+ propertyType: z.array(propertyType).optional(),
169
+ maxPrice: z.enum(PRICES),
170
+ minSurface: z.enum(SURFACES).optional(),
171
+ minBedrooms: z.enum(BEDROOMS).optional(),
172
+ furnished: z.boolean().optional(),
173
+ maxFlatmates: z.enum(FLATMATES).optional(),
174
+ flatmatesGender: z.enum(FLATMATES_GENDERS).optional(),
175
+ gender: z.enum(GENDERS).optional(),
176
+ frequency: z.enum(FREQUENCIES),
177
+ });
178
+ export const UserSchema = z.object({
179
+ notificationsEnabled: z.boolean().default(true),
180
+ email: z.string().email(),
181
+ lastNotified: z.string().datetime().optional(),
182
+ alerts: z.array(AlertSchema),
183
+ });
184
+ const parsedHouseSchema = {
185
+ source: z.string(),
186
+ id: z.string(),
187
+ city: z.string(),
188
+ price: z.string(),
189
+ availabilityDate: z.string().datetime().optional(),
190
+ propertyType: z.string(),
191
+ bedrooms: z.string(),
192
+ roommates: z.string().optional(),
193
+ gender: z.string().optional(),
194
+ propertyGender: z.string().optional(),
195
+ bathrooms: z.string().optional(),
196
+ furnished: z.boolean().optional(),
197
+ image: z.string().optional(),
198
+ createdAt: z.string().datetime(),
199
+ };
200
+ export const ParsedHouseSchema = z.object({
201
+ ...parsedHouseSchema,
202
+ });
203
+ export const TransformedHouseSchema = z.object({
204
+ ...parsedHouseSchema,
205
+ price: z.number(),
206
+ propertyType,
207
+ bedrooms: z.number(),
208
+ roommates: z.number().optional(),
209
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "house-types",
3
- "version": "2.9.6",
3
+ "version": "2.9.8",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",