@carrot-foundation/schemas 0.1.20 → 0.1.21

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 (36) hide show
  1. package/README.md +45 -0
  2. package/dist/index.cjs +1104 -0
  3. package/dist/index.cjs.map +1 -0
  4. package/dist/index.d.cts +552 -0
  5. package/dist/index.d.ts +552 -2
  6. package/dist/index.js +1100 -1
  7. package/dist/index.js.map +1 -0
  8. package/package.json +6 -4
  9. package/dist/index.d.ts.map +0 -1
  10. package/dist/mass-id/index.d.ts +0 -3
  11. package/dist/mass-id/index.d.ts.map +0 -1
  12. package/dist/mass-id/index.js +0 -2
  13. package/dist/mass-id/mass-id.data.schema.d.ts +0 -256
  14. package/dist/mass-id/mass-id.data.schema.d.ts.map +0 -1
  15. package/dist/mass-id/mass-id.data.schema.js +0 -348
  16. package/dist/mass-id/mass-id.schema.d.ts +0 -297
  17. package/dist/mass-id/mass-id.schema.d.ts.map +0 -1
  18. package/dist/mass-id/mass-id.schema.js +0 -163
  19. package/dist/shared/base.schema.d.ts +0 -111
  20. package/dist/shared/base.schema.d.ts.map +0 -1
  21. package/dist/shared/base.schema.js +0 -127
  22. package/dist/shared/definitions.schema.d.ts +0 -96
  23. package/dist/shared/definitions.schema.d.ts.map +0 -1
  24. package/dist/shared/definitions.schema.js +0 -283
  25. package/dist/shared/entities/location.schema.d.ts +0 -55
  26. package/dist/shared/entities/location.schema.d.ts.map +0 -1
  27. package/dist/shared/entities/location.schema.js +0 -68
  28. package/dist/shared/entities/participant.schema.d.ts +0 -8
  29. package/dist/shared/entities/participant.schema.d.ts.map +0 -1
  30. package/dist/shared/entities/participant.schema.js +0 -24
  31. package/dist/shared/helpers.schema.d.ts +0 -4
  32. package/dist/shared/helpers.schema.d.ts.map +0 -1
  33. package/dist/shared/helpers.schema.js +0 -16
  34. package/dist/shared/nft.schema.d.ts +0 -116
  35. package/dist/shared/nft.schema.d.ts.map +0 -1
  36. package/dist/shared/nft.schema.js +0 -193
package/dist/index.d.ts CHANGED
@@ -1,2 +1,552 @@
1
- export * from './mass-id';
2
- //# sourceMappingURL=index.d.ts.map
1
+ import { z } from 'zod';
2
+
3
+ declare const MassIDLocalClassificationSchema: z.ZodObject<{
4
+ code: z.ZodString;
5
+ description: z.ZodString;
6
+ system: z.ZodString;
7
+ }, z.core.$strict>;
8
+ type MassIDLocalClassification = z.infer<typeof MassIDLocalClassificationSchema>;
9
+ declare const MassIDMeasurementUnitSchema: z.ZodEnum<{
10
+ kg: "kg";
11
+ ton: "ton";
12
+ }>;
13
+ type MassIDMeasurementUnit = z.infer<typeof MassIDMeasurementUnitSchema>;
14
+ declare const ContaminationLevelSchema: z.ZodEnum<{
15
+ None: "None";
16
+ Low: "Low";
17
+ Medium: "Medium";
18
+ High: "High";
19
+ }>;
20
+ type ContaminationLevel = z.infer<typeof ContaminationLevelSchema>;
21
+ declare const MassIDWasteClassificationSchema: z.ZodObject<{
22
+ primary_type: z.ZodString;
23
+ subtype: z.ZodString;
24
+ local_classification: z.ZodOptional<z.ZodObject<{
25
+ code: z.ZodString;
26
+ description: z.ZodString;
27
+ system: z.ZodString;
28
+ }, z.core.$strict>>;
29
+ measurement_unit: z.ZodEnum<{
30
+ kg: "kg";
31
+ ton: "ton";
32
+ }>;
33
+ net_weight: z.ZodNumber;
34
+ contamination_level: z.ZodOptional<z.ZodEnum<{
35
+ None: "None";
36
+ Low: "Low";
37
+ Medium: "Medium";
38
+ High: "High";
39
+ }>>;
40
+ }, z.core.$strict>;
41
+ type MassIDWasteClassification = z.infer<typeof MassIDWasteClassificationSchema>;
42
+ declare const EventAttributeFormatSchema: z.ZodEnum<{
43
+ KILOGRAM: "KILOGRAM";
44
+ DATE: "DATE";
45
+ CURRENCY: "CURRENCY";
46
+ PERCENTAGE: "PERCENTAGE";
47
+ COORDINATE: "COORDINATE";
48
+ }>;
49
+ type EventAttributeFormat = z.infer<typeof EventAttributeFormatSchema>;
50
+ declare const EventAttributeSchema: z.ZodObject<{
51
+ name: z.ZodString;
52
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
53
+ format: z.ZodOptional<z.ZodEnum<{
54
+ KILOGRAM: "KILOGRAM";
55
+ DATE: "DATE";
56
+ CURRENCY: "CURRENCY";
57
+ PERCENTAGE: "PERCENTAGE";
58
+ COORDINATE: "COORDINATE";
59
+ }>>;
60
+ }, z.core.$strict>;
61
+ type EventAttribute = z.infer<typeof EventAttributeSchema>;
62
+ declare const EventDocumentSchema: z.ZodObject<{
63
+ type: z.ZodString;
64
+ document_number: z.ZodOptional<z.ZodString>;
65
+ reference: z.ZodString;
66
+ issue_date: z.ZodOptional<z.ZodISODate>;
67
+ issuer: z.ZodOptional<z.ZodString>;
68
+ }, z.core.$strict>;
69
+ type EventDocumentation = z.infer<typeof EventDocumentSchema>;
70
+ declare const MassIDChainOfCustodyEventSchema: z.ZodObject<{
71
+ event_id: z.ZodUUID;
72
+ event_name: z.ZodString;
73
+ description: z.ZodOptional<z.ZodString>;
74
+ timestamp: z.ZodISODateTime;
75
+ participant_id: z.ZodUUID;
76
+ location_id: z.ZodUUID;
77
+ weight: z.ZodOptional<z.ZodNumber>;
78
+ attributes: z.ZodOptional<z.ZodArray<z.ZodObject<{
79
+ name: z.ZodString;
80
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
81
+ format: z.ZodOptional<z.ZodEnum<{
82
+ KILOGRAM: "KILOGRAM";
83
+ DATE: "DATE";
84
+ CURRENCY: "CURRENCY";
85
+ PERCENTAGE: "PERCENTAGE";
86
+ COORDINATE: "COORDINATE";
87
+ }>>;
88
+ }, z.core.$strict>>>;
89
+ documentation: z.ZodOptional<z.ZodArray<z.ZodObject<{
90
+ type: z.ZodString;
91
+ document_number: z.ZodOptional<z.ZodString>;
92
+ reference: z.ZodString;
93
+ issue_date: z.ZodOptional<z.ZodISODate>;
94
+ issuer: z.ZodOptional<z.ZodString>;
95
+ }, z.core.$strict>>>;
96
+ notes: z.ZodOptional<z.ZodString>;
97
+ }, z.core.$strict>;
98
+ type MassIDChainOfCustodyEvent = z.infer<typeof MassIDChainOfCustodyEventSchema>;
99
+ declare const MassIDChainOfCustodySchema: z.ZodObject<{
100
+ events: z.ZodArray<z.ZodObject<{
101
+ event_id: z.ZodUUID;
102
+ event_name: z.ZodString;
103
+ description: z.ZodOptional<z.ZodString>;
104
+ timestamp: z.ZodISODateTime;
105
+ participant_id: z.ZodUUID;
106
+ location_id: z.ZodUUID;
107
+ weight: z.ZodOptional<z.ZodNumber>;
108
+ attributes: z.ZodOptional<z.ZodArray<z.ZodObject<{
109
+ name: z.ZodString;
110
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
111
+ format: z.ZodOptional<z.ZodEnum<{
112
+ KILOGRAM: "KILOGRAM";
113
+ DATE: "DATE";
114
+ CURRENCY: "CURRENCY";
115
+ PERCENTAGE: "PERCENTAGE";
116
+ COORDINATE: "COORDINATE";
117
+ }>>;
118
+ }, z.core.$strict>>>;
119
+ documentation: z.ZodOptional<z.ZodArray<z.ZodObject<{
120
+ type: z.ZodString;
121
+ document_number: z.ZodOptional<z.ZodString>;
122
+ reference: z.ZodString;
123
+ issue_date: z.ZodOptional<z.ZodISODate>;
124
+ issuer: z.ZodOptional<z.ZodString>;
125
+ }, z.core.$strict>>>;
126
+ notes: z.ZodOptional<z.ZodString>;
127
+ }, z.core.$strict>>;
128
+ total_distance_km: z.ZodNumber;
129
+ total_duration_hours: z.ZodNumber;
130
+ }, z.core.$strict>;
131
+ type MassIDChainOfCustody = z.infer<typeof MassIDChainOfCustodySchema>;
132
+ declare const MassIDTransportRouteSchema: z.ZodObject<{
133
+ from_location_id: z.ZodUUID;
134
+ to_location_id: z.ZodUUID;
135
+ distance_km: z.ZodNumber;
136
+ transport_method: z.ZodString;
137
+ duration_hours: z.ZodNumber;
138
+ }, z.core.$strict>;
139
+ type MassIDTransportRoute = z.infer<typeof MassIDTransportRouteSchema>;
140
+ declare const MassIDGeographicDataSchema: z.ZodObject<{
141
+ origin_location_id: z.ZodUUID;
142
+ processing_location_ids: z.ZodOptional<z.ZodArray<z.ZodUUID>>;
143
+ final_destination_id: z.ZodUUID;
144
+ transport_routes: z.ZodArray<z.ZodObject<{
145
+ from_location_id: z.ZodUUID;
146
+ to_location_id: z.ZodUUID;
147
+ distance_km: z.ZodNumber;
148
+ transport_method: z.ZodString;
149
+ duration_hours: z.ZodNumber;
150
+ }, z.core.$strict>>;
151
+ }, z.core.$strict>;
152
+ type MassIDGeographicData = z.infer<typeof MassIDGeographicDataSchema>;
153
+ declare const MassIDDataSchema: z.ZodObject<{
154
+ waste_classification: z.ZodObject<{
155
+ primary_type: z.ZodString;
156
+ subtype: z.ZodString;
157
+ local_classification: z.ZodOptional<z.ZodObject<{
158
+ code: z.ZodString;
159
+ description: z.ZodString;
160
+ system: z.ZodString;
161
+ }, z.core.$strict>>;
162
+ measurement_unit: z.ZodEnum<{
163
+ kg: "kg";
164
+ ton: "ton";
165
+ }>;
166
+ net_weight: z.ZodNumber;
167
+ contamination_level: z.ZodOptional<z.ZodEnum<{
168
+ None: "None";
169
+ Low: "Low";
170
+ Medium: "Medium";
171
+ High: "High";
172
+ }>>;
173
+ }, z.core.$strict>;
174
+ locations: z.ZodArray<z.ZodObject<{
175
+ id: z.ZodUUID;
176
+ municipality: z.ZodString;
177
+ administrative_division: z.ZodString;
178
+ administrative_division_code: z.ZodOptional<z.ZodString>;
179
+ country: z.ZodString;
180
+ country_code: z.ZodString;
181
+ responsible_participant_id: z.ZodUUID;
182
+ coordinates: z.ZodObject<{
183
+ latitude: z.ZodNumber;
184
+ longitude: z.ZodNumber;
185
+ precision_level: z.ZodEnum<{
186
+ exact: "exact";
187
+ neighborhood: "neighborhood";
188
+ city: "city";
189
+ region: "region";
190
+ country: "country";
191
+ }>;
192
+ }, z.core.$strict>;
193
+ facility_type: z.ZodOptional<z.ZodEnum<{
194
+ "Waste Generation": "Waste Generation";
195
+ "Collection Point": "Collection Point";
196
+ "Transfer Station": "Transfer Station";
197
+ "Sorting Facility": "Sorting Facility";
198
+ "Composting Facility": "Composting Facility";
199
+ "Recycling Facility": "Recycling Facility";
200
+ "Processing Facility": "Processing Facility";
201
+ "Disposal Facility": "Disposal Facility";
202
+ "Administrative Office": "Administrative Office";
203
+ }>>;
204
+ }, z.core.$strict>>;
205
+ participants: z.ZodArray<z.ZodObject<{
206
+ id: z.ZodUUID;
207
+ name: z.ZodString;
208
+ roles: z.ZodArray<z.ZodString>;
209
+ }, z.core.$strict>>;
210
+ chain_of_custody: z.ZodObject<{
211
+ events: z.ZodArray<z.ZodObject<{
212
+ event_id: z.ZodUUID;
213
+ event_name: z.ZodString;
214
+ description: z.ZodOptional<z.ZodString>;
215
+ timestamp: z.ZodISODateTime;
216
+ participant_id: z.ZodUUID;
217
+ location_id: z.ZodUUID;
218
+ weight: z.ZodOptional<z.ZodNumber>;
219
+ attributes: z.ZodOptional<z.ZodArray<z.ZodObject<{
220
+ name: z.ZodString;
221
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
222
+ format: z.ZodOptional<z.ZodEnum<{
223
+ KILOGRAM: "KILOGRAM";
224
+ DATE: "DATE";
225
+ CURRENCY: "CURRENCY";
226
+ PERCENTAGE: "PERCENTAGE";
227
+ COORDINATE: "COORDINATE";
228
+ }>>;
229
+ }, z.core.$strict>>>;
230
+ documentation: z.ZodOptional<z.ZodArray<z.ZodObject<{
231
+ type: z.ZodString;
232
+ document_number: z.ZodOptional<z.ZodString>;
233
+ reference: z.ZodString;
234
+ issue_date: z.ZodOptional<z.ZodISODate>;
235
+ issuer: z.ZodOptional<z.ZodString>;
236
+ }, z.core.$strict>>>;
237
+ notes: z.ZodOptional<z.ZodString>;
238
+ }, z.core.$strict>>;
239
+ total_distance_km: z.ZodNumber;
240
+ total_duration_hours: z.ZodNumber;
241
+ }, z.core.$strict>;
242
+ geographic_data: z.ZodObject<{
243
+ origin_location_id: z.ZodUUID;
244
+ processing_location_ids: z.ZodOptional<z.ZodArray<z.ZodUUID>>;
245
+ final_destination_id: z.ZodUUID;
246
+ transport_routes: z.ZodArray<z.ZodObject<{
247
+ from_location_id: z.ZodUUID;
248
+ to_location_id: z.ZodUUID;
249
+ distance_km: z.ZodNumber;
250
+ transport_method: z.ZodString;
251
+ duration_hours: z.ZodNumber;
252
+ }, z.core.$strict>>;
253
+ }, z.core.$strict>;
254
+ }, z.core.$strict>;
255
+ type MassIDData = z.infer<typeof MassIDDataSchema>;
256
+
257
+ declare const AttributeWasteTypeSchema: z.ZodObject<{
258
+ trait_type: z.ZodLiteral<"Waste Type">;
259
+ value: z.ZodString;
260
+ }, z.core.$strict>;
261
+ type AttributeWasteType = z.infer<typeof AttributeWasteTypeSchema>;
262
+ declare const AttributeWasteSubtypeSchema: z.ZodObject<{
263
+ trait_type: z.ZodLiteral<"Waste Subtype">;
264
+ value: z.ZodString;
265
+ }, z.core.$strict>;
266
+ type AttributeWasteSubtype = z.infer<typeof AttributeWasteSubtypeSchema>;
267
+ declare const AttributeWeightSchema: z.ZodObject<{
268
+ trait_type: z.ZodLiteral<"Weight (kg)">;
269
+ value: z.ZodNumber;
270
+ display_type: z.ZodLiteral<"number">;
271
+ }, z.core.$strict>;
272
+ type AttributeWeight = z.infer<typeof AttributeWeightSchema>;
273
+ declare const AttributeOriginCountrySchema: z.ZodObject<{
274
+ trait_type: z.ZodLiteral<"Origin Country">;
275
+ value: z.ZodString;
276
+ }, z.core.$strict>;
277
+ type AttributeOriginCountry = z.infer<typeof AttributeOriginCountrySchema>;
278
+ declare const AttributeOriginMunicipalitySchema: z.ZodObject<{
279
+ trait_type: z.ZodLiteral<"Origin Municipality">;
280
+ value: z.ZodString;
281
+ }, z.core.$strict>;
282
+ type AttributeOriginMunicipality = z.infer<typeof AttributeOriginMunicipalitySchema>;
283
+ declare const AttributeOriginDivisionSchema: z.ZodObject<{
284
+ trait_type: z.ZodLiteral<"Origin Administrative Division">;
285
+ value: z.ZodString;
286
+ }, z.core.$strict>;
287
+ type AttributeOriginDivision = z.infer<typeof AttributeOriginDivisionSchema>;
288
+ declare const AttributeRecyclerSchema: z.ZodObject<{
289
+ trait_type: z.ZodLiteral<"Recycler">;
290
+ value: z.ZodString;
291
+ }, z.core.$strict>;
292
+ type AttributeRecycler = z.infer<typeof AttributeRecyclerSchema>;
293
+ declare const AttributeIntegratorSchema: z.ZodObject<{
294
+ trait_type: z.ZodLiteral<"Integrator">;
295
+ value: z.ZodString;
296
+ }, z.core.$strict>;
297
+ type AttributeIntegrator = z.infer<typeof AttributeIntegratorSchema>;
298
+ declare const AttributePickUpDateSchema: z.ZodObject<{
299
+ trait_type: z.ZodLiteral<"Pick-up Date">;
300
+ value: z.ZodString;
301
+ display_type: z.ZodLiteral<"date">;
302
+ }, z.core.$strict>;
303
+ type AttributePickUpDate = z.infer<typeof AttributePickUpDateSchema>;
304
+ declare const AttributeRecyclingDateSchema: z.ZodObject<{
305
+ trait_type: z.ZodLiteral<"Recycling Date">;
306
+ value: z.ZodString;
307
+ display_type: z.ZodLiteral<"date">;
308
+ }, z.core.$strict>;
309
+ type AttributeRecyclingDate = z.infer<typeof AttributeRecyclingDateSchema>;
310
+ declare const MassIDAttributesSchema: z.ZodTuple<[z.ZodObject<{
311
+ trait_type: z.ZodLiteral<"Waste Type">;
312
+ value: z.ZodString;
313
+ }, z.core.$strict>, z.ZodObject<{
314
+ trait_type: z.ZodLiteral<"Waste Subtype">;
315
+ value: z.ZodString;
316
+ }, z.core.$strict>, z.ZodObject<{
317
+ trait_type: z.ZodLiteral<"Weight (kg)">;
318
+ value: z.ZodNumber;
319
+ display_type: z.ZodLiteral<"number">;
320
+ }, z.core.$strict>, z.ZodObject<{
321
+ trait_type: z.ZodLiteral<"Origin Country">;
322
+ value: z.ZodString;
323
+ }, z.core.$strict>, z.ZodObject<{
324
+ trait_type: z.ZodLiteral<"Origin Municipality">;
325
+ value: z.ZodString;
326
+ }, z.core.$strict>, z.ZodObject<{
327
+ trait_type: z.ZodLiteral<"Origin Administrative Division">;
328
+ value: z.ZodString;
329
+ }, z.core.$strict>, z.ZodObject<{
330
+ trait_type: z.ZodLiteral<"Recycler">;
331
+ value: z.ZodString;
332
+ }, z.core.$strict>, z.ZodObject<{
333
+ trait_type: z.ZodLiteral<"Integrator">;
334
+ value: z.ZodString;
335
+ }, z.core.$strict>, z.ZodObject<{
336
+ trait_type: z.ZodLiteral<"Pick-up Date">;
337
+ value: z.ZodString;
338
+ display_type: z.ZodLiteral<"date">;
339
+ }, z.core.$strict>, z.ZodObject<{
340
+ trait_type: z.ZodLiteral<"Recycling Date">;
341
+ value: z.ZodString;
342
+ display_type: z.ZodLiteral<"date">;
343
+ }, z.core.$strict>], null>;
344
+ type MassIDAttributes = z.infer<typeof MassIDAttributesSchema>;
345
+ declare const MassIDIpfsSchemaMeta: {
346
+ readonly title: "MassID NFT IPFS Record";
347
+ readonly description: "Complete MassID NFT IPFS record including fixed attributes and detailed waste tracking data";
348
+ readonly $id: "https://raw.githubusercontent.com/carrot-foundation/schemas/refs/heads/main/schemas/ipfs/mass-id/mass-id.schema.json";
349
+ readonly version: "1.0.1";
350
+ };
351
+ declare const MassIDIpfsSchema: z.ZodObject<{
352
+ $schema: z.ZodURL;
353
+ created_at: z.ZodISODateTime;
354
+ external_id: z.ZodUUID;
355
+ external_url: z.ZodURL;
356
+ original_content_hash: z.ZodCustomStringFormat<"sha256_hex">;
357
+ content_hash: z.ZodCustomStringFormat<"sha256_hex">;
358
+ creator: z.ZodOptional<z.ZodObject<{
359
+ name: z.ZodString;
360
+ id: z.ZodUUID;
361
+ }, z.core.$strict>>;
362
+ relationships: z.ZodOptional<z.ZodArray<z.ZodObject<{
363
+ target_uri: z.ZodString;
364
+ type: z.ZodEnum<{
365
+ collection: "collection";
366
+ credit: "credit";
367
+ "gas-id": "gas-id";
368
+ "mass-id": "mass-id";
369
+ "mass-id-audit": "mass-id-audit";
370
+ methodology: "methodology";
371
+ "purchase-id": "purchase-id";
372
+ "recycled-id": "recycled-id";
373
+ }>;
374
+ description: z.ZodOptional<z.ZodString>;
375
+ }, z.core.$strict>>>;
376
+ environment: z.ZodOptional<z.ZodObject<{
377
+ blockchain_network: z.ZodEnum<{
378
+ mainnet: "mainnet";
379
+ testnet: "testnet";
380
+ }>;
381
+ deployment: z.ZodEnum<{
382
+ production: "production";
383
+ development: "development";
384
+ testing: "testing";
385
+ }>;
386
+ data_set_name: z.ZodEnum<{
387
+ TEST: "TEST";
388
+ PROD: "PROD";
389
+ }>;
390
+ }, z.core.$strict>>;
391
+ blockchain: z.ZodObject<{
392
+ smart_contract_address: z.ZodString;
393
+ chain_id: z.ZodNumber;
394
+ network_name: z.ZodString;
395
+ token_id: z.ZodString;
396
+ }, z.core.$strict>;
397
+ name: z.ZodString;
398
+ short_name: z.ZodString;
399
+ description: z.ZodString;
400
+ image: z.ZodString;
401
+ background_color: z.ZodOptional<z.ZodString>;
402
+ animation_url: z.ZodOptional<z.ZodString>;
403
+ external_links: z.ZodOptional<z.ZodArray<z.ZodObject<{
404
+ label: z.ZodString;
405
+ url: z.ZodURL;
406
+ description: z.ZodOptional<z.ZodString>;
407
+ }, z.core.$strict>>>;
408
+ schema: z.ZodObject<{
409
+ hash: z.ZodCustomStringFormat<"sha256_hex">;
410
+ version: z.ZodString;
411
+ type: z.ZodLiteral<"MassID">;
412
+ }, z.core.$strict>;
413
+ attributes: z.ZodTuple<[z.ZodObject<{
414
+ trait_type: z.ZodLiteral<"Waste Type">;
415
+ value: z.ZodString;
416
+ }, z.core.$strict>, z.ZodObject<{
417
+ trait_type: z.ZodLiteral<"Waste Subtype">;
418
+ value: z.ZodString;
419
+ }, z.core.$strict>, z.ZodObject<{
420
+ trait_type: z.ZodLiteral<"Weight (kg)">;
421
+ value: z.ZodNumber;
422
+ display_type: z.ZodLiteral<"number">;
423
+ }, z.core.$strict>, z.ZodObject<{
424
+ trait_type: z.ZodLiteral<"Origin Country">;
425
+ value: z.ZodString;
426
+ }, z.core.$strict>, z.ZodObject<{
427
+ trait_type: z.ZodLiteral<"Origin Municipality">;
428
+ value: z.ZodString;
429
+ }, z.core.$strict>, z.ZodObject<{
430
+ trait_type: z.ZodLiteral<"Origin Administrative Division">;
431
+ value: z.ZodString;
432
+ }, z.core.$strict>, z.ZodObject<{
433
+ trait_type: z.ZodLiteral<"Recycler">;
434
+ value: z.ZodString;
435
+ }, z.core.$strict>, z.ZodObject<{
436
+ trait_type: z.ZodLiteral<"Integrator">;
437
+ value: z.ZodString;
438
+ }, z.core.$strict>, z.ZodObject<{
439
+ trait_type: z.ZodLiteral<"Pick-up Date">;
440
+ value: z.ZodString;
441
+ display_type: z.ZodLiteral<"date">;
442
+ }, z.core.$strict>, z.ZodObject<{
443
+ trait_type: z.ZodLiteral<"Recycling Date">;
444
+ value: z.ZodString;
445
+ display_type: z.ZodLiteral<"date">;
446
+ }, z.core.$strict>], null>;
447
+ data: z.ZodObject<{
448
+ waste_classification: z.ZodObject<{
449
+ primary_type: z.ZodString;
450
+ subtype: z.ZodString;
451
+ local_classification: z.ZodOptional<z.ZodObject<{
452
+ code: z.ZodString;
453
+ description: z.ZodString;
454
+ system: z.ZodString;
455
+ }, z.core.$strict>>;
456
+ measurement_unit: z.ZodEnum<{
457
+ kg: "kg";
458
+ ton: "ton";
459
+ }>;
460
+ net_weight: z.ZodNumber;
461
+ contamination_level: z.ZodOptional<z.ZodEnum<{
462
+ None: "None";
463
+ Low: "Low";
464
+ Medium: "Medium";
465
+ High: "High";
466
+ }>>;
467
+ }, z.core.$strict>;
468
+ locations: z.ZodArray<z.ZodObject<{
469
+ id: z.ZodUUID;
470
+ municipality: z.ZodString;
471
+ administrative_division: z.ZodString;
472
+ administrative_division_code: z.ZodOptional<z.ZodString>;
473
+ country: z.ZodString;
474
+ country_code: z.ZodString;
475
+ responsible_participant_id: z.ZodUUID;
476
+ coordinates: z.ZodObject<{
477
+ latitude: z.ZodNumber;
478
+ longitude: z.ZodNumber;
479
+ precision_level: z.ZodEnum<{
480
+ exact: "exact";
481
+ neighborhood: "neighborhood";
482
+ city: "city";
483
+ region: "region";
484
+ country: "country";
485
+ }>;
486
+ }, z.core.$strict>;
487
+ facility_type: z.ZodOptional<z.ZodEnum<{
488
+ "Waste Generation": "Waste Generation";
489
+ "Collection Point": "Collection Point";
490
+ "Transfer Station": "Transfer Station";
491
+ "Sorting Facility": "Sorting Facility";
492
+ "Composting Facility": "Composting Facility";
493
+ "Recycling Facility": "Recycling Facility";
494
+ "Processing Facility": "Processing Facility";
495
+ "Disposal Facility": "Disposal Facility";
496
+ "Administrative Office": "Administrative Office";
497
+ }>>;
498
+ }, z.core.$strict>>;
499
+ participants: z.ZodArray<z.ZodObject<{
500
+ id: z.ZodUUID;
501
+ name: z.ZodString;
502
+ roles: z.ZodArray<z.ZodString>;
503
+ }, z.core.$strict>>;
504
+ chain_of_custody: z.ZodObject<{
505
+ events: z.ZodArray<z.ZodObject<{
506
+ event_id: z.ZodUUID;
507
+ event_name: z.ZodString;
508
+ description: z.ZodOptional<z.ZodString>;
509
+ timestamp: z.ZodISODateTime;
510
+ participant_id: z.ZodUUID;
511
+ location_id: z.ZodUUID;
512
+ weight: z.ZodOptional<z.ZodNumber>;
513
+ attributes: z.ZodOptional<z.ZodArray<z.ZodObject<{
514
+ name: z.ZodString;
515
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>;
516
+ format: z.ZodOptional<z.ZodEnum<{
517
+ KILOGRAM: "KILOGRAM";
518
+ DATE: "DATE";
519
+ CURRENCY: "CURRENCY";
520
+ PERCENTAGE: "PERCENTAGE";
521
+ COORDINATE: "COORDINATE";
522
+ }>>;
523
+ }, z.core.$strict>>>;
524
+ documentation: z.ZodOptional<z.ZodArray<z.ZodObject<{
525
+ type: z.ZodString;
526
+ document_number: z.ZodOptional<z.ZodString>;
527
+ reference: z.ZodString;
528
+ issue_date: z.ZodOptional<z.ZodISODate>;
529
+ issuer: z.ZodOptional<z.ZodString>;
530
+ }, z.core.$strict>>>;
531
+ notes: z.ZodOptional<z.ZodString>;
532
+ }, z.core.$strict>>;
533
+ total_distance_km: z.ZodNumber;
534
+ total_duration_hours: z.ZodNumber;
535
+ }, z.core.$strict>;
536
+ geographic_data: z.ZodObject<{
537
+ origin_location_id: z.ZodUUID;
538
+ processing_location_ids: z.ZodOptional<z.ZodArray<z.ZodUUID>>;
539
+ final_destination_id: z.ZodUUID;
540
+ transport_routes: z.ZodArray<z.ZodObject<{
541
+ from_location_id: z.ZodUUID;
542
+ to_location_id: z.ZodUUID;
543
+ distance_km: z.ZodNumber;
544
+ transport_method: z.ZodString;
545
+ duration_hours: z.ZodNumber;
546
+ }, z.core.$strict>>;
547
+ }, z.core.$strict>;
548
+ }, z.core.$strict>;
549
+ }, z.core.$strict>;
550
+ type MassIDIpfs = z.infer<typeof MassIDIpfsSchema>;
551
+
552
+ export { type AttributeIntegrator, type AttributeOriginCountry, type AttributeOriginDivision, type AttributeOriginMunicipality, type AttributePickUpDate, type AttributeRecycler, type AttributeRecyclingDate, type AttributeWasteSubtype, type AttributeWasteType, type AttributeWeight, type ContaminationLevel, type EventAttribute, type EventAttributeFormat, type EventDocumentation, type MassIDAttributes, type MassIDChainOfCustody, type MassIDChainOfCustodyEvent, type MassIDData, MassIDDataSchema, type MassIDGeographicData, type MassIDIpfs, MassIDIpfsSchema, MassIDIpfsSchemaMeta, type MassIDLocalClassification, type MassIDMeasurementUnit, type MassIDTransportRoute, type MassIDWasteClassification };