@deepintel-ltd/farmpro-contracts 1.5.13 → 1.5.15

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