@deepintel-ltd/farmpro-contracts 1.7.6 → 1.7.9

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.
Files changed (43) hide show
  1. package/dist/index.d.ts +11 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +10 -0
  4. package/dist/routes/crop-profile.routes.d.ts +556 -0
  5. package/dist/routes/crop-profile.routes.d.ts.map +1 -0
  6. package/dist/routes/crop-profile.routes.js +55 -0
  7. package/dist/routes/geofences.routes.d.ts +1913 -0
  8. package/dist/routes/geofences.routes.d.ts.map +1 -0
  9. package/dist/routes/geofences.routes.js +105 -0
  10. package/dist/routes/index.d.ts +15 -0
  11. package/dist/routes/index.d.ts.map +1 -1
  12. package/dist/routes/index.js +10 -0
  13. package/dist/routes/livestock-map.routes.d.ts +1319 -0
  14. package/dist/routes/livestock-map.routes.d.ts.map +1 -0
  15. package/dist/routes/livestock-map.routes.js +83 -0
  16. package/dist/routes/measurements.routes.d.ts +1081 -0
  17. package/dist/routes/measurements.routes.d.ts.map +1 -0
  18. package/dist/routes/measurements.routes.js +69 -0
  19. package/dist/routes/monitoring-visualization.routes.d.ts +1637 -0
  20. package/dist/routes/monitoring-visualization.routes.d.ts.map +1 -1
  21. package/dist/routes/monitoring-visualization.routes.js +153 -0
  22. package/dist/routes/prescription-maps.routes.d.ts +3092 -0
  23. package/dist/routes/prescription-maps.routes.d.ts.map +1 -0
  24. package/dist/routes/prescription-maps.routes.js +143 -0
  25. package/dist/schemas/crop-profile.schemas.d.ts +724 -0
  26. package/dist/schemas/crop-profile.schemas.d.ts.map +1 -0
  27. package/dist/schemas/crop-profile.schemas.js +84 -0
  28. package/dist/schemas/geofences.schemas.d.ts +358 -0
  29. package/dist/schemas/geofences.schemas.d.ts.map +1 -0
  30. package/dist/schemas/geofences.schemas.js +44 -0
  31. package/dist/schemas/livestock-map.schemas.d.ts +328 -0
  32. package/dist/schemas/livestock-map.schemas.d.ts.map +1 -0
  33. package/dist/schemas/livestock-map.schemas.js +52 -0
  34. package/dist/schemas/measurements.schemas.d.ts +234 -0
  35. package/dist/schemas/measurements.schemas.d.ts.map +1 -0
  36. package/dist/schemas/measurements.schemas.js +57 -0
  37. package/dist/schemas/monitoring-visualization.schemas.d.ts +1703 -0
  38. package/dist/schemas/monitoring-visualization.schemas.d.ts.map +1 -1
  39. package/dist/schemas/monitoring-visualization.schemas.js +338 -0
  40. package/dist/schemas/prescription-maps.schemas.d.ts +974 -0
  41. package/dist/schemas/prescription-maps.schemas.d.ts.map +1 -0
  42. package/dist/schemas/prescription-maps.schemas.js +132 -0
  43. package/package.json +1 -1
@@ -0,0 +1,974 @@
1
+ import { z } from 'zod';
2
+ export declare const prescriptionZoneSchema: z.ZodObject<{
3
+ id: z.ZodString;
4
+ geometry: z.ZodObject<{
5
+ type: z.ZodEnum<["Polygon", "MultiPolygon", "Point", "LineString"]>;
6
+ coordinates: z.ZodUnion<[z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, z.ZodArray<z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, "many">, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">]>;
7
+ }, "strip", z.ZodTypeAny, {
8
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
9
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
10
+ }, {
11
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
12
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
13
+ }>;
14
+ zoneType: z.ZodEnum<["high", "medium", "low", "skip"]>;
15
+ ndviRange: z.ZodObject<{
16
+ min: z.ZodNumber;
17
+ max: z.ZodNumber;
18
+ }, "strip", z.ZodTypeAny, {
19
+ min: number;
20
+ max: number;
21
+ }, {
22
+ min: number;
23
+ max: number;
24
+ }>;
25
+ areaHectares: z.ZodNumber;
26
+ recommendedRate: z.ZodNumber;
27
+ rateUnit: z.ZodString;
28
+ inputType: z.ZodEnum<["fertilizer", "pesticide", "seed", "water"]>;
29
+ inputProduct: z.ZodOptional<z.ZodString>;
30
+ costPerHectare: z.ZodOptional<z.ZodNumber>;
31
+ totalCost: z.ZodOptional<z.ZodNumber>;
32
+ }, "strip", z.ZodTypeAny, {
33
+ id: string;
34
+ geometry: {
35
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
36
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
37
+ };
38
+ areaHectares: number;
39
+ zoneType: "low" | "medium" | "high" | "skip";
40
+ ndviRange: {
41
+ min: number;
42
+ max: number;
43
+ };
44
+ recommendedRate: number;
45
+ rateUnit: string;
46
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
47
+ totalCost?: number | undefined;
48
+ inputProduct?: string | undefined;
49
+ costPerHectare?: number | undefined;
50
+ }, {
51
+ id: string;
52
+ geometry: {
53
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
54
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
55
+ };
56
+ areaHectares: number;
57
+ zoneType: "low" | "medium" | "high" | "skip";
58
+ ndviRange: {
59
+ min: number;
60
+ max: number;
61
+ };
62
+ recommendedRate: number;
63
+ rateUnit: string;
64
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
65
+ totalCost?: number | undefined;
66
+ inputProduct?: string | undefined;
67
+ costPerHectare?: number | undefined;
68
+ }>;
69
+ export declare const prescriptionMapSchema: z.ZodObject<{
70
+ id: z.ZodString;
71
+ fieldId: z.ZodString;
72
+ name: z.ZodString;
73
+ createdAt: z.ZodString;
74
+ sourceDataType: z.ZodEnum<["ndvi", "soil_moisture", "manual", "multi_layer"]>;
75
+ sourceDate: z.ZodString;
76
+ zones: z.ZodArray<z.ZodObject<{
77
+ id: z.ZodString;
78
+ geometry: z.ZodObject<{
79
+ type: z.ZodEnum<["Polygon", "MultiPolygon", "Point", "LineString"]>;
80
+ coordinates: z.ZodUnion<[z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, z.ZodArray<z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, "many">, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">]>;
81
+ }, "strip", z.ZodTypeAny, {
82
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
83
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
84
+ }, {
85
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
86
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
87
+ }>;
88
+ zoneType: z.ZodEnum<["high", "medium", "low", "skip"]>;
89
+ ndviRange: z.ZodObject<{
90
+ min: z.ZodNumber;
91
+ max: z.ZodNumber;
92
+ }, "strip", z.ZodTypeAny, {
93
+ min: number;
94
+ max: number;
95
+ }, {
96
+ min: number;
97
+ max: number;
98
+ }>;
99
+ areaHectares: z.ZodNumber;
100
+ recommendedRate: z.ZodNumber;
101
+ rateUnit: z.ZodString;
102
+ inputType: z.ZodEnum<["fertilizer", "pesticide", "seed", "water"]>;
103
+ inputProduct: z.ZodOptional<z.ZodString>;
104
+ costPerHectare: z.ZodOptional<z.ZodNumber>;
105
+ totalCost: z.ZodOptional<z.ZodNumber>;
106
+ }, "strip", z.ZodTypeAny, {
107
+ id: string;
108
+ geometry: {
109
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
110
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
111
+ };
112
+ areaHectares: number;
113
+ zoneType: "low" | "medium" | "high" | "skip";
114
+ ndviRange: {
115
+ min: number;
116
+ max: number;
117
+ };
118
+ recommendedRate: number;
119
+ rateUnit: string;
120
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
121
+ totalCost?: number | undefined;
122
+ inputProduct?: string | undefined;
123
+ costPerHectare?: number | undefined;
124
+ }, {
125
+ id: string;
126
+ geometry: {
127
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
128
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
129
+ };
130
+ areaHectares: number;
131
+ zoneType: "low" | "medium" | "high" | "skip";
132
+ ndviRange: {
133
+ min: number;
134
+ max: number;
135
+ };
136
+ recommendedRate: number;
137
+ rateUnit: string;
138
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
139
+ totalCost?: number | undefined;
140
+ inputProduct?: string | undefined;
141
+ costPerHectare?: number | undefined;
142
+ }>, "many">;
143
+ totalArea: z.ZodNumber;
144
+ totalCost: z.ZodNumber;
145
+ exportFormats: z.ZodArray<z.ZodEnum<["shapefile", "geojson", "iso-xml", "isoxml", "kml", "csv"]>, "many">;
146
+ status: z.ZodEnum<["draft", "approved", "exported", "applied"]>;
147
+ interpolationMethod: z.ZodOptional<z.ZodEnum<["equal_interval", "quantiles", "natural_breaks", "kmeans"]>>;
148
+ zoneCount: z.ZodOptional<z.ZodNumber>;
149
+ layerWeights: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
150
+ }, "strip", z.ZodTypeAny, {
151
+ status: "draft" | "applied" | "approved" | "exported";
152
+ id: string;
153
+ createdAt: string;
154
+ name: string;
155
+ fieldId: string;
156
+ totalCost: number;
157
+ zones: {
158
+ id: string;
159
+ geometry: {
160
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
161
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
162
+ };
163
+ areaHectares: number;
164
+ zoneType: "low" | "medium" | "high" | "skip";
165
+ ndviRange: {
166
+ min: number;
167
+ max: number;
168
+ };
169
+ recommendedRate: number;
170
+ rateUnit: string;
171
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
172
+ totalCost?: number | undefined;
173
+ inputProduct?: string | undefined;
174
+ costPerHectare?: number | undefined;
175
+ }[];
176
+ totalArea: number;
177
+ sourceDataType: "ndvi" | "manual" | "soil_moisture" | "multi_layer";
178
+ sourceDate: string;
179
+ exportFormats: ("geojson" | "shapefile" | "iso-xml" | "isoxml" | "kml" | "csv")[];
180
+ zoneCount?: number | undefined;
181
+ interpolationMethod?: "equal_interval" | "quantiles" | "natural_breaks" | "kmeans" | undefined;
182
+ layerWeights?: Record<string, number> | undefined;
183
+ }, {
184
+ status: "draft" | "applied" | "approved" | "exported";
185
+ id: string;
186
+ createdAt: string;
187
+ name: string;
188
+ fieldId: string;
189
+ totalCost: number;
190
+ zones: {
191
+ id: string;
192
+ geometry: {
193
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
194
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
195
+ };
196
+ areaHectares: number;
197
+ zoneType: "low" | "medium" | "high" | "skip";
198
+ ndviRange: {
199
+ min: number;
200
+ max: number;
201
+ };
202
+ recommendedRate: number;
203
+ rateUnit: string;
204
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
205
+ totalCost?: number | undefined;
206
+ inputProduct?: string | undefined;
207
+ costPerHectare?: number | undefined;
208
+ }[];
209
+ totalArea: number;
210
+ sourceDataType: "ndvi" | "manual" | "soil_moisture" | "multi_layer";
211
+ sourceDate: string;
212
+ exportFormats: ("geojson" | "shapefile" | "iso-xml" | "isoxml" | "kml" | "csv")[];
213
+ zoneCount?: number | undefined;
214
+ interpolationMethod?: "equal_interval" | "quantiles" | "natural_breaks" | "kmeans" | undefined;
215
+ layerWeights?: Record<string, number> | undefined;
216
+ }>;
217
+ export declare const createPrescriptionMapBodySchema: z.ZodObject<{
218
+ name: z.ZodString;
219
+ sourceDataType: z.ZodEnum<["ndvi", "soil_moisture", "manual"]>;
220
+ sourceDate: z.ZodString;
221
+ zones: z.ZodArray<z.ZodObject<{
222
+ id: z.ZodString;
223
+ geometry: z.ZodObject<{
224
+ type: z.ZodEnum<["Polygon", "MultiPolygon", "Point", "LineString"]>;
225
+ coordinates: z.ZodUnion<[z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, z.ZodArray<z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, "many">, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">]>;
226
+ }, "strip", z.ZodTypeAny, {
227
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
228
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
229
+ }, {
230
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
231
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
232
+ }>;
233
+ zoneType: z.ZodEnum<["high", "medium", "low", "skip"]>;
234
+ ndviRange: z.ZodObject<{
235
+ min: z.ZodNumber;
236
+ max: z.ZodNumber;
237
+ }, "strip", z.ZodTypeAny, {
238
+ min: number;
239
+ max: number;
240
+ }, {
241
+ min: number;
242
+ max: number;
243
+ }>;
244
+ areaHectares: z.ZodNumber;
245
+ recommendedRate: z.ZodNumber;
246
+ rateUnit: z.ZodString;
247
+ inputType: z.ZodEnum<["fertilizer", "pesticide", "seed", "water"]>;
248
+ inputProduct: z.ZodOptional<z.ZodString>;
249
+ costPerHectare: z.ZodOptional<z.ZodNumber>;
250
+ totalCost: z.ZodOptional<z.ZodNumber>;
251
+ }, "strip", z.ZodTypeAny, {
252
+ id: string;
253
+ geometry: {
254
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
255
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
256
+ };
257
+ areaHectares: number;
258
+ zoneType: "low" | "medium" | "high" | "skip";
259
+ ndviRange: {
260
+ min: number;
261
+ max: number;
262
+ };
263
+ recommendedRate: number;
264
+ rateUnit: string;
265
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
266
+ totalCost?: number | undefined;
267
+ inputProduct?: string | undefined;
268
+ costPerHectare?: number | undefined;
269
+ }, {
270
+ id: string;
271
+ geometry: {
272
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
273
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
274
+ };
275
+ areaHectares: number;
276
+ zoneType: "low" | "medium" | "high" | "skip";
277
+ ndviRange: {
278
+ min: number;
279
+ max: number;
280
+ };
281
+ recommendedRate: number;
282
+ rateUnit: string;
283
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
284
+ totalCost?: number | undefined;
285
+ inputProduct?: string | undefined;
286
+ costPerHectare?: number | undefined;
287
+ }>, "many">;
288
+ }, "strip", z.ZodTypeAny, {
289
+ name: string;
290
+ zones: {
291
+ id: string;
292
+ geometry: {
293
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
294
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
295
+ };
296
+ areaHectares: number;
297
+ zoneType: "low" | "medium" | "high" | "skip";
298
+ ndviRange: {
299
+ min: number;
300
+ max: number;
301
+ };
302
+ recommendedRate: number;
303
+ rateUnit: string;
304
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
305
+ totalCost?: number | undefined;
306
+ inputProduct?: string | undefined;
307
+ costPerHectare?: number | undefined;
308
+ }[];
309
+ sourceDataType: "ndvi" | "manual" | "soil_moisture";
310
+ sourceDate: string;
311
+ }, {
312
+ name: string;
313
+ zones: {
314
+ id: string;
315
+ geometry: {
316
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
317
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
318
+ };
319
+ areaHectares: number;
320
+ zoneType: "low" | "medium" | "high" | "skip";
321
+ ndviRange: {
322
+ min: number;
323
+ max: number;
324
+ };
325
+ recommendedRate: number;
326
+ rateUnit: string;
327
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
328
+ totalCost?: number | undefined;
329
+ inputProduct?: string | undefined;
330
+ costPerHectare?: number | undefined;
331
+ }[];
332
+ sourceDataType: "ndvi" | "manual" | "soil_moisture";
333
+ sourceDate: string;
334
+ }>;
335
+ export declare const updatePrescriptionStatusBodySchema: z.ZodObject<{
336
+ status: z.ZodEnum<["draft", "approved", "exported", "applied"]>;
337
+ }, "strip", z.ZodTypeAny, {
338
+ status: "draft" | "applied" | "approved" | "exported";
339
+ }, {
340
+ status: "draft" | "applied" | "approved" | "exported";
341
+ }>;
342
+ export declare const prescriptionMapListResponseSchema: z.ZodArray<z.ZodObject<{
343
+ id: z.ZodString;
344
+ fieldId: z.ZodString;
345
+ name: z.ZodString;
346
+ createdAt: z.ZodString;
347
+ sourceDataType: z.ZodEnum<["ndvi", "soil_moisture", "manual", "multi_layer"]>;
348
+ sourceDate: z.ZodString;
349
+ zones: z.ZodArray<z.ZodObject<{
350
+ id: z.ZodString;
351
+ geometry: z.ZodObject<{
352
+ type: z.ZodEnum<["Polygon", "MultiPolygon", "Point", "LineString"]>;
353
+ coordinates: z.ZodUnion<[z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, z.ZodArray<z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, "many">, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">]>;
354
+ }, "strip", z.ZodTypeAny, {
355
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
356
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
357
+ }, {
358
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
359
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
360
+ }>;
361
+ zoneType: z.ZodEnum<["high", "medium", "low", "skip"]>;
362
+ ndviRange: z.ZodObject<{
363
+ min: z.ZodNumber;
364
+ max: z.ZodNumber;
365
+ }, "strip", z.ZodTypeAny, {
366
+ min: number;
367
+ max: number;
368
+ }, {
369
+ min: number;
370
+ max: number;
371
+ }>;
372
+ areaHectares: z.ZodNumber;
373
+ recommendedRate: z.ZodNumber;
374
+ rateUnit: z.ZodString;
375
+ inputType: z.ZodEnum<["fertilizer", "pesticide", "seed", "water"]>;
376
+ inputProduct: z.ZodOptional<z.ZodString>;
377
+ costPerHectare: z.ZodOptional<z.ZodNumber>;
378
+ totalCost: z.ZodOptional<z.ZodNumber>;
379
+ }, "strip", z.ZodTypeAny, {
380
+ id: string;
381
+ geometry: {
382
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
383
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
384
+ };
385
+ areaHectares: number;
386
+ zoneType: "low" | "medium" | "high" | "skip";
387
+ ndviRange: {
388
+ min: number;
389
+ max: number;
390
+ };
391
+ recommendedRate: number;
392
+ rateUnit: string;
393
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
394
+ totalCost?: number | undefined;
395
+ inputProduct?: string | undefined;
396
+ costPerHectare?: number | undefined;
397
+ }, {
398
+ id: string;
399
+ geometry: {
400
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
401
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
402
+ };
403
+ areaHectares: number;
404
+ zoneType: "low" | "medium" | "high" | "skip";
405
+ ndviRange: {
406
+ min: number;
407
+ max: number;
408
+ };
409
+ recommendedRate: number;
410
+ rateUnit: string;
411
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
412
+ totalCost?: number | undefined;
413
+ inputProduct?: string | undefined;
414
+ costPerHectare?: number | undefined;
415
+ }>, "many">;
416
+ totalArea: z.ZodNumber;
417
+ totalCost: z.ZodNumber;
418
+ exportFormats: z.ZodArray<z.ZodEnum<["shapefile", "geojson", "iso-xml", "isoxml", "kml", "csv"]>, "many">;
419
+ status: z.ZodEnum<["draft", "approved", "exported", "applied"]>;
420
+ interpolationMethod: z.ZodOptional<z.ZodEnum<["equal_interval", "quantiles", "natural_breaks", "kmeans"]>>;
421
+ zoneCount: z.ZodOptional<z.ZodNumber>;
422
+ layerWeights: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
423
+ }, "strip", z.ZodTypeAny, {
424
+ status: "draft" | "applied" | "approved" | "exported";
425
+ id: string;
426
+ createdAt: string;
427
+ name: string;
428
+ fieldId: string;
429
+ totalCost: number;
430
+ zones: {
431
+ id: string;
432
+ geometry: {
433
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
434
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
435
+ };
436
+ areaHectares: number;
437
+ zoneType: "low" | "medium" | "high" | "skip";
438
+ ndviRange: {
439
+ min: number;
440
+ max: number;
441
+ };
442
+ recommendedRate: number;
443
+ rateUnit: string;
444
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
445
+ totalCost?: number | undefined;
446
+ inputProduct?: string | undefined;
447
+ costPerHectare?: number | undefined;
448
+ }[];
449
+ totalArea: number;
450
+ sourceDataType: "ndvi" | "manual" | "soil_moisture" | "multi_layer";
451
+ sourceDate: string;
452
+ exportFormats: ("geojson" | "shapefile" | "iso-xml" | "isoxml" | "kml" | "csv")[];
453
+ zoneCount?: number | undefined;
454
+ interpolationMethod?: "equal_interval" | "quantiles" | "natural_breaks" | "kmeans" | undefined;
455
+ layerWeights?: Record<string, number> | undefined;
456
+ }, {
457
+ status: "draft" | "applied" | "approved" | "exported";
458
+ id: string;
459
+ createdAt: string;
460
+ name: string;
461
+ fieldId: string;
462
+ totalCost: number;
463
+ zones: {
464
+ id: string;
465
+ geometry: {
466
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
467
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
468
+ };
469
+ areaHectares: number;
470
+ zoneType: "low" | "medium" | "high" | "skip";
471
+ ndviRange: {
472
+ min: number;
473
+ max: number;
474
+ };
475
+ recommendedRate: number;
476
+ rateUnit: string;
477
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
478
+ totalCost?: number | undefined;
479
+ inputProduct?: string | undefined;
480
+ costPerHectare?: number | undefined;
481
+ }[];
482
+ totalArea: number;
483
+ sourceDataType: "ndvi" | "manual" | "soil_moisture" | "multi_layer";
484
+ sourceDate: string;
485
+ exportFormats: ("geojson" | "shapefile" | "iso-xml" | "isoxml" | "kml" | "csv")[];
486
+ zoneCount?: number | undefined;
487
+ interpolationMethod?: "equal_interval" | "quantiles" | "natural_breaks" | "kmeans" | undefined;
488
+ layerWeights?: Record<string, number> | undefined;
489
+ }>, "many">;
490
+ export declare const prescriptionMapSingleResponseSchema: z.ZodObject<{
491
+ id: z.ZodString;
492
+ fieldId: z.ZodString;
493
+ name: z.ZodString;
494
+ createdAt: z.ZodString;
495
+ sourceDataType: z.ZodEnum<["ndvi", "soil_moisture", "manual", "multi_layer"]>;
496
+ sourceDate: z.ZodString;
497
+ zones: z.ZodArray<z.ZodObject<{
498
+ id: z.ZodString;
499
+ geometry: z.ZodObject<{
500
+ type: z.ZodEnum<["Polygon", "MultiPolygon", "Point", "LineString"]>;
501
+ coordinates: z.ZodUnion<[z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, z.ZodArray<z.ZodArray<z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">, "many">, "many">, z.ZodArray<z.ZodNumber, "many">, z.ZodArray<z.ZodArray<z.ZodNumber, "many">, "many">]>;
502
+ }, "strip", z.ZodTypeAny, {
503
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
504
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
505
+ }, {
506
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
507
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
508
+ }>;
509
+ zoneType: z.ZodEnum<["high", "medium", "low", "skip"]>;
510
+ ndviRange: z.ZodObject<{
511
+ min: z.ZodNumber;
512
+ max: z.ZodNumber;
513
+ }, "strip", z.ZodTypeAny, {
514
+ min: number;
515
+ max: number;
516
+ }, {
517
+ min: number;
518
+ max: number;
519
+ }>;
520
+ areaHectares: z.ZodNumber;
521
+ recommendedRate: z.ZodNumber;
522
+ rateUnit: z.ZodString;
523
+ inputType: z.ZodEnum<["fertilizer", "pesticide", "seed", "water"]>;
524
+ inputProduct: z.ZodOptional<z.ZodString>;
525
+ costPerHectare: z.ZodOptional<z.ZodNumber>;
526
+ totalCost: z.ZodOptional<z.ZodNumber>;
527
+ }, "strip", z.ZodTypeAny, {
528
+ id: string;
529
+ geometry: {
530
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
531
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
532
+ };
533
+ areaHectares: number;
534
+ zoneType: "low" | "medium" | "high" | "skip";
535
+ ndviRange: {
536
+ min: number;
537
+ max: number;
538
+ };
539
+ recommendedRate: number;
540
+ rateUnit: string;
541
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
542
+ totalCost?: number | undefined;
543
+ inputProduct?: string | undefined;
544
+ costPerHectare?: number | undefined;
545
+ }, {
546
+ id: string;
547
+ geometry: {
548
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
549
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
550
+ };
551
+ areaHectares: number;
552
+ zoneType: "low" | "medium" | "high" | "skip";
553
+ ndviRange: {
554
+ min: number;
555
+ max: number;
556
+ };
557
+ recommendedRate: number;
558
+ rateUnit: string;
559
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
560
+ totalCost?: number | undefined;
561
+ inputProduct?: string | undefined;
562
+ costPerHectare?: number | undefined;
563
+ }>, "many">;
564
+ totalArea: z.ZodNumber;
565
+ totalCost: z.ZodNumber;
566
+ exportFormats: z.ZodArray<z.ZodEnum<["shapefile", "geojson", "iso-xml", "isoxml", "kml", "csv"]>, "many">;
567
+ status: z.ZodEnum<["draft", "approved", "exported", "applied"]>;
568
+ interpolationMethod: z.ZodOptional<z.ZodEnum<["equal_interval", "quantiles", "natural_breaks", "kmeans"]>>;
569
+ zoneCount: z.ZodOptional<z.ZodNumber>;
570
+ layerWeights: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
571
+ }, "strip", z.ZodTypeAny, {
572
+ status: "draft" | "applied" | "approved" | "exported";
573
+ id: string;
574
+ createdAt: string;
575
+ name: string;
576
+ fieldId: string;
577
+ totalCost: number;
578
+ zones: {
579
+ id: string;
580
+ geometry: {
581
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
582
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
583
+ };
584
+ areaHectares: number;
585
+ zoneType: "low" | "medium" | "high" | "skip";
586
+ ndviRange: {
587
+ min: number;
588
+ max: number;
589
+ };
590
+ recommendedRate: number;
591
+ rateUnit: string;
592
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
593
+ totalCost?: number | undefined;
594
+ inputProduct?: string | undefined;
595
+ costPerHectare?: number | undefined;
596
+ }[];
597
+ totalArea: number;
598
+ sourceDataType: "ndvi" | "manual" | "soil_moisture" | "multi_layer";
599
+ sourceDate: string;
600
+ exportFormats: ("geojson" | "shapefile" | "iso-xml" | "isoxml" | "kml" | "csv")[];
601
+ zoneCount?: number | undefined;
602
+ interpolationMethod?: "equal_interval" | "quantiles" | "natural_breaks" | "kmeans" | undefined;
603
+ layerWeights?: Record<string, number> | undefined;
604
+ }, {
605
+ status: "draft" | "applied" | "approved" | "exported";
606
+ id: string;
607
+ createdAt: string;
608
+ name: string;
609
+ fieldId: string;
610
+ totalCost: number;
611
+ zones: {
612
+ id: string;
613
+ geometry: {
614
+ type: "Polygon" | "MultiPolygon" | "Point" | "LineString";
615
+ coordinates: number[] | number[][] | number[][][] | number[][][][];
616
+ };
617
+ areaHectares: number;
618
+ zoneType: "low" | "medium" | "high" | "skip";
619
+ ndviRange: {
620
+ min: number;
621
+ max: number;
622
+ };
623
+ recommendedRate: number;
624
+ rateUnit: string;
625
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
626
+ totalCost?: number | undefined;
627
+ inputProduct?: string | undefined;
628
+ costPerHectare?: number | undefined;
629
+ }[];
630
+ totalArea: number;
631
+ sourceDataType: "ndvi" | "manual" | "soil_moisture" | "multi_layer";
632
+ sourceDate: string;
633
+ exportFormats: ("geojson" | "shapefile" | "iso-xml" | "isoxml" | "kml" | "csv")[];
634
+ zoneCount?: number | undefined;
635
+ interpolationMethod?: "equal_interval" | "quantiles" | "natural_breaks" | "kmeans" | undefined;
636
+ layerWeights?: Record<string, number> | undefined;
637
+ }>;
638
+ /** Data layer configuration for zone generation */
639
+ export declare const zoneLayerSchema: z.ZodObject<{
640
+ type: z.ZodEnum<["ndvi", "yield", "soil_ec", "elevation", "soil_moisture"]>;
641
+ weight: z.ZodNumber;
642
+ date: z.ZodOptional<z.ZodString>;
643
+ }, "strip", z.ZodTypeAny, {
644
+ type: "yield" | "ndvi" | "elevation" | "soil_moisture" | "soil_ec";
645
+ weight: number;
646
+ date?: string | undefined;
647
+ }, {
648
+ type: "yield" | "ndvi" | "elevation" | "soil_moisture" | "soil_ec";
649
+ weight: number;
650
+ date?: string | undefined;
651
+ }>;
652
+ /** Zone generation request body */
653
+ export declare const generateZonesRequestSchema: z.ZodObject<{
654
+ name: z.ZodString;
655
+ layers: z.ZodArray<z.ZodObject<{
656
+ type: z.ZodEnum<["ndvi", "yield", "soil_ec", "elevation", "soil_moisture"]>;
657
+ weight: z.ZodNumber;
658
+ date: z.ZodOptional<z.ZodString>;
659
+ }, "strip", z.ZodTypeAny, {
660
+ type: "yield" | "ndvi" | "elevation" | "soil_moisture" | "soil_ec";
661
+ weight: number;
662
+ date?: string | undefined;
663
+ }, {
664
+ type: "yield" | "ndvi" | "elevation" | "soil_moisture" | "soil_ec";
665
+ weight: number;
666
+ date?: string | undefined;
667
+ }>, "many">;
668
+ interpolation: z.ZodEnum<["equal_interval", "quantiles", "natural_breaks", "kmeans"]>;
669
+ zoneCount: z.ZodDefault<z.ZodNumber>;
670
+ inputType: z.ZodEnum<["fertilizer", "pesticide", "seed", "water"]>;
671
+ inputProduct: z.ZodOptional<z.ZodString>;
672
+ baseRate: z.ZodNumber;
673
+ rateUnit: z.ZodString;
674
+ rateVariation: z.ZodDefault<z.ZodNumber>;
675
+ costPerUnit: z.ZodOptional<z.ZodNumber>;
676
+ }, "strip", z.ZodTypeAny, {
677
+ name: string;
678
+ zoneCount: number;
679
+ rateUnit: string;
680
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
681
+ layers: {
682
+ type: "yield" | "ndvi" | "elevation" | "soil_moisture" | "soil_ec";
683
+ weight: number;
684
+ date?: string | undefined;
685
+ }[];
686
+ interpolation: "equal_interval" | "quantiles" | "natural_breaks" | "kmeans";
687
+ baseRate: number;
688
+ rateVariation: number;
689
+ costPerUnit?: number | undefined;
690
+ inputProduct?: string | undefined;
691
+ }, {
692
+ name: string;
693
+ rateUnit: string;
694
+ inputType: "seed" | "fertilizer" | "pesticide" | "water";
695
+ layers: {
696
+ type: "yield" | "ndvi" | "elevation" | "soil_moisture" | "soil_ec";
697
+ weight: number;
698
+ date?: string | undefined;
699
+ }[];
700
+ interpolation: "equal_interval" | "quantiles" | "natural_breaks" | "kmeans";
701
+ baseRate: number;
702
+ costPerUnit?: number | undefined;
703
+ zoneCount?: number | undefined;
704
+ inputProduct?: string | undefined;
705
+ rateVariation?: number | undefined;
706
+ }>;
707
+ /** Individual zone statistics */
708
+ export declare const zoneStatisticsSchema: z.ZodObject<{
709
+ zoneId: z.ZodString;
710
+ zoneNumber: z.ZodNumber;
711
+ classification: z.ZodEnum<["high", "medium_high", "medium", "medium_low", "low"]>;
712
+ areaHectares: z.ZodNumber;
713
+ areaPercent: z.ZodNumber;
714
+ sourceValueMean: z.ZodNumber;
715
+ sourceValueMin: z.ZodNumber;
716
+ sourceValueMax: z.ZodNumber;
717
+ recommendedRate: z.ZodNumber;
718
+ rateUnit: z.ZodString;
719
+ estimatedCost: z.ZodNumber;
720
+ estimatedQuantity: z.ZodNumber;
721
+ }, "strip", z.ZodTypeAny, {
722
+ estimatedCost: number;
723
+ classification: "low" | "medium" | "high" | "medium_high" | "medium_low";
724
+ zoneId: string;
725
+ zoneNumber: number;
726
+ areaHectares: number;
727
+ areaPercent: number;
728
+ recommendedRate: number;
729
+ rateUnit: string;
730
+ sourceValueMean: number;
731
+ sourceValueMin: number;
732
+ sourceValueMax: number;
733
+ estimatedQuantity: number;
734
+ }, {
735
+ estimatedCost: number;
736
+ classification: "low" | "medium" | "high" | "medium_high" | "medium_low";
737
+ zoneId: string;
738
+ zoneNumber: number;
739
+ areaHectares: number;
740
+ areaPercent: number;
741
+ recommendedRate: number;
742
+ rateUnit: string;
743
+ sourceValueMean: number;
744
+ sourceValueMin: number;
745
+ sourceValueMax: number;
746
+ estimatedQuantity: number;
747
+ }>;
748
+ /** Zone statistics summary */
749
+ export declare const zoneSummarySchema: z.ZodObject<{
750
+ averageRate: z.ZodNumber;
751
+ minRate: z.ZodNumber;
752
+ maxRate: z.ZodNumber;
753
+ potentialSavings: z.ZodNumber;
754
+ uniformCost: z.ZodNumber;
755
+ variableRateCost: z.ZodNumber;
756
+ }, "strip", z.ZodTypeAny, {
757
+ averageRate: number;
758
+ minRate: number;
759
+ maxRate: number;
760
+ potentialSavings: number;
761
+ uniformCost: number;
762
+ variableRateCost: number;
763
+ }, {
764
+ averageRate: number;
765
+ minRate: number;
766
+ maxRate: number;
767
+ potentialSavings: number;
768
+ uniformCost: number;
769
+ variableRateCost: number;
770
+ }>;
771
+ /** Zone statistics response */
772
+ export declare const zoneStatsResponseSchema: z.ZodObject<{
773
+ prescriptionId: z.ZodString;
774
+ fieldName: z.ZodString;
775
+ totalArea: z.ZodNumber;
776
+ totalCost: z.ZodNumber;
777
+ totalQuantity: z.ZodNumber;
778
+ zones: z.ZodArray<z.ZodObject<{
779
+ zoneId: z.ZodString;
780
+ zoneNumber: z.ZodNumber;
781
+ classification: z.ZodEnum<["high", "medium_high", "medium", "medium_low", "low"]>;
782
+ areaHectares: z.ZodNumber;
783
+ areaPercent: z.ZodNumber;
784
+ sourceValueMean: z.ZodNumber;
785
+ sourceValueMin: z.ZodNumber;
786
+ sourceValueMax: z.ZodNumber;
787
+ recommendedRate: z.ZodNumber;
788
+ rateUnit: z.ZodString;
789
+ estimatedCost: z.ZodNumber;
790
+ estimatedQuantity: z.ZodNumber;
791
+ }, "strip", z.ZodTypeAny, {
792
+ estimatedCost: number;
793
+ classification: "low" | "medium" | "high" | "medium_high" | "medium_low";
794
+ zoneId: string;
795
+ zoneNumber: number;
796
+ areaHectares: number;
797
+ areaPercent: number;
798
+ recommendedRate: number;
799
+ rateUnit: string;
800
+ sourceValueMean: number;
801
+ sourceValueMin: number;
802
+ sourceValueMax: number;
803
+ estimatedQuantity: number;
804
+ }, {
805
+ estimatedCost: number;
806
+ classification: "low" | "medium" | "high" | "medium_high" | "medium_low";
807
+ zoneId: string;
808
+ zoneNumber: number;
809
+ areaHectares: number;
810
+ areaPercent: number;
811
+ recommendedRate: number;
812
+ rateUnit: string;
813
+ sourceValueMean: number;
814
+ sourceValueMin: number;
815
+ sourceValueMax: number;
816
+ estimatedQuantity: number;
817
+ }>, "many">;
818
+ summary: z.ZodObject<{
819
+ averageRate: z.ZodNumber;
820
+ minRate: z.ZodNumber;
821
+ maxRate: z.ZodNumber;
822
+ potentialSavings: z.ZodNumber;
823
+ uniformCost: z.ZodNumber;
824
+ variableRateCost: z.ZodNumber;
825
+ }, "strip", z.ZodTypeAny, {
826
+ averageRate: number;
827
+ minRate: number;
828
+ maxRate: number;
829
+ potentialSavings: number;
830
+ uniformCost: number;
831
+ variableRateCost: number;
832
+ }, {
833
+ averageRate: number;
834
+ minRate: number;
835
+ maxRate: number;
836
+ potentialSavings: number;
837
+ uniformCost: number;
838
+ variableRateCost: number;
839
+ }>;
840
+ }, "strip", z.ZodTypeAny, {
841
+ summary: {
842
+ averageRate: number;
843
+ minRate: number;
844
+ maxRate: number;
845
+ potentialSavings: number;
846
+ uniformCost: number;
847
+ variableRateCost: number;
848
+ };
849
+ fieldName: string;
850
+ totalCost: number;
851
+ zones: {
852
+ estimatedCost: number;
853
+ classification: "low" | "medium" | "high" | "medium_high" | "medium_low";
854
+ zoneId: string;
855
+ zoneNumber: number;
856
+ areaHectares: number;
857
+ areaPercent: number;
858
+ recommendedRate: number;
859
+ rateUnit: string;
860
+ sourceValueMean: number;
861
+ sourceValueMin: number;
862
+ sourceValueMax: number;
863
+ estimatedQuantity: number;
864
+ }[];
865
+ totalArea: number;
866
+ prescriptionId: string;
867
+ totalQuantity: number;
868
+ }, {
869
+ summary: {
870
+ averageRate: number;
871
+ minRate: number;
872
+ maxRate: number;
873
+ potentialSavings: number;
874
+ uniformCost: number;
875
+ variableRateCost: number;
876
+ };
877
+ fieldName: string;
878
+ totalCost: number;
879
+ zones: {
880
+ estimatedCost: number;
881
+ classification: "low" | "medium" | "high" | "medium_high" | "medium_low";
882
+ zoneId: string;
883
+ zoneNumber: number;
884
+ areaHectares: number;
885
+ areaPercent: number;
886
+ recommendedRate: number;
887
+ rateUnit: string;
888
+ sourceValueMean: number;
889
+ sourceValueMin: number;
890
+ sourceValueMax: number;
891
+ estimatedQuantity: number;
892
+ }[];
893
+ totalArea: number;
894
+ prescriptionId: string;
895
+ totalQuantity: number;
896
+ }>;
897
+ /** Export format enum matching Prisma */
898
+ export declare const exportFormatSchema: z.ZodEnum<["shapefile", "geojson", "isoxml", "kml", "csv"]>;
899
+ /** Export request body */
900
+ export declare const exportRequestSchema: z.ZodObject<{
901
+ format: z.ZodEnum<["shapefile", "geojson", "isoxml", "kml", "csv"]>;
902
+ machinery: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
903
+ includeMetadata: z.ZodDefault<z.ZodBoolean>;
904
+ }, "strip", z.ZodTypeAny, {
905
+ format: "geojson" | "shapefile" | "isoxml" | "kml" | "csv";
906
+ includeMetadata: boolean;
907
+ machinery?: string[] | undefined;
908
+ }, {
909
+ format: "geojson" | "shapefile" | "isoxml" | "kml" | "csv";
910
+ machinery?: string[] | undefined;
911
+ includeMetadata?: boolean | undefined;
912
+ }>;
913
+ /** Export response */
914
+ export declare const exportResponseSchema: z.ZodObject<{
915
+ exportId: z.ZodString;
916
+ format: z.ZodString;
917
+ fileName: z.ZodString;
918
+ downloadUrl: z.ZodString;
919
+ fileSize: z.ZodNullable<z.ZodNumber>;
920
+ expiresAt: z.ZodString;
921
+ }, "strip", z.ZodTypeAny, {
922
+ fileName: string;
923
+ fileSize: number | null;
924
+ format: string;
925
+ exportId: string;
926
+ downloadUrl: string;
927
+ expiresAt: string;
928
+ }, {
929
+ fileName: string;
930
+ fileSize: number | null;
931
+ format: string;
932
+ exportId: string;
933
+ downloadUrl: string;
934
+ expiresAt: string;
935
+ }>;
936
+ /** List exports response */
937
+ export declare const exportListResponseSchema: z.ZodArray<z.ZodObject<{
938
+ id: z.ZodString;
939
+ format: z.ZodString;
940
+ fileName: z.ZodString;
941
+ downloadUrl: z.ZodString;
942
+ fileSize: z.ZodNullable<z.ZodNumber>;
943
+ exportedAt: z.ZodString;
944
+ machinery: z.ZodNullable<z.ZodArray<z.ZodString, "many">>;
945
+ }, "strip", z.ZodTypeAny, {
946
+ id: string;
947
+ fileName: string;
948
+ fileSize: number | null;
949
+ format: string;
950
+ machinery: string[] | null;
951
+ downloadUrl: string;
952
+ exportedAt: string;
953
+ }, {
954
+ id: string;
955
+ fileName: string;
956
+ fileSize: number | null;
957
+ format: string;
958
+ machinery: string[] | null;
959
+ downloadUrl: string;
960
+ exportedAt: string;
961
+ }>, "many">;
962
+ export type PrescriptionMapResponse = z.infer<typeof prescriptionMapSchema>;
963
+ export type PrescriptionZoneResponse = z.infer<typeof prescriptionZoneSchema>;
964
+ export type CreatePrescriptionMapBody = z.infer<typeof createPrescriptionMapBodySchema>;
965
+ export type UpdatePrescriptionStatusBody = z.infer<typeof updatePrescriptionStatusBodySchema>;
966
+ export type ZoneLayer = z.infer<typeof zoneLayerSchema>;
967
+ export type GenerateZonesRequest = z.infer<typeof generateZonesRequestSchema>;
968
+ export type ZoneStatistics = z.infer<typeof zoneStatisticsSchema>;
969
+ export type ZoneSummary = z.infer<typeof zoneSummarySchema>;
970
+ export type ZoneStatsResponse = z.infer<typeof zoneStatsResponseSchema>;
971
+ export type ExportFormat = z.infer<typeof exportFormatSchema>;
972
+ export type ExportRequest = z.infer<typeof exportRequestSchema>;
973
+ export type ExportResponse = z.infer<typeof exportResponseSchema>;
974
+ //# sourceMappingURL=prescription-maps.schemas.d.ts.map