@deepintel-ltd/farmpro-contracts 1.0.1 → 1.0.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.
Files changed (100) hide show
  1. package/dist/index.d.ts +41 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +81 -0
  4. package/dist/routes/analytics.routes.d.ts +754 -0
  5. package/dist/routes/analytics.routes.d.ts.map +1 -0
  6. package/dist/routes/analytics.routes.js +24 -0
  7. package/dist/routes/auth.routes.d.ts +3836 -0
  8. package/dist/routes/auth.routes.d.ts.map +1 -0
  9. package/dist/routes/auth.routes.js +158 -0
  10. package/dist/routes/documents.routes.d.ts +2476 -0
  11. package/dist/routes/documents.routes.d.ts.map +1 -0
  12. package/dist/routes/documents.routes.js +100 -0
  13. package/dist/routes/equipment.routes.d.ts +3617 -0
  14. package/dist/routes/equipment.routes.d.ts.map +1 -0
  15. package/dist/routes/equipment.routes.js +118 -0
  16. package/dist/routes/farms.routes.d.ts +2202 -0
  17. package/dist/routes/farms.routes.d.ts.map +1 -0
  18. package/dist/routes/farms.routes.js +111 -0
  19. package/dist/routes/fields.routes.d.ts +3389 -0
  20. package/dist/routes/fields.routes.d.ts.map +1 -0
  21. package/dist/routes/fields.routes.js +95 -0
  22. package/dist/routes/finance.routes.d.ts +6855 -0
  23. package/dist/routes/finance.routes.d.ts.map +1 -0
  24. package/dist/routes/finance.routes.js +259 -0
  25. package/dist/routes/harvest.routes.d.ts +2337 -0
  26. package/dist/routes/harvest.routes.d.ts.map +1 -0
  27. package/dist/routes/harvest.routes.js +99 -0
  28. package/dist/routes/index.d.ts +68 -0
  29. package/dist/routes/index.d.ts.map +1 -0
  30. package/dist/routes/index.js +43 -0
  31. package/dist/routes/inventory.routes.d.ts +2853 -0
  32. package/dist/routes/inventory.routes.d.ts.map +1 -0
  33. package/dist/routes/inventory.routes.js +121 -0
  34. package/dist/routes/soil-tests.routes.d.ts +3005 -0
  35. package/dist/routes/soil-tests.routes.d.ts.map +1 -0
  36. package/dist/routes/soil-tests.routes.js +98 -0
  37. package/dist/routes/suppliers.routes.d.ts +4190 -0
  38. package/dist/routes/suppliers.routes.d.ts.map +1 -0
  39. package/dist/routes/suppliers.routes.js +146 -0
  40. package/dist/routes/tasks.routes.d.ts +4192 -0
  41. package/dist/routes/tasks.routes.d.ts.map +1 -0
  42. package/dist/routes/tasks.routes.js +138 -0
  43. package/dist/routes/team.routes.d.ts +2210 -0
  44. package/dist/routes/team.routes.d.ts.map +1 -0
  45. package/dist/routes/team.routes.js +98 -0
  46. package/dist/routes/users.routes.d.ts +721 -0
  47. package/dist/routes/users.routes.d.ts.map +1 -0
  48. package/dist/routes/users.routes.js +35 -0
  49. package/dist/routes/weather.routes.d.ts +500 -0
  50. package/dist/routes/weather.routes.d.ts.map +1 -0
  51. package/dist/routes/weather.routes.js +23 -0
  52. package/dist/schemas/analytics.schemas.d.ts +1344 -0
  53. package/dist/schemas/analytics.schemas.d.ts.map +1 -0
  54. package/dist/schemas/analytics.schemas.js +73 -0
  55. package/dist/schemas/auth.schemas.d.ts +1093 -0
  56. package/dist/schemas/auth.schemas.d.ts.map +1 -0
  57. package/dist/schemas/auth.schemas.js +159 -0
  58. package/dist/schemas/common.schemas.d.ts +562 -0
  59. package/dist/schemas/common.schemas.d.ts.map +1 -0
  60. package/dist/schemas/common.schemas.js +122 -0
  61. package/dist/schemas/documents.schemas.d.ts +850 -0
  62. package/dist/schemas/documents.schemas.d.ts.map +1 -0
  63. package/dist/schemas/documents.schemas.js +75 -0
  64. package/dist/schemas/equipment.schemas.d.ts +1618 -0
  65. package/dist/schemas/equipment.schemas.d.ts.map +1 -0
  66. package/dist/schemas/equipment.schemas.js +125 -0
  67. package/dist/schemas/farms.schemas.d.ts +1171 -0
  68. package/dist/schemas/farms.schemas.d.ts.map +1 -0
  69. package/dist/schemas/farms.schemas.js +62 -0
  70. package/dist/schemas/fields.schemas.d.ts +2508 -0
  71. package/dist/schemas/fields.schemas.d.ts.map +1 -0
  72. package/dist/schemas/fields.schemas.js +125 -0
  73. package/dist/schemas/finance.schemas.d.ts +2869 -0
  74. package/dist/schemas/finance.schemas.d.ts.map +1 -0
  75. package/dist/schemas/finance.schemas.js +196 -0
  76. package/dist/schemas/harvest.schemas.d.ts +1051 -0
  77. package/dist/schemas/harvest.schemas.d.ts.map +1 -0
  78. package/dist/schemas/harvest.schemas.js +71 -0
  79. package/dist/schemas/inventory.schemas.d.ts +1138 -0
  80. package/dist/schemas/inventory.schemas.d.ts.map +1 -0
  81. package/dist/schemas/inventory.schemas.js +89 -0
  82. package/dist/schemas/soil-tests.schemas.d.ts +1885 -0
  83. package/dist/schemas/soil-tests.schemas.d.ts.map +1 -0
  84. package/dist/schemas/soil-tests.schemas.js +102 -0
  85. package/dist/schemas/suppliers.schemas.d.ts +1774 -0
  86. package/dist/schemas/suppliers.schemas.d.ts.map +1 -0
  87. package/dist/schemas/suppliers.schemas.js +121 -0
  88. package/dist/schemas/tasks.schemas.d.ts +1761 -0
  89. package/dist/schemas/tasks.schemas.d.ts.map +1 -0
  90. package/dist/schemas/tasks.schemas.js +121 -0
  91. package/dist/schemas/team.schemas.d.ts +583 -0
  92. package/dist/schemas/team.schemas.d.ts.map +1 -0
  93. package/dist/schemas/team.schemas.js +60 -0
  94. package/dist/schemas/users.schemas.d.ts +288 -0
  95. package/dist/schemas/users.schemas.d.ts.map +1 -0
  96. package/dist/schemas/users.schemas.js +32 -0
  97. package/dist/schemas/weather.schemas.d.ts +682 -0
  98. package/dist/schemas/weather.schemas.d.ts.map +1 -0
  99. package/dist/schemas/weather.schemas.js +49 -0
  100. package/package.json +1 -1
@@ -0,0 +1,3005 @@
1
+ import { z } from 'zod';
2
+ export declare const soilTestsRouter: {
3
+ listSoilTests: {
4
+ pathParams: z.ZodObject<{
5
+ farmId: z.ZodString;
6
+ }, "strip", z.ZodTypeAny, {
7
+ farmId: string;
8
+ }, {
9
+ farmId: string;
10
+ }>;
11
+ query: z.ZodObject<{
12
+ 'page[number]': z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
13
+ 'page[size]': z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
14
+ } & {
15
+ sort: z.ZodOptional<z.ZodString>;
16
+ } & {
17
+ include: z.ZodOptional<z.ZodString>;
18
+ } & {
19
+ 'filter[startDate]': z.ZodOptional<z.ZodString>;
20
+ 'filter[endDate]': z.ZodOptional<z.ZodString>;
21
+ 'filter[status]': z.ZodOptional<z.ZodString>;
22
+ 'filter[crop]': z.ZodOptional<z.ZodString>;
23
+ } & {
24
+ 'filter[fieldId]': z.ZodOptional<z.ZodString>;
25
+ }, "strip", z.ZodTypeAny, {
26
+ sort?: string | undefined;
27
+ 'page[number]'?: number | undefined;
28
+ 'page[size]'?: number | undefined;
29
+ 'filter[startDate]'?: string | undefined;
30
+ 'filter[endDate]'?: string | undefined;
31
+ 'filter[status]'?: string | undefined;
32
+ 'filter[crop]'?: string | undefined;
33
+ include?: string | undefined;
34
+ 'filter[fieldId]'?: string | undefined;
35
+ }, {
36
+ sort?: string | undefined;
37
+ 'page[number]'?: number | undefined;
38
+ 'page[size]'?: number | undefined;
39
+ 'filter[startDate]'?: string | undefined;
40
+ 'filter[endDate]'?: string | undefined;
41
+ 'filter[status]'?: string | undefined;
42
+ 'filter[crop]'?: string | undefined;
43
+ include?: string | undefined;
44
+ 'filter[fieldId]'?: string | undefined;
45
+ }>;
46
+ summary: "List soil tests";
47
+ description: "Get all soil tests for a farm";
48
+ method: "GET";
49
+ path: "/farms/:farmId/soil-tests";
50
+ responses: {
51
+ 200: z.ZodObject<{
52
+ data: z.ZodArray<z.ZodObject<{
53
+ type: z.ZodLiteral<string>;
54
+ id: z.ZodString;
55
+ attributes: z.ZodObject<{
56
+ fieldId: z.ZodString;
57
+ fieldName: z.ZodOptional<z.ZodString>;
58
+ testDate: z.ZodString;
59
+ testedBy: z.ZodNullable<z.ZodString>;
60
+ labName: z.ZodNullable<z.ZodString>;
61
+ cropAtTimeOfTest: z.ZodNullable<z.ZodString>;
62
+ pH: z.ZodNumber;
63
+ nitrogen: z.ZodNullable<z.ZodNumber>;
64
+ nitrogenUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
65
+ phosphorus: z.ZodNullable<z.ZodNumber>;
66
+ phosphorusUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
67
+ potassium: z.ZodNullable<z.ZodNumber>;
68
+ potassiumUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
69
+ organicMatter: z.ZodNullable<z.ZodNumber>;
70
+ testCost: z.ZodNullable<z.ZodNumber>;
71
+ notes: z.ZodNullable<z.ZodString>;
72
+ documentUrl: z.ZodNullable<z.ZodString>;
73
+ recommendedFertilizers: z.ZodOptional<z.ZodArray<z.ZodObject<{
74
+ inventoryItemId: z.ZodString;
75
+ quantity: z.ZodNumber;
76
+ unit: z.ZodString;
77
+ reason: z.ZodString;
78
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
79
+ }, "strip", z.ZodTypeAny, {
80
+ inventoryItemId: string;
81
+ unit: string;
82
+ quantity: number;
83
+ reason: string;
84
+ estimatedCost?: number | undefined;
85
+ }, {
86
+ inventoryItemId: string;
87
+ unit: string;
88
+ quantity: number;
89
+ reason: string;
90
+ estimatedCost?: number | undefined;
91
+ }>, "many">>;
92
+ recommendations: z.ZodOptional<z.ZodNullable<z.ZodString>>;
93
+ createdBy: z.ZodNullable<z.ZodString>;
94
+ } & {
95
+ createdAt: z.ZodString;
96
+ updatedAt: z.ZodString;
97
+ }, "strip", z.ZodTypeAny, {
98
+ createdAt: string;
99
+ updatedAt: string;
100
+ fieldId: string;
101
+ notes: string | null;
102
+ testDate: string;
103
+ testedBy: string | null;
104
+ labName: string | null;
105
+ cropAtTimeOfTest: string | null;
106
+ pH: number;
107
+ nitrogen: number | null;
108
+ nitrogenUnit: "ppm" | "kg/ha" | null;
109
+ phosphorus: number | null;
110
+ phosphorusUnit: "ppm" | "kg/ha" | null;
111
+ potassium: number | null;
112
+ potassiumUnit: "ppm" | "kg/ha" | null;
113
+ organicMatter: number | null;
114
+ testCost: number | null;
115
+ documentUrl: string | null;
116
+ createdBy: string | null;
117
+ fieldName?: string | undefined;
118
+ recommendedFertilizers?: {
119
+ inventoryItemId: string;
120
+ unit: string;
121
+ quantity: number;
122
+ reason: string;
123
+ estimatedCost?: number | undefined;
124
+ }[] | undefined;
125
+ recommendations?: string | null | undefined;
126
+ }, {
127
+ createdAt: string;
128
+ updatedAt: string;
129
+ fieldId: string;
130
+ notes: string | null;
131
+ testDate: string;
132
+ testedBy: string | null;
133
+ labName: string | null;
134
+ cropAtTimeOfTest: string | null;
135
+ pH: number;
136
+ nitrogen: number | null;
137
+ nitrogenUnit: "ppm" | "kg/ha" | null;
138
+ phosphorus: number | null;
139
+ phosphorusUnit: "ppm" | "kg/ha" | null;
140
+ potassium: number | null;
141
+ potassiumUnit: "ppm" | "kg/ha" | null;
142
+ organicMatter: number | null;
143
+ testCost: number | null;
144
+ documentUrl: string | null;
145
+ createdBy: string | null;
146
+ fieldName?: string | undefined;
147
+ recommendedFertilizers?: {
148
+ inventoryItemId: string;
149
+ unit: string;
150
+ quantity: number;
151
+ reason: string;
152
+ estimatedCost?: number | undefined;
153
+ }[] | undefined;
154
+ recommendations?: string | null | undefined;
155
+ }>;
156
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
157
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
158
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
159
+ }, "strip", z.ZodTypeAny, {
160
+ type: string;
161
+ id: string;
162
+ attributes: {
163
+ createdAt: string;
164
+ updatedAt: string;
165
+ fieldId: string;
166
+ notes: string | null;
167
+ testDate: string;
168
+ testedBy: string | null;
169
+ labName: string | null;
170
+ cropAtTimeOfTest: string | null;
171
+ pH: number;
172
+ nitrogen: number | null;
173
+ nitrogenUnit: "ppm" | "kg/ha" | null;
174
+ phosphorus: number | null;
175
+ phosphorusUnit: "ppm" | "kg/ha" | null;
176
+ potassium: number | null;
177
+ potassiumUnit: "ppm" | "kg/ha" | null;
178
+ organicMatter: number | null;
179
+ testCost: number | null;
180
+ documentUrl: string | null;
181
+ createdBy: string | null;
182
+ fieldName?: string | undefined;
183
+ recommendedFertilizers?: {
184
+ inventoryItemId: string;
185
+ unit: string;
186
+ quantity: number;
187
+ reason: string;
188
+ estimatedCost?: number | undefined;
189
+ }[] | undefined;
190
+ recommendations?: string | null | undefined;
191
+ };
192
+ relationships?: Record<string, unknown> | undefined;
193
+ links?: Record<string, string> | undefined;
194
+ meta?: Record<string, unknown> | undefined;
195
+ }, {
196
+ type: string;
197
+ id: string;
198
+ attributes: {
199
+ createdAt: string;
200
+ updatedAt: string;
201
+ fieldId: string;
202
+ notes: string | null;
203
+ testDate: string;
204
+ testedBy: string | null;
205
+ labName: string | null;
206
+ cropAtTimeOfTest: string | null;
207
+ pH: number;
208
+ nitrogen: number | null;
209
+ nitrogenUnit: "ppm" | "kg/ha" | null;
210
+ phosphorus: number | null;
211
+ phosphorusUnit: "ppm" | "kg/ha" | null;
212
+ potassium: number | null;
213
+ potassiumUnit: "ppm" | "kg/ha" | null;
214
+ organicMatter: number | null;
215
+ testCost: number | null;
216
+ documentUrl: string | null;
217
+ createdBy: string | null;
218
+ fieldName?: string | undefined;
219
+ recommendedFertilizers?: {
220
+ inventoryItemId: string;
221
+ unit: string;
222
+ quantity: number;
223
+ reason: string;
224
+ estimatedCost?: number | undefined;
225
+ }[] | undefined;
226
+ recommendations?: string | null | undefined;
227
+ };
228
+ relationships?: Record<string, unknown> | undefined;
229
+ links?: Record<string, string> | undefined;
230
+ meta?: Record<string, unknown> | undefined;
231
+ }>, "many">;
232
+ included: z.ZodOptional<z.ZodArray<z.ZodObject<{
233
+ type: z.ZodString;
234
+ id: z.ZodString;
235
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
236
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
237
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
238
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
239
+ }, "strip", z.ZodTypeAny, {
240
+ type: string;
241
+ id: string;
242
+ attributes?: Record<string, unknown> | undefined;
243
+ relationships?: Record<string, unknown> | undefined;
244
+ links?: Record<string, string> | undefined;
245
+ meta?: Record<string, unknown> | undefined;
246
+ }, {
247
+ type: string;
248
+ id: string;
249
+ attributes?: Record<string, unknown> | undefined;
250
+ relationships?: Record<string, unknown> | undefined;
251
+ links?: Record<string, string> | undefined;
252
+ meta?: Record<string, unknown> | undefined;
253
+ }>, "many">>;
254
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
255
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
256
+ }, "strip", z.ZodTypeAny, {
257
+ data: {
258
+ type: string;
259
+ id: string;
260
+ attributes: {
261
+ createdAt: string;
262
+ updatedAt: string;
263
+ fieldId: string;
264
+ notes: string | null;
265
+ testDate: string;
266
+ testedBy: string | null;
267
+ labName: string | null;
268
+ cropAtTimeOfTest: string | null;
269
+ pH: number;
270
+ nitrogen: number | null;
271
+ nitrogenUnit: "ppm" | "kg/ha" | null;
272
+ phosphorus: number | null;
273
+ phosphorusUnit: "ppm" | "kg/ha" | null;
274
+ potassium: number | null;
275
+ potassiumUnit: "ppm" | "kg/ha" | null;
276
+ organicMatter: number | null;
277
+ testCost: number | null;
278
+ documentUrl: string | null;
279
+ createdBy: string | null;
280
+ fieldName?: string | undefined;
281
+ recommendedFertilizers?: {
282
+ inventoryItemId: string;
283
+ unit: string;
284
+ quantity: number;
285
+ reason: string;
286
+ estimatedCost?: number | undefined;
287
+ }[] | undefined;
288
+ recommendations?: string | null | undefined;
289
+ };
290
+ relationships?: Record<string, unknown> | undefined;
291
+ links?: Record<string, string> | undefined;
292
+ meta?: Record<string, unknown> | undefined;
293
+ }[];
294
+ links?: Record<string, string> | undefined;
295
+ meta?: Record<string, unknown> | undefined;
296
+ included?: {
297
+ type: string;
298
+ id: string;
299
+ attributes?: Record<string, unknown> | undefined;
300
+ relationships?: Record<string, unknown> | undefined;
301
+ links?: Record<string, string> | undefined;
302
+ meta?: Record<string, unknown> | undefined;
303
+ }[] | undefined;
304
+ }, {
305
+ data: {
306
+ type: string;
307
+ id: string;
308
+ attributes: {
309
+ createdAt: string;
310
+ updatedAt: string;
311
+ fieldId: string;
312
+ notes: string | null;
313
+ testDate: string;
314
+ testedBy: string | null;
315
+ labName: string | null;
316
+ cropAtTimeOfTest: string | null;
317
+ pH: number;
318
+ nitrogen: number | null;
319
+ nitrogenUnit: "ppm" | "kg/ha" | null;
320
+ phosphorus: number | null;
321
+ phosphorusUnit: "ppm" | "kg/ha" | null;
322
+ potassium: number | null;
323
+ potassiumUnit: "ppm" | "kg/ha" | null;
324
+ organicMatter: number | null;
325
+ testCost: number | null;
326
+ documentUrl: string | null;
327
+ createdBy: string | null;
328
+ fieldName?: string | undefined;
329
+ recommendedFertilizers?: {
330
+ inventoryItemId: string;
331
+ unit: string;
332
+ quantity: number;
333
+ reason: string;
334
+ estimatedCost?: number | undefined;
335
+ }[] | undefined;
336
+ recommendations?: string | null | undefined;
337
+ };
338
+ relationships?: Record<string, unknown> | undefined;
339
+ links?: Record<string, string> | undefined;
340
+ meta?: Record<string, unknown> | undefined;
341
+ }[];
342
+ links?: Record<string, string> | undefined;
343
+ meta?: Record<string, unknown> | undefined;
344
+ included?: {
345
+ type: string;
346
+ id: string;
347
+ attributes?: Record<string, unknown> | undefined;
348
+ relationships?: Record<string, unknown> | undefined;
349
+ links?: Record<string, string> | undefined;
350
+ meta?: Record<string, unknown> | undefined;
351
+ }[] | undefined;
352
+ }>;
353
+ 404: z.ZodObject<{
354
+ errors: z.ZodArray<z.ZodObject<{
355
+ id: z.ZodOptional<z.ZodString>;
356
+ links: z.ZodOptional<z.ZodObject<{
357
+ about: z.ZodOptional<z.ZodString>;
358
+ }, "strip", z.ZodTypeAny, {
359
+ about?: string | undefined;
360
+ }, {
361
+ about?: string | undefined;
362
+ }>>;
363
+ status: z.ZodOptional<z.ZodString>;
364
+ code: z.ZodOptional<z.ZodString>;
365
+ title: z.ZodOptional<z.ZodString>;
366
+ detail: z.ZodOptional<z.ZodString>;
367
+ source: z.ZodOptional<z.ZodObject<{
368
+ pointer: z.ZodOptional<z.ZodString>;
369
+ parameter: z.ZodOptional<z.ZodString>;
370
+ }, "strip", z.ZodTypeAny, {
371
+ pointer?: string | undefined;
372
+ parameter?: string | undefined;
373
+ }, {
374
+ pointer?: string | undefined;
375
+ parameter?: string | undefined;
376
+ }>>;
377
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
378
+ }, "strip", z.ZodTypeAny, {
379
+ status?: string | undefined;
380
+ code?: string | undefined;
381
+ id?: string | undefined;
382
+ links?: {
383
+ about?: string | undefined;
384
+ } | undefined;
385
+ meta?: Record<string, unknown> | undefined;
386
+ title?: string | undefined;
387
+ detail?: string | undefined;
388
+ source?: {
389
+ pointer?: string | undefined;
390
+ parameter?: string | undefined;
391
+ } | undefined;
392
+ }, {
393
+ status?: string | undefined;
394
+ code?: string | undefined;
395
+ id?: string | undefined;
396
+ links?: {
397
+ about?: string | undefined;
398
+ } | undefined;
399
+ meta?: Record<string, unknown> | undefined;
400
+ title?: string | undefined;
401
+ detail?: string | undefined;
402
+ source?: {
403
+ pointer?: string | undefined;
404
+ parameter?: string | undefined;
405
+ } | undefined;
406
+ }>, "many">;
407
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
408
+ }, "strip", z.ZodTypeAny, {
409
+ errors: {
410
+ status?: string | undefined;
411
+ code?: string | undefined;
412
+ id?: string | undefined;
413
+ links?: {
414
+ about?: string | undefined;
415
+ } | undefined;
416
+ meta?: Record<string, unknown> | undefined;
417
+ title?: string | undefined;
418
+ detail?: string | undefined;
419
+ source?: {
420
+ pointer?: string | undefined;
421
+ parameter?: string | undefined;
422
+ } | undefined;
423
+ }[];
424
+ meta?: Record<string, unknown> | undefined;
425
+ }, {
426
+ errors: {
427
+ status?: string | undefined;
428
+ code?: string | undefined;
429
+ id?: string | undefined;
430
+ links?: {
431
+ about?: string | undefined;
432
+ } | undefined;
433
+ meta?: Record<string, unknown> | undefined;
434
+ title?: string | undefined;
435
+ detail?: string | undefined;
436
+ source?: {
437
+ pointer?: string | undefined;
438
+ parameter?: string | undefined;
439
+ } | undefined;
440
+ }[];
441
+ meta?: Record<string, unknown> | undefined;
442
+ }>;
443
+ 401: z.ZodObject<{
444
+ errors: z.ZodArray<z.ZodObject<{
445
+ id: z.ZodOptional<z.ZodString>;
446
+ links: z.ZodOptional<z.ZodObject<{
447
+ about: z.ZodOptional<z.ZodString>;
448
+ }, "strip", z.ZodTypeAny, {
449
+ about?: string | undefined;
450
+ }, {
451
+ about?: string | undefined;
452
+ }>>;
453
+ status: z.ZodOptional<z.ZodString>;
454
+ code: z.ZodOptional<z.ZodString>;
455
+ title: z.ZodOptional<z.ZodString>;
456
+ detail: z.ZodOptional<z.ZodString>;
457
+ source: z.ZodOptional<z.ZodObject<{
458
+ pointer: z.ZodOptional<z.ZodString>;
459
+ parameter: z.ZodOptional<z.ZodString>;
460
+ }, "strip", z.ZodTypeAny, {
461
+ pointer?: string | undefined;
462
+ parameter?: string | undefined;
463
+ }, {
464
+ pointer?: string | undefined;
465
+ parameter?: string | undefined;
466
+ }>>;
467
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
468
+ }, "strip", z.ZodTypeAny, {
469
+ status?: string | undefined;
470
+ code?: string | undefined;
471
+ id?: string | undefined;
472
+ links?: {
473
+ about?: string | undefined;
474
+ } | undefined;
475
+ meta?: Record<string, unknown> | undefined;
476
+ title?: string | undefined;
477
+ detail?: string | undefined;
478
+ source?: {
479
+ pointer?: string | undefined;
480
+ parameter?: string | undefined;
481
+ } | undefined;
482
+ }, {
483
+ status?: string | undefined;
484
+ code?: string | undefined;
485
+ id?: string | undefined;
486
+ links?: {
487
+ about?: string | undefined;
488
+ } | undefined;
489
+ meta?: Record<string, unknown> | undefined;
490
+ title?: string | undefined;
491
+ detail?: string | undefined;
492
+ source?: {
493
+ pointer?: string | undefined;
494
+ parameter?: string | undefined;
495
+ } | undefined;
496
+ }>, "many">;
497
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
498
+ }, "strip", z.ZodTypeAny, {
499
+ errors: {
500
+ status?: string | undefined;
501
+ code?: string | undefined;
502
+ id?: string | undefined;
503
+ links?: {
504
+ about?: string | undefined;
505
+ } | undefined;
506
+ meta?: Record<string, unknown> | undefined;
507
+ title?: string | undefined;
508
+ detail?: string | undefined;
509
+ source?: {
510
+ pointer?: string | undefined;
511
+ parameter?: string | undefined;
512
+ } | undefined;
513
+ }[];
514
+ meta?: Record<string, unknown> | undefined;
515
+ }, {
516
+ errors: {
517
+ status?: string | undefined;
518
+ code?: string | undefined;
519
+ id?: string | undefined;
520
+ links?: {
521
+ about?: string | undefined;
522
+ } | undefined;
523
+ meta?: Record<string, unknown> | undefined;
524
+ title?: string | undefined;
525
+ detail?: string | undefined;
526
+ source?: {
527
+ pointer?: string | undefined;
528
+ parameter?: string | undefined;
529
+ } | undefined;
530
+ }[];
531
+ meta?: Record<string, unknown> | undefined;
532
+ }>;
533
+ };
534
+ };
535
+ createSoilTest: {
536
+ pathParams: z.ZodObject<{
537
+ farmId: z.ZodString;
538
+ }, "strip", z.ZodTypeAny, {
539
+ farmId: string;
540
+ }, {
541
+ farmId: string;
542
+ }>;
543
+ summary: "Create soil test";
544
+ description: "Record a new soil test with automatic fertilizer recommendations";
545
+ method: "POST";
546
+ body: z.ZodObject<{
547
+ data: z.ZodObject<{
548
+ type: z.ZodLiteral<"soil-tests">;
549
+ attributes: z.ZodObject<{
550
+ fieldId: z.ZodString;
551
+ testDate: z.ZodString;
552
+ testedBy: z.ZodOptional<z.ZodString>;
553
+ labName: z.ZodOptional<z.ZodString>;
554
+ cropAtTimeOfTest: z.ZodOptional<z.ZodString>;
555
+ pH: z.ZodNumber;
556
+ nitrogen: z.ZodOptional<z.ZodNumber>;
557
+ nitrogenUnit: z.ZodOptional<z.ZodEnum<["ppm", "kg/ha"]>>;
558
+ phosphorus: z.ZodOptional<z.ZodNumber>;
559
+ phosphorusUnit: z.ZodOptional<z.ZodEnum<["ppm", "kg/ha"]>>;
560
+ potassium: z.ZodOptional<z.ZodNumber>;
561
+ potassiumUnit: z.ZodOptional<z.ZodEnum<["ppm", "kg/ha"]>>;
562
+ organicMatter: z.ZodOptional<z.ZodNumber>;
563
+ testCost: z.ZodOptional<z.ZodNumber>;
564
+ notes: z.ZodOptional<z.ZodString>;
565
+ documentUrl: z.ZodOptional<z.ZodString>;
566
+ }, "strip", z.ZodTypeAny, {
567
+ fieldId: string;
568
+ testDate: string;
569
+ pH: number;
570
+ notes?: string | undefined;
571
+ testedBy?: string | undefined;
572
+ labName?: string | undefined;
573
+ cropAtTimeOfTest?: string | undefined;
574
+ nitrogen?: number | undefined;
575
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
576
+ phosphorus?: number | undefined;
577
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
578
+ potassium?: number | undefined;
579
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
580
+ organicMatter?: number | undefined;
581
+ testCost?: number | undefined;
582
+ documentUrl?: string | undefined;
583
+ }, {
584
+ fieldId: string;
585
+ testDate: string;
586
+ pH: number;
587
+ notes?: string | undefined;
588
+ testedBy?: string | undefined;
589
+ labName?: string | undefined;
590
+ cropAtTimeOfTest?: string | undefined;
591
+ nitrogen?: number | undefined;
592
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
593
+ phosphorus?: number | undefined;
594
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
595
+ potassium?: number | undefined;
596
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
597
+ organicMatter?: number | undefined;
598
+ testCost?: number | undefined;
599
+ documentUrl?: string | undefined;
600
+ }>;
601
+ }, "strip", z.ZodTypeAny, {
602
+ type: "soil-tests";
603
+ attributes: {
604
+ fieldId: string;
605
+ testDate: string;
606
+ pH: number;
607
+ notes?: string | undefined;
608
+ testedBy?: string | undefined;
609
+ labName?: string | undefined;
610
+ cropAtTimeOfTest?: string | undefined;
611
+ nitrogen?: number | undefined;
612
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
613
+ phosphorus?: number | undefined;
614
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
615
+ potassium?: number | undefined;
616
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
617
+ organicMatter?: number | undefined;
618
+ testCost?: number | undefined;
619
+ documentUrl?: string | undefined;
620
+ };
621
+ }, {
622
+ type: "soil-tests";
623
+ attributes: {
624
+ fieldId: string;
625
+ testDate: string;
626
+ pH: number;
627
+ notes?: string | undefined;
628
+ testedBy?: string | undefined;
629
+ labName?: string | undefined;
630
+ cropAtTimeOfTest?: string | undefined;
631
+ nitrogen?: number | undefined;
632
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
633
+ phosphorus?: number | undefined;
634
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
635
+ potassium?: number | undefined;
636
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
637
+ organicMatter?: number | undefined;
638
+ testCost?: number | undefined;
639
+ documentUrl?: string | undefined;
640
+ };
641
+ }>;
642
+ }, "strip", z.ZodTypeAny, {
643
+ data: {
644
+ type: "soil-tests";
645
+ attributes: {
646
+ fieldId: string;
647
+ testDate: string;
648
+ pH: number;
649
+ notes?: string | undefined;
650
+ testedBy?: string | undefined;
651
+ labName?: string | undefined;
652
+ cropAtTimeOfTest?: string | undefined;
653
+ nitrogen?: number | undefined;
654
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
655
+ phosphorus?: number | undefined;
656
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
657
+ potassium?: number | undefined;
658
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
659
+ organicMatter?: number | undefined;
660
+ testCost?: number | undefined;
661
+ documentUrl?: string | undefined;
662
+ };
663
+ };
664
+ }, {
665
+ data: {
666
+ type: "soil-tests";
667
+ attributes: {
668
+ fieldId: string;
669
+ testDate: string;
670
+ pH: number;
671
+ notes?: string | undefined;
672
+ testedBy?: string | undefined;
673
+ labName?: string | undefined;
674
+ cropAtTimeOfTest?: string | undefined;
675
+ nitrogen?: number | undefined;
676
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
677
+ phosphorus?: number | undefined;
678
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
679
+ potassium?: number | undefined;
680
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
681
+ organicMatter?: number | undefined;
682
+ testCost?: number | undefined;
683
+ documentUrl?: string | undefined;
684
+ };
685
+ };
686
+ }>;
687
+ path: "/farms/:farmId/soil-tests";
688
+ responses: {
689
+ 201: z.ZodObject<{
690
+ data: z.ZodObject<{
691
+ type: z.ZodLiteral<string>;
692
+ id: z.ZodString;
693
+ attributes: z.ZodObject<{
694
+ fieldId: z.ZodString;
695
+ fieldName: z.ZodOptional<z.ZodString>;
696
+ testDate: z.ZodString;
697
+ testedBy: z.ZodNullable<z.ZodString>;
698
+ labName: z.ZodNullable<z.ZodString>;
699
+ cropAtTimeOfTest: z.ZodNullable<z.ZodString>;
700
+ pH: z.ZodNumber;
701
+ nitrogen: z.ZodNullable<z.ZodNumber>;
702
+ nitrogenUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
703
+ phosphorus: z.ZodNullable<z.ZodNumber>;
704
+ phosphorusUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
705
+ potassium: z.ZodNullable<z.ZodNumber>;
706
+ potassiumUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
707
+ organicMatter: z.ZodNullable<z.ZodNumber>;
708
+ testCost: z.ZodNullable<z.ZodNumber>;
709
+ notes: z.ZodNullable<z.ZodString>;
710
+ documentUrl: z.ZodNullable<z.ZodString>;
711
+ recommendedFertilizers: z.ZodOptional<z.ZodArray<z.ZodObject<{
712
+ inventoryItemId: z.ZodString;
713
+ quantity: z.ZodNumber;
714
+ unit: z.ZodString;
715
+ reason: z.ZodString;
716
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
717
+ }, "strip", z.ZodTypeAny, {
718
+ inventoryItemId: string;
719
+ unit: string;
720
+ quantity: number;
721
+ reason: string;
722
+ estimatedCost?: number | undefined;
723
+ }, {
724
+ inventoryItemId: string;
725
+ unit: string;
726
+ quantity: number;
727
+ reason: string;
728
+ estimatedCost?: number | undefined;
729
+ }>, "many">>;
730
+ recommendations: z.ZodOptional<z.ZodNullable<z.ZodString>>;
731
+ createdBy: z.ZodNullable<z.ZodString>;
732
+ } & {
733
+ createdAt: z.ZodString;
734
+ updatedAt: z.ZodString;
735
+ }, "strip", z.ZodTypeAny, {
736
+ createdAt: string;
737
+ updatedAt: string;
738
+ fieldId: string;
739
+ notes: string | null;
740
+ testDate: string;
741
+ testedBy: string | null;
742
+ labName: string | null;
743
+ cropAtTimeOfTest: string | null;
744
+ pH: number;
745
+ nitrogen: number | null;
746
+ nitrogenUnit: "ppm" | "kg/ha" | null;
747
+ phosphorus: number | null;
748
+ phosphorusUnit: "ppm" | "kg/ha" | null;
749
+ potassium: number | null;
750
+ potassiumUnit: "ppm" | "kg/ha" | null;
751
+ organicMatter: number | null;
752
+ testCost: number | null;
753
+ documentUrl: string | null;
754
+ createdBy: string | null;
755
+ fieldName?: string | undefined;
756
+ recommendedFertilizers?: {
757
+ inventoryItemId: string;
758
+ unit: string;
759
+ quantity: number;
760
+ reason: string;
761
+ estimatedCost?: number | undefined;
762
+ }[] | undefined;
763
+ recommendations?: string | null | undefined;
764
+ }, {
765
+ createdAt: string;
766
+ updatedAt: string;
767
+ fieldId: string;
768
+ notes: string | null;
769
+ testDate: string;
770
+ testedBy: string | null;
771
+ labName: string | null;
772
+ cropAtTimeOfTest: string | null;
773
+ pH: number;
774
+ nitrogen: number | null;
775
+ nitrogenUnit: "ppm" | "kg/ha" | null;
776
+ phosphorus: number | null;
777
+ phosphorusUnit: "ppm" | "kg/ha" | null;
778
+ potassium: number | null;
779
+ potassiumUnit: "ppm" | "kg/ha" | null;
780
+ organicMatter: number | null;
781
+ testCost: number | null;
782
+ documentUrl: string | null;
783
+ createdBy: string | null;
784
+ fieldName?: string | undefined;
785
+ recommendedFertilizers?: {
786
+ inventoryItemId: string;
787
+ unit: string;
788
+ quantity: number;
789
+ reason: string;
790
+ estimatedCost?: number | undefined;
791
+ }[] | undefined;
792
+ recommendations?: string | null | undefined;
793
+ }>;
794
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
795
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
796
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
797
+ }, "strip", z.ZodTypeAny, {
798
+ type: string;
799
+ id: string;
800
+ attributes: {
801
+ createdAt: string;
802
+ updatedAt: string;
803
+ fieldId: string;
804
+ notes: string | null;
805
+ testDate: string;
806
+ testedBy: string | null;
807
+ labName: string | null;
808
+ cropAtTimeOfTest: string | null;
809
+ pH: number;
810
+ nitrogen: number | null;
811
+ nitrogenUnit: "ppm" | "kg/ha" | null;
812
+ phosphorus: number | null;
813
+ phosphorusUnit: "ppm" | "kg/ha" | null;
814
+ potassium: number | null;
815
+ potassiumUnit: "ppm" | "kg/ha" | null;
816
+ organicMatter: number | null;
817
+ testCost: number | null;
818
+ documentUrl: string | null;
819
+ createdBy: string | null;
820
+ fieldName?: string | undefined;
821
+ recommendedFertilizers?: {
822
+ inventoryItemId: string;
823
+ unit: string;
824
+ quantity: number;
825
+ reason: string;
826
+ estimatedCost?: number | undefined;
827
+ }[] | undefined;
828
+ recommendations?: string | null | undefined;
829
+ };
830
+ relationships?: Record<string, unknown> | undefined;
831
+ links?: Record<string, string> | undefined;
832
+ meta?: Record<string, unknown> | undefined;
833
+ }, {
834
+ type: string;
835
+ id: string;
836
+ attributes: {
837
+ createdAt: string;
838
+ updatedAt: string;
839
+ fieldId: string;
840
+ notes: string | null;
841
+ testDate: string;
842
+ testedBy: string | null;
843
+ labName: string | null;
844
+ cropAtTimeOfTest: string | null;
845
+ pH: number;
846
+ nitrogen: number | null;
847
+ nitrogenUnit: "ppm" | "kg/ha" | null;
848
+ phosphorus: number | null;
849
+ phosphorusUnit: "ppm" | "kg/ha" | null;
850
+ potassium: number | null;
851
+ potassiumUnit: "ppm" | "kg/ha" | null;
852
+ organicMatter: number | null;
853
+ testCost: number | null;
854
+ documentUrl: string | null;
855
+ createdBy: string | null;
856
+ fieldName?: string | undefined;
857
+ recommendedFertilizers?: {
858
+ inventoryItemId: string;
859
+ unit: string;
860
+ quantity: number;
861
+ reason: string;
862
+ estimatedCost?: number | undefined;
863
+ }[] | undefined;
864
+ recommendations?: string | null | undefined;
865
+ };
866
+ relationships?: Record<string, unknown> | undefined;
867
+ links?: Record<string, string> | undefined;
868
+ meta?: Record<string, unknown> | undefined;
869
+ }>;
870
+ included: z.ZodOptional<z.ZodArray<z.ZodObject<{
871
+ type: z.ZodString;
872
+ id: z.ZodString;
873
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
874
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
875
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
876
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
877
+ }, "strip", z.ZodTypeAny, {
878
+ type: string;
879
+ id: string;
880
+ attributes?: Record<string, unknown> | undefined;
881
+ relationships?: Record<string, unknown> | undefined;
882
+ links?: Record<string, string> | undefined;
883
+ meta?: Record<string, unknown> | undefined;
884
+ }, {
885
+ type: string;
886
+ id: string;
887
+ attributes?: Record<string, unknown> | undefined;
888
+ relationships?: Record<string, unknown> | undefined;
889
+ links?: Record<string, string> | undefined;
890
+ meta?: Record<string, unknown> | undefined;
891
+ }>, "many">>;
892
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
893
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
894
+ }, "strip", z.ZodTypeAny, {
895
+ data: {
896
+ type: string;
897
+ id: string;
898
+ attributes: {
899
+ createdAt: string;
900
+ updatedAt: string;
901
+ fieldId: string;
902
+ notes: string | null;
903
+ testDate: string;
904
+ testedBy: string | null;
905
+ labName: string | null;
906
+ cropAtTimeOfTest: string | null;
907
+ pH: number;
908
+ nitrogen: number | null;
909
+ nitrogenUnit: "ppm" | "kg/ha" | null;
910
+ phosphorus: number | null;
911
+ phosphorusUnit: "ppm" | "kg/ha" | null;
912
+ potassium: number | null;
913
+ potassiumUnit: "ppm" | "kg/ha" | null;
914
+ organicMatter: number | null;
915
+ testCost: number | null;
916
+ documentUrl: string | null;
917
+ createdBy: string | null;
918
+ fieldName?: string | undefined;
919
+ recommendedFertilizers?: {
920
+ inventoryItemId: string;
921
+ unit: string;
922
+ quantity: number;
923
+ reason: string;
924
+ estimatedCost?: number | undefined;
925
+ }[] | undefined;
926
+ recommendations?: string | null | undefined;
927
+ };
928
+ relationships?: Record<string, unknown> | undefined;
929
+ links?: Record<string, string> | undefined;
930
+ meta?: Record<string, unknown> | undefined;
931
+ };
932
+ links?: Record<string, string> | undefined;
933
+ meta?: Record<string, unknown> | undefined;
934
+ included?: {
935
+ type: string;
936
+ id: string;
937
+ attributes?: Record<string, unknown> | undefined;
938
+ relationships?: Record<string, unknown> | undefined;
939
+ links?: Record<string, string> | undefined;
940
+ meta?: Record<string, unknown> | undefined;
941
+ }[] | undefined;
942
+ }, {
943
+ data: {
944
+ type: string;
945
+ id: string;
946
+ attributes: {
947
+ createdAt: string;
948
+ updatedAt: string;
949
+ fieldId: string;
950
+ notes: string | null;
951
+ testDate: string;
952
+ testedBy: string | null;
953
+ labName: string | null;
954
+ cropAtTimeOfTest: string | null;
955
+ pH: number;
956
+ nitrogen: number | null;
957
+ nitrogenUnit: "ppm" | "kg/ha" | null;
958
+ phosphorus: number | null;
959
+ phosphorusUnit: "ppm" | "kg/ha" | null;
960
+ potassium: number | null;
961
+ potassiumUnit: "ppm" | "kg/ha" | null;
962
+ organicMatter: number | null;
963
+ testCost: number | null;
964
+ documentUrl: string | null;
965
+ createdBy: string | null;
966
+ fieldName?: string | undefined;
967
+ recommendedFertilizers?: {
968
+ inventoryItemId: string;
969
+ unit: string;
970
+ quantity: number;
971
+ reason: string;
972
+ estimatedCost?: number | undefined;
973
+ }[] | undefined;
974
+ recommendations?: string | null | undefined;
975
+ };
976
+ relationships?: Record<string, unknown> | undefined;
977
+ links?: Record<string, string> | undefined;
978
+ meta?: Record<string, unknown> | undefined;
979
+ };
980
+ links?: Record<string, string> | undefined;
981
+ meta?: Record<string, unknown> | undefined;
982
+ included?: {
983
+ type: string;
984
+ id: string;
985
+ attributes?: Record<string, unknown> | undefined;
986
+ relationships?: Record<string, unknown> | undefined;
987
+ links?: Record<string, string> | undefined;
988
+ meta?: Record<string, unknown> | undefined;
989
+ }[] | undefined;
990
+ }>;
991
+ 400: z.ZodObject<{
992
+ errors: z.ZodArray<z.ZodObject<{
993
+ id: z.ZodOptional<z.ZodString>;
994
+ links: z.ZodOptional<z.ZodObject<{
995
+ about: z.ZodOptional<z.ZodString>;
996
+ }, "strip", z.ZodTypeAny, {
997
+ about?: string | undefined;
998
+ }, {
999
+ about?: string | undefined;
1000
+ }>>;
1001
+ status: z.ZodOptional<z.ZodString>;
1002
+ code: z.ZodOptional<z.ZodString>;
1003
+ title: z.ZodOptional<z.ZodString>;
1004
+ detail: z.ZodOptional<z.ZodString>;
1005
+ source: z.ZodOptional<z.ZodObject<{
1006
+ pointer: z.ZodOptional<z.ZodString>;
1007
+ parameter: z.ZodOptional<z.ZodString>;
1008
+ }, "strip", z.ZodTypeAny, {
1009
+ pointer?: string | undefined;
1010
+ parameter?: string | undefined;
1011
+ }, {
1012
+ pointer?: string | undefined;
1013
+ parameter?: string | undefined;
1014
+ }>>;
1015
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1016
+ }, "strip", z.ZodTypeAny, {
1017
+ status?: string | undefined;
1018
+ code?: string | undefined;
1019
+ id?: string | undefined;
1020
+ links?: {
1021
+ about?: string | undefined;
1022
+ } | undefined;
1023
+ meta?: Record<string, unknown> | undefined;
1024
+ title?: string | undefined;
1025
+ detail?: string | undefined;
1026
+ source?: {
1027
+ pointer?: string | undefined;
1028
+ parameter?: string | undefined;
1029
+ } | undefined;
1030
+ }, {
1031
+ status?: string | undefined;
1032
+ code?: string | undefined;
1033
+ id?: string | undefined;
1034
+ links?: {
1035
+ about?: string | undefined;
1036
+ } | undefined;
1037
+ meta?: Record<string, unknown> | undefined;
1038
+ title?: string | undefined;
1039
+ detail?: string | undefined;
1040
+ source?: {
1041
+ pointer?: string | undefined;
1042
+ parameter?: string | undefined;
1043
+ } | undefined;
1044
+ }>, "many">;
1045
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1046
+ }, "strip", z.ZodTypeAny, {
1047
+ errors: {
1048
+ status?: string | undefined;
1049
+ code?: string | undefined;
1050
+ id?: string | undefined;
1051
+ links?: {
1052
+ about?: string | undefined;
1053
+ } | undefined;
1054
+ meta?: Record<string, unknown> | undefined;
1055
+ title?: string | undefined;
1056
+ detail?: string | undefined;
1057
+ source?: {
1058
+ pointer?: string | undefined;
1059
+ parameter?: string | undefined;
1060
+ } | undefined;
1061
+ }[];
1062
+ meta?: Record<string, unknown> | undefined;
1063
+ }, {
1064
+ errors: {
1065
+ status?: string | undefined;
1066
+ code?: string | undefined;
1067
+ id?: string | undefined;
1068
+ links?: {
1069
+ about?: string | undefined;
1070
+ } | undefined;
1071
+ meta?: Record<string, unknown> | undefined;
1072
+ title?: string | undefined;
1073
+ detail?: string | undefined;
1074
+ source?: {
1075
+ pointer?: string | undefined;
1076
+ parameter?: string | undefined;
1077
+ } | undefined;
1078
+ }[];
1079
+ meta?: Record<string, unknown> | undefined;
1080
+ }>;
1081
+ 404: z.ZodObject<{
1082
+ errors: z.ZodArray<z.ZodObject<{
1083
+ id: z.ZodOptional<z.ZodString>;
1084
+ links: z.ZodOptional<z.ZodObject<{
1085
+ about: z.ZodOptional<z.ZodString>;
1086
+ }, "strip", z.ZodTypeAny, {
1087
+ about?: string | undefined;
1088
+ }, {
1089
+ about?: string | undefined;
1090
+ }>>;
1091
+ status: z.ZodOptional<z.ZodString>;
1092
+ code: z.ZodOptional<z.ZodString>;
1093
+ title: z.ZodOptional<z.ZodString>;
1094
+ detail: z.ZodOptional<z.ZodString>;
1095
+ source: z.ZodOptional<z.ZodObject<{
1096
+ pointer: z.ZodOptional<z.ZodString>;
1097
+ parameter: z.ZodOptional<z.ZodString>;
1098
+ }, "strip", z.ZodTypeAny, {
1099
+ pointer?: string | undefined;
1100
+ parameter?: string | undefined;
1101
+ }, {
1102
+ pointer?: string | undefined;
1103
+ parameter?: string | undefined;
1104
+ }>>;
1105
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1106
+ }, "strip", z.ZodTypeAny, {
1107
+ status?: string | undefined;
1108
+ code?: string | undefined;
1109
+ id?: string | undefined;
1110
+ links?: {
1111
+ about?: string | undefined;
1112
+ } | undefined;
1113
+ meta?: Record<string, unknown> | undefined;
1114
+ title?: string | undefined;
1115
+ detail?: string | undefined;
1116
+ source?: {
1117
+ pointer?: string | undefined;
1118
+ parameter?: string | undefined;
1119
+ } | undefined;
1120
+ }, {
1121
+ status?: string | undefined;
1122
+ code?: string | undefined;
1123
+ id?: string | undefined;
1124
+ links?: {
1125
+ about?: string | undefined;
1126
+ } | undefined;
1127
+ meta?: Record<string, unknown> | undefined;
1128
+ title?: string | undefined;
1129
+ detail?: string | undefined;
1130
+ source?: {
1131
+ pointer?: string | undefined;
1132
+ parameter?: string | undefined;
1133
+ } | undefined;
1134
+ }>, "many">;
1135
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1136
+ }, "strip", z.ZodTypeAny, {
1137
+ errors: {
1138
+ status?: string | undefined;
1139
+ code?: string | undefined;
1140
+ id?: string | undefined;
1141
+ links?: {
1142
+ about?: string | undefined;
1143
+ } | undefined;
1144
+ meta?: Record<string, unknown> | undefined;
1145
+ title?: string | undefined;
1146
+ detail?: string | undefined;
1147
+ source?: {
1148
+ pointer?: string | undefined;
1149
+ parameter?: string | undefined;
1150
+ } | undefined;
1151
+ }[];
1152
+ meta?: Record<string, unknown> | undefined;
1153
+ }, {
1154
+ errors: {
1155
+ status?: string | undefined;
1156
+ code?: string | undefined;
1157
+ id?: string | undefined;
1158
+ links?: {
1159
+ about?: string | undefined;
1160
+ } | undefined;
1161
+ meta?: Record<string, unknown> | undefined;
1162
+ title?: string | undefined;
1163
+ detail?: string | undefined;
1164
+ source?: {
1165
+ pointer?: string | undefined;
1166
+ parameter?: string | undefined;
1167
+ } | undefined;
1168
+ }[];
1169
+ meta?: Record<string, unknown> | undefined;
1170
+ }>;
1171
+ 401: z.ZodObject<{
1172
+ errors: z.ZodArray<z.ZodObject<{
1173
+ id: z.ZodOptional<z.ZodString>;
1174
+ links: z.ZodOptional<z.ZodObject<{
1175
+ about: z.ZodOptional<z.ZodString>;
1176
+ }, "strip", z.ZodTypeAny, {
1177
+ about?: string | undefined;
1178
+ }, {
1179
+ about?: string | undefined;
1180
+ }>>;
1181
+ status: z.ZodOptional<z.ZodString>;
1182
+ code: z.ZodOptional<z.ZodString>;
1183
+ title: z.ZodOptional<z.ZodString>;
1184
+ detail: z.ZodOptional<z.ZodString>;
1185
+ source: z.ZodOptional<z.ZodObject<{
1186
+ pointer: z.ZodOptional<z.ZodString>;
1187
+ parameter: z.ZodOptional<z.ZodString>;
1188
+ }, "strip", z.ZodTypeAny, {
1189
+ pointer?: string | undefined;
1190
+ parameter?: string | undefined;
1191
+ }, {
1192
+ pointer?: string | undefined;
1193
+ parameter?: string | undefined;
1194
+ }>>;
1195
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1196
+ }, "strip", z.ZodTypeAny, {
1197
+ status?: string | undefined;
1198
+ code?: string | undefined;
1199
+ id?: string | undefined;
1200
+ links?: {
1201
+ about?: string | undefined;
1202
+ } | undefined;
1203
+ meta?: Record<string, unknown> | undefined;
1204
+ title?: string | undefined;
1205
+ detail?: string | undefined;
1206
+ source?: {
1207
+ pointer?: string | undefined;
1208
+ parameter?: string | undefined;
1209
+ } | undefined;
1210
+ }, {
1211
+ status?: string | undefined;
1212
+ code?: string | undefined;
1213
+ id?: string | undefined;
1214
+ links?: {
1215
+ about?: string | undefined;
1216
+ } | undefined;
1217
+ meta?: Record<string, unknown> | undefined;
1218
+ title?: string | undefined;
1219
+ detail?: string | undefined;
1220
+ source?: {
1221
+ pointer?: string | undefined;
1222
+ parameter?: string | undefined;
1223
+ } | undefined;
1224
+ }>, "many">;
1225
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1226
+ }, "strip", z.ZodTypeAny, {
1227
+ errors: {
1228
+ status?: string | undefined;
1229
+ code?: string | undefined;
1230
+ id?: string | undefined;
1231
+ links?: {
1232
+ about?: string | undefined;
1233
+ } | undefined;
1234
+ meta?: Record<string, unknown> | undefined;
1235
+ title?: string | undefined;
1236
+ detail?: string | undefined;
1237
+ source?: {
1238
+ pointer?: string | undefined;
1239
+ parameter?: string | undefined;
1240
+ } | undefined;
1241
+ }[];
1242
+ meta?: Record<string, unknown> | undefined;
1243
+ }, {
1244
+ errors: {
1245
+ status?: string | undefined;
1246
+ code?: string | undefined;
1247
+ id?: string | undefined;
1248
+ links?: {
1249
+ about?: string | undefined;
1250
+ } | undefined;
1251
+ meta?: Record<string, unknown> | undefined;
1252
+ title?: string | undefined;
1253
+ detail?: string | undefined;
1254
+ source?: {
1255
+ pointer?: string | undefined;
1256
+ parameter?: string | undefined;
1257
+ } | undefined;
1258
+ }[];
1259
+ meta?: Record<string, unknown> | undefined;
1260
+ }>;
1261
+ 422: z.ZodObject<{
1262
+ errors: z.ZodArray<z.ZodObject<{
1263
+ id: z.ZodOptional<z.ZodString>;
1264
+ links: z.ZodOptional<z.ZodObject<{
1265
+ about: z.ZodOptional<z.ZodString>;
1266
+ }, "strip", z.ZodTypeAny, {
1267
+ about?: string | undefined;
1268
+ }, {
1269
+ about?: string | undefined;
1270
+ }>>;
1271
+ status: z.ZodOptional<z.ZodString>;
1272
+ code: z.ZodOptional<z.ZodString>;
1273
+ title: z.ZodOptional<z.ZodString>;
1274
+ detail: z.ZodOptional<z.ZodString>;
1275
+ source: z.ZodOptional<z.ZodObject<{
1276
+ pointer: z.ZodOptional<z.ZodString>;
1277
+ parameter: z.ZodOptional<z.ZodString>;
1278
+ }, "strip", z.ZodTypeAny, {
1279
+ pointer?: string | undefined;
1280
+ parameter?: string | undefined;
1281
+ }, {
1282
+ pointer?: string | undefined;
1283
+ parameter?: string | undefined;
1284
+ }>>;
1285
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1286
+ }, "strip", z.ZodTypeAny, {
1287
+ status?: string | undefined;
1288
+ code?: string | undefined;
1289
+ id?: string | undefined;
1290
+ links?: {
1291
+ about?: string | undefined;
1292
+ } | undefined;
1293
+ meta?: Record<string, unknown> | undefined;
1294
+ title?: string | undefined;
1295
+ detail?: string | undefined;
1296
+ source?: {
1297
+ pointer?: string | undefined;
1298
+ parameter?: string | undefined;
1299
+ } | undefined;
1300
+ }, {
1301
+ status?: string | undefined;
1302
+ code?: string | undefined;
1303
+ id?: string | undefined;
1304
+ links?: {
1305
+ about?: string | undefined;
1306
+ } | undefined;
1307
+ meta?: Record<string, unknown> | undefined;
1308
+ title?: string | undefined;
1309
+ detail?: string | undefined;
1310
+ source?: {
1311
+ pointer?: string | undefined;
1312
+ parameter?: string | undefined;
1313
+ } | undefined;
1314
+ }>, "many">;
1315
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1316
+ }, "strip", z.ZodTypeAny, {
1317
+ errors: {
1318
+ status?: string | undefined;
1319
+ code?: string | undefined;
1320
+ id?: string | undefined;
1321
+ links?: {
1322
+ about?: string | undefined;
1323
+ } | undefined;
1324
+ meta?: Record<string, unknown> | undefined;
1325
+ title?: string | undefined;
1326
+ detail?: string | undefined;
1327
+ source?: {
1328
+ pointer?: string | undefined;
1329
+ parameter?: string | undefined;
1330
+ } | undefined;
1331
+ }[];
1332
+ meta?: Record<string, unknown> | undefined;
1333
+ }, {
1334
+ errors: {
1335
+ status?: string | undefined;
1336
+ code?: string | undefined;
1337
+ id?: string | undefined;
1338
+ links?: {
1339
+ about?: string | undefined;
1340
+ } | undefined;
1341
+ meta?: Record<string, unknown> | undefined;
1342
+ title?: string | undefined;
1343
+ detail?: string | undefined;
1344
+ source?: {
1345
+ pointer?: string | undefined;
1346
+ parameter?: string | undefined;
1347
+ } | undefined;
1348
+ }[];
1349
+ meta?: Record<string, unknown> | undefined;
1350
+ }>;
1351
+ };
1352
+ };
1353
+ getSoilTest: {
1354
+ pathParams: z.ZodObject<{
1355
+ farmId: z.ZodString;
1356
+ id: z.ZodString;
1357
+ }, "strip", z.ZodTypeAny, {
1358
+ id: string;
1359
+ farmId: string;
1360
+ }, {
1361
+ id: string;
1362
+ farmId: string;
1363
+ }>;
1364
+ query: z.ZodObject<{
1365
+ include: z.ZodOptional<z.ZodString>;
1366
+ }, "strip", z.ZodTypeAny, {
1367
+ include?: string | undefined;
1368
+ }, {
1369
+ include?: string | undefined;
1370
+ }>;
1371
+ summary: "Get soil test by ID";
1372
+ description: "Get detailed soil test information with recommendations";
1373
+ method: "GET";
1374
+ path: "/farms/:farmId/soil-tests/:id";
1375
+ responses: {
1376
+ 200: z.ZodObject<{
1377
+ data: z.ZodObject<{
1378
+ type: z.ZodLiteral<string>;
1379
+ id: z.ZodString;
1380
+ attributes: z.ZodObject<{
1381
+ fieldId: z.ZodString;
1382
+ fieldName: z.ZodOptional<z.ZodString>;
1383
+ testDate: z.ZodString;
1384
+ testedBy: z.ZodNullable<z.ZodString>;
1385
+ labName: z.ZodNullable<z.ZodString>;
1386
+ cropAtTimeOfTest: z.ZodNullable<z.ZodString>;
1387
+ pH: z.ZodNumber;
1388
+ nitrogen: z.ZodNullable<z.ZodNumber>;
1389
+ nitrogenUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
1390
+ phosphorus: z.ZodNullable<z.ZodNumber>;
1391
+ phosphorusUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
1392
+ potassium: z.ZodNullable<z.ZodNumber>;
1393
+ potassiumUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
1394
+ organicMatter: z.ZodNullable<z.ZodNumber>;
1395
+ testCost: z.ZodNullable<z.ZodNumber>;
1396
+ notes: z.ZodNullable<z.ZodString>;
1397
+ documentUrl: z.ZodNullable<z.ZodString>;
1398
+ recommendedFertilizers: z.ZodOptional<z.ZodArray<z.ZodObject<{
1399
+ inventoryItemId: z.ZodString;
1400
+ quantity: z.ZodNumber;
1401
+ unit: z.ZodString;
1402
+ reason: z.ZodString;
1403
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
1404
+ }, "strip", z.ZodTypeAny, {
1405
+ inventoryItemId: string;
1406
+ unit: string;
1407
+ quantity: number;
1408
+ reason: string;
1409
+ estimatedCost?: number | undefined;
1410
+ }, {
1411
+ inventoryItemId: string;
1412
+ unit: string;
1413
+ quantity: number;
1414
+ reason: string;
1415
+ estimatedCost?: number | undefined;
1416
+ }>, "many">>;
1417
+ recommendations: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1418
+ createdBy: z.ZodNullable<z.ZodString>;
1419
+ } & {
1420
+ createdAt: z.ZodString;
1421
+ updatedAt: z.ZodString;
1422
+ }, "strip", z.ZodTypeAny, {
1423
+ createdAt: string;
1424
+ updatedAt: string;
1425
+ fieldId: string;
1426
+ notes: string | null;
1427
+ testDate: string;
1428
+ testedBy: string | null;
1429
+ labName: string | null;
1430
+ cropAtTimeOfTest: string | null;
1431
+ pH: number;
1432
+ nitrogen: number | null;
1433
+ nitrogenUnit: "ppm" | "kg/ha" | null;
1434
+ phosphorus: number | null;
1435
+ phosphorusUnit: "ppm" | "kg/ha" | null;
1436
+ potassium: number | null;
1437
+ potassiumUnit: "ppm" | "kg/ha" | null;
1438
+ organicMatter: number | null;
1439
+ testCost: number | null;
1440
+ documentUrl: string | null;
1441
+ createdBy: string | null;
1442
+ fieldName?: string | undefined;
1443
+ recommendedFertilizers?: {
1444
+ inventoryItemId: string;
1445
+ unit: string;
1446
+ quantity: number;
1447
+ reason: string;
1448
+ estimatedCost?: number | undefined;
1449
+ }[] | undefined;
1450
+ recommendations?: string | null | undefined;
1451
+ }, {
1452
+ createdAt: string;
1453
+ updatedAt: string;
1454
+ fieldId: string;
1455
+ notes: string | null;
1456
+ testDate: string;
1457
+ testedBy: string | null;
1458
+ labName: string | null;
1459
+ cropAtTimeOfTest: string | null;
1460
+ pH: number;
1461
+ nitrogen: number | null;
1462
+ nitrogenUnit: "ppm" | "kg/ha" | null;
1463
+ phosphorus: number | null;
1464
+ phosphorusUnit: "ppm" | "kg/ha" | null;
1465
+ potassium: number | null;
1466
+ potassiumUnit: "ppm" | "kg/ha" | null;
1467
+ organicMatter: number | null;
1468
+ testCost: number | null;
1469
+ documentUrl: string | null;
1470
+ createdBy: string | null;
1471
+ fieldName?: string | undefined;
1472
+ recommendedFertilizers?: {
1473
+ inventoryItemId: string;
1474
+ unit: string;
1475
+ quantity: number;
1476
+ reason: string;
1477
+ estimatedCost?: number | undefined;
1478
+ }[] | undefined;
1479
+ recommendations?: string | null | undefined;
1480
+ }>;
1481
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1482
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1483
+ } & {
1484
+ relationships: z.ZodOptional<z.ZodObject<{
1485
+ field: z.ZodOptional<z.ZodObject<{
1486
+ links: z.ZodObject<{
1487
+ related: z.ZodString;
1488
+ }, "strip", z.ZodTypeAny, {
1489
+ related: string;
1490
+ }, {
1491
+ related: string;
1492
+ }>;
1493
+ }, "strip", z.ZodTypeAny, {
1494
+ links: {
1495
+ related: string;
1496
+ };
1497
+ }, {
1498
+ links: {
1499
+ related: string;
1500
+ };
1501
+ }>>;
1502
+ recommended_fertilizers: z.ZodOptional<z.ZodObject<{
1503
+ links: z.ZodObject<{
1504
+ related: z.ZodString;
1505
+ }, "strip", z.ZodTypeAny, {
1506
+ related: string;
1507
+ }, {
1508
+ related: string;
1509
+ }>;
1510
+ }, "strip", z.ZodTypeAny, {
1511
+ links: {
1512
+ related: string;
1513
+ };
1514
+ }, {
1515
+ links: {
1516
+ related: string;
1517
+ };
1518
+ }>>;
1519
+ }, "strip", z.ZodTypeAny, {
1520
+ field?: {
1521
+ links: {
1522
+ related: string;
1523
+ };
1524
+ } | undefined;
1525
+ recommended_fertilizers?: {
1526
+ links: {
1527
+ related: string;
1528
+ };
1529
+ } | undefined;
1530
+ }, {
1531
+ field?: {
1532
+ links: {
1533
+ related: string;
1534
+ };
1535
+ } | undefined;
1536
+ recommended_fertilizers?: {
1537
+ links: {
1538
+ related: string;
1539
+ };
1540
+ } | undefined;
1541
+ }>>;
1542
+ }, "strip", z.ZodTypeAny, {
1543
+ type: string;
1544
+ id: string;
1545
+ attributes: {
1546
+ createdAt: string;
1547
+ updatedAt: string;
1548
+ fieldId: string;
1549
+ notes: string | null;
1550
+ testDate: string;
1551
+ testedBy: string | null;
1552
+ labName: string | null;
1553
+ cropAtTimeOfTest: string | null;
1554
+ pH: number;
1555
+ nitrogen: number | null;
1556
+ nitrogenUnit: "ppm" | "kg/ha" | null;
1557
+ phosphorus: number | null;
1558
+ phosphorusUnit: "ppm" | "kg/ha" | null;
1559
+ potassium: number | null;
1560
+ potassiumUnit: "ppm" | "kg/ha" | null;
1561
+ organicMatter: number | null;
1562
+ testCost: number | null;
1563
+ documentUrl: string | null;
1564
+ createdBy: string | null;
1565
+ fieldName?: string | undefined;
1566
+ recommendedFertilizers?: {
1567
+ inventoryItemId: string;
1568
+ unit: string;
1569
+ quantity: number;
1570
+ reason: string;
1571
+ estimatedCost?: number | undefined;
1572
+ }[] | undefined;
1573
+ recommendations?: string | null | undefined;
1574
+ };
1575
+ relationships?: {
1576
+ field?: {
1577
+ links: {
1578
+ related: string;
1579
+ };
1580
+ } | undefined;
1581
+ recommended_fertilizers?: {
1582
+ links: {
1583
+ related: string;
1584
+ };
1585
+ } | undefined;
1586
+ } | undefined;
1587
+ links?: Record<string, string> | undefined;
1588
+ meta?: Record<string, unknown> | undefined;
1589
+ }, {
1590
+ type: string;
1591
+ id: string;
1592
+ attributes: {
1593
+ createdAt: string;
1594
+ updatedAt: string;
1595
+ fieldId: string;
1596
+ notes: string | null;
1597
+ testDate: string;
1598
+ testedBy: string | null;
1599
+ labName: string | null;
1600
+ cropAtTimeOfTest: string | null;
1601
+ pH: number;
1602
+ nitrogen: number | null;
1603
+ nitrogenUnit: "ppm" | "kg/ha" | null;
1604
+ phosphorus: number | null;
1605
+ phosphorusUnit: "ppm" | "kg/ha" | null;
1606
+ potassium: number | null;
1607
+ potassiumUnit: "ppm" | "kg/ha" | null;
1608
+ organicMatter: number | null;
1609
+ testCost: number | null;
1610
+ documentUrl: string | null;
1611
+ createdBy: string | null;
1612
+ fieldName?: string | undefined;
1613
+ recommendedFertilizers?: {
1614
+ inventoryItemId: string;
1615
+ unit: string;
1616
+ quantity: number;
1617
+ reason: string;
1618
+ estimatedCost?: number | undefined;
1619
+ }[] | undefined;
1620
+ recommendations?: string | null | undefined;
1621
+ };
1622
+ relationships?: {
1623
+ field?: {
1624
+ links: {
1625
+ related: string;
1626
+ };
1627
+ } | undefined;
1628
+ recommended_fertilizers?: {
1629
+ links: {
1630
+ related: string;
1631
+ };
1632
+ } | undefined;
1633
+ } | undefined;
1634
+ links?: Record<string, string> | undefined;
1635
+ meta?: Record<string, unknown> | undefined;
1636
+ }>;
1637
+ included: z.ZodOptional<z.ZodArray<z.ZodObject<{
1638
+ type: z.ZodString;
1639
+ id: z.ZodString;
1640
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1641
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1642
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1643
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1644
+ }, "strip", z.ZodTypeAny, {
1645
+ type: string;
1646
+ id: string;
1647
+ attributes?: Record<string, unknown> | undefined;
1648
+ relationships?: Record<string, unknown> | undefined;
1649
+ links?: Record<string, string> | undefined;
1650
+ meta?: Record<string, unknown> | undefined;
1651
+ }, {
1652
+ type: string;
1653
+ id: string;
1654
+ attributes?: Record<string, unknown> | undefined;
1655
+ relationships?: Record<string, unknown> | undefined;
1656
+ links?: Record<string, string> | undefined;
1657
+ meta?: Record<string, unknown> | undefined;
1658
+ }>, "many">>;
1659
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1660
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1661
+ }, "strip", z.ZodTypeAny, {
1662
+ data: {
1663
+ type: string;
1664
+ id: string;
1665
+ attributes: {
1666
+ createdAt: string;
1667
+ updatedAt: string;
1668
+ fieldId: string;
1669
+ notes: string | null;
1670
+ testDate: string;
1671
+ testedBy: string | null;
1672
+ labName: string | null;
1673
+ cropAtTimeOfTest: string | null;
1674
+ pH: number;
1675
+ nitrogen: number | null;
1676
+ nitrogenUnit: "ppm" | "kg/ha" | null;
1677
+ phosphorus: number | null;
1678
+ phosphorusUnit: "ppm" | "kg/ha" | null;
1679
+ potassium: number | null;
1680
+ potassiumUnit: "ppm" | "kg/ha" | null;
1681
+ organicMatter: number | null;
1682
+ testCost: number | null;
1683
+ documentUrl: string | null;
1684
+ createdBy: string | null;
1685
+ fieldName?: string | undefined;
1686
+ recommendedFertilizers?: {
1687
+ inventoryItemId: string;
1688
+ unit: string;
1689
+ quantity: number;
1690
+ reason: string;
1691
+ estimatedCost?: number | undefined;
1692
+ }[] | undefined;
1693
+ recommendations?: string | null | undefined;
1694
+ };
1695
+ relationships?: {
1696
+ field?: {
1697
+ links: {
1698
+ related: string;
1699
+ };
1700
+ } | undefined;
1701
+ recommended_fertilizers?: {
1702
+ links: {
1703
+ related: string;
1704
+ };
1705
+ } | undefined;
1706
+ } | undefined;
1707
+ links?: Record<string, string> | undefined;
1708
+ meta?: Record<string, unknown> | undefined;
1709
+ };
1710
+ links?: Record<string, string> | undefined;
1711
+ meta?: Record<string, unknown> | undefined;
1712
+ included?: {
1713
+ type: string;
1714
+ id: string;
1715
+ attributes?: Record<string, unknown> | undefined;
1716
+ relationships?: Record<string, unknown> | undefined;
1717
+ links?: Record<string, string> | undefined;
1718
+ meta?: Record<string, unknown> | undefined;
1719
+ }[] | undefined;
1720
+ }, {
1721
+ data: {
1722
+ type: string;
1723
+ id: string;
1724
+ attributes: {
1725
+ createdAt: string;
1726
+ updatedAt: string;
1727
+ fieldId: string;
1728
+ notes: string | null;
1729
+ testDate: string;
1730
+ testedBy: string | null;
1731
+ labName: string | null;
1732
+ cropAtTimeOfTest: string | null;
1733
+ pH: number;
1734
+ nitrogen: number | null;
1735
+ nitrogenUnit: "ppm" | "kg/ha" | null;
1736
+ phosphorus: number | null;
1737
+ phosphorusUnit: "ppm" | "kg/ha" | null;
1738
+ potassium: number | null;
1739
+ potassiumUnit: "ppm" | "kg/ha" | null;
1740
+ organicMatter: number | null;
1741
+ testCost: number | null;
1742
+ documentUrl: string | null;
1743
+ createdBy: string | null;
1744
+ fieldName?: string | undefined;
1745
+ recommendedFertilizers?: {
1746
+ inventoryItemId: string;
1747
+ unit: string;
1748
+ quantity: number;
1749
+ reason: string;
1750
+ estimatedCost?: number | undefined;
1751
+ }[] | undefined;
1752
+ recommendations?: string | null | undefined;
1753
+ };
1754
+ relationships?: {
1755
+ field?: {
1756
+ links: {
1757
+ related: string;
1758
+ };
1759
+ } | undefined;
1760
+ recommended_fertilizers?: {
1761
+ links: {
1762
+ related: string;
1763
+ };
1764
+ } | undefined;
1765
+ } | undefined;
1766
+ links?: Record<string, string> | undefined;
1767
+ meta?: Record<string, unknown> | undefined;
1768
+ };
1769
+ links?: Record<string, string> | undefined;
1770
+ meta?: Record<string, unknown> | undefined;
1771
+ included?: {
1772
+ type: string;
1773
+ id: string;
1774
+ attributes?: Record<string, unknown> | undefined;
1775
+ relationships?: Record<string, unknown> | undefined;
1776
+ links?: Record<string, string> | undefined;
1777
+ meta?: Record<string, unknown> | undefined;
1778
+ }[] | undefined;
1779
+ }>;
1780
+ 404: z.ZodObject<{
1781
+ errors: z.ZodArray<z.ZodObject<{
1782
+ id: z.ZodOptional<z.ZodString>;
1783
+ links: z.ZodOptional<z.ZodObject<{
1784
+ about: z.ZodOptional<z.ZodString>;
1785
+ }, "strip", z.ZodTypeAny, {
1786
+ about?: string | undefined;
1787
+ }, {
1788
+ about?: string | undefined;
1789
+ }>>;
1790
+ status: z.ZodOptional<z.ZodString>;
1791
+ code: z.ZodOptional<z.ZodString>;
1792
+ title: z.ZodOptional<z.ZodString>;
1793
+ detail: z.ZodOptional<z.ZodString>;
1794
+ source: z.ZodOptional<z.ZodObject<{
1795
+ pointer: z.ZodOptional<z.ZodString>;
1796
+ parameter: z.ZodOptional<z.ZodString>;
1797
+ }, "strip", z.ZodTypeAny, {
1798
+ pointer?: string | undefined;
1799
+ parameter?: string | undefined;
1800
+ }, {
1801
+ pointer?: string | undefined;
1802
+ parameter?: string | undefined;
1803
+ }>>;
1804
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1805
+ }, "strip", z.ZodTypeAny, {
1806
+ status?: string | undefined;
1807
+ code?: string | undefined;
1808
+ id?: string | undefined;
1809
+ links?: {
1810
+ about?: string | undefined;
1811
+ } | undefined;
1812
+ meta?: Record<string, unknown> | undefined;
1813
+ title?: string | undefined;
1814
+ detail?: string | undefined;
1815
+ source?: {
1816
+ pointer?: string | undefined;
1817
+ parameter?: string | undefined;
1818
+ } | undefined;
1819
+ }, {
1820
+ status?: string | undefined;
1821
+ code?: string | undefined;
1822
+ id?: string | undefined;
1823
+ links?: {
1824
+ about?: string | undefined;
1825
+ } | undefined;
1826
+ meta?: Record<string, unknown> | undefined;
1827
+ title?: string | undefined;
1828
+ detail?: string | undefined;
1829
+ source?: {
1830
+ pointer?: string | undefined;
1831
+ parameter?: string | undefined;
1832
+ } | undefined;
1833
+ }>, "many">;
1834
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1835
+ }, "strip", z.ZodTypeAny, {
1836
+ errors: {
1837
+ status?: string | undefined;
1838
+ code?: string | undefined;
1839
+ id?: string | undefined;
1840
+ links?: {
1841
+ about?: string | undefined;
1842
+ } | undefined;
1843
+ meta?: Record<string, unknown> | undefined;
1844
+ title?: string | undefined;
1845
+ detail?: string | undefined;
1846
+ source?: {
1847
+ pointer?: string | undefined;
1848
+ parameter?: string | undefined;
1849
+ } | undefined;
1850
+ }[];
1851
+ meta?: Record<string, unknown> | undefined;
1852
+ }, {
1853
+ errors: {
1854
+ status?: string | undefined;
1855
+ code?: string | undefined;
1856
+ id?: string | undefined;
1857
+ links?: {
1858
+ about?: string | undefined;
1859
+ } | undefined;
1860
+ meta?: Record<string, unknown> | undefined;
1861
+ title?: string | undefined;
1862
+ detail?: string | undefined;
1863
+ source?: {
1864
+ pointer?: string | undefined;
1865
+ parameter?: string | undefined;
1866
+ } | undefined;
1867
+ }[];
1868
+ meta?: Record<string, unknown> | undefined;
1869
+ }>;
1870
+ 401: z.ZodObject<{
1871
+ errors: z.ZodArray<z.ZodObject<{
1872
+ id: z.ZodOptional<z.ZodString>;
1873
+ links: z.ZodOptional<z.ZodObject<{
1874
+ about: z.ZodOptional<z.ZodString>;
1875
+ }, "strip", z.ZodTypeAny, {
1876
+ about?: string | undefined;
1877
+ }, {
1878
+ about?: string | undefined;
1879
+ }>>;
1880
+ status: z.ZodOptional<z.ZodString>;
1881
+ code: z.ZodOptional<z.ZodString>;
1882
+ title: z.ZodOptional<z.ZodString>;
1883
+ detail: z.ZodOptional<z.ZodString>;
1884
+ source: z.ZodOptional<z.ZodObject<{
1885
+ pointer: z.ZodOptional<z.ZodString>;
1886
+ parameter: z.ZodOptional<z.ZodString>;
1887
+ }, "strip", z.ZodTypeAny, {
1888
+ pointer?: string | undefined;
1889
+ parameter?: string | undefined;
1890
+ }, {
1891
+ pointer?: string | undefined;
1892
+ parameter?: string | undefined;
1893
+ }>>;
1894
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1895
+ }, "strip", z.ZodTypeAny, {
1896
+ status?: string | undefined;
1897
+ code?: string | undefined;
1898
+ id?: string | undefined;
1899
+ links?: {
1900
+ about?: string | undefined;
1901
+ } | undefined;
1902
+ meta?: Record<string, unknown> | undefined;
1903
+ title?: string | undefined;
1904
+ detail?: string | undefined;
1905
+ source?: {
1906
+ pointer?: string | undefined;
1907
+ parameter?: string | undefined;
1908
+ } | undefined;
1909
+ }, {
1910
+ status?: string | undefined;
1911
+ code?: string | undefined;
1912
+ id?: string | undefined;
1913
+ links?: {
1914
+ about?: string | undefined;
1915
+ } | undefined;
1916
+ meta?: Record<string, unknown> | undefined;
1917
+ title?: string | undefined;
1918
+ detail?: string | undefined;
1919
+ source?: {
1920
+ pointer?: string | undefined;
1921
+ parameter?: string | undefined;
1922
+ } | undefined;
1923
+ }>, "many">;
1924
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1925
+ }, "strip", z.ZodTypeAny, {
1926
+ errors: {
1927
+ status?: string | undefined;
1928
+ code?: string | undefined;
1929
+ id?: string | undefined;
1930
+ links?: {
1931
+ about?: string | undefined;
1932
+ } | undefined;
1933
+ meta?: Record<string, unknown> | undefined;
1934
+ title?: string | undefined;
1935
+ detail?: string | undefined;
1936
+ source?: {
1937
+ pointer?: string | undefined;
1938
+ parameter?: string | undefined;
1939
+ } | undefined;
1940
+ }[];
1941
+ meta?: Record<string, unknown> | undefined;
1942
+ }, {
1943
+ errors: {
1944
+ status?: string | undefined;
1945
+ code?: string | undefined;
1946
+ id?: string | undefined;
1947
+ links?: {
1948
+ about?: string | undefined;
1949
+ } | undefined;
1950
+ meta?: Record<string, unknown> | undefined;
1951
+ title?: string | undefined;
1952
+ detail?: string | undefined;
1953
+ source?: {
1954
+ pointer?: string | undefined;
1955
+ parameter?: string | undefined;
1956
+ } | undefined;
1957
+ }[];
1958
+ meta?: Record<string, unknown> | undefined;
1959
+ }>;
1960
+ };
1961
+ };
1962
+ updateSoilTest: {
1963
+ pathParams: z.ZodObject<{
1964
+ farmId: z.ZodString;
1965
+ id: z.ZodString;
1966
+ }, "strip", z.ZodTypeAny, {
1967
+ id: string;
1968
+ farmId: string;
1969
+ }, {
1970
+ id: string;
1971
+ farmId: string;
1972
+ }>;
1973
+ summary: "Update soil test";
1974
+ description: "Update soil test information";
1975
+ method: "PATCH";
1976
+ body: z.ZodObject<{
1977
+ data: z.ZodObject<{
1978
+ type: z.ZodLiteral<"soil-tests">;
1979
+ id: z.ZodString;
1980
+ attributes: z.ZodObject<{
1981
+ testedBy: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1982
+ labName: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1983
+ cropAtTimeOfTest: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1984
+ pH: z.ZodOptional<z.ZodNumber>;
1985
+ nitrogen: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1986
+ nitrogenUnit: z.ZodOptional<z.ZodOptional<z.ZodEnum<["ppm", "kg/ha"]>>>;
1987
+ phosphorus: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1988
+ phosphorusUnit: z.ZodOptional<z.ZodOptional<z.ZodEnum<["ppm", "kg/ha"]>>>;
1989
+ potassium: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1990
+ potassiumUnit: z.ZodOptional<z.ZodOptional<z.ZodEnum<["ppm", "kg/ha"]>>>;
1991
+ organicMatter: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1992
+ testCost: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
1993
+ notes: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1994
+ documentUrl: z.ZodOptional<z.ZodOptional<z.ZodString>>;
1995
+ } & {
1996
+ fieldId: z.ZodOptional<z.ZodString>;
1997
+ testDate: z.ZodOptional<z.ZodString>;
1998
+ }, "strip", z.ZodTypeAny, {
1999
+ fieldId?: string | undefined;
2000
+ notes?: string | undefined;
2001
+ testDate?: string | undefined;
2002
+ testedBy?: string | undefined;
2003
+ labName?: string | undefined;
2004
+ cropAtTimeOfTest?: string | undefined;
2005
+ pH?: number | undefined;
2006
+ nitrogen?: number | undefined;
2007
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
2008
+ phosphorus?: number | undefined;
2009
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
2010
+ potassium?: number | undefined;
2011
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
2012
+ organicMatter?: number | undefined;
2013
+ testCost?: number | undefined;
2014
+ documentUrl?: string | undefined;
2015
+ }, {
2016
+ fieldId?: string | undefined;
2017
+ notes?: string | undefined;
2018
+ testDate?: string | undefined;
2019
+ testedBy?: string | undefined;
2020
+ labName?: string | undefined;
2021
+ cropAtTimeOfTest?: string | undefined;
2022
+ pH?: number | undefined;
2023
+ nitrogen?: number | undefined;
2024
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
2025
+ phosphorus?: number | undefined;
2026
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
2027
+ potassium?: number | undefined;
2028
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
2029
+ organicMatter?: number | undefined;
2030
+ testCost?: number | undefined;
2031
+ documentUrl?: string | undefined;
2032
+ }>;
2033
+ }, "strip", z.ZodTypeAny, {
2034
+ type: "soil-tests";
2035
+ id: string;
2036
+ attributes: {
2037
+ fieldId?: string | undefined;
2038
+ notes?: string | undefined;
2039
+ testDate?: string | undefined;
2040
+ testedBy?: string | undefined;
2041
+ labName?: string | undefined;
2042
+ cropAtTimeOfTest?: string | undefined;
2043
+ pH?: number | undefined;
2044
+ nitrogen?: number | undefined;
2045
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
2046
+ phosphorus?: number | undefined;
2047
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
2048
+ potassium?: number | undefined;
2049
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
2050
+ organicMatter?: number | undefined;
2051
+ testCost?: number | undefined;
2052
+ documentUrl?: string | undefined;
2053
+ };
2054
+ }, {
2055
+ type: "soil-tests";
2056
+ id: string;
2057
+ attributes: {
2058
+ fieldId?: string | undefined;
2059
+ notes?: string | undefined;
2060
+ testDate?: string | undefined;
2061
+ testedBy?: string | undefined;
2062
+ labName?: string | undefined;
2063
+ cropAtTimeOfTest?: string | undefined;
2064
+ pH?: number | undefined;
2065
+ nitrogen?: number | undefined;
2066
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
2067
+ phosphorus?: number | undefined;
2068
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
2069
+ potassium?: number | undefined;
2070
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
2071
+ organicMatter?: number | undefined;
2072
+ testCost?: number | undefined;
2073
+ documentUrl?: string | undefined;
2074
+ };
2075
+ }>;
2076
+ }, "strip", z.ZodTypeAny, {
2077
+ data: {
2078
+ type: "soil-tests";
2079
+ id: string;
2080
+ attributes: {
2081
+ fieldId?: string | undefined;
2082
+ notes?: string | undefined;
2083
+ testDate?: string | undefined;
2084
+ testedBy?: string | undefined;
2085
+ labName?: string | undefined;
2086
+ cropAtTimeOfTest?: string | undefined;
2087
+ pH?: number | undefined;
2088
+ nitrogen?: number | undefined;
2089
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
2090
+ phosphorus?: number | undefined;
2091
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
2092
+ potassium?: number | undefined;
2093
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
2094
+ organicMatter?: number | undefined;
2095
+ testCost?: number | undefined;
2096
+ documentUrl?: string | undefined;
2097
+ };
2098
+ };
2099
+ }, {
2100
+ data: {
2101
+ type: "soil-tests";
2102
+ id: string;
2103
+ attributes: {
2104
+ fieldId?: string | undefined;
2105
+ notes?: string | undefined;
2106
+ testDate?: string | undefined;
2107
+ testedBy?: string | undefined;
2108
+ labName?: string | undefined;
2109
+ cropAtTimeOfTest?: string | undefined;
2110
+ pH?: number | undefined;
2111
+ nitrogen?: number | undefined;
2112
+ nitrogenUnit?: "ppm" | "kg/ha" | undefined;
2113
+ phosphorus?: number | undefined;
2114
+ phosphorusUnit?: "ppm" | "kg/ha" | undefined;
2115
+ potassium?: number | undefined;
2116
+ potassiumUnit?: "ppm" | "kg/ha" | undefined;
2117
+ organicMatter?: number | undefined;
2118
+ testCost?: number | undefined;
2119
+ documentUrl?: string | undefined;
2120
+ };
2121
+ };
2122
+ }>;
2123
+ path: "/farms/:farmId/soil-tests/:id";
2124
+ responses: {
2125
+ 200: z.ZodObject<{
2126
+ data: z.ZodObject<{
2127
+ type: z.ZodLiteral<string>;
2128
+ id: z.ZodString;
2129
+ attributes: z.ZodObject<{
2130
+ fieldId: z.ZodString;
2131
+ fieldName: z.ZodOptional<z.ZodString>;
2132
+ testDate: z.ZodString;
2133
+ testedBy: z.ZodNullable<z.ZodString>;
2134
+ labName: z.ZodNullable<z.ZodString>;
2135
+ cropAtTimeOfTest: z.ZodNullable<z.ZodString>;
2136
+ pH: z.ZodNumber;
2137
+ nitrogen: z.ZodNullable<z.ZodNumber>;
2138
+ nitrogenUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
2139
+ phosphorus: z.ZodNullable<z.ZodNumber>;
2140
+ phosphorusUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
2141
+ potassium: z.ZodNullable<z.ZodNumber>;
2142
+ potassiumUnit: z.ZodNullable<z.ZodEnum<["ppm", "kg/ha"]>>;
2143
+ organicMatter: z.ZodNullable<z.ZodNumber>;
2144
+ testCost: z.ZodNullable<z.ZodNumber>;
2145
+ notes: z.ZodNullable<z.ZodString>;
2146
+ documentUrl: z.ZodNullable<z.ZodString>;
2147
+ recommendedFertilizers: z.ZodOptional<z.ZodArray<z.ZodObject<{
2148
+ inventoryItemId: z.ZodString;
2149
+ quantity: z.ZodNumber;
2150
+ unit: z.ZodString;
2151
+ reason: z.ZodString;
2152
+ estimatedCost: z.ZodOptional<z.ZodNumber>;
2153
+ }, "strip", z.ZodTypeAny, {
2154
+ inventoryItemId: string;
2155
+ unit: string;
2156
+ quantity: number;
2157
+ reason: string;
2158
+ estimatedCost?: number | undefined;
2159
+ }, {
2160
+ inventoryItemId: string;
2161
+ unit: string;
2162
+ quantity: number;
2163
+ reason: string;
2164
+ estimatedCost?: number | undefined;
2165
+ }>, "many">>;
2166
+ recommendations: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2167
+ createdBy: z.ZodNullable<z.ZodString>;
2168
+ } & {
2169
+ createdAt: z.ZodString;
2170
+ updatedAt: z.ZodString;
2171
+ }, "strip", z.ZodTypeAny, {
2172
+ createdAt: string;
2173
+ updatedAt: string;
2174
+ fieldId: string;
2175
+ notes: string | null;
2176
+ testDate: string;
2177
+ testedBy: string | null;
2178
+ labName: string | null;
2179
+ cropAtTimeOfTest: string | null;
2180
+ pH: number;
2181
+ nitrogen: number | null;
2182
+ nitrogenUnit: "ppm" | "kg/ha" | null;
2183
+ phosphorus: number | null;
2184
+ phosphorusUnit: "ppm" | "kg/ha" | null;
2185
+ potassium: number | null;
2186
+ potassiumUnit: "ppm" | "kg/ha" | null;
2187
+ organicMatter: number | null;
2188
+ testCost: number | null;
2189
+ documentUrl: string | null;
2190
+ createdBy: string | null;
2191
+ fieldName?: string | undefined;
2192
+ recommendedFertilizers?: {
2193
+ inventoryItemId: string;
2194
+ unit: string;
2195
+ quantity: number;
2196
+ reason: string;
2197
+ estimatedCost?: number | undefined;
2198
+ }[] | undefined;
2199
+ recommendations?: string | null | undefined;
2200
+ }, {
2201
+ createdAt: string;
2202
+ updatedAt: string;
2203
+ fieldId: string;
2204
+ notes: string | null;
2205
+ testDate: string;
2206
+ testedBy: string | null;
2207
+ labName: string | null;
2208
+ cropAtTimeOfTest: string | null;
2209
+ pH: number;
2210
+ nitrogen: number | null;
2211
+ nitrogenUnit: "ppm" | "kg/ha" | null;
2212
+ phosphorus: number | null;
2213
+ phosphorusUnit: "ppm" | "kg/ha" | null;
2214
+ potassium: number | null;
2215
+ potassiumUnit: "ppm" | "kg/ha" | null;
2216
+ organicMatter: number | null;
2217
+ testCost: number | null;
2218
+ documentUrl: string | null;
2219
+ createdBy: string | null;
2220
+ fieldName?: string | undefined;
2221
+ recommendedFertilizers?: {
2222
+ inventoryItemId: string;
2223
+ unit: string;
2224
+ quantity: number;
2225
+ reason: string;
2226
+ estimatedCost?: number | undefined;
2227
+ }[] | undefined;
2228
+ recommendations?: string | null | undefined;
2229
+ }>;
2230
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2231
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2232
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2233
+ }, "strip", z.ZodTypeAny, {
2234
+ type: string;
2235
+ id: string;
2236
+ attributes: {
2237
+ createdAt: string;
2238
+ updatedAt: string;
2239
+ fieldId: string;
2240
+ notes: string | null;
2241
+ testDate: string;
2242
+ testedBy: string | null;
2243
+ labName: string | null;
2244
+ cropAtTimeOfTest: string | null;
2245
+ pH: number;
2246
+ nitrogen: number | null;
2247
+ nitrogenUnit: "ppm" | "kg/ha" | null;
2248
+ phosphorus: number | null;
2249
+ phosphorusUnit: "ppm" | "kg/ha" | null;
2250
+ potassium: number | null;
2251
+ potassiumUnit: "ppm" | "kg/ha" | null;
2252
+ organicMatter: number | null;
2253
+ testCost: number | null;
2254
+ documentUrl: string | null;
2255
+ createdBy: string | null;
2256
+ fieldName?: string | undefined;
2257
+ recommendedFertilizers?: {
2258
+ inventoryItemId: string;
2259
+ unit: string;
2260
+ quantity: number;
2261
+ reason: string;
2262
+ estimatedCost?: number | undefined;
2263
+ }[] | undefined;
2264
+ recommendations?: string | null | undefined;
2265
+ };
2266
+ relationships?: Record<string, unknown> | undefined;
2267
+ links?: Record<string, string> | undefined;
2268
+ meta?: Record<string, unknown> | undefined;
2269
+ }, {
2270
+ type: string;
2271
+ id: string;
2272
+ attributes: {
2273
+ createdAt: string;
2274
+ updatedAt: string;
2275
+ fieldId: string;
2276
+ notes: string | null;
2277
+ testDate: string;
2278
+ testedBy: string | null;
2279
+ labName: string | null;
2280
+ cropAtTimeOfTest: string | null;
2281
+ pH: number;
2282
+ nitrogen: number | null;
2283
+ nitrogenUnit: "ppm" | "kg/ha" | null;
2284
+ phosphorus: number | null;
2285
+ phosphorusUnit: "ppm" | "kg/ha" | null;
2286
+ potassium: number | null;
2287
+ potassiumUnit: "ppm" | "kg/ha" | null;
2288
+ organicMatter: number | null;
2289
+ testCost: number | null;
2290
+ documentUrl: string | null;
2291
+ createdBy: string | null;
2292
+ fieldName?: string | undefined;
2293
+ recommendedFertilizers?: {
2294
+ inventoryItemId: string;
2295
+ unit: string;
2296
+ quantity: number;
2297
+ reason: string;
2298
+ estimatedCost?: number | undefined;
2299
+ }[] | undefined;
2300
+ recommendations?: string | null | undefined;
2301
+ };
2302
+ relationships?: Record<string, unknown> | undefined;
2303
+ links?: Record<string, string> | undefined;
2304
+ meta?: Record<string, unknown> | undefined;
2305
+ }>;
2306
+ included: z.ZodOptional<z.ZodArray<z.ZodObject<{
2307
+ type: z.ZodString;
2308
+ id: z.ZodString;
2309
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2310
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2311
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2312
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2313
+ }, "strip", z.ZodTypeAny, {
2314
+ type: string;
2315
+ id: string;
2316
+ attributes?: Record<string, unknown> | undefined;
2317
+ relationships?: Record<string, unknown> | undefined;
2318
+ links?: Record<string, string> | undefined;
2319
+ meta?: Record<string, unknown> | undefined;
2320
+ }, {
2321
+ type: string;
2322
+ id: string;
2323
+ attributes?: Record<string, unknown> | undefined;
2324
+ relationships?: Record<string, unknown> | undefined;
2325
+ links?: Record<string, string> | undefined;
2326
+ meta?: Record<string, unknown> | undefined;
2327
+ }>, "many">>;
2328
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2329
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2330
+ }, "strip", z.ZodTypeAny, {
2331
+ data: {
2332
+ type: string;
2333
+ id: string;
2334
+ attributes: {
2335
+ createdAt: string;
2336
+ updatedAt: string;
2337
+ fieldId: string;
2338
+ notes: string | null;
2339
+ testDate: string;
2340
+ testedBy: string | null;
2341
+ labName: string | null;
2342
+ cropAtTimeOfTest: string | null;
2343
+ pH: number;
2344
+ nitrogen: number | null;
2345
+ nitrogenUnit: "ppm" | "kg/ha" | null;
2346
+ phosphorus: number | null;
2347
+ phosphorusUnit: "ppm" | "kg/ha" | null;
2348
+ potassium: number | null;
2349
+ potassiumUnit: "ppm" | "kg/ha" | null;
2350
+ organicMatter: number | null;
2351
+ testCost: number | null;
2352
+ documentUrl: string | null;
2353
+ createdBy: string | null;
2354
+ fieldName?: string | undefined;
2355
+ recommendedFertilizers?: {
2356
+ inventoryItemId: string;
2357
+ unit: string;
2358
+ quantity: number;
2359
+ reason: string;
2360
+ estimatedCost?: number | undefined;
2361
+ }[] | undefined;
2362
+ recommendations?: string | null | undefined;
2363
+ };
2364
+ relationships?: Record<string, unknown> | undefined;
2365
+ links?: Record<string, string> | undefined;
2366
+ meta?: Record<string, unknown> | undefined;
2367
+ };
2368
+ links?: Record<string, string> | undefined;
2369
+ meta?: Record<string, unknown> | undefined;
2370
+ included?: {
2371
+ type: string;
2372
+ id: string;
2373
+ attributes?: Record<string, unknown> | undefined;
2374
+ relationships?: Record<string, unknown> | undefined;
2375
+ links?: Record<string, string> | undefined;
2376
+ meta?: Record<string, unknown> | undefined;
2377
+ }[] | undefined;
2378
+ }, {
2379
+ data: {
2380
+ type: string;
2381
+ id: string;
2382
+ attributes: {
2383
+ createdAt: string;
2384
+ updatedAt: string;
2385
+ fieldId: string;
2386
+ notes: string | null;
2387
+ testDate: string;
2388
+ testedBy: string | null;
2389
+ labName: string | null;
2390
+ cropAtTimeOfTest: string | null;
2391
+ pH: number;
2392
+ nitrogen: number | null;
2393
+ nitrogenUnit: "ppm" | "kg/ha" | null;
2394
+ phosphorus: number | null;
2395
+ phosphorusUnit: "ppm" | "kg/ha" | null;
2396
+ potassium: number | null;
2397
+ potassiumUnit: "ppm" | "kg/ha" | null;
2398
+ organicMatter: number | null;
2399
+ testCost: number | null;
2400
+ documentUrl: string | null;
2401
+ createdBy: string | null;
2402
+ fieldName?: string | undefined;
2403
+ recommendedFertilizers?: {
2404
+ inventoryItemId: string;
2405
+ unit: string;
2406
+ quantity: number;
2407
+ reason: string;
2408
+ estimatedCost?: number | undefined;
2409
+ }[] | undefined;
2410
+ recommendations?: string | null | undefined;
2411
+ };
2412
+ relationships?: Record<string, unknown> | undefined;
2413
+ links?: Record<string, string> | undefined;
2414
+ meta?: Record<string, unknown> | undefined;
2415
+ };
2416
+ links?: Record<string, string> | undefined;
2417
+ meta?: Record<string, unknown> | undefined;
2418
+ included?: {
2419
+ type: string;
2420
+ id: string;
2421
+ attributes?: Record<string, unknown> | undefined;
2422
+ relationships?: Record<string, unknown> | undefined;
2423
+ links?: Record<string, string> | undefined;
2424
+ meta?: Record<string, unknown> | undefined;
2425
+ }[] | undefined;
2426
+ }>;
2427
+ 400: z.ZodObject<{
2428
+ errors: z.ZodArray<z.ZodObject<{
2429
+ id: z.ZodOptional<z.ZodString>;
2430
+ links: z.ZodOptional<z.ZodObject<{
2431
+ about: z.ZodOptional<z.ZodString>;
2432
+ }, "strip", z.ZodTypeAny, {
2433
+ about?: string | undefined;
2434
+ }, {
2435
+ about?: string | undefined;
2436
+ }>>;
2437
+ status: z.ZodOptional<z.ZodString>;
2438
+ code: z.ZodOptional<z.ZodString>;
2439
+ title: z.ZodOptional<z.ZodString>;
2440
+ detail: z.ZodOptional<z.ZodString>;
2441
+ source: z.ZodOptional<z.ZodObject<{
2442
+ pointer: z.ZodOptional<z.ZodString>;
2443
+ parameter: z.ZodOptional<z.ZodString>;
2444
+ }, "strip", z.ZodTypeAny, {
2445
+ pointer?: string | undefined;
2446
+ parameter?: string | undefined;
2447
+ }, {
2448
+ pointer?: string | undefined;
2449
+ parameter?: string | undefined;
2450
+ }>>;
2451
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2452
+ }, "strip", z.ZodTypeAny, {
2453
+ status?: string | undefined;
2454
+ code?: string | undefined;
2455
+ id?: string | undefined;
2456
+ links?: {
2457
+ about?: string | undefined;
2458
+ } | undefined;
2459
+ meta?: Record<string, unknown> | undefined;
2460
+ title?: string | undefined;
2461
+ detail?: string | undefined;
2462
+ source?: {
2463
+ pointer?: string | undefined;
2464
+ parameter?: string | undefined;
2465
+ } | undefined;
2466
+ }, {
2467
+ status?: string | undefined;
2468
+ code?: string | undefined;
2469
+ id?: string | undefined;
2470
+ links?: {
2471
+ about?: string | undefined;
2472
+ } | undefined;
2473
+ meta?: Record<string, unknown> | undefined;
2474
+ title?: string | undefined;
2475
+ detail?: string | undefined;
2476
+ source?: {
2477
+ pointer?: string | undefined;
2478
+ parameter?: string | undefined;
2479
+ } | undefined;
2480
+ }>, "many">;
2481
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2482
+ }, "strip", z.ZodTypeAny, {
2483
+ errors: {
2484
+ status?: string | undefined;
2485
+ code?: string | undefined;
2486
+ id?: string | undefined;
2487
+ links?: {
2488
+ about?: string | undefined;
2489
+ } | undefined;
2490
+ meta?: Record<string, unknown> | undefined;
2491
+ title?: string | undefined;
2492
+ detail?: string | undefined;
2493
+ source?: {
2494
+ pointer?: string | undefined;
2495
+ parameter?: string | undefined;
2496
+ } | undefined;
2497
+ }[];
2498
+ meta?: Record<string, unknown> | undefined;
2499
+ }, {
2500
+ errors: {
2501
+ status?: string | undefined;
2502
+ code?: string | undefined;
2503
+ id?: string | undefined;
2504
+ links?: {
2505
+ about?: string | undefined;
2506
+ } | undefined;
2507
+ meta?: Record<string, unknown> | undefined;
2508
+ title?: string | undefined;
2509
+ detail?: string | undefined;
2510
+ source?: {
2511
+ pointer?: string | undefined;
2512
+ parameter?: string | undefined;
2513
+ } | undefined;
2514
+ }[];
2515
+ meta?: Record<string, unknown> | undefined;
2516
+ }>;
2517
+ 404: z.ZodObject<{
2518
+ errors: z.ZodArray<z.ZodObject<{
2519
+ id: z.ZodOptional<z.ZodString>;
2520
+ links: z.ZodOptional<z.ZodObject<{
2521
+ about: z.ZodOptional<z.ZodString>;
2522
+ }, "strip", z.ZodTypeAny, {
2523
+ about?: string | undefined;
2524
+ }, {
2525
+ about?: string | undefined;
2526
+ }>>;
2527
+ status: z.ZodOptional<z.ZodString>;
2528
+ code: z.ZodOptional<z.ZodString>;
2529
+ title: z.ZodOptional<z.ZodString>;
2530
+ detail: z.ZodOptional<z.ZodString>;
2531
+ source: z.ZodOptional<z.ZodObject<{
2532
+ pointer: z.ZodOptional<z.ZodString>;
2533
+ parameter: z.ZodOptional<z.ZodString>;
2534
+ }, "strip", z.ZodTypeAny, {
2535
+ pointer?: string | undefined;
2536
+ parameter?: string | undefined;
2537
+ }, {
2538
+ pointer?: string | undefined;
2539
+ parameter?: string | undefined;
2540
+ }>>;
2541
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2542
+ }, "strip", z.ZodTypeAny, {
2543
+ status?: string | undefined;
2544
+ code?: string | undefined;
2545
+ id?: string | undefined;
2546
+ links?: {
2547
+ about?: string | undefined;
2548
+ } | undefined;
2549
+ meta?: Record<string, unknown> | undefined;
2550
+ title?: string | undefined;
2551
+ detail?: string | undefined;
2552
+ source?: {
2553
+ pointer?: string | undefined;
2554
+ parameter?: string | undefined;
2555
+ } | undefined;
2556
+ }, {
2557
+ status?: string | undefined;
2558
+ code?: string | undefined;
2559
+ id?: string | undefined;
2560
+ links?: {
2561
+ about?: string | undefined;
2562
+ } | undefined;
2563
+ meta?: Record<string, unknown> | undefined;
2564
+ title?: string | undefined;
2565
+ detail?: string | undefined;
2566
+ source?: {
2567
+ pointer?: string | undefined;
2568
+ parameter?: string | undefined;
2569
+ } | undefined;
2570
+ }>, "many">;
2571
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2572
+ }, "strip", z.ZodTypeAny, {
2573
+ errors: {
2574
+ status?: string | undefined;
2575
+ code?: string | undefined;
2576
+ id?: string | undefined;
2577
+ links?: {
2578
+ about?: string | undefined;
2579
+ } | undefined;
2580
+ meta?: Record<string, unknown> | undefined;
2581
+ title?: string | undefined;
2582
+ detail?: string | undefined;
2583
+ source?: {
2584
+ pointer?: string | undefined;
2585
+ parameter?: string | undefined;
2586
+ } | undefined;
2587
+ }[];
2588
+ meta?: Record<string, unknown> | undefined;
2589
+ }, {
2590
+ errors: {
2591
+ status?: string | undefined;
2592
+ code?: string | undefined;
2593
+ id?: string | undefined;
2594
+ links?: {
2595
+ about?: string | undefined;
2596
+ } | undefined;
2597
+ meta?: Record<string, unknown> | undefined;
2598
+ title?: string | undefined;
2599
+ detail?: string | undefined;
2600
+ source?: {
2601
+ pointer?: string | undefined;
2602
+ parameter?: string | undefined;
2603
+ } | undefined;
2604
+ }[];
2605
+ meta?: Record<string, unknown> | undefined;
2606
+ }>;
2607
+ 401: z.ZodObject<{
2608
+ errors: z.ZodArray<z.ZodObject<{
2609
+ id: z.ZodOptional<z.ZodString>;
2610
+ links: z.ZodOptional<z.ZodObject<{
2611
+ about: z.ZodOptional<z.ZodString>;
2612
+ }, "strip", z.ZodTypeAny, {
2613
+ about?: string | undefined;
2614
+ }, {
2615
+ about?: string | undefined;
2616
+ }>>;
2617
+ status: z.ZodOptional<z.ZodString>;
2618
+ code: z.ZodOptional<z.ZodString>;
2619
+ title: z.ZodOptional<z.ZodString>;
2620
+ detail: z.ZodOptional<z.ZodString>;
2621
+ source: z.ZodOptional<z.ZodObject<{
2622
+ pointer: z.ZodOptional<z.ZodString>;
2623
+ parameter: z.ZodOptional<z.ZodString>;
2624
+ }, "strip", z.ZodTypeAny, {
2625
+ pointer?: string | undefined;
2626
+ parameter?: string | undefined;
2627
+ }, {
2628
+ pointer?: string | undefined;
2629
+ parameter?: string | undefined;
2630
+ }>>;
2631
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2632
+ }, "strip", z.ZodTypeAny, {
2633
+ status?: string | undefined;
2634
+ code?: string | undefined;
2635
+ id?: string | undefined;
2636
+ links?: {
2637
+ about?: string | undefined;
2638
+ } | undefined;
2639
+ meta?: Record<string, unknown> | undefined;
2640
+ title?: string | undefined;
2641
+ detail?: string | undefined;
2642
+ source?: {
2643
+ pointer?: string | undefined;
2644
+ parameter?: string | undefined;
2645
+ } | undefined;
2646
+ }, {
2647
+ status?: string | undefined;
2648
+ code?: string | undefined;
2649
+ id?: string | undefined;
2650
+ links?: {
2651
+ about?: string | undefined;
2652
+ } | undefined;
2653
+ meta?: Record<string, unknown> | undefined;
2654
+ title?: string | undefined;
2655
+ detail?: string | undefined;
2656
+ source?: {
2657
+ pointer?: string | undefined;
2658
+ parameter?: string | undefined;
2659
+ } | undefined;
2660
+ }>, "many">;
2661
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2662
+ }, "strip", z.ZodTypeAny, {
2663
+ errors: {
2664
+ status?: string | undefined;
2665
+ code?: string | undefined;
2666
+ id?: string | undefined;
2667
+ links?: {
2668
+ about?: string | undefined;
2669
+ } | undefined;
2670
+ meta?: Record<string, unknown> | undefined;
2671
+ title?: string | undefined;
2672
+ detail?: string | undefined;
2673
+ source?: {
2674
+ pointer?: string | undefined;
2675
+ parameter?: string | undefined;
2676
+ } | undefined;
2677
+ }[];
2678
+ meta?: Record<string, unknown> | undefined;
2679
+ }, {
2680
+ errors: {
2681
+ status?: string | undefined;
2682
+ code?: string | undefined;
2683
+ id?: string | undefined;
2684
+ links?: {
2685
+ about?: string | undefined;
2686
+ } | undefined;
2687
+ meta?: Record<string, unknown> | undefined;
2688
+ title?: string | undefined;
2689
+ detail?: string | undefined;
2690
+ source?: {
2691
+ pointer?: string | undefined;
2692
+ parameter?: string | undefined;
2693
+ } | undefined;
2694
+ }[];
2695
+ meta?: Record<string, unknown> | undefined;
2696
+ }>;
2697
+ 422: z.ZodObject<{
2698
+ errors: z.ZodArray<z.ZodObject<{
2699
+ id: z.ZodOptional<z.ZodString>;
2700
+ links: z.ZodOptional<z.ZodObject<{
2701
+ about: z.ZodOptional<z.ZodString>;
2702
+ }, "strip", z.ZodTypeAny, {
2703
+ about?: string | undefined;
2704
+ }, {
2705
+ about?: string | undefined;
2706
+ }>>;
2707
+ status: z.ZodOptional<z.ZodString>;
2708
+ code: z.ZodOptional<z.ZodString>;
2709
+ title: z.ZodOptional<z.ZodString>;
2710
+ detail: z.ZodOptional<z.ZodString>;
2711
+ source: z.ZodOptional<z.ZodObject<{
2712
+ pointer: z.ZodOptional<z.ZodString>;
2713
+ parameter: z.ZodOptional<z.ZodString>;
2714
+ }, "strip", z.ZodTypeAny, {
2715
+ pointer?: string | undefined;
2716
+ parameter?: string | undefined;
2717
+ }, {
2718
+ pointer?: string | undefined;
2719
+ parameter?: string | undefined;
2720
+ }>>;
2721
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2722
+ }, "strip", z.ZodTypeAny, {
2723
+ status?: string | undefined;
2724
+ code?: string | undefined;
2725
+ id?: string | undefined;
2726
+ links?: {
2727
+ about?: string | undefined;
2728
+ } | undefined;
2729
+ meta?: Record<string, unknown> | undefined;
2730
+ title?: string | undefined;
2731
+ detail?: string | undefined;
2732
+ source?: {
2733
+ pointer?: string | undefined;
2734
+ parameter?: string | undefined;
2735
+ } | undefined;
2736
+ }, {
2737
+ status?: string | undefined;
2738
+ code?: string | undefined;
2739
+ id?: string | undefined;
2740
+ links?: {
2741
+ about?: string | undefined;
2742
+ } | undefined;
2743
+ meta?: Record<string, unknown> | undefined;
2744
+ title?: string | undefined;
2745
+ detail?: string | undefined;
2746
+ source?: {
2747
+ pointer?: string | undefined;
2748
+ parameter?: string | undefined;
2749
+ } | undefined;
2750
+ }>, "many">;
2751
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2752
+ }, "strip", z.ZodTypeAny, {
2753
+ errors: {
2754
+ status?: string | undefined;
2755
+ code?: string | undefined;
2756
+ id?: string | undefined;
2757
+ links?: {
2758
+ about?: string | undefined;
2759
+ } | undefined;
2760
+ meta?: Record<string, unknown> | undefined;
2761
+ title?: string | undefined;
2762
+ detail?: string | undefined;
2763
+ source?: {
2764
+ pointer?: string | undefined;
2765
+ parameter?: string | undefined;
2766
+ } | undefined;
2767
+ }[];
2768
+ meta?: Record<string, unknown> | undefined;
2769
+ }, {
2770
+ errors: {
2771
+ status?: string | undefined;
2772
+ code?: string | undefined;
2773
+ id?: string | undefined;
2774
+ links?: {
2775
+ about?: string | undefined;
2776
+ } | undefined;
2777
+ meta?: Record<string, unknown> | undefined;
2778
+ title?: string | undefined;
2779
+ detail?: string | undefined;
2780
+ source?: {
2781
+ pointer?: string | undefined;
2782
+ parameter?: string | undefined;
2783
+ } | undefined;
2784
+ }[];
2785
+ meta?: Record<string, unknown> | undefined;
2786
+ }>;
2787
+ };
2788
+ };
2789
+ deleteSoilTest: {
2790
+ pathParams: z.ZodObject<{
2791
+ farmId: z.ZodString;
2792
+ id: z.ZodString;
2793
+ }, "strip", z.ZodTypeAny, {
2794
+ id: string;
2795
+ farmId: string;
2796
+ }, {
2797
+ id: string;
2798
+ farmId: string;
2799
+ }>;
2800
+ summary: "Delete soil test";
2801
+ description: "Delete a soil test record";
2802
+ method: "DELETE";
2803
+ path: "/farms/:farmId/soil-tests/:id";
2804
+ responses: {
2805
+ 204: z.ZodObject<{
2806
+ meta: z.ZodObject<{
2807
+ message: z.ZodString;
2808
+ }, "strip", z.ZodTypeAny, {
2809
+ message: string;
2810
+ }, {
2811
+ message: string;
2812
+ }>;
2813
+ }, "strip", z.ZodTypeAny, {
2814
+ meta: {
2815
+ message: string;
2816
+ };
2817
+ }, {
2818
+ meta: {
2819
+ message: string;
2820
+ };
2821
+ }>;
2822
+ 404: z.ZodObject<{
2823
+ errors: z.ZodArray<z.ZodObject<{
2824
+ id: z.ZodOptional<z.ZodString>;
2825
+ links: z.ZodOptional<z.ZodObject<{
2826
+ about: z.ZodOptional<z.ZodString>;
2827
+ }, "strip", z.ZodTypeAny, {
2828
+ about?: string | undefined;
2829
+ }, {
2830
+ about?: string | undefined;
2831
+ }>>;
2832
+ status: z.ZodOptional<z.ZodString>;
2833
+ code: z.ZodOptional<z.ZodString>;
2834
+ title: z.ZodOptional<z.ZodString>;
2835
+ detail: z.ZodOptional<z.ZodString>;
2836
+ source: z.ZodOptional<z.ZodObject<{
2837
+ pointer: z.ZodOptional<z.ZodString>;
2838
+ parameter: z.ZodOptional<z.ZodString>;
2839
+ }, "strip", z.ZodTypeAny, {
2840
+ pointer?: string | undefined;
2841
+ parameter?: string | undefined;
2842
+ }, {
2843
+ pointer?: string | undefined;
2844
+ parameter?: string | undefined;
2845
+ }>>;
2846
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2847
+ }, "strip", z.ZodTypeAny, {
2848
+ status?: string | undefined;
2849
+ code?: string | undefined;
2850
+ id?: string | undefined;
2851
+ links?: {
2852
+ about?: string | undefined;
2853
+ } | undefined;
2854
+ meta?: Record<string, unknown> | undefined;
2855
+ title?: string | undefined;
2856
+ detail?: string | undefined;
2857
+ source?: {
2858
+ pointer?: string | undefined;
2859
+ parameter?: string | undefined;
2860
+ } | undefined;
2861
+ }, {
2862
+ status?: string | undefined;
2863
+ code?: string | undefined;
2864
+ id?: string | undefined;
2865
+ links?: {
2866
+ about?: string | undefined;
2867
+ } | undefined;
2868
+ meta?: Record<string, unknown> | undefined;
2869
+ title?: string | undefined;
2870
+ detail?: string | undefined;
2871
+ source?: {
2872
+ pointer?: string | undefined;
2873
+ parameter?: string | undefined;
2874
+ } | undefined;
2875
+ }>, "many">;
2876
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2877
+ }, "strip", z.ZodTypeAny, {
2878
+ errors: {
2879
+ status?: string | undefined;
2880
+ code?: string | undefined;
2881
+ id?: string | undefined;
2882
+ links?: {
2883
+ about?: string | undefined;
2884
+ } | undefined;
2885
+ meta?: Record<string, unknown> | undefined;
2886
+ title?: string | undefined;
2887
+ detail?: string | undefined;
2888
+ source?: {
2889
+ pointer?: string | undefined;
2890
+ parameter?: string | undefined;
2891
+ } | undefined;
2892
+ }[];
2893
+ meta?: Record<string, unknown> | undefined;
2894
+ }, {
2895
+ errors: {
2896
+ status?: string | undefined;
2897
+ code?: string | undefined;
2898
+ id?: string | undefined;
2899
+ links?: {
2900
+ about?: string | undefined;
2901
+ } | undefined;
2902
+ meta?: Record<string, unknown> | undefined;
2903
+ title?: string | undefined;
2904
+ detail?: string | undefined;
2905
+ source?: {
2906
+ pointer?: string | undefined;
2907
+ parameter?: string | undefined;
2908
+ } | undefined;
2909
+ }[];
2910
+ meta?: Record<string, unknown> | undefined;
2911
+ }>;
2912
+ 401: z.ZodObject<{
2913
+ errors: z.ZodArray<z.ZodObject<{
2914
+ id: z.ZodOptional<z.ZodString>;
2915
+ links: z.ZodOptional<z.ZodObject<{
2916
+ about: z.ZodOptional<z.ZodString>;
2917
+ }, "strip", z.ZodTypeAny, {
2918
+ about?: string | undefined;
2919
+ }, {
2920
+ about?: string | undefined;
2921
+ }>>;
2922
+ status: z.ZodOptional<z.ZodString>;
2923
+ code: z.ZodOptional<z.ZodString>;
2924
+ title: z.ZodOptional<z.ZodString>;
2925
+ detail: z.ZodOptional<z.ZodString>;
2926
+ source: z.ZodOptional<z.ZodObject<{
2927
+ pointer: z.ZodOptional<z.ZodString>;
2928
+ parameter: z.ZodOptional<z.ZodString>;
2929
+ }, "strip", z.ZodTypeAny, {
2930
+ pointer?: string | undefined;
2931
+ parameter?: string | undefined;
2932
+ }, {
2933
+ pointer?: string | undefined;
2934
+ parameter?: string | undefined;
2935
+ }>>;
2936
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2937
+ }, "strip", z.ZodTypeAny, {
2938
+ status?: string | undefined;
2939
+ code?: string | undefined;
2940
+ id?: string | undefined;
2941
+ links?: {
2942
+ about?: string | undefined;
2943
+ } | undefined;
2944
+ meta?: Record<string, unknown> | undefined;
2945
+ title?: string | undefined;
2946
+ detail?: string | undefined;
2947
+ source?: {
2948
+ pointer?: string | undefined;
2949
+ parameter?: string | undefined;
2950
+ } | undefined;
2951
+ }, {
2952
+ status?: string | undefined;
2953
+ code?: string | undefined;
2954
+ id?: string | undefined;
2955
+ links?: {
2956
+ about?: string | undefined;
2957
+ } | undefined;
2958
+ meta?: Record<string, unknown> | undefined;
2959
+ title?: string | undefined;
2960
+ detail?: string | undefined;
2961
+ source?: {
2962
+ pointer?: string | undefined;
2963
+ parameter?: string | undefined;
2964
+ } | undefined;
2965
+ }>, "many">;
2966
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2967
+ }, "strip", z.ZodTypeAny, {
2968
+ errors: {
2969
+ status?: string | undefined;
2970
+ code?: string | undefined;
2971
+ id?: string | undefined;
2972
+ links?: {
2973
+ about?: string | undefined;
2974
+ } | undefined;
2975
+ meta?: Record<string, unknown> | undefined;
2976
+ title?: string | undefined;
2977
+ detail?: string | undefined;
2978
+ source?: {
2979
+ pointer?: string | undefined;
2980
+ parameter?: string | undefined;
2981
+ } | undefined;
2982
+ }[];
2983
+ meta?: Record<string, unknown> | undefined;
2984
+ }, {
2985
+ errors: {
2986
+ status?: string | undefined;
2987
+ code?: string | undefined;
2988
+ id?: string | undefined;
2989
+ links?: {
2990
+ about?: string | undefined;
2991
+ } | undefined;
2992
+ meta?: Record<string, unknown> | undefined;
2993
+ title?: string | undefined;
2994
+ detail?: string | undefined;
2995
+ source?: {
2996
+ pointer?: string | undefined;
2997
+ parameter?: string | undefined;
2998
+ } | undefined;
2999
+ }[];
3000
+ meta?: Record<string, unknown> | undefined;
3001
+ }>;
3002
+ };
3003
+ };
3004
+ };
3005
+ //# sourceMappingURL=soil-tests.routes.d.ts.map