@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,1172 @@
1
+ export type ClientOptions = {
2
+ baseUrl: 'https://pg-atlas-backend-h8gen.ondigitalocean.app' | (string & {});
3
+ };
4
+ /**
5
+ * Visibility
6
+ *
7
+ * Whether a Repo is publicly accessible (affects data collection scope).
8
+ */
9
+ export type Visibility = 'public' | 'private';
10
+ /**
11
+ * ValidationError
12
+ */
13
+ export type ValidationError = {
14
+ /**
15
+ * Location
16
+ */
17
+ loc: Array<string | number>;
18
+ /**
19
+ * Message
20
+ */
21
+ msg: string;
22
+ /**
23
+ * Error Type
24
+ */
25
+ type: string;
26
+ /**
27
+ * Input
28
+ */
29
+ input?: unknown;
30
+ /**
31
+ * Context
32
+ */
33
+ ctx?: {
34
+ [key: string]: unknown;
35
+ };
36
+ };
37
+ /**
38
+ * SubmissionStatus
39
+ *
40
+ * Processing state of an SbomSubmission record.
41
+ */
42
+ export type SubmissionStatus = 'pending' | 'processed' | 'failed';
43
+ /**
44
+ * ScfSubmission
45
+ *
46
+ * A single SCF funding round submission.
47
+ */
48
+ export type ScfSubmission = {
49
+ /**
50
+ * Round
51
+ */
52
+ round: string;
53
+ /**
54
+ * Title
55
+ */
56
+ title: string;
57
+ };
58
+ /**
59
+ * SbomSubmissionResponse
60
+ *
61
+ * Full SBOM submission record.
62
+ *
63
+ * Serialised from the ``SbomSubmission`` ORM model. The ``sbom_content_hash``
64
+ * field is the SHA-256 hex digest of the raw submitted payload.
65
+ */
66
+ export type SbomSubmissionResponse = {
67
+ /**
68
+ * Id
69
+ */
70
+ id: number;
71
+ /**
72
+ * Repository Claim
73
+ */
74
+ repository_claim: string;
75
+ /**
76
+ * Actor Claim
77
+ */
78
+ actor_claim: string;
79
+ /**
80
+ * Sbom Content Hash
81
+ */
82
+ sbom_content_hash: string;
83
+ /**
84
+ * Artifact Path
85
+ */
86
+ artifact_path: string;
87
+ status: SubmissionStatus;
88
+ /**
89
+ * Error Detail
90
+ */
91
+ error_detail: string | null;
92
+ /**
93
+ * Submitted At
94
+ */
95
+ submitted_at: string;
96
+ /**
97
+ * Processed At
98
+ */
99
+ processed_at: string | null;
100
+ };
101
+ /**
102
+ * SbomSubmissionListResponse
103
+ *
104
+ * Paginated list of SBOM submission records.
105
+ *
106
+ * Returned by the list endpoint with ``total`` reflecting the count after
107
+ * any ``repository`` filter has been applied.
108
+ */
109
+ export type SbomSubmissionListResponse = {
110
+ /**
111
+ * Items
112
+ */
113
+ items: Array<SbomSubmissionResponse>;
114
+ /**
115
+ * Total
116
+ */
117
+ total: number;
118
+ /**
119
+ * Limit
120
+ */
121
+ limit: number;
122
+ /**
123
+ * Offset
124
+ */
125
+ offset: number;
126
+ };
127
+ /**
128
+ * SbomSubmissionDetailResponse
129
+ *
130
+ * Extended SBOM submission record with the raw artifact content.
131
+ *
132
+ * Returned by the detail endpoint. ``raw_artifact`` contains the full JSON
133
+ * text of the stored SBOM, or ``None`` if the artifact file is missing from
134
+ * the store.
135
+ */
136
+ export type SbomSubmissionDetailResponse = {
137
+ /**
138
+ * Id
139
+ */
140
+ id: number;
141
+ /**
142
+ * Repository Claim
143
+ */
144
+ repository_claim: string;
145
+ /**
146
+ * Actor Claim
147
+ */
148
+ actor_claim: string;
149
+ /**
150
+ * Sbom Content Hash
151
+ */
152
+ sbom_content_hash: string;
153
+ /**
154
+ * Artifact Path
155
+ */
156
+ artifact_path: string;
157
+ status: SubmissionStatus;
158
+ /**
159
+ * Error Detail
160
+ */
161
+ error_detail: string | null;
162
+ /**
163
+ * Submitted At
164
+ */
165
+ submitted_at: string;
166
+ /**
167
+ * Processed At
168
+ */
169
+ processed_at: string | null;
170
+ /**
171
+ * Raw Artifact
172
+ */
173
+ raw_artifact?: string | null;
174
+ };
175
+ /**
176
+ * SbomAcceptedResponse
177
+ *
178
+ * Response body returned on successful SBOM submission (202 Accepted).
179
+ */
180
+ export type SbomAcceptedResponse = {
181
+ /**
182
+ * Message
183
+ */
184
+ message: string;
185
+ /**
186
+ * Repository
187
+ */
188
+ repository: string;
189
+ /**
190
+ * Package Count
191
+ */
192
+ package_count: number;
193
+ };
194
+ /**
195
+ * RepoVertexType
196
+ *
197
+ * Discriminator values for the RepoVertex joined-table-inheritance hierarchy.
198
+ */
199
+ export type RepoVertexType = 'repo' | 'external-repo';
200
+ /**
201
+ * RepoSummary
202
+ *
203
+ * Compact repo representation used in list endpoints and as an embedded
204
+ * reference in project detail responses.
205
+ */
206
+ export type RepoSummary = {
207
+ /**
208
+ * Canonical Id
209
+ */
210
+ canonical_id: string;
211
+ /**
212
+ * Display Name
213
+ */
214
+ display_name: string;
215
+ visibility: Visibility;
216
+ /**
217
+ * Latest Version
218
+ */
219
+ latest_version: string;
220
+ /**
221
+ * Latest Commit Date
222
+ */
223
+ latest_commit_date: string | null;
224
+ /**
225
+ * Repo Url
226
+ */
227
+ repo_url: string | null;
228
+ /**
229
+ * Project Id
230
+ */
231
+ project_id: number | null;
232
+ /**
233
+ * Pony Factor
234
+ */
235
+ pony_factor: number | null;
236
+ /**
237
+ * Criticality Score
238
+ */
239
+ criticality_score: number | null;
240
+ /**
241
+ * Adoption Downloads
242
+ */
243
+ adoption_downloads: number | null;
244
+ /**
245
+ * Adoption Stars
246
+ */
247
+ adoption_stars: number | null;
248
+ /**
249
+ * Adoption Forks
250
+ */
251
+ adoption_forks: number | null;
252
+ /**
253
+ * Updated At
254
+ */
255
+ updated_at: string;
256
+ };
257
+ /**
258
+ * RepoDetailResponse
259
+ *
260
+ * Full repo detail with parent project, contributors, releases, and
261
+ * dependency counts.
262
+ */
263
+ export type RepoDetailResponse = {
264
+ /**
265
+ * Canonical Id
266
+ */
267
+ canonical_id: string;
268
+ /**
269
+ * Display Name
270
+ */
271
+ display_name: string;
272
+ visibility: Visibility;
273
+ /**
274
+ * Latest Version
275
+ */
276
+ latest_version: string;
277
+ /**
278
+ * Latest Commit Date
279
+ */
280
+ latest_commit_date: string | null;
281
+ /**
282
+ * Repo Url
283
+ */
284
+ repo_url: string | null;
285
+ /**
286
+ * Project Id
287
+ */
288
+ project_id: number | null;
289
+ /**
290
+ * Pony Factor
291
+ */
292
+ pony_factor: number | null;
293
+ /**
294
+ * Criticality Score
295
+ */
296
+ criticality_score: number | null;
297
+ /**
298
+ * Adoption Downloads
299
+ */
300
+ adoption_downloads: number | null;
301
+ /**
302
+ * Adoption Stars
303
+ */
304
+ adoption_stars: number | null;
305
+ /**
306
+ * Adoption Forks
307
+ */
308
+ adoption_forks: number | null;
309
+ /**
310
+ * Updated At
311
+ */
312
+ updated_at: string;
313
+ /**
314
+ * Releases
315
+ */
316
+ releases: Array<{
317
+ [key: string]: unknown;
318
+ }> | null;
319
+ parent_project: ProjectSummary | null;
320
+ /**
321
+ * Contributors
322
+ */
323
+ contributors: Array<ContributorSummary>;
324
+ outgoing_dep_counts: DepCounts;
325
+ incoming_dep_counts: DepCounts;
326
+ };
327
+ /**
328
+ * DepCounts
329
+ *
330
+ * Counts of dependency edges grouped by target vertex type.
331
+ *
332
+ * Provided as part of the repo detail response so the frontend can show
333
+ * "depends on N repos + M external" without fetching the full edge list.
334
+ */
335
+ export type DepCounts = {
336
+ /**
337
+ * Repos
338
+ */
339
+ repos: number;
340
+ /**
341
+ * External Repos
342
+ */
343
+ external_repos: number;
344
+ };
345
+ /**
346
+ * ContributorSummary
347
+ *
348
+ * Compact contributor reference embedded in repo detail responses.
349
+ */
350
+ export type ContributorSummary = {
351
+ /**
352
+ * Id
353
+ */
354
+ id: number;
355
+ /**
356
+ * Name
357
+ */
358
+ name: string;
359
+ /**
360
+ * Email Hash
361
+ */
362
+ email_hash: string;
363
+ };
364
+ /**
365
+ * ActivityStatus
366
+ *
367
+ * Lifecycle status of a Project.
368
+ *
369
+ * Updated by the SCF Impact Survey (yearly) and higher-frequency signals;
370
+ * see the Activity Status Update Logic in the architecture docs.
371
+ */
372
+ export type ActivityStatus = 'live' | 'in-dev' | 'discontinued' | 'non-responsive';
373
+ /**
374
+ * ProjectType
375
+ *
376
+ * Classification of a Project within the PG Atlas universe.
377
+ */
378
+ export type ProjectType = 'public-good' | 'scf-project';
379
+ /**
380
+ * ProjectSummary
381
+ *
382
+ * Compact project representation used in list endpoints and as an embedded
383
+ * reference in repo detail responses.
384
+ */
385
+ export type ProjectSummary = {
386
+ /**
387
+ * Canonical Id
388
+ */
389
+ canonical_id: string;
390
+ /**
391
+ * Display Name
392
+ */
393
+ display_name: string;
394
+ project_type: ProjectType;
395
+ activity_status: ActivityStatus;
396
+ /**
397
+ * Category
398
+ */
399
+ category: string | null;
400
+ /**
401
+ * Git Owner Url
402
+ */
403
+ git_owner_url: string | null;
404
+ /**
405
+ * Pony Factor
406
+ */
407
+ pony_factor: number | null;
408
+ /**
409
+ * Criticality Score
410
+ */
411
+ criticality_score: number | null;
412
+ /**
413
+ * Adoption Score
414
+ */
415
+ adoption_score: number | null;
416
+ /**
417
+ * Updated At
418
+ */
419
+ updated_at: string;
420
+ };
421
+ /**
422
+ * RepoDependency
423
+ *
424
+ * A single dependency or reverse-dependency edge from a repo.
425
+ *
426
+ * ``vertex_type`` tells the frontend whether the target is an in-ecosystem
427
+ * ``Repo`` or an ``ExternalRepo``.
428
+ */
429
+ export type RepoDependency = {
430
+ /**
431
+ * Canonical Id
432
+ */
433
+ canonical_id: string;
434
+ /**
435
+ * Display Name
436
+ */
437
+ display_name: string;
438
+ vertex_type: RepoVertexType;
439
+ /**
440
+ * Version Range
441
+ */
442
+ version_range: string | null;
443
+ confidence: EdgeConfidence;
444
+ };
445
+ /**
446
+ * EdgeConfidence
447
+ *
448
+ * How firmly an edge was established.
449
+ */
450
+ export type EdgeConfidence = 'verified-sbom' | 'inferred-shadow';
451
+ /**
452
+ * ProjectMetadata
453
+ *
454
+ * Validates and normalises the ``project_metadata`` JSONB column on ``Project``.
455
+ *
456
+ * The single write path (``_build_project_metadata`` in the OpenGrants crawler)
457
+ * guarantees consistent key names and types. ``extra = "allow"`` ensures that
458
+ * any future keys added by the crawler pass through without breaking the API.
459
+ * Future keys must still be added in this model for clarity.
460
+ */
461
+ export type ProjectMetadata = {
462
+ /**
463
+ * Scf Submissions
464
+ */
465
+ scf_submissions?: Array<ScfSubmission>;
466
+ /**
467
+ * Description
468
+ */
469
+ description?: string | null;
470
+ /**
471
+ * Technical Architecture
472
+ */
473
+ technical_architecture?: string | null;
474
+ /**
475
+ * Scf Tranche Completion
476
+ */
477
+ scf_tranche_completion?: string | null;
478
+ /**
479
+ * Website
480
+ */
481
+ website?: string | null;
482
+ /**
483
+ * X Profile
484
+ */
485
+ x_profile?: string | null;
486
+ /**
487
+ * Total Awarded Usd
488
+ */
489
+ total_awarded_usd?: number | number | null;
490
+ /**
491
+ * Total Paid Usd
492
+ */
493
+ total_paid_usd?: number | number | null;
494
+ /**
495
+ * Awarded Submissions Count
496
+ */
497
+ awarded_submissions_count?: number | null;
498
+ /**
499
+ * Open Source
500
+ */
501
+ open_source?: boolean | null;
502
+ /**
503
+ * Socials
504
+ */
505
+ socials?: Array<{
506
+ [key: string]: unknown;
507
+ }> | null;
508
+ /**
509
+ * Analytics
510
+ */
511
+ analytics?: unknown | null;
512
+ /**
513
+ * Regions Of Operation
514
+ */
515
+ regions_of_operation?: unknown | null;
516
+ [key: string]: unknown;
517
+ };
518
+ /**
519
+ * ProjectDetailResponse
520
+ *
521
+ * Full project detail including validated metadata.
522
+ *
523
+ * ``metadata`` is the normalised form of the ``project_metadata`` JSONB column.
524
+ */
525
+ export type ProjectDetailResponse = {
526
+ /**
527
+ * Canonical Id
528
+ */
529
+ canonical_id: string;
530
+ /**
531
+ * Display Name
532
+ */
533
+ display_name: string;
534
+ project_type: ProjectType;
535
+ activity_status: ActivityStatus;
536
+ /**
537
+ * Category
538
+ */
539
+ category: string | null;
540
+ /**
541
+ * Git Owner Url
542
+ */
543
+ git_owner_url: string | null;
544
+ /**
545
+ * Pony Factor
546
+ */
547
+ pony_factor: number | null;
548
+ /**
549
+ * Criticality Score
550
+ */
551
+ criticality_score: number | null;
552
+ /**
553
+ * Adoption Score
554
+ */
555
+ adoption_score: number | null;
556
+ /**
557
+ * Updated At
558
+ */
559
+ updated_at: string;
560
+ /**
561
+ * Project Id
562
+ */
563
+ project_id: number;
564
+ metadata: ProjectMetadata;
565
+ };
566
+ /**
567
+ * ProjectDependency
568
+ *
569
+ * A collapsed project-level dependency: aggregates repo-level edges
570
+ * between two projects into a single summary.
571
+ */
572
+ export type ProjectDependency = {
573
+ project: ProjectSummary;
574
+ /**
575
+ * Edge Count
576
+ */
577
+ edge_count: number;
578
+ };
579
+ /**
580
+ * PaginatedResponse[RepoSummary]
581
+ */
582
+ export type PaginatedResponseRepoSummary = {
583
+ /**
584
+ * Items
585
+ */
586
+ items: Array<RepoSummary>;
587
+ /**
588
+ * Total
589
+ */
590
+ total: number;
591
+ /**
592
+ * Limit
593
+ */
594
+ limit: number;
595
+ /**
596
+ * Offset
597
+ */
598
+ offset: number;
599
+ };
600
+ /**
601
+ * PaginatedResponse[ProjectSummary]
602
+ */
603
+ export type PaginatedResponseProjectSummary = {
604
+ /**
605
+ * Items
606
+ */
607
+ items: Array<ProjectSummary>;
608
+ /**
609
+ * Total
610
+ */
611
+ total: number;
612
+ /**
613
+ * Limit
614
+ */
615
+ limit: number;
616
+ /**
617
+ * Offset
618
+ */
619
+ offset: number;
620
+ };
621
+ /**
622
+ * MetadataResponse
623
+ *
624
+ * Ecosystem-wide summary statistics returned by ``GET /metadata``.
625
+ */
626
+ export type MetadataResponse = {
627
+ /**
628
+ * Total Projects
629
+ */
630
+ total_projects: number;
631
+ /**
632
+ * Active Projects
633
+ */
634
+ active_projects: number;
635
+ /**
636
+ * Total Repos
637
+ */
638
+ total_repos: number;
639
+ /**
640
+ * Total External Repos
641
+ */
642
+ total_external_repos: number;
643
+ /**
644
+ * Total Dependency Edges
645
+ */
646
+ total_dependency_edges: number;
647
+ /**
648
+ * Total Contributor Edges
649
+ */
650
+ total_contributor_edges: number;
651
+ /**
652
+ * Last Updated
653
+ */
654
+ last_updated: string | null;
655
+ };
656
+ /**
657
+ * HealthResponse
658
+ *
659
+ * Response body for GET /health.
660
+ */
661
+ export type HealthResponse = {
662
+ /**
663
+ * Status
664
+ */
665
+ status: string;
666
+ /**
667
+ * Version
668
+ */
669
+ version: string;
670
+ };
671
+ /**
672
+ * HTTPValidationError
673
+ */
674
+ export type HttpValidationError = {
675
+ /**
676
+ * Detail
677
+ */
678
+ detail?: Array<ValidationError>;
679
+ };
680
+ /**
681
+ * ContributorDetailResponse
682
+ *
683
+ * Full contributor detail with aggregated statistics and per-repo activity.
684
+ */
685
+ export type ContributorDetailResponse = {
686
+ /**
687
+ * Id
688
+ */
689
+ id: number;
690
+ /**
691
+ * Name
692
+ */
693
+ name: string;
694
+ /**
695
+ * Email Hash
696
+ */
697
+ email_hash: string;
698
+ /**
699
+ * Total Repos
700
+ */
701
+ total_repos: number;
702
+ /**
703
+ * Total Commits
704
+ */
705
+ total_commits: number;
706
+ /**
707
+ * First Contribution
708
+ */
709
+ first_contribution: string | null;
710
+ /**
711
+ * Last Contribution
712
+ */
713
+ last_contribution: string | null;
714
+ /**
715
+ * Repos
716
+ */
717
+ repos: Array<ContributionEntry>;
718
+ };
719
+ /**
720
+ * ContributionEntry
721
+ *
722
+ * A single repo that a contributor has committed to.
723
+ */
724
+ export type ContributionEntry = {
725
+ /**
726
+ * Repo Canonical Id
727
+ */
728
+ repo_canonical_id: string;
729
+ /**
730
+ * Repo Display Name
731
+ */
732
+ repo_display_name: string;
733
+ /**
734
+ * Project Canonical Id
735
+ */
736
+ project_canonical_id: string | null;
737
+ /**
738
+ * Number Of Commits
739
+ */
740
+ number_of_commits: number;
741
+ /**
742
+ * First Commit Date
743
+ */
744
+ first_commit_date: string;
745
+ /**
746
+ * Last Commit Date
747
+ */
748
+ last_commit_date: string;
749
+ };
750
+ export type HealthData = {
751
+ body?: never;
752
+ path?: never;
753
+ query?: never;
754
+ url: '/health';
755
+ };
756
+ export type HealthResponses = {
757
+ /**
758
+ * Successful Response
759
+ */
760
+ 200: HealthResponse;
761
+ };
762
+ export type HealthResponse2 = HealthResponses[keyof HealthResponses];
763
+ export type ListSbomSubmissionsData = {
764
+ body?: never;
765
+ path?: never;
766
+ query?: {
767
+ /**
768
+ * Repository
769
+ *
770
+ * Filter by repository_claim (exact match)
771
+ */
772
+ repository?: string | null;
773
+ /**
774
+ * Limit
775
+ *
776
+ * Maximum number of items to return
777
+ */
778
+ limit?: number;
779
+ /**
780
+ * Offset
781
+ *
782
+ * Number of items to skip
783
+ */
784
+ offset?: number;
785
+ };
786
+ url: '/ingest/sbom';
787
+ };
788
+ export type ListSbomSubmissionsErrors = {
789
+ /**
790
+ * Validation Error
791
+ */
792
+ 422: HttpValidationError;
793
+ };
794
+ export type ListSbomSubmissionsError = ListSbomSubmissionsErrors[keyof ListSbomSubmissionsErrors];
795
+ export type ListSbomSubmissionsResponses = {
796
+ /**
797
+ * Successful Response
798
+ */
799
+ 200: SbomSubmissionListResponse;
800
+ };
801
+ export type ListSbomSubmissionsResponse = ListSbomSubmissionsResponses[keyof ListSbomSubmissionsResponses];
802
+ export type IngestSbomData = {
803
+ body?: never;
804
+ headers?: {
805
+ /**
806
+ * Authorization
807
+ */
808
+ authorization?: string | null;
809
+ };
810
+ path?: never;
811
+ query?: never;
812
+ url: '/ingest/sbom';
813
+ };
814
+ export type IngestSbomErrors = {
815
+ /**
816
+ * Validation Error
817
+ */
818
+ 422: HttpValidationError;
819
+ };
820
+ export type IngestSbomError = IngestSbomErrors[keyof IngestSbomErrors];
821
+ export type IngestSbomResponses = {
822
+ /**
823
+ * Successful Response
824
+ */
825
+ 202: SbomAcceptedResponse;
826
+ };
827
+ export type IngestSbomResponse = IngestSbomResponses[keyof IngestSbomResponses];
828
+ export type GetSbomSubmissionData = {
829
+ body?: never;
830
+ path: {
831
+ /**
832
+ * Submission Id
833
+ */
834
+ submission_id: number;
835
+ };
836
+ query?: never;
837
+ url: '/ingest/sbom/{submission_id}';
838
+ };
839
+ export type GetSbomSubmissionErrors = {
840
+ /**
841
+ * Validation Error
842
+ */
843
+ 422: HttpValidationError;
844
+ };
845
+ export type GetSbomSubmissionError = GetSbomSubmissionErrors[keyof GetSbomSubmissionErrors];
846
+ export type GetSbomSubmissionResponses = {
847
+ /**
848
+ * Successful Response
849
+ */
850
+ 200: SbomSubmissionDetailResponse;
851
+ };
852
+ export type GetSbomSubmissionResponse = GetSbomSubmissionResponses[keyof GetSbomSubmissionResponses];
853
+ export type GetMetadataData = {
854
+ body?: never;
855
+ path?: never;
856
+ query?: never;
857
+ url: '/metadata';
858
+ };
859
+ export type GetMetadataResponses = {
860
+ /**
861
+ * Successful Response
862
+ */
863
+ 200: MetadataResponse;
864
+ };
865
+ export type GetMetadataResponse = GetMetadataResponses[keyof GetMetadataResponses];
866
+ export type ListProjectsData = {
867
+ body?: never;
868
+ path?: never;
869
+ query?: {
870
+ /**
871
+ * Project Type
872
+ */
873
+ project_type?: ProjectType | null;
874
+ /**
875
+ * Activity Status
876
+ */
877
+ activity_status?: ActivityStatus | null;
878
+ /**
879
+ * Search
880
+ */
881
+ search?: string | null;
882
+ /**
883
+ * Limit
884
+ *
885
+ * Maximum number of items to return
886
+ */
887
+ limit?: number;
888
+ /**
889
+ * Offset
890
+ *
891
+ * Number of items to skip
892
+ */
893
+ offset?: number;
894
+ };
895
+ url: '/projects';
896
+ };
897
+ export type ListProjectsErrors = {
898
+ /**
899
+ * Validation Error
900
+ */
901
+ 422: HttpValidationError;
902
+ };
903
+ export type ListProjectsError = ListProjectsErrors[keyof ListProjectsErrors];
904
+ export type ListProjectsResponses = {
905
+ /**
906
+ * Successful Response
907
+ */
908
+ 200: PaginatedResponseProjectSummary;
909
+ };
910
+ export type ListProjectsResponse = ListProjectsResponses[keyof ListProjectsResponses];
911
+ export type GetProjectData = {
912
+ body?: never;
913
+ path: {
914
+ /**
915
+ * Canonical Id
916
+ */
917
+ canonical_id: string;
918
+ };
919
+ query?: never;
920
+ url: '/projects/{canonical_id}';
921
+ };
922
+ export type GetProjectErrors = {
923
+ /**
924
+ * Validation Error
925
+ */
926
+ 422: HttpValidationError;
927
+ };
928
+ export type GetProjectError = GetProjectErrors[keyof GetProjectErrors];
929
+ export type GetProjectResponses = {
930
+ /**
931
+ * Successful Response
932
+ */
933
+ 200: ProjectDetailResponse;
934
+ };
935
+ export type GetProjectResponse = GetProjectResponses[keyof GetProjectResponses];
936
+ export type GetProjectReposData = {
937
+ body?: never;
938
+ path: {
939
+ /**
940
+ * Canonical Id
941
+ */
942
+ canonical_id: string;
943
+ };
944
+ query?: {
945
+ /**
946
+ * Limit
947
+ *
948
+ * Maximum number of items to return
949
+ */
950
+ limit?: number;
951
+ /**
952
+ * Offset
953
+ *
954
+ * Number of items to skip
955
+ */
956
+ offset?: number;
957
+ };
958
+ url: '/projects/{canonical_id}/repos';
959
+ };
960
+ export type GetProjectReposErrors = {
961
+ /**
962
+ * Validation Error
963
+ */
964
+ 422: HttpValidationError;
965
+ };
966
+ export type GetProjectReposError = GetProjectReposErrors[keyof GetProjectReposErrors];
967
+ export type GetProjectReposResponses = {
968
+ /**
969
+ * Successful Response
970
+ */
971
+ 200: PaginatedResponseRepoSummary;
972
+ };
973
+ export type GetProjectReposResponse = GetProjectReposResponses[keyof GetProjectReposResponses];
974
+ export type GetProjectDependsOnData = {
975
+ body?: never;
976
+ path: {
977
+ /**
978
+ * Canonical Id
979
+ */
980
+ canonical_id: string;
981
+ };
982
+ query?: never;
983
+ url: '/projects/{canonical_id}/depends-on';
984
+ };
985
+ export type GetProjectDependsOnErrors = {
986
+ /**
987
+ * Validation Error
988
+ */
989
+ 422: HttpValidationError;
990
+ };
991
+ export type GetProjectDependsOnError = GetProjectDependsOnErrors[keyof GetProjectDependsOnErrors];
992
+ export type GetProjectDependsOnResponses = {
993
+ /**
994
+ * Response Get Project Depends On
995
+ *
996
+ * Successful Response
997
+ */
998
+ 200: Array<ProjectDependency>;
999
+ };
1000
+ export type GetProjectDependsOnResponse = GetProjectDependsOnResponses[keyof GetProjectDependsOnResponses];
1001
+ export type GetProjectHasDependentsData = {
1002
+ body?: never;
1003
+ path: {
1004
+ /**
1005
+ * Canonical Id
1006
+ */
1007
+ canonical_id: string;
1008
+ };
1009
+ query?: never;
1010
+ url: '/projects/{canonical_id}/has-dependents';
1011
+ };
1012
+ export type GetProjectHasDependentsErrors = {
1013
+ /**
1014
+ * Validation Error
1015
+ */
1016
+ 422: HttpValidationError;
1017
+ };
1018
+ export type GetProjectHasDependentsError = GetProjectHasDependentsErrors[keyof GetProjectHasDependentsErrors];
1019
+ export type GetProjectHasDependentsResponses = {
1020
+ /**
1021
+ * Response Get Project Has Dependents
1022
+ *
1023
+ * Successful Response
1024
+ */
1025
+ 200: Array<ProjectDependency>;
1026
+ };
1027
+ export type GetProjectHasDependentsResponse = GetProjectHasDependentsResponses[keyof GetProjectHasDependentsResponses];
1028
+ export type ListReposData = {
1029
+ body?: never;
1030
+ path?: never;
1031
+ query?: {
1032
+ /**
1033
+ * Project Id
1034
+ */
1035
+ project_id?: number | null;
1036
+ /**
1037
+ * Search
1038
+ */
1039
+ search?: string | null;
1040
+ /**
1041
+ * Limit
1042
+ *
1043
+ * Maximum number of items to return
1044
+ */
1045
+ limit?: number;
1046
+ /**
1047
+ * Offset
1048
+ *
1049
+ * Number of items to skip
1050
+ */
1051
+ offset?: number;
1052
+ };
1053
+ url: '/repos';
1054
+ };
1055
+ export type ListReposErrors = {
1056
+ /**
1057
+ * Validation Error
1058
+ */
1059
+ 422: HttpValidationError;
1060
+ };
1061
+ export type ListReposError = ListReposErrors[keyof ListReposErrors];
1062
+ export type ListReposResponses = {
1063
+ /**
1064
+ * Successful Response
1065
+ */
1066
+ 200: PaginatedResponseRepoSummary;
1067
+ };
1068
+ export type ListReposResponse = ListReposResponses[keyof ListReposResponses];
1069
+ export type GetRepoDependsOnData = {
1070
+ body?: never;
1071
+ path: {
1072
+ /**
1073
+ * Canonical Id
1074
+ */
1075
+ canonical_id: string;
1076
+ };
1077
+ query?: never;
1078
+ url: '/repos/{canonical_id}/depends-on';
1079
+ };
1080
+ export type GetRepoDependsOnErrors = {
1081
+ /**
1082
+ * Validation Error
1083
+ */
1084
+ 422: HttpValidationError;
1085
+ };
1086
+ export type GetRepoDependsOnError = GetRepoDependsOnErrors[keyof GetRepoDependsOnErrors];
1087
+ export type GetRepoDependsOnResponses = {
1088
+ /**
1089
+ * Response Get Repo Depends On
1090
+ *
1091
+ * Successful Response
1092
+ */
1093
+ 200: Array<RepoDependency>;
1094
+ };
1095
+ export type GetRepoDependsOnResponse = GetRepoDependsOnResponses[keyof GetRepoDependsOnResponses];
1096
+ export type GetRepoHasDependentsData = {
1097
+ body?: never;
1098
+ path: {
1099
+ /**
1100
+ * Canonical Id
1101
+ */
1102
+ canonical_id: string;
1103
+ };
1104
+ query?: never;
1105
+ url: '/repos/{canonical_id}/has-dependents';
1106
+ };
1107
+ export type GetRepoHasDependentsErrors = {
1108
+ /**
1109
+ * Validation Error
1110
+ */
1111
+ 422: HttpValidationError;
1112
+ };
1113
+ export type GetRepoHasDependentsError = GetRepoHasDependentsErrors[keyof GetRepoHasDependentsErrors];
1114
+ export type GetRepoHasDependentsResponses = {
1115
+ /**
1116
+ * Response Get Repo Has Dependents
1117
+ *
1118
+ * Successful Response
1119
+ */
1120
+ 200: Array<RepoDependency>;
1121
+ };
1122
+ export type GetRepoHasDependentsResponse = GetRepoHasDependentsResponses[keyof GetRepoHasDependentsResponses];
1123
+ export type GetRepoData = {
1124
+ body?: never;
1125
+ path: {
1126
+ /**
1127
+ * Canonical Id
1128
+ */
1129
+ canonical_id: string;
1130
+ };
1131
+ query?: never;
1132
+ url: '/repos/{canonical_id}';
1133
+ };
1134
+ export type GetRepoErrors = {
1135
+ /**
1136
+ * Validation Error
1137
+ */
1138
+ 422: HttpValidationError;
1139
+ };
1140
+ export type GetRepoError = GetRepoErrors[keyof GetRepoErrors];
1141
+ export type GetRepoResponses = {
1142
+ /**
1143
+ * Successful Response
1144
+ */
1145
+ 200: RepoDetailResponse;
1146
+ };
1147
+ export type GetRepoResponse = GetRepoResponses[keyof GetRepoResponses];
1148
+ export type GetContributorData = {
1149
+ body?: never;
1150
+ path: {
1151
+ /**
1152
+ * Contributor Id
1153
+ */
1154
+ contributor_id: number;
1155
+ };
1156
+ query?: never;
1157
+ url: '/contributors/{contributor_id}';
1158
+ };
1159
+ export type GetContributorErrors = {
1160
+ /**
1161
+ * Validation Error
1162
+ */
1163
+ 422: HttpValidationError;
1164
+ };
1165
+ export type GetContributorError = GetContributorErrors[keyof GetContributorErrors];
1166
+ export type GetContributorResponses = {
1167
+ /**
1168
+ * Successful Response
1169
+ */
1170
+ 200: ContributorDetailResponse;
1171
+ };
1172
+ export type GetContributorResponse = GetContributorResponses[keyof GetContributorResponses];