@pg-atlas/data-sdk 0.4.0

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 (39) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +64 -0
  3. package/dist/generated/client/client.gen.d.ts +2 -0
  4. package/dist/generated/client/client.gen.js +235 -0
  5. package/dist/generated/client/index.d.ts +8 -0
  6. package/dist/generated/client/index.js +6 -0
  7. package/dist/generated/client/types.gen.d.ts +117 -0
  8. package/dist/generated/client/types.gen.js +2 -0
  9. package/dist/generated/client/utils.gen.d.ts +33 -0
  10. package/dist/generated/client/utils.gen.js +228 -0
  11. package/dist/generated/client.gen.d.ts +12 -0
  12. package/dist/generated/client.gen.js +3 -0
  13. package/dist/generated/core/auth.gen.d.ts +18 -0
  14. package/dist/generated/core/auth.gen.js +14 -0
  15. package/dist/generated/core/bodySerializer.gen.d.ts +25 -0
  16. package/dist/generated/core/bodySerializer.gen.js +57 -0
  17. package/dist/generated/core/params.gen.d.ts +43 -0
  18. package/dist/generated/core/params.gen.js +100 -0
  19. package/dist/generated/core/pathSerializer.gen.d.ts +33 -0
  20. package/dist/generated/core/pathSerializer.gen.js +106 -0
  21. package/dist/generated/core/queryKeySerializer.gen.d.ts +18 -0
  22. package/dist/generated/core/queryKeySerializer.gen.js +92 -0
  23. package/dist/generated/core/serverSentEvents.gen.d.ts +71 -0
  24. package/dist/generated/core/serverSentEvents.gen.js +133 -0
  25. package/dist/generated/core/types.gen.d.ts +78 -0
  26. package/dist/generated/core/types.gen.js +2 -0
  27. package/dist/generated/core/utils.gen.d.ts +19 -0
  28. package/dist/generated/core/utils.gen.js +87 -0
  29. package/dist/generated/index.d.ts +2 -0
  30. package/dist/generated/index.js +2 -0
  31. package/dist/generated/schemas.gen.d.ts +1015 -0
  32. package/dist/generated/schemas.gen.js +1338 -0
  33. package/dist/generated/sdk.gen.d.ts +146 -0
  34. package/dist/generated/sdk.gen.js +133 -0
  35. package/dist/generated/types.gen.d.ts +1172 -0
  36. package/dist/generated/types.gen.js +2 -0
  37. package/dist/index.d.ts +6 -0
  38. package/dist/index.js +7 -0
  39. package/package.json +44 -0
@@ -0,0 +1,1015 @@
1
+ export declare const VisibilitySchema: {
2
+ readonly type: "string";
3
+ readonly enum: readonly ["public", "private"];
4
+ readonly title: "Visibility";
5
+ readonly description: "Whether a Repo is publicly accessible (affects data collection scope).";
6
+ };
7
+ export declare const ValidationErrorSchema: {
8
+ readonly properties: {
9
+ readonly loc: {
10
+ readonly items: {
11
+ readonly anyOf: readonly [{
12
+ readonly type: "string";
13
+ }, {
14
+ readonly type: "integer";
15
+ }];
16
+ };
17
+ readonly type: "array";
18
+ readonly title: "Location";
19
+ };
20
+ readonly msg: {
21
+ readonly type: "string";
22
+ readonly title: "Message";
23
+ };
24
+ readonly type: {
25
+ readonly type: "string";
26
+ readonly title: "Error Type";
27
+ };
28
+ readonly input: {
29
+ readonly title: "Input";
30
+ };
31
+ readonly ctx: {
32
+ readonly type: "object";
33
+ readonly title: "Context";
34
+ };
35
+ };
36
+ readonly type: "object";
37
+ readonly required: readonly ["loc", "msg", "type"];
38
+ readonly title: "ValidationError";
39
+ };
40
+ export declare const SubmissionStatusSchema: {
41
+ readonly type: "string";
42
+ readonly enum: readonly ["pending", "processed", "failed"];
43
+ readonly title: "SubmissionStatus";
44
+ readonly description: "Processing state of an SbomSubmission record.";
45
+ };
46
+ export declare const ScfSubmissionSchema: {
47
+ readonly properties: {
48
+ readonly round: {
49
+ readonly type: "string";
50
+ readonly title: "Round";
51
+ };
52
+ readonly title: {
53
+ readonly type: "string";
54
+ readonly title: "Title";
55
+ };
56
+ };
57
+ readonly type: "object";
58
+ readonly required: readonly ["round", "title"];
59
+ readonly title: "ScfSubmission";
60
+ readonly description: "A single SCF funding round submission.";
61
+ };
62
+ export declare const SbomSubmissionResponseSchema: {
63
+ readonly properties: {
64
+ readonly id: {
65
+ readonly type: "integer";
66
+ readonly title: "Id";
67
+ };
68
+ readonly repository_claim: {
69
+ readonly type: "string";
70
+ readonly title: "Repository Claim";
71
+ };
72
+ readonly actor_claim: {
73
+ readonly type: "string";
74
+ readonly title: "Actor Claim";
75
+ };
76
+ readonly sbom_content_hash: {
77
+ readonly type: "string";
78
+ readonly title: "Sbom Content Hash";
79
+ };
80
+ readonly artifact_path: {
81
+ readonly type: "string";
82
+ readonly title: "Artifact Path";
83
+ };
84
+ readonly status: {
85
+ readonly $ref: "#/components/schemas/SubmissionStatus";
86
+ };
87
+ readonly error_detail: {
88
+ readonly anyOf: readonly [{
89
+ readonly type: "string";
90
+ }, {
91
+ readonly type: "null";
92
+ }];
93
+ readonly title: "Error Detail";
94
+ };
95
+ readonly submitted_at: {
96
+ readonly type: "string";
97
+ readonly format: "date-time";
98
+ readonly title: "Submitted At";
99
+ };
100
+ readonly processed_at: {
101
+ readonly anyOf: readonly [{
102
+ readonly type: "string";
103
+ readonly format: "date-time";
104
+ }, {
105
+ readonly type: "null";
106
+ }];
107
+ readonly title: "Processed At";
108
+ };
109
+ };
110
+ readonly type: "object";
111
+ readonly required: readonly ["id", "repository_claim", "actor_claim", "sbom_content_hash", "artifact_path", "status", "error_detail", "submitted_at", "processed_at"];
112
+ readonly title: "SbomSubmissionResponse";
113
+ readonly description: "Full SBOM submission record.\n\nSerialised from the ``SbomSubmission`` ORM model. The ``sbom_content_hash``\nfield is the SHA-256 hex digest of the raw submitted payload.";
114
+ };
115
+ export declare const SbomSubmissionListResponseSchema: {
116
+ readonly properties: {
117
+ readonly items: {
118
+ readonly items: {
119
+ readonly $ref: "#/components/schemas/SbomSubmissionResponse";
120
+ };
121
+ readonly type: "array";
122
+ readonly title: "Items";
123
+ };
124
+ readonly total: {
125
+ readonly type: "integer";
126
+ readonly title: "Total";
127
+ };
128
+ readonly limit: {
129
+ readonly type: "integer";
130
+ readonly title: "Limit";
131
+ };
132
+ readonly offset: {
133
+ readonly type: "integer";
134
+ readonly title: "Offset";
135
+ };
136
+ };
137
+ readonly type: "object";
138
+ readonly required: readonly ["items", "total", "limit", "offset"];
139
+ readonly title: "SbomSubmissionListResponse";
140
+ readonly description: "Paginated list of SBOM submission records.\n\nReturned by the list endpoint with ``total`` reflecting the count after\nany ``repository`` filter has been applied.";
141
+ };
142
+ export declare const SbomSubmissionDetailResponseSchema: {
143
+ readonly properties: {
144
+ readonly id: {
145
+ readonly type: "integer";
146
+ readonly title: "Id";
147
+ };
148
+ readonly repository_claim: {
149
+ readonly type: "string";
150
+ readonly title: "Repository Claim";
151
+ };
152
+ readonly actor_claim: {
153
+ readonly type: "string";
154
+ readonly title: "Actor Claim";
155
+ };
156
+ readonly sbom_content_hash: {
157
+ readonly type: "string";
158
+ readonly title: "Sbom Content Hash";
159
+ };
160
+ readonly artifact_path: {
161
+ readonly type: "string";
162
+ readonly title: "Artifact Path";
163
+ };
164
+ readonly status: {
165
+ readonly $ref: "#/components/schemas/SubmissionStatus";
166
+ };
167
+ readonly error_detail: {
168
+ readonly anyOf: readonly [{
169
+ readonly type: "string";
170
+ }, {
171
+ readonly type: "null";
172
+ }];
173
+ readonly title: "Error Detail";
174
+ };
175
+ readonly submitted_at: {
176
+ readonly type: "string";
177
+ readonly format: "date-time";
178
+ readonly title: "Submitted At";
179
+ };
180
+ readonly processed_at: {
181
+ readonly anyOf: readonly [{
182
+ readonly type: "string";
183
+ readonly format: "date-time";
184
+ }, {
185
+ readonly type: "null";
186
+ }];
187
+ readonly title: "Processed At";
188
+ };
189
+ readonly raw_artifact: {
190
+ readonly anyOf: readonly [{
191
+ readonly type: "string";
192
+ }, {
193
+ readonly type: "null";
194
+ }];
195
+ readonly title: "Raw Artifact";
196
+ };
197
+ };
198
+ readonly type: "object";
199
+ readonly required: readonly ["id", "repository_claim", "actor_claim", "sbom_content_hash", "artifact_path", "status", "error_detail", "submitted_at", "processed_at"];
200
+ readonly title: "SbomSubmissionDetailResponse";
201
+ readonly description: "Extended SBOM submission record with the raw artifact content.\n\nReturned by the detail endpoint. ``raw_artifact`` contains the full JSON\ntext of the stored SBOM, or ``None`` if the artifact file is missing from\nthe store.";
202
+ };
203
+ export declare const SbomAcceptedResponseSchema: {
204
+ readonly properties: {
205
+ readonly message: {
206
+ readonly type: "string";
207
+ readonly title: "Message";
208
+ };
209
+ readonly repository: {
210
+ readonly type: "string";
211
+ readonly title: "Repository";
212
+ };
213
+ readonly package_count: {
214
+ readonly type: "integer";
215
+ readonly title: "Package Count";
216
+ };
217
+ };
218
+ readonly type: "object";
219
+ readonly required: readonly ["message", "repository", "package_count"];
220
+ readonly title: "SbomAcceptedResponse";
221
+ readonly description: "Response body returned on successful SBOM submission (202 Accepted).";
222
+ };
223
+ export declare const RepoVertexTypeSchema: {
224
+ readonly type: "string";
225
+ readonly enum: readonly ["repo", "external-repo"];
226
+ readonly title: "RepoVertexType";
227
+ readonly description: "Discriminator values for the RepoVertex joined-table-inheritance hierarchy.";
228
+ };
229
+ export declare const RepoSummarySchema: {
230
+ readonly properties: {
231
+ readonly canonical_id: {
232
+ readonly type: "string";
233
+ readonly title: "Canonical Id";
234
+ };
235
+ readonly display_name: {
236
+ readonly type: "string";
237
+ readonly title: "Display Name";
238
+ };
239
+ readonly visibility: {
240
+ readonly $ref: "#/components/schemas/Visibility";
241
+ };
242
+ readonly latest_version: {
243
+ readonly type: "string";
244
+ readonly title: "Latest Version";
245
+ };
246
+ readonly latest_commit_date: {
247
+ readonly anyOf: readonly [{
248
+ readonly type: "string";
249
+ readonly format: "date-time";
250
+ }, {
251
+ readonly type: "null";
252
+ }];
253
+ readonly title: "Latest Commit Date";
254
+ };
255
+ readonly repo_url: {
256
+ readonly anyOf: readonly [{
257
+ readonly type: "string";
258
+ }, {
259
+ readonly type: "null";
260
+ }];
261
+ readonly title: "Repo Url";
262
+ };
263
+ readonly project_id: {
264
+ readonly anyOf: readonly [{
265
+ readonly type: "integer";
266
+ }, {
267
+ readonly type: "null";
268
+ }];
269
+ readonly title: "Project Id";
270
+ };
271
+ readonly pony_factor: {
272
+ readonly anyOf: readonly [{
273
+ readonly type: "integer";
274
+ }, {
275
+ readonly type: "null";
276
+ }];
277
+ readonly title: "Pony Factor";
278
+ };
279
+ readonly criticality_score: {
280
+ readonly anyOf: readonly [{
281
+ readonly type: "integer";
282
+ }, {
283
+ readonly type: "null";
284
+ }];
285
+ readonly title: "Criticality Score";
286
+ };
287
+ readonly adoption_downloads: {
288
+ readonly anyOf: readonly [{
289
+ readonly type: "integer";
290
+ }, {
291
+ readonly type: "null";
292
+ }];
293
+ readonly title: "Adoption Downloads";
294
+ };
295
+ readonly adoption_stars: {
296
+ readonly anyOf: readonly [{
297
+ readonly type: "integer";
298
+ }, {
299
+ readonly type: "null";
300
+ }];
301
+ readonly title: "Adoption Stars";
302
+ };
303
+ readonly adoption_forks: {
304
+ readonly anyOf: readonly [{
305
+ readonly type: "integer";
306
+ }, {
307
+ readonly type: "null";
308
+ }];
309
+ readonly title: "Adoption Forks";
310
+ };
311
+ readonly updated_at: {
312
+ readonly type: "string";
313
+ readonly format: "date-time";
314
+ readonly title: "Updated At";
315
+ };
316
+ };
317
+ readonly type: "object";
318
+ readonly required: readonly ["canonical_id", "display_name", "visibility", "latest_version", "latest_commit_date", "repo_url", "project_id", "pony_factor", "criticality_score", "adoption_downloads", "adoption_stars", "adoption_forks", "updated_at"];
319
+ readonly title: "RepoSummary";
320
+ readonly description: "Compact repo representation used in list endpoints and as an embedded\nreference in project detail responses.";
321
+ };
322
+ export declare const RepoDetailResponseSchema: {
323
+ readonly properties: {
324
+ readonly canonical_id: {
325
+ readonly type: "string";
326
+ readonly title: "Canonical Id";
327
+ };
328
+ readonly display_name: {
329
+ readonly type: "string";
330
+ readonly title: "Display Name";
331
+ };
332
+ readonly visibility: {
333
+ readonly $ref: "#/components/schemas/Visibility";
334
+ };
335
+ readonly latest_version: {
336
+ readonly type: "string";
337
+ readonly title: "Latest Version";
338
+ };
339
+ readonly latest_commit_date: {
340
+ readonly anyOf: readonly [{
341
+ readonly type: "string";
342
+ readonly format: "date-time";
343
+ }, {
344
+ readonly type: "null";
345
+ }];
346
+ readonly title: "Latest Commit Date";
347
+ };
348
+ readonly repo_url: {
349
+ readonly anyOf: readonly [{
350
+ readonly type: "string";
351
+ }, {
352
+ readonly type: "null";
353
+ }];
354
+ readonly title: "Repo Url";
355
+ };
356
+ readonly project_id: {
357
+ readonly anyOf: readonly [{
358
+ readonly type: "integer";
359
+ }, {
360
+ readonly type: "null";
361
+ }];
362
+ readonly title: "Project Id";
363
+ };
364
+ readonly pony_factor: {
365
+ readonly anyOf: readonly [{
366
+ readonly type: "integer";
367
+ }, {
368
+ readonly type: "null";
369
+ }];
370
+ readonly title: "Pony Factor";
371
+ };
372
+ readonly criticality_score: {
373
+ readonly anyOf: readonly [{
374
+ readonly type: "integer";
375
+ }, {
376
+ readonly type: "null";
377
+ }];
378
+ readonly title: "Criticality Score";
379
+ };
380
+ readonly adoption_downloads: {
381
+ readonly anyOf: readonly [{
382
+ readonly type: "integer";
383
+ }, {
384
+ readonly type: "null";
385
+ }];
386
+ readonly title: "Adoption Downloads";
387
+ };
388
+ readonly adoption_stars: {
389
+ readonly anyOf: readonly [{
390
+ readonly type: "integer";
391
+ }, {
392
+ readonly type: "null";
393
+ }];
394
+ readonly title: "Adoption Stars";
395
+ };
396
+ readonly adoption_forks: {
397
+ readonly anyOf: readonly [{
398
+ readonly type: "integer";
399
+ }, {
400
+ readonly type: "null";
401
+ }];
402
+ readonly title: "Adoption Forks";
403
+ };
404
+ readonly updated_at: {
405
+ readonly type: "string";
406
+ readonly format: "date-time";
407
+ readonly title: "Updated At";
408
+ };
409
+ readonly releases: {
410
+ readonly anyOf: readonly [{
411
+ readonly items: {
412
+ readonly additionalProperties: true;
413
+ readonly type: "object";
414
+ };
415
+ readonly type: "array";
416
+ }, {
417
+ readonly type: "null";
418
+ }];
419
+ readonly title: "Releases";
420
+ };
421
+ readonly parent_project: {
422
+ readonly anyOf: readonly [{
423
+ readonly $ref: "#/components/schemas/ProjectSummary";
424
+ }, {
425
+ readonly type: "null";
426
+ }];
427
+ };
428
+ readonly contributors: {
429
+ readonly items: {
430
+ readonly $ref: "#/components/schemas/ContributorSummary";
431
+ };
432
+ readonly type: "array";
433
+ readonly title: "Contributors";
434
+ };
435
+ readonly outgoing_dep_counts: {
436
+ readonly $ref: "#/components/schemas/DepCounts";
437
+ };
438
+ readonly incoming_dep_counts: {
439
+ readonly $ref: "#/components/schemas/DepCounts";
440
+ };
441
+ };
442
+ readonly type: "object";
443
+ readonly required: readonly ["canonical_id", "display_name", "visibility", "latest_version", "latest_commit_date", "repo_url", "project_id", "pony_factor", "criticality_score", "adoption_downloads", "adoption_stars", "adoption_forks", "updated_at", "releases", "parent_project", "contributors", "outgoing_dep_counts", "incoming_dep_counts"];
444
+ readonly title: "RepoDetailResponse";
445
+ readonly description: "Full repo detail with parent project, contributors, releases, and\ndependency counts.";
446
+ };
447
+ export declare const DepCountsSchema: {
448
+ readonly properties: {
449
+ readonly repos: {
450
+ readonly type: "integer";
451
+ readonly title: "Repos";
452
+ };
453
+ readonly external_repos: {
454
+ readonly type: "integer";
455
+ readonly title: "External Repos";
456
+ };
457
+ };
458
+ readonly type: "object";
459
+ readonly required: readonly ["repos", "external_repos"];
460
+ readonly title: "DepCounts";
461
+ readonly description: "Counts of dependency edges grouped by target vertex type.\n\nProvided as part of the repo detail response so the frontend can show\n\"depends on N repos + M external\" without fetching the full edge list.";
462
+ };
463
+ export declare const ContributorSummarySchema: {
464
+ readonly properties: {
465
+ readonly id: {
466
+ readonly type: "integer";
467
+ readonly title: "Id";
468
+ };
469
+ readonly name: {
470
+ readonly type: "string";
471
+ readonly title: "Name";
472
+ };
473
+ readonly email_hash: {
474
+ readonly type: "string";
475
+ readonly title: "Email Hash";
476
+ };
477
+ };
478
+ readonly type: "object";
479
+ readonly required: readonly ["id", "name", "email_hash"];
480
+ readonly title: "ContributorSummary";
481
+ readonly description: "Compact contributor reference embedded in repo detail responses.";
482
+ };
483
+ export declare const ActivityStatusSchema: {
484
+ readonly type: "string";
485
+ readonly enum: readonly ["live", "in-dev", "discontinued", "non-responsive"];
486
+ readonly title: "ActivityStatus";
487
+ readonly description: "Lifecycle status of a Project.\n\nUpdated by the SCF Impact Survey (yearly) and higher-frequency signals;\nsee the Activity Status Update Logic in the architecture docs.";
488
+ };
489
+ export declare const ProjectTypeSchema: {
490
+ readonly type: "string";
491
+ readonly enum: readonly ["public-good", "scf-project"];
492
+ readonly title: "ProjectType";
493
+ readonly description: "Classification of a Project within the PG Atlas universe.";
494
+ };
495
+ export declare const ProjectSummarySchema: {
496
+ readonly properties: {
497
+ readonly canonical_id: {
498
+ readonly type: "string";
499
+ readonly title: "Canonical Id";
500
+ };
501
+ readonly display_name: {
502
+ readonly type: "string";
503
+ readonly title: "Display Name";
504
+ };
505
+ readonly project_type: {
506
+ readonly $ref: "#/components/schemas/ProjectType";
507
+ };
508
+ readonly activity_status: {
509
+ readonly $ref: "#/components/schemas/ActivityStatus";
510
+ };
511
+ readonly category: {
512
+ readonly anyOf: readonly [{
513
+ readonly type: "string";
514
+ }, {
515
+ readonly type: "null";
516
+ }];
517
+ readonly title: "Category";
518
+ };
519
+ readonly git_owner_url: {
520
+ readonly anyOf: readonly [{
521
+ readonly type: "string";
522
+ }, {
523
+ readonly type: "null";
524
+ }];
525
+ readonly title: "Git Owner Url";
526
+ };
527
+ readonly pony_factor: {
528
+ readonly anyOf: readonly [{
529
+ readonly type: "integer";
530
+ }, {
531
+ readonly type: "null";
532
+ }];
533
+ readonly title: "Pony Factor";
534
+ };
535
+ readonly criticality_score: {
536
+ readonly anyOf: readonly [{
537
+ readonly type: "integer";
538
+ }, {
539
+ readonly type: "null";
540
+ }];
541
+ readonly title: "Criticality Score";
542
+ };
543
+ readonly adoption_score: {
544
+ readonly anyOf: readonly [{
545
+ readonly type: "number";
546
+ }, {
547
+ readonly type: "null";
548
+ }];
549
+ readonly title: "Adoption Score";
550
+ };
551
+ readonly updated_at: {
552
+ readonly type: "string";
553
+ readonly format: "date-time";
554
+ readonly title: "Updated At";
555
+ };
556
+ };
557
+ readonly type: "object";
558
+ readonly required: readonly ["canonical_id", "display_name", "project_type", "activity_status", "category", "git_owner_url", "pony_factor", "criticality_score", "adoption_score", "updated_at"];
559
+ readonly title: "ProjectSummary";
560
+ readonly description: "Compact project representation used in list endpoints and as an embedded\nreference in repo detail responses.";
561
+ };
562
+ export declare const RepoDependencySchema: {
563
+ readonly properties: {
564
+ readonly canonical_id: {
565
+ readonly type: "string";
566
+ readonly title: "Canonical Id";
567
+ };
568
+ readonly display_name: {
569
+ readonly type: "string";
570
+ readonly title: "Display Name";
571
+ };
572
+ readonly vertex_type: {
573
+ readonly $ref: "#/components/schemas/RepoVertexType";
574
+ };
575
+ readonly version_range: {
576
+ readonly anyOf: readonly [{
577
+ readonly type: "string";
578
+ }, {
579
+ readonly type: "null";
580
+ }];
581
+ readonly title: "Version Range";
582
+ };
583
+ readonly confidence: {
584
+ readonly $ref: "#/components/schemas/EdgeConfidence";
585
+ };
586
+ };
587
+ readonly type: "object";
588
+ readonly required: readonly ["canonical_id", "display_name", "vertex_type", "version_range", "confidence"];
589
+ readonly title: "RepoDependency";
590
+ readonly description: "A single dependency or reverse-dependency edge from a repo.\n\n``vertex_type`` tells the frontend whether the target is an in-ecosystem\n``Repo`` or an ``ExternalRepo``.";
591
+ };
592
+ export declare const EdgeConfidenceSchema: {
593
+ readonly type: "string";
594
+ readonly enum: readonly ["verified-sbom", "inferred-shadow"];
595
+ readonly title: "EdgeConfidence";
596
+ readonly description: "How firmly an edge was established.";
597
+ };
598
+ export declare const ProjectMetadataSchema: {
599
+ readonly properties: {
600
+ readonly scf_submissions: {
601
+ readonly items: {
602
+ readonly $ref: "#/components/schemas/ScfSubmission";
603
+ };
604
+ readonly type: "array";
605
+ readonly title: "Scf Submissions";
606
+ readonly default: readonly [];
607
+ };
608
+ readonly description: {
609
+ readonly anyOf: readonly [{
610
+ readonly type: "string";
611
+ }, {
612
+ readonly type: "null";
613
+ }];
614
+ readonly title: "Description";
615
+ };
616
+ readonly technical_architecture: {
617
+ readonly anyOf: readonly [{
618
+ readonly type: "string";
619
+ }, {
620
+ readonly type: "null";
621
+ }];
622
+ readonly title: "Technical Architecture";
623
+ };
624
+ readonly scf_tranche_completion: {
625
+ readonly anyOf: readonly [{
626
+ readonly type: "string";
627
+ }, {
628
+ readonly type: "null";
629
+ }];
630
+ readonly title: "Scf Tranche Completion";
631
+ };
632
+ readonly website: {
633
+ readonly anyOf: readonly [{
634
+ readonly type: "string";
635
+ }, {
636
+ readonly type: "null";
637
+ }];
638
+ readonly title: "Website";
639
+ };
640
+ readonly x_profile: {
641
+ readonly anyOf: readonly [{
642
+ readonly type: "string";
643
+ }, {
644
+ readonly type: "null";
645
+ }];
646
+ readonly title: "X Profile";
647
+ };
648
+ readonly total_awarded_usd: {
649
+ readonly anyOf: readonly [{
650
+ readonly type: "integer";
651
+ }, {
652
+ readonly type: "number";
653
+ }, {
654
+ readonly type: "null";
655
+ }];
656
+ readonly title: "Total Awarded Usd";
657
+ };
658
+ readonly total_paid_usd: {
659
+ readonly anyOf: readonly [{
660
+ readonly type: "integer";
661
+ }, {
662
+ readonly type: "number";
663
+ }, {
664
+ readonly type: "null";
665
+ }];
666
+ readonly title: "Total Paid Usd";
667
+ };
668
+ readonly awarded_submissions_count: {
669
+ readonly anyOf: readonly [{
670
+ readonly type: "integer";
671
+ }, {
672
+ readonly type: "null";
673
+ }];
674
+ readonly title: "Awarded Submissions Count";
675
+ };
676
+ readonly open_source: {
677
+ readonly anyOf: readonly [{
678
+ readonly type: "boolean";
679
+ }, {
680
+ readonly type: "null";
681
+ }];
682
+ readonly title: "Open Source";
683
+ };
684
+ readonly socials: {
685
+ readonly anyOf: readonly [{
686
+ readonly items: {
687
+ readonly additionalProperties: true;
688
+ readonly type: "object";
689
+ };
690
+ readonly type: "array";
691
+ }, {
692
+ readonly type: "null";
693
+ }];
694
+ readonly title: "Socials";
695
+ };
696
+ readonly analytics: {
697
+ readonly anyOf: readonly [{}, {
698
+ readonly type: "null";
699
+ }];
700
+ readonly title: "Analytics";
701
+ };
702
+ readonly regions_of_operation: {
703
+ readonly anyOf: readonly [{}, {
704
+ readonly type: "null";
705
+ }];
706
+ readonly title: "Regions Of Operation";
707
+ };
708
+ };
709
+ readonly additionalProperties: true;
710
+ readonly type: "object";
711
+ readonly title: "ProjectMetadata";
712
+ readonly description: "Validates and normalises the ``project_metadata`` JSONB column on ``Project``.\n\nThe single write path (``_build_project_metadata`` in the OpenGrants crawler)\nguarantees consistent key names and types. ``extra = \"allow\"`` ensures that\nany future keys added by the crawler pass through without breaking the API.\nFuture keys must still be added in this model for clarity.";
713
+ };
714
+ export declare const ProjectDetailResponseSchema: {
715
+ readonly properties: {
716
+ readonly canonical_id: {
717
+ readonly type: "string";
718
+ readonly title: "Canonical Id";
719
+ };
720
+ readonly display_name: {
721
+ readonly type: "string";
722
+ readonly title: "Display Name";
723
+ };
724
+ readonly project_type: {
725
+ readonly $ref: "#/components/schemas/ProjectType";
726
+ };
727
+ readonly activity_status: {
728
+ readonly $ref: "#/components/schemas/ActivityStatus";
729
+ };
730
+ readonly category: {
731
+ readonly anyOf: readonly [{
732
+ readonly type: "string";
733
+ }, {
734
+ readonly type: "null";
735
+ }];
736
+ readonly title: "Category";
737
+ };
738
+ readonly git_owner_url: {
739
+ readonly anyOf: readonly [{
740
+ readonly type: "string";
741
+ }, {
742
+ readonly type: "null";
743
+ }];
744
+ readonly title: "Git Owner Url";
745
+ };
746
+ readonly pony_factor: {
747
+ readonly anyOf: readonly [{
748
+ readonly type: "integer";
749
+ }, {
750
+ readonly type: "null";
751
+ }];
752
+ readonly title: "Pony Factor";
753
+ };
754
+ readonly criticality_score: {
755
+ readonly anyOf: readonly [{
756
+ readonly type: "integer";
757
+ }, {
758
+ readonly type: "null";
759
+ }];
760
+ readonly title: "Criticality Score";
761
+ };
762
+ readonly adoption_score: {
763
+ readonly anyOf: readonly [{
764
+ readonly type: "number";
765
+ }, {
766
+ readonly type: "null";
767
+ }];
768
+ readonly title: "Adoption Score";
769
+ };
770
+ readonly updated_at: {
771
+ readonly type: "string";
772
+ readonly format: "date-time";
773
+ readonly title: "Updated At";
774
+ };
775
+ readonly project_id: {
776
+ readonly type: "integer";
777
+ readonly title: "Project Id";
778
+ };
779
+ readonly metadata: {
780
+ readonly $ref: "#/components/schemas/ProjectMetadata";
781
+ };
782
+ };
783
+ readonly type: "object";
784
+ readonly required: readonly ["canonical_id", "display_name", "project_type", "activity_status", "category", "git_owner_url", "pony_factor", "criticality_score", "adoption_score", "updated_at", "project_id", "metadata"];
785
+ readonly title: "ProjectDetailResponse";
786
+ readonly description: "Full project detail including validated metadata.\n\n``metadata`` is the normalised form of the ``project_metadata`` JSONB column.";
787
+ };
788
+ export declare const ProjectDependencySchema: {
789
+ readonly properties: {
790
+ readonly project: {
791
+ readonly $ref: "#/components/schemas/ProjectSummary";
792
+ };
793
+ readonly edge_count: {
794
+ readonly type: "integer";
795
+ readonly title: "Edge Count";
796
+ };
797
+ };
798
+ readonly type: "object";
799
+ readonly required: readonly ["project", "edge_count"];
800
+ readonly title: "ProjectDependency";
801
+ readonly description: "A collapsed project-level dependency: aggregates repo-level edges\nbetween two projects into a single summary.";
802
+ };
803
+ export declare const PaginatedResponse_RepoSummary_Schema: {
804
+ readonly properties: {
805
+ readonly items: {
806
+ readonly items: {
807
+ readonly $ref: "#/components/schemas/RepoSummary";
808
+ };
809
+ readonly type: "array";
810
+ readonly title: "Items";
811
+ };
812
+ readonly total: {
813
+ readonly type: "integer";
814
+ readonly title: "Total";
815
+ };
816
+ readonly limit: {
817
+ readonly type: "integer";
818
+ readonly title: "Limit";
819
+ };
820
+ readonly offset: {
821
+ readonly type: "integer";
822
+ readonly title: "Offset";
823
+ };
824
+ };
825
+ readonly type: "object";
826
+ readonly required: readonly ["items", "total", "limit", "offset"];
827
+ readonly title: "PaginatedResponse[RepoSummary]";
828
+ };
829
+ export declare const PaginatedResponse_ProjectSummary_Schema: {
830
+ readonly properties: {
831
+ readonly items: {
832
+ readonly items: {
833
+ readonly $ref: "#/components/schemas/ProjectSummary";
834
+ };
835
+ readonly type: "array";
836
+ readonly title: "Items";
837
+ };
838
+ readonly total: {
839
+ readonly type: "integer";
840
+ readonly title: "Total";
841
+ };
842
+ readonly limit: {
843
+ readonly type: "integer";
844
+ readonly title: "Limit";
845
+ };
846
+ readonly offset: {
847
+ readonly type: "integer";
848
+ readonly title: "Offset";
849
+ };
850
+ };
851
+ readonly type: "object";
852
+ readonly required: readonly ["items", "total", "limit", "offset"];
853
+ readonly title: "PaginatedResponse[ProjectSummary]";
854
+ };
855
+ export declare const MetadataResponseSchema: {
856
+ readonly properties: {
857
+ readonly total_projects: {
858
+ readonly type: "integer";
859
+ readonly title: "Total Projects";
860
+ };
861
+ readonly active_projects: {
862
+ readonly type: "integer";
863
+ readonly title: "Active Projects";
864
+ };
865
+ readonly total_repos: {
866
+ readonly type: "integer";
867
+ readonly title: "Total Repos";
868
+ };
869
+ readonly total_external_repos: {
870
+ readonly type: "integer";
871
+ readonly title: "Total External Repos";
872
+ };
873
+ readonly total_dependency_edges: {
874
+ readonly type: "integer";
875
+ readonly title: "Total Dependency Edges";
876
+ };
877
+ readonly total_contributor_edges: {
878
+ readonly type: "integer";
879
+ readonly title: "Total Contributor Edges";
880
+ };
881
+ readonly last_updated: {
882
+ readonly anyOf: readonly [{
883
+ readonly type: "string";
884
+ readonly format: "date-time";
885
+ }, {
886
+ readonly type: "null";
887
+ }];
888
+ readonly title: "Last Updated";
889
+ };
890
+ };
891
+ readonly type: "object";
892
+ readonly required: readonly ["total_projects", "active_projects", "total_repos", "total_external_repos", "total_dependency_edges", "total_contributor_edges", "last_updated"];
893
+ readonly title: "MetadataResponse";
894
+ readonly description: "Ecosystem-wide summary statistics returned by ``GET /metadata``.";
895
+ };
896
+ export declare const HealthResponseSchema: {
897
+ readonly properties: {
898
+ readonly status: {
899
+ readonly type: "string";
900
+ readonly title: "Status";
901
+ };
902
+ readonly version: {
903
+ readonly type: "string";
904
+ readonly title: "Version";
905
+ };
906
+ };
907
+ readonly type: "object";
908
+ readonly required: readonly ["status", "version"];
909
+ readonly title: "HealthResponse";
910
+ readonly description: "Response body for GET /health.";
911
+ };
912
+ export declare const HTTPValidationErrorSchema: {
913
+ readonly properties: {
914
+ readonly detail: {
915
+ readonly items: {
916
+ readonly $ref: "#/components/schemas/ValidationError";
917
+ };
918
+ readonly type: "array";
919
+ readonly title: "Detail";
920
+ };
921
+ };
922
+ readonly type: "object";
923
+ readonly title: "HTTPValidationError";
924
+ };
925
+ export declare const ContributorDetailResponseSchema: {
926
+ readonly properties: {
927
+ readonly id: {
928
+ readonly type: "integer";
929
+ readonly title: "Id";
930
+ };
931
+ readonly name: {
932
+ readonly type: "string";
933
+ readonly title: "Name";
934
+ };
935
+ readonly email_hash: {
936
+ readonly type: "string";
937
+ readonly title: "Email Hash";
938
+ };
939
+ readonly total_repos: {
940
+ readonly type: "integer";
941
+ readonly title: "Total Repos";
942
+ };
943
+ readonly total_commits: {
944
+ readonly type: "integer";
945
+ readonly title: "Total Commits";
946
+ };
947
+ readonly first_contribution: {
948
+ readonly anyOf: readonly [{
949
+ readonly type: "string";
950
+ readonly format: "date-time";
951
+ }, {
952
+ readonly type: "null";
953
+ }];
954
+ readonly title: "First Contribution";
955
+ };
956
+ readonly last_contribution: {
957
+ readonly anyOf: readonly [{
958
+ readonly type: "string";
959
+ readonly format: "date-time";
960
+ }, {
961
+ readonly type: "null";
962
+ }];
963
+ readonly title: "Last Contribution";
964
+ };
965
+ readonly repos: {
966
+ readonly items: {
967
+ readonly $ref: "#/components/schemas/ContributionEntry";
968
+ };
969
+ readonly type: "array";
970
+ readonly title: "Repos";
971
+ };
972
+ };
973
+ readonly type: "object";
974
+ readonly required: readonly ["id", "name", "email_hash", "total_repos", "total_commits", "first_contribution", "last_contribution", "repos"];
975
+ readonly title: "ContributorDetailResponse";
976
+ readonly description: "Full contributor detail with aggregated statistics and per-repo activity.";
977
+ };
978
+ export declare const ContributionEntrySchema: {
979
+ readonly properties: {
980
+ readonly repo_canonical_id: {
981
+ readonly type: "string";
982
+ readonly title: "Repo Canonical Id";
983
+ };
984
+ readonly repo_display_name: {
985
+ readonly type: "string";
986
+ readonly title: "Repo Display Name";
987
+ };
988
+ readonly project_canonical_id: {
989
+ readonly anyOf: readonly [{
990
+ readonly type: "string";
991
+ }, {
992
+ readonly type: "null";
993
+ }];
994
+ readonly title: "Project Canonical Id";
995
+ };
996
+ readonly number_of_commits: {
997
+ readonly type: "integer";
998
+ readonly title: "Number Of Commits";
999
+ };
1000
+ readonly first_commit_date: {
1001
+ readonly type: "string";
1002
+ readonly format: "date-time";
1003
+ readonly title: "First Commit Date";
1004
+ };
1005
+ readonly last_commit_date: {
1006
+ readonly type: "string";
1007
+ readonly format: "date-time";
1008
+ readonly title: "Last Commit Date";
1009
+ };
1010
+ };
1011
+ readonly type: "object";
1012
+ readonly required: readonly ["repo_canonical_id", "repo_display_name", "project_canonical_id", "number_of_commits", "first_commit_date", "last_commit_date"];
1013
+ readonly title: "ContributionEntry";
1014
+ readonly description: "A single repo that a contributor has committed to.";
1015
+ };