alter-sdk-github 0.2.1__py3-none-any.whl

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.
@@ -0,0 +1,4488 @@
1
+ """Generated native provider models. Do not edit."""
2
+
3
+ # ruff: noqa: E501 - native provider model names cannot be shortened without changing public types
4
+ from __future__ import annotations
5
+ from typing import TYPE_CHECKING, Any, Literal, NotRequired, Required, TypedDict, TypeAlias, Union
6
+
7
+ if TYPE_CHECKING:
8
+ from alter_sdk_github._github_models_00 import AlertCreatedAt
9
+ from alter_sdk_github._github_models_00 import AlertHtmlUrl
10
+ from alter_sdk_github._github_models_00 import AlertNumber
11
+ from alter_sdk_github._github_models_00 import AlertUrl
12
+ from alter_sdk_github._github_models_00 import AuthorAssociation
13
+ from alter_sdk_github._github_models_00 import AutoMerge
14
+ from alter_sdk_github._github_models_00 import BranchProtection
15
+ from alter_sdk_github._github_models_00 import BranchRestrictionPolicy
16
+ from alter_sdk_github._github_models_00 import CvssSeverities
17
+ from alter_sdk_github._github_models_00 import DeploymentReviewerType
18
+ from alter_sdk_github._github_models_13 import Integration
19
+ from alter_sdk_github._github_models_13 import Issue
20
+ from alter_sdk_github._github_models_13 import Label
21
+ from alter_sdk_github._github_models_13 import Link
22
+ from alter_sdk_github._github_models_13 import Manifest
23
+ from alter_sdk_github._github_models_13 import Metadata
24
+ from alter_sdk_github._github_models_13 import MinimalRepository
25
+ from alter_sdk_github._github_models_13 import NullableAlertUpdatedAt
26
+ from alter_sdk_github._github_models_13 import NullableCollaborator
27
+ from alter_sdk_github._github_models_13 import NullableIntegration
28
+ from alter_sdk_github._github_models_13 import NullableIssueEventIntent
29
+ from alter_sdk_github._github_models_13 import NullableIssueReference
30
+ from alter_sdk_github._github_models_13 import NullableLicenseSimple
31
+ from alter_sdk_github._github_models_13 import NullableMilestone
32
+ from alter_sdk_github._github_models_13 import NullableMinimalRepository
33
+ from alter_sdk_github._github_models_13 import NullableProjectsV2StatusUpdate
34
+ from alter_sdk_github._github_models_13 import NullableSecretScanningFirstDetectedLocation
35
+ from alter_sdk_github._github_models_13 import NullableSimpleUser
36
+ from alter_sdk_github._github_models_13 import OrgRulesetConditions
37
+ from alter_sdk_github._github_models_17 import Team
38
+ from alter_sdk_github._github_models_17 import TeamSimple
39
+
40
+ OutputworkflowRunUsageBillable = TypedDict(
41
+ "OutputworkflowRunUsageBillable",
42
+ {
43
+ "MACOS": NotRequired["OutputworkflowRunUsageBillableMACOS"],
44
+ "UBUNTU": NotRequired["OutputworkflowRunUsageBillableUBUNTU"],
45
+ "WINDOWS": NotRequired["OutputworkflowRunUsageBillableWINDOWS"],
46
+ },
47
+ total=False,
48
+ )
49
+ OutputworkflowRunUsageBillableMACOS = TypedDict(
50
+ "OutputworkflowRunUsageBillableMACOS",
51
+ {
52
+ "job_runs": NotRequired["list[OutputworkflowRunUsageBillableMACOSJobRunsItem]"],
53
+ "jobs": Required["int | str"],
54
+ "total_ms": Required["int | str"],
55
+ },
56
+ total=False,
57
+ )
58
+ OutputworkflowRunUsageBillableMACOSJobRunsItem = TypedDict(
59
+ "OutputworkflowRunUsageBillableMACOSJobRunsItem",
60
+ {"duration_ms": Required["int | str"], "job_id": Required["int | str"]},
61
+ total=False,
62
+ )
63
+ OutputworkflowRunUsageBillableUBUNTU = TypedDict(
64
+ "OutputworkflowRunUsageBillableUBUNTU",
65
+ {
66
+ "job_runs": NotRequired["list[OutputworkflowRunUsageBillableUBUNTUJobRunsItem]"],
67
+ "jobs": Required["int | str"],
68
+ "total_ms": Required["int | str"],
69
+ },
70
+ total=False,
71
+ )
72
+ OutputworkflowRunUsageBillableUBUNTUJobRunsItem = TypedDict(
73
+ "OutputworkflowRunUsageBillableUBUNTUJobRunsItem",
74
+ {"duration_ms": Required["int | str"], "job_id": Required["int | str"]},
75
+ total=False,
76
+ )
77
+ OutputworkflowRunUsageBillableWINDOWS = TypedDict(
78
+ "OutputworkflowRunUsageBillableWINDOWS",
79
+ {
80
+ "job_runs": NotRequired["list[OutputworkflowRunUsageBillableWINDOWSJobRunsItem]"],
81
+ "jobs": Required["int | str"],
82
+ "total_ms": Required["int | str"],
83
+ },
84
+ total=False,
85
+ )
86
+ OutputworkflowRunUsageBillableWINDOWSJobRunsItem = TypedDict(
87
+ "OutputworkflowRunUsageBillableWINDOWSJobRunsItem",
88
+ {"duration_ms": Required["int | str"], "job_id": Required["int | str"]},
89
+ total=False,
90
+ )
91
+ OutputworkflowUsage = TypedDict(
92
+ "OutputworkflowUsage", {"billable": Required["OutputworkflowUsageBillable"]}, total=False
93
+ )
94
+ OutputworkflowUsageBillable = TypedDict(
95
+ "OutputworkflowUsageBillable",
96
+ {
97
+ "MACOS": NotRequired["OutputworkflowUsageBillableMACOS"],
98
+ "UBUNTU": NotRequired["OutputworkflowUsageBillableUBUNTU"],
99
+ "WINDOWS": NotRequired["OutputworkflowUsageBillableWINDOWS"],
100
+ },
101
+ total=False,
102
+ )
103
+ OutputworkflowUsageBillableMACOS = TypedDict(
104
+ "OutputworkflowUsageBillableMACOS", {"total_ms": NotRequired["int | str"]}, total=False
105
+ )
106
+ OutputworkflowUsageBillableUBUNTU = TypedDict(
107
+ "OutputworkflowUsageBillableUBUNTU", {"total_ms": NotRequired["int | str"]}, total=False
108
+ )
109
+ OutputworkflowUsageBillableWINDOWS = TypedDict(
110
+ "OutputworkflowUsageBillableWINDOWS", {"total_ms": NotRequired["int | str"]}, total=False
111
+ )
112
+ Package = TypedDict(
113
+ "Package",
114
+ {
115
+ "created_at": Required["str"],
116
+ "html_url": Required["str"],
117
+ "id": Required["int"],
118
+ "name": Required["str"],
119
+ "owner": NotRequired["NullableSimpleUser"],
120
+ "package_type": Required[
121
+ "Literal['npm', 'maven', 'rubygems', 'docker', 'nuget', 'container']"
122
+ ],
123
+ "repository": NotRequired["NullableMinimalRepository"],
124
+ "updated_at": Required["str"],
125
+ "url": Required["str"],
126
+ "version_count": Required["int"],
127
+ "visibility": Required["Literal['private', 'public']"],
128
+ },
129
+ total=False,
130
+ )
131
+ PackageVersion = TypedDict(
132
+ "PackageVersion",
133
+ {
134
+ "created_at": Required["str"],
135
+ "deleted_at": NotRequired["str"],
136
+ "description": NotRequired["str"],
137
+ "html_url": NotRequired["str"],
138
+ "id": Required["int"],
139
+ "license": NotRequired["str"],
140
+ "metadata": NotRequired["PackageVersionMetadata"],
141
+ "name": Required["str"],
142
+ "package_html_url": Required["str"],
143
+ "updated_at": Required["str"],
144
+ "url": Required["str"],
145
+ },
146
+ total=False,
147
+ )
148
+ PackageVersionMetadata = TypedDict(
149
+ "PackageVersionMetadata",
150
+ {
151
+ "container": NotRequired["PackageVersionMetadataContainer"],
152
+ "docker": NotRequired["PackageVersionMetadataDocker"],
153
+ "package_type": Required[
154
+ "Literal['npm', 'maven', 'rubygems', 'docker', 'nuget', 'container']"
155
+ ],
156
+ },
157
+ total=False,
158
+ )
159
+ PackageVersionMetadataContainer = TypedDict(
160
+ "PackageVersionMetadataContainer", {"tags": Required["list[str]"]}, total=False
161
+ )
162
+ PackageVersionMetadataDocker = TypedDict(
163
+ "PackageVersionMetadataDocker", {"tag": NotRequired["list[str]"]}, total=False
164
+ )
165
+ Page = TypedDict(
166
+ "Page",
167
+ {
168
+ "build_type": NotRequired["Literal['legacy', 'workflow'] | None"],
169
+ "cname": Required["str | None"],
170
+ "custom_404": Required["bool"],
171
+ "html_url": NotRequired["str"],
172
+ "https_certificate": NotRequired["PagesHttpsCertificate"],
173
+ "https_enforced": NotRequired["bool"],
174
+ "pending_domain_unverified_at": NotRequired["str | None"],
175
+ "protected_domain_state": NotRequired[
176
+ "Literal['pending', 'verified', 'unverified'] | None"
177
+ ],
178
+ "public": Required["bool"],
179
+ "source": NotRequired["PagesSourceHash"],
180
+ "status": Required["Literal['built', 'building', 'errored'] | None"],
181
+ "url": Required["str"],
182
+ },
183
+ total=False,
184
+ )
185
+ PageBuild = TypedDict(
186
+ "PageBuild",
187
+ {
188
+ "commit": Required["str"],
189
+ "created_at": Required["str"],
190
+ "duration": Required["int"],
191
+ "error": Required["PageBuildError"],
192
+ "pusher": Required["NullableSimpleUser"],
193
+ "status": Required["str"],
194
+ "updated_at": Required["str"],
195
+ "url": Required["str"],
196
+ },
197
+ total=False,
198
+ )
199
+ PageBuildError = TypedDict("PageBuildError", {"message": Required["str | None"]}, total=False)
200
+ PageBuildStatus = TypedDict(
201
+ "PageBuildStatus", {"status": Required["str"], "url": Required["str"]}, total=False
202
+ )
203
+ PageDeployment = TypedDict(
204
+ "PageDeployment",
205
+ {
206
+ "id": Required["int | str"],
207
+ "page_url": Required["str"],
208
+ "preview_url": NotRequired["str"],
209
+ "status_url": Required["str"],
210
+ },
211
+ total=False,
212
+ )
213
+ PagesDeploymentStatus = TypedDict(
214
+ "PagesDeploymentStatus",
215
+ {
216
+ "status": NotRequired[
217
+ "Literal['deployment_in_progress', 'syncing_files', 'finished_file_sync', 'updating_pages', 'purging_cdn', 'deployment_cancelled', 'deployment_failed', 'deployment_content_failed', 'deployment_attempt_error', 'deployment_lost', 'succeed']"
218
+ ]
219
+ },
220
+ total=False,
221
+ )
222
+ PagesHealthCheck = TypedDict(
223
+ "PagesHealthCheck",
224
+ {
225
+ "alt_domain": NotRequired["PagesHealthCheckAltDomainVariant0 | None"],
226
+ "domain": NotRequired["PagesHealthCheckDomain"],
227
+ },
228
+ total=False,
229
+ )
230
+ PagesHealthCheckAltDomainVariant0 = TypedDict(
231
+ "PagesHealthCheckAltDomainVariant0",
232
+ {
233
+ "caa_error": NotRequired["str | None"],
234
+ "dns_resolves": NotRequired["bool"],
235
+ "enforces_https": NotRequired["bool"],
236
+ "has_cname_record": NotRequired["bool | None"],
237
+ "has_mx_records_present": NotRequired["bool | None"],
238
+ "host": NotRequired["str"],
239
+ "https_error": NotRequired["str | None"],
240
+ "is_a_record": NotRequired["bool | None"],
241
+ "is_apex_domain": NotRequired["bool"],
242
+ "is_cloudflare_ip": NotRequired["bool | None"],
243
+ "is_cname_to_fastly": NotRequired["bool | None"],
244
+ "is_cname_to_github_user_domain": NotRequired["bool | None"],
245
+ "is_cname_to_pages_dot_github_dot_com": NotRequired["bool | None"],
246
+ "is_fastly_ip": NotRequired["bool | None"],
247
+ "is_https_eligible": NotRequired["bool | None"],
248
+ "is_non_github_pages_ip_present": NotRequired["bool | None"],
249
+ "is_old_ip_address": NotRequired["bool | None"],
250
+ "is_pages_domain": NotRequired["bool"],
251
+ "is_pointed_to_github_pages_ip": NotRequired["bool | None"],
252
+ "is_proxied": NotRequired["bool | None"],
253
+ "is_served_by_pages": NotRequired["bool | None"],
254
+ "is_valid": NotRequired["bool"],
255
+ "is_valid_domain": NotRequired["bool"],
256
+ "nameservers": NotRequired["str"],
257
+ "reason": NotRequired["str | None"],
258
+ "responds_to_https": NotRequired["bool"],
259
+ "should_be_a_record": NotRequired["bool | None"],
260
+ "uri": NotRequired["str"],
261
+ },
262
+ total=False,
263
+ )
264
+ PagesHealthCheckDomain = TypedDict(
265
+ "PagesHealthCheckDomain",
266
+ {
267
+ "caa_error": NotRequired["str | None"],
268
+ "dns_resolves": NotRequired["bool"],
269
+ "enforces_https": NotRequired["bool"],
270
+ "has_cname_record": NotRequired["bool | None"],
271
+ "has_mx_records_present": NotRequired["bool | None"],
272
+ "host": NotRequired["str"],
273
+ "https_error": NotRequired["str | None"],
274
+ "is_a_record": NotRequired["bool | None"],
275
+ "is_apex_domain": NotRequired["bool"],
276
+ "is_cloudflare_ip": NotRequired["bool | None"],
277
+ "is_cname_to_fastly": NotRequired["bool | None"],
278
+ "is_cname_to_github_user_domain": NotRequired["bool | None"],
279
+ "is_cname_to_pages_dot_github_dot_com": NotRequired["bool | None"],
280
+ "is_fastly_ip": NotRequired["bool | None"],
281
+ "is_https_eligible": NotRequired["bool | None"],
282
+ "is_non_github_pages_ip_present": NotRequired["bool | None"],
283
+ "is_old_ip_address": NotRequired["bool | None"],
284
+ "is_pages_domain": NotRequired["bool"],
285
+ "is_pointed_to_github_pages_ip": NotRequired["bool | None"],
286
+ "is_proxied": NotRequired["bool | None"],
287
+ "is_served_by_pages": NotRequired["bool | None"],
288
+ "is_valid": NotRequired["bool"],
289
+ "is_valid_domain": NotRequired["bool"],
290
+ "nameservers": NotRequired["str"],
291
+ "reason": NotRequired["str | None"],
292
+ "responds_to_https": NotRequired["bool"],
293
+ "should_be_a_record": NotRequired["bool | None"],
294
+ "uri": NotRequired["str"],
295
+ },
296
+ total=False,
297
+ )
298
+ PagesHttpsCertificate = TypedDict(
299
+ "PagesHttpsCertificate",
300
+ {
301
+ "description": Required["str"],
302
+ "domains": Required["list[str]"],
303
+ "expires_at": NotRequired["str"],
304
+ "state": Required[
305
+ "Literal['new', 'authorization_created', 'authorization_pending', 'authorized', 'authorization_revoked', 'issued', 'uploaded', 'approved', 'errored', 'bad_authz', 'destroy_pending', 'dns_changed']"
306
+ ],
307
+ },
308
+ total=False,
309
+ )
310
+ PagesSourceHash = TypedDict(
311
+ "PagesSourceHash", {"branch": Required["str"], "path": Required["str"]}, total=False
312
+ )
313
+ ParentIssueAddedIssueEvent = TypedDict(
314
+ "ParentIssueAddedIssueEvent",
315
+ {
316
+ "actor": Required["SimpleUser"],
317
+ "commit_id": Required["str | None"],
318
+ "commit_url": Required["str | None"],
319
+ "created_at": Required["str"],
320
+ "event": Required["str"],
321
+ "id": Required["int"],
322
+ "node_id": Required["str"],
323
+ "parent_issue": Required["NullableIssueReference"],
324
+ "performed_via_github_app": Required["NullableIntegration"],
325
+ "url": Required["str"],
326
+ },
327
+ total=False,
328
+ )
329
+ ParentIssueRemovedIssueEvent = TypedDict(
330
+ "ParentIssueRemovedIssueEvent",
331
+ {
332
+ "actor": Required["SimpleUser"],
333
+ "commit_id": Required["str | None"],
334
+ "commit_url": Required["str | None"],
335
+ "created_at": Required["str"],
336
+ "event": Required["str"],
337
+ "id": Required["int"],
338
+ "node_id": Required["str"],
339
+ "parent_issue": Required["NullableIssueReference"],
340
+ "performed_via_github_app": Required["NullableIntegration"],
341
+ "url": Required["str"],
342
+ },
343
+ total=False,
344
+ )
345
+ ParticipationStats = TypedDict(
346
+ "ParticipationStats",
347
+ {"all": Required["list[int]"], "owner": Required["list[int]"]},
348
+ total=False,
349
+ )
350
+ PendingDeployment = TypedDict(
351
+ "PendingDeployment",
352
+ {
353
+ "current_user_can_approve": Required["bool"],
354
+ "environment": Required["PendingDeploymentEnvironment"],
355
+ "reviewers": Required["list[PendingDeploymentReviewersItem]"],
356
+ "wait_timer": Required["int"],
357
+ "wait_timer_started_at": Required["str | None"],
358
+ },
359
+ total=False,
360
+ )
361
+ PendingDeploymentEnvironment = TypedDict(
362
+ "PendingDeploymentEnvironment",
363
+ {
364
+ "html_url": NotRequired["str"],
365
+ "id": NotRequired["int"],
366
+ "name": NotRequired["str"],
367
+ "node_id": NotRequired["str"],
368
+ "url": NotRequired["str"],
369
+ },
370
+ total=False,
371
+ )
372
+ PendingDeploymentReviewersItem = TypedDict(
373
+ "PendingDeploymentReviewersItem",
374
+ {"reviewer": NotRequired["SimpleUser | Team"], "type": NotRequired["DeploymentReviewerType"]},
375
+ total=False,
376
+ )
377
+ PersonalAccessTokenRequest = TypedDict(
378
+ "PersonalAccessTokenRequest",
379
+ {
380
+ "created_at": Required["str"],
381
+ "id": Required["int"],
382
+ "owner": Required["SimpleUser"],
383
+ "permissions_added": Required["PersonalAccessTokenRequestPermissionsAdded"],
384
+ "permissions_result": Required["PersonalAccessTokenRequestPermissionsResult"],
385
+ "permissions_upgraded": Required["PersonalAccessTokenRequestPermissionsUpgraded"],
386
+ "repositories": Required["list[PersonalAccessTokenRequestRepositoriesVariant0Item] | None"],
387
+ "repository_count": Required["int | None"],
388
+ "repository_selection": Required["Literal['none', 'all', 'subset']"],
389
+ "token_expired": Required["bool"],
390
+ "token_expires_at": Required["str | None"],
391
+ "token_id": Required["int"],
392
+ "token_last_used_at": Required["str | None"],
393
+ "token_name": Required["str"],
394
+ },
395
+ total=False,
396
+ )
397
+ PersonalAccessTokenRequestPermissionsAdded = TypedDict(
398
+ "PersonalAccessTokenRequestPermissionsAdded",
399
+ {
400
+ "organization": NotRequired["dict[str, str]"],
401
+ "other": NotRequired["dict[str, str]"],
402
+ "repository": NotRequired["dict[str, str]"],
403
+ },
404
+ total=False,
405
+ )
406
+ PersonalAccessTokenRequestPermissionsResult = TypedDict(
407
+ "PersonalAccessTokenRequestPermissionsResult",
408
+ {
409
+ "organization": NotRequired["dict[str, str]"],
410
+ "other": NotRequired["dict[str, str]"],
411
+ "repository": NotRequired["dict[str, str]"],
412
+ },
413
+ total=False,
414
+ )
415
+ PersonalAccessTokenRequestPermissionsUpgraded = TypedDict(
416
+ "PersonalAccessTokenRequestPermissionsUpgraded",
417
+ {
418
+ "organization": NotRequired["dict[str, str]"],
419
+ "other": NotRequired["dict[str, str]"],
420
+ "repository": NotRequired["dict[str, str]"],
421
+ },
422
+ total=False,
423
+ )
424
+ PersonalAccessTokenRequestRepositoriesVariant0Item = TypedDict(
425
+ "PersonalAccessTokenRequestRepositoriesVariant0Item",
426
+ {
427
+ "full_name": Required["str"],
428
+ "id": Required["int"],
429
+ "name": Required["str"],
430
+ "node_id": Required["str"],
431
+ "private": Required["bool"],
432
+ },
433
+ total=False,
434
+ )
435
+ PorterAuthor = TypedDict(
436
+ "PorterAuthor",
437
+ {
438
+ "email": Required["str"],
439
+ "id": Required["int"],
440
+ "import_url": Required["str"],
441
+ "name": Required["str"],
442
+ "remote_id": Required["str"],
443
+ "remote_name": Required["str"],
444
+ "url": Required["str"],
445
+ },
446
+ total=False,
447
+ )
448
+ PorterLargeFile = TypedDict(
449
+ "PorterLargeFile",
450
+ {
451
+ "oid": Required["str"],
452
+ "path": Required["str"],
453
+ "ref_name": Required["str"],
454
+ "size": Required["int"],
455
+ },
456
+ total=False,
457
+ )
458
+ PreventSelfReview: TypeAlias = "bool"
459
+ PrivateUser = TypedDict(
460
+ "PrivateUser",
461
+ {
462
+ "avatar_url": Required["str"],
463
+ "bio": Required["str | None"],
464
+ "blog": Required["str | None"],
465
+ "business_plus": NotRequired["bool"],
466
+ "collaborators": Required["int"],
467
+ "company": Required["str | None"],
468
+ "created_at": Required["str"],
469
+ "disk_usage": Required["int"],
470
+ "email": Required["str | None"],
471
+ "events_url": Required["str"],
472
+ "followers": Required["int"],
473
+ "followers_url": Required["str"],
474
+ "following": Required["int"],
475
+ "following_url": Required["str"],
476
+ "gists_url": Required["str"],
477
+ "gravatar_id": Required["str | None"],
478
+ "hireable": Required["bool | None"],
479
+ "html_url": Required["str"],
480
+ "id": Required["int"],
481
+ "ldap_dn": NotRequired["str"],
482
+ "location": Required["str | None"],
483
+ "login": Required["str"],
484
+ "name": Required["str | None"],
485
+ "node_id": Required["str"],
486
+ "notification_email": NotRequired["str | None"],
487
+ "organizations_url": Required["str"],
488
+ "owned_private_repos": Required["int"],
489
+ "plan": NotRequired["PrivateUserPlan"],
490
+ "private_gists": Required["int"],
491
+ "public_gists": Required["int"],
492
+ "public_repos": Required["int"],
493
+ "received_events_url": Required["str"],
494
+ "repos_url": Required["str"],
495
+ "site_admin": Required["bool"],
496
+ "starred_url": Required["str"],
497
+ "subscriptions_url": Required["str"],
498
+ "total_private_repos": Required["int"],
499
+ "twitter_username": NotRequired["str | None"],
500
+ "two_factor_authentication": Required["bool"],
501
+ "type": Required["str"],
502
+ "updated_at": Required["str"],
503
+ "url": Required["str"],
504
+ "user_view_type": NotRequired["str"],
505
+ },
506
+ total=False,
507
+ )
508
+ PrivateUserPlan = TypedDict(
509
+ "PrivateUserPlan",
510
+ {
511
+ "collaborators": Required["int"],
512
+ "name": Required["str"],
513
+ "private_repos": Required["int"],
514
+ "space": Required["int"],
515
+ },
516
+ total=False,
517
+ )
518
+ PrivateVulnerabilityReportCreate = TypedDict(
519
+ "PrivateVulnerabilityReportCreate",
520
+ {
521
+ "cvss_vector_string": NotRequired["str | None"],
522
+ "cwe_ids": NotRequired["list[str] | None"],
523
+ "description": Required["str"],
524
+ "severity": NotRequired["Literal['critical', 'high', 'medium', 'low'] | None"],
525
+ "start_private_fork": NotRequired["bool"],
526
+ "summary": Required["str"],
527
+ "vulnerabilities": NotRequired[
528
+ "list[PrivateVulnerabilityReportCreateVulnerabilitiesVariant0Item] | None"
529
+ ],
530
+ },
531
+ total=False,
532
+ )
533
+ PrivateVulnerabilityReportCreateVulnerabilitiesVariant0Item = TypedDict(
534
+ "PrivateVulnerabilityReportCreateVulnerabilitiesVariant0Item",
535
+ {
536
+ "package": Required["PrivateVulnerabilityReportCreateVulnerabilitiesVariant0ItemPackage"],
537
+ "patched_versions": NotRequired["str | None"],
538
+ "vulnerable_functions": NotRequired["list[str] | None"],
539
+ "vulnerable_version_range": NotRequired["str | None"],
540
+ },
541
+ total=False,
542
+ )
543
+ PrivateVulnerabilityReportCreateVulnerabilitiesVariant0ItemPackage = TypedDict(
544
+ "PrivateVulnerabilityReportCreateVulnerabilitiesVariant0ItemPackage",
545
+ {"ecosystem": Required["SecurityAdvisoryEcosystems"], "name": NotRequired["str | None"]},
546
+ total=False,
547
+ )
548
+ ProjectsV2 = TypedDict(
549
+ "ProjectsV2",
550
+ {
551
+ "closed_at": Required["str | None"],
552
+ "created_at": Required["str"],
553
+ "creator": Required["SimpleUser"],
554
+ "deleted_at": Required["str | None"],
555
+ "deleted_by": Required["NullableSimpleUser"],
556
+ "description": Required["str | None"],
557
+ "id": Required["float"],
558
+ "is_template": NotRequired["bool"],
559
+ "latest_status_update": NotRequired["NullableProjectsV2StatusUpdate"],
560
+ "node_id": Required["str"],
561
+ "number": Required["int"],
562
+ "owner": Required["SimpleUser"],
563
+ "public": Required["bool"],
564
+ "short_description": Required["str | None"],
565
+ "state": NotRequired["Literal['open', 'closed']"],
566
+ "title": Required["str"],
567
+ "updated_at": Required["str"],
568
+ },
569
+ total=False,
570
+ )
571
+ ProjectsV2DraftIssue = TypedDict(
572
+ "ProjectsV2DraftIssue",
573
+ {
574
+ "body": NotRequired["str | None"],
575
+ "created_at": Required["str"],
576
+ "id": Required["float"],
577
+ "node_id": Required["str"],
578
+ "title": Required["str"],
579
+ "updated_at": Required["str"],
580
+ "user": Required["NullableSimpleUser"],
581
+ },
582
+ total=False,
583
+ )
584
+ ProjectsV2Field = TypedDict(
585
+ "ProjectsV2Field",
586
+ {
587
+ "configuration": NotRequired["ProjectsV2FieldConfiguration"],
588
+ "created_at": Required["str"],
589
+ "data_type": Required[
590
+ "Literal['assignees', 'linked_pull_requests', 'reviewers', 'labels', 'milestone', 'repository', 'title', 'text', 'single_select', 'number', 'date', 'iteration', 'issue_type', 'parent_issue', 'sub_issues_progress']"
591
+ ],
592
+ "id": Required["int"],
593
+ "issue_field_id": NotRequired["int"],
594
+ "name": Required["str"],
595
+ "node_id": NotRequired["str"],
596
+ "options": NotRequired["list[ProjectsV2SingleSelectOptions]"],
597
+ "project_url": Required["str"],
598
+ "updated_at": Required["str"],
599
+ },
600
+ total=False,
601
+ )
602
+ ProjectsV2FieldConfiguration = TypedDict(
603
+ "ProjectsV2FieldConfiguration",
604
+ {
605
+ "duration": NotRequired["int"],
606
+ "iterations": NotRequired["list[ProjectsV2IterationSettings]"],
607
+ "start_day": NotRequired["int"],
608
+ },
609
+ total=False,
610
+ )
611
+ ProjectsV2FieldIterationConfiguration = TypedDict(
612
+ "ProjectsV2FieldIterationConfiguration",
613
+ {
614
+ "duration": Required["int"],
615
+ "iterations": NotRequired["list[ProjectsV2FieldIterationConfigurationIterationsItem]"],
616
+ "start_date": Required["str"],
617
+ },
618
+ total=False,
619
+ )
620
+ ProjectsV2FieldIterationConfigurationIterationsItem = TypedDict(
621
+ "ProjectsV2FieldIterationConfigurationIterationsItem",
622
+ {"duration": Required["int"], "start_date": Required["str"], "title": Required["str"]},
623
+ total=False,
624
+ )
625
+ ProjectsV2FieldSingleSelectOption = TypedDict(
626
+ "ProjectsV2FieldSingleSelectOption",
627
+ {
628
+ "color": NotRequired[
629
+ "Literal['BLUE', 'GRAY', 'GREEN', 'ORANGE', 'PINK', 'PURPLE', 'RED', 'YELLOW']"
630
+ ],
631
+ "description": NotRequired["str"],
632
+ "name": NotRequired["str"],
633
+ },
634
+ total=False,
635
+ )
636
+ ProjectsV2Item = TypedDict(
637
+ "ProjectsV2Item",
638
+ {
639
+ "archived_at": Required["str | None"],
640
+ "content_node_id": Required["str"],
641
+ "content_type": Required["ProjectsV2ItemContentType"],
642
+ "created_at": Required["str"],
643
+ "creator": NotRequired["SimpleUser"],
644
+ "id": Required["float"],
645
+ "node_id": NotRequired["str"],
646
+ "project_node_id": NotRequired["str"],
647
+ "updated_at": Required["str"],
648
+ },
649
+ total=False,
650
+ )
651
+ ProjectsV2ItemContentType: TypeAlias = "Literal['Issue', 'PullRequest', 'DraftIssue']"
652
+ ProjectsV2ItemSimple = TypedDict(
653
+ "ProjectsV2ItemSimple",
654
+ {
655
+ "archived_at": Required["str | None"],
656
+ "content": NotRequired["Issue | PullRequestSimple | ProjectsV2DraftIssue"],
657
+ "content_type": Required["ProjectsV2ItemContentType"],
658
+ "created_at": Required["str"],
659
+ "creator": NotRequired["SimpleUser"],
660
+ "id": Required["float"],
661
+ "item_url": NotRequired["str"],
662
+ "node_id": NotRequired["str"],
663
+ "project_url": NotRequired["str"],
664
+ "updated_at": Required["str"],
665
+ },
666
+ total=False,
667
+ )
668
+ ProjectsV2ItemWithContent = TypedDict(
669
+ "ProjectsV2ItemWithContent",
670
+ {
671
+ "archived_at": Required["str | None"],
672
+ "content": NotRequired["dict[str, object] | None"],
673
+ "content_type": Required["ProjectsV2ItemContentType"],
674
+ "created_at": Required["str"],
675
+ "creator": NotRequired["SimpleUser"],
676
+ "fields": NotRequired["list[dict[str, object]]"],
677
+ "id": Required["float"],
678
+ "item_url": NotRequired["str | None"],
679
+ "node_id": NotRequired["str"],
680
+ "project_url": NotRequired["str"],
681
+ "updated_at": Required["str"],
682
+ },
683
+ total=False,
684
+ )
685
+ ProjectsV2IterationSetting = TypedDict(
686
+ "ProjectsV2IterationSetting",
687
+ {
688
+ "completed": NotRequired["bool"],
689
+ "duration": NotRequired["float | None"],
690
+ "id": Required["str"],
691
+ "start_date": NotRequired["str | None"],
692
+ "title": Required["str"],
693
+ "title_html": NotRequired["str"],
694
+ },
695
+ total=False,
696
+ )
697
+ ProjectsV2IterationSettings = TypedDict(
698
+ "ProjectsV2IterationSettings",
699
+ {
700
+ "completed": Required["bool"],
701
+ "duration": Required["int"],
702
+ "id": Required["str"],
703
+ "start_date": Required["str"],
704
+ "title": Required["ProjectsV2IterationSettingsTitle"],
705
+ },
706
+ total=False,
707
+ )
708
+ ProjectsV2IterationSettingsTitle = TypedDict(
709
+ "ProjectsV2IterationSettingsTitle",
710
+ {"html": Required["str"], "raw": Required["str"]},
711
+ total=False,
712
+ )
713
+ ProjectsV2SingleSelectOption = TypedDict(
714
+ "ProjectsV2SingleSelectOption",
715
+ {
716
+ "color": NotRequired["str | None"],
717
+ "description": NotRequired["str | None"],
718
+ "id": Required["str"],
719
+ "name": Required["str"],
720
+ },
721
+ total=False,
722
+ )
723
+ ProjectsV2SingleSelectOptions = TypedDict(
724
+ "ProjectsV2SingleSelectOptions",
725
+ {
726
+ "color": Required["str"],
727
+ "description": Required["ProjectsV2SingleSelectOptionsDescription"],
728
+ "id": Required["str"],
729
+ "name": Required["ProjectsV2SingleSelectOptionsName"],
730
+ },
731
+ total=False,
732
+ )
733
+ ProjectsV2SingleSelectOptionsDescription = TypedDict(
734
+ "ProjectsV2SingleSelectOptionsDescription",
735
+ {"html": Required["str"], "raw": Required["str"]},
736
+ total=False,
737
+ )
738
+ ProjectsV2SingleSelectOptionsName = TypedDict(
739
+ "ProjectsV2SingleSelectOptionsName",
740
+ {"html": Required["str"], "raw": Required["str"]},
741
+ total=False,
742
+ )
743
+ ProjectsV2StatusUpdate = TypedDict(
744
+ "ProjectsV2StatusUpdate",
745
+ {
746
+ "body": NotRequired["str | None"],
747
+ "created_at": Required["str"],
748
+ "creator": NotRequired["SimpleUser"],
749
+ "id": Required["float"],
750
+ "node_id": Required["str"],
751
+ "project_node_id": NotRequired["str"],
752
+ "start_date": NotRequired["str"],
753
+ "status": NotRequired[
754
+ "Literal['INACTIVE', 'ON_TRACK', 'AT_RISK', 'OFF_TRACK', 'COMPLETE'] | None"
755
+ ],
756
+ "target_date": NotRequired["str"],
757
+ "updated_at": Required["str"],
758
+ },
759
+ total=False,
760
+ )
761
+ ProjectsV2View = TypedDict(
762
+ "ProjectsV2View",
763
+ {
764
+ "created_at": Required["str"],
765
+ "creator": Required["ProjectsV2ViewCreator"],
766
+ "filter": NotRequired["str | None"],
767
+ "group_by": Required["list[int]"],
768
+ "html_url": Required["str"],
769
+ "id": Required["int"],
770
+ "layout": Required["Literal['table', 'board', 'roadmap']"],
771
+ "name": Required["str"],
772
+ "node_id": Required["str"],
773
+ "number": Required["int"],
774
+ "project_url": Required["str"],
775
+ "sort_by": Required["list[list[int | str]]"],
776
+ "updated_at": Required["str"],
777
+ "vertical_group_by": Required["list[int]"],
778
+ "visible_fields": Required["list[int]"],
779
+ },
780
+ total=False,
781
+ )
782
+ ProjectsV2ViewCreator = TypedDict(
783
+ "ProjectsV2ViewCreator",
784
+ {
785
+ "avatar_url": Required["str"],
786
+ "email": NotRequired["str | None"],
787
+ "events_url": Required["str"],
788
+ "followers_url": Required["str"],
789
+ "following_url": Required["str"],
790
+ "gists_url": Required["str"],
791
+ "gravatar_id": Required["str | None"],
792
+ "html_url": Required["str"],
793
+ "id": Required["int"],
794
+ "login": Required["str"],
795
+ "name": NotRequired["str | None"],
796
+ "node_id": Required["str"],
797
+ "organizations_url": Required["str"],
798
+ "received_events_url": Required["str"],
799
+ "repos_url": Required["str"],
800
+ "site_admin": Required["bool"],
801
+ "starred_at": NotRequired["str"],
802
+ "starred_url": Required["str"],
803
+ "subscriptions_url": Required["str"],
804
+ "type": Required["str"],
805
+ "url": Required["str"],
806
+ "user_view_type": NotRequired["str"],
807
+ },
808
+ total=False,
809
+ )
810
+ ProtectedBranch = TypedDict(
811
+ "ProtectedBranch",
812
+ {
813
+ "allow_deletions": NotRequired["ProtectedBranchAllowDeletions"],
814
+ "allow_force_pushes": NotRequired["ProtectedBranchAllowForcePushes"],
815
+ "allow_fork_syncing": NotRequired["ProtectedBranchAllowForkSyncing"],
816
+ "block_creations": NotRequired["ProtectedBranchBlockCreations"],
817
+ "enforce_admins": NotRequired["ProtectedBranchEnforceAdmins"],
818
+ "lock_branch": NotRequired["ProtectedBranchLockBranch"],
819
+ "required_conversation_resolution": NotRequired[
820
+ "ProtectedBranchRequiredConversationResolution"
821
+ ],
822
+ "required_linear_history": NotRequired["ProtectedBranchRequiredLinearHistory"],
823
+ "required_pull_request_reviews": NotRequired["ProtectedBranchRequiredPullRequestReviews"],
824
+ "required_signatures": NotRequired["ProtectedBranchRequiredSignatures"],
825
+ "required_status_checks": NotRequired["StatusCheckPolicy"],
826
+ "restrictions": NotRequired["BranchRestrictionPolicy"],
827
+ "url": Required["str"],
828
+ },
829
+ total=False,
830
+ )
831
+ ProtectedBranchAdminEnforced = TypedDict(
832
+ "ProtectedBranchAdminEnforced",
833
+ {"enabled": Required["bool"], "url": Required["str"]},
834
+ total=False,
835
+ )
836
+ ProtectedBranchAllowDeletions = TypedDict(
837
+ "ProtectedBranchAllowDeletions", {"enabled": Required["bool"]}, total=False
838
+ )
839
+ ProtectedBranchAllowForcePushes = TypedDict(
840
+ "ProtectedBranchAllowForcePushes", {"enabled": Required["bool"]}, total=False
841
+ )
842
+ ProtectedBranchAllowForkSyncing = TypedDict(
843
+ "ProtectedBranchAllowForkSyncing", {"enabled": NotRequired["bool"]}, total=False
844
+ )
845
+ ProtectedBranchBlockCreations = TypedDict(
846
+ "ProtectedBranchBlockCreations", {"enabled": Required["bool"]}, total=False
847
+ )
848
+ ProtectedBranchEnforceAdmins = TypedDict(
849
+ "ProtectedBranchEnforceAdmins",
850
+ {"enabled": Required["bool"], "url": Required["str"]},
851
+ total=False,
852
+ )
853
+ ProtectedBranchLockBranch = TypedDict(
854
+ "ProtectedBranchLockBranch", {"enabled": NotRequired["bool"]}, total=False
855
+ )
856
+ ProtectedBranchPullRequestReview = TypedDict(
857
+ "ProtectedBranchPullRequestReview",
858
+ {
859
+ "bypass_pull_request_allowances": NotRequired[
860
+ "ProtectedBranchPullRequestReviewBypassPullRequestAllowances"
861
+ ],
862
+ "dismiss_stale_reviews": Required["bool"],
863
+ "dismissal_restrictions": NotRequired[
864
+ "ProtectedBranchPullRequestReviewDismissalRestrictions"
865
+ ],
866
+ "require_code_owner_reviews": Required["bool"],
867
+ "require_last_push_approval": NotRequired["bool"],
868
+ "required_approving_review_count": NotRequired["int"],
869
+ "url": NotRequired["str"],
870
+ },
871
+ total=False,
872
+ )
873
+ ProtectedBranchPullRequestReviewBypassPullRequestAllowances = TypedDict(
874
+ "ProtectedBranchPullRequestReviewBypassPullRequestAllowances",
875
+ {
876
+ "apps": NotRequired["list[Integration]"],
877
+ "teams": NotRequired["list[Team]"],
878
+ "users": NotRequired["list[SimpleUser]"],
879
+ },
880
+ total=False,
881
+ )
882
+ ProtectedBranchPullRequestReviewDismissalRestrictions = TypedDict(
883
+ "ProtectedBranchPullRequestReviewDismissalRestrictions",
884
+ {
885
+ "apps": NotRequired["list[Integration]"],
886
+ "teams": NotRequired["list[Team]"],
887
+ "teams_url": NotRequired["str"],
888
+ "url": NotRequired["str"],
889
+ "users": NotRequired["list[SimpleUser]"],
890
+ "users_url": NotRequired["str"],
891
+ },
892
+ total=False,
893
+ )
894
+ ProtectedBranchRequiredConversationResolution = TypedDict(
895
+ "ProtectedBranchRequiredConversationResolution", {"enabled": NotRequired["bool"]}, total=False
896
+ )
897
+ ProtectedBranchRequiredLinearHistory = TypedDict(
898
+ "ProtectedBranchRequiredLinearHistory", {"enabled": Required["bool"]}, total=False
899
+ )
900
+ ProtectedBranchRequiredPullRequestReviews = TypedDict(
901
+ "ProtectedBranchRequiredPullRequestReviews",
902
+ {
903
+ "bypass_pull_request_allowances": NotRequired[
904
+ "ProtectedBranchRequiredPullRequestReviewsBypassPullRequestAllowances"
905
+ ],
906
+ "dismiss_stale_reviews": NotRequired["bool"],
907
+ "dismissal_restrictions": NotRequired[
908
+ "ProtectedBranchRequiredPullRequestReviewsDismissalRestrictions"
909
+ ],
910
+ "require_code_owner_reviews": NotRequired["bool"],
911
+ "require_last_push_approval": NotRequired["bool"],
912
+ "required_approving_review_count": NotRequired["int"],
913
+ "url": Required["str"],
914
+ },
915
+ total=False,
916
+ )
917
+ ProtectedBranchRequiredPullRequestReviewsBypassPullRequestAllowances = TypedDict(
918
+ "ProtectedBranchRequiredPullRequestReviewsBypassPullRequestAllowances",
919
+ {
920
+ "apps": NotRequired["list[Integration]"],
921
+ "teams": Required["list[Team]"],
922
+ "users": Required["list[SimpleUser]"],
923
+ },
924
+ total=False,
925
+ )
926
+ ProtectedBranchRequiredPullRequestReviewsDismissalRestrictions = TypedDict(
927
+ "ProtectedBranchRequiredPullRequestReviewsDismissalRestrictions",
928
+ {
929
+ "apps": NotRequired["list[Integration]"],
930
+ "teams": Required["list[Team]"],
931
+ "teams_url": Required["str"],
932
+ "url": Required["str"],
933
+ "users": Required["list[SimpleUser]"],
934
+ "users_url": Required["str"],
935
+ },
936
+ total=False,
937
+ )
938
+ ProtectedBranchRequiredSignatures = TypedDict(
939
+ "ProtectedBranchRequiredSignatures",
940
+ {"enabled": Required["bool"], "url": Required["str"]},
941
+ total=False,
942
+ )
943
+ ProtectedBranchRequiredStatusCheck = TypedDict(
944
+ "ProtectedBranchRequiredStatusCheck",
945
+ {
946
+ "checks": Required["list[ProtectedBranchRequiredStatusCheckChecksItem]"],
947
+ "contexts": Required["list[str]"],
948
+ "contexts_url": NotRequired["str"],
949
+ "enforcement_level": NotRequired["str"],
950
+ "strict": NotRequired["bool"],
951
+ "url": NotRequired["str"],
952
+ },
953
+ total=False,
954
+ )
955
+ ProtectedBranchRequiredStatusCheckChecksItem = TypedDict(
956
+ "ProtectedBranchRequiredStatusCheckChecksItem",
957
+ {"app_id": Required["int | None"], "context": Required["str"]},
958
+ total=False,
959
+ )
960
+ PublicEvent: TypeAlias = "dict[str, object]"
961
+ PublicIp = TypedDict(
962
+ "PublicIp",
963
+ {"enabled": NotRequired["bool"], "length": NotRequired["int"], "prefix": NotRequired["str"]},
964
+ total=False,
965
+ )
966
+ PublicUser = TypedDict(
967
+ "PublicUser",
968
+ {
969
+ "avatar_url": Required["str"],
970
+ "bio": Required["str | None"],
971
+ "blog": Required["str | None"],
972
+ "collaborators": NotRequired["int"],
973
+ "company": Required["str | None"],
974
+ "created_at": Required["str"],
975
+ "disk_usage": NotRequired["int"],
976
+ "email": Required["str | None"],
977
+ "events_url": Required["str"],
978
+ "followers": Required["int"],
979
+ "followers_url": Required["str"],
980
+ "following": Required["int"],
981
+ "following_url": Required["str"],
982
+ "gists_url": Required["str"],
983
+ "gravatar_id": Required["str | None"],
984
+ "hireable": Required["bool | None"],
985
+ "html_url": Required["str"],
986
+ "id": Required["int"],
987
+ "location": Required["str | None"],
988
+ "login": Required["str"],
989
+ "name": Required["str | None"],
990
+ "node_id": Required["str"],
991
+ "notification_email": NotRequired["str | None"],
992
+ "organizations_url": Required["str"],
993
+ "owned_private_repos": NotRequired["int"],
994
+ "plan": NotRequired["PublicUserPlan"],
995
+ "private_gists": NotRequired["int"],
996
+ "public_gists": Required["int"],
997
+ "public_repos": Required["int"],
998
+ "received_events_url": Required["str"],
999
+ "repos_url": Required["str"],
1000
+ "site_admin": Required["bool"],
1001
+ "starred_url": Required["str"],
1002
+ "subscriptions_url": Required["str"],
1003
+ "total_private_repos": NotRequired["int"],
1004
+ "twitter_username": NotRequired["str | None"],
1005
+ "type": Required["str"],
1006
+ "updated_at": Required["str"],
1007
+ "url": Required["str"],
1008
+ "user_view_type": NotRequired["str"],
1009
+ },
1010
+ total=False,
1011
+ )
1012
+ PublicUserPlan = TypedDict(
1013
+ "PublicUserPlan",
1014
+ {
1015
+ "collaborators": Required["int"],
1016
+ "name": Required["str"],
1017
+ "private_repos": Required["int"],
1018
+ "space": Required["int"],
1019
+ },
1020
+ total=False,
1021
+ )
1022
+ PullRequest = TypedDict(
1023
+ "PullRequest",
1024
+ {
1025
+ "_links": Required["PullRequestLinks"],
1026
+ "active_lock_reason": NotRequired["str | None"],
1027
+ "additions": Required["int"],
1028
+ "assignees": NotRequired["list[SimpleUser]"],
1029
+ "author_association": Required["AuthorAssociation"],
1030
+ "auto_merge": Required["AutoMerge"],
1031
+ "base": Required["PullRequestBase"],
1032
+ "body": Required["str | None"],
1033
+ "changed_files": Required["int"],
1034
+ "closed_at": Required["str | None"],
1035
+ "comments": Required["int"],
1036
+ "comments_url": Required["str"],
1037
+ "commits": Required["int"],
1038
+ "commits_url": Required["str"],
1039
+ "created_at": Required["str"],
1040
+ "deletions": Required["int"],
1041
+ "diff_url": Required["str"],
1042
+ "draft": NotRequired["bool"],
1043
+ "head": Required["PullRequestHead"],
1044
+ "html_url": Required["str"],
1045
+ "id": Required["int"],
1046
+ "issue_url": Required["str"],
1047
+ "labels": Required["list[PullRequestLabelsItem]"],
1048
+ "locked": Required["bool"],
1049
+ "maintainer_can_modify": Required["bool"],
1050
+ "mergeable": Required["bool | None"],
1051
+ "mergeable_state": Required["str"],
1052
+ "merged": Required["bool"],
1053
+ "merged_at": Required["str | None"],
1054
+ "merged_by": Required["NullableSimpleUser"],
1055
+ "milestone": Required["NullableMilestone"],
1056
+ "node_id": Required["str"],
1057
+ "number": Required["int"],
1058
+ "patch_url": Required["str"],
1059
+ "rebaseable": NotRequired["bool | None"],
1060
+ "requested_reviewers": NotRequired["list[SimpleUser]"],
1061
+ "requested_teams": NotRequired["list[TeamSimple]"],
1062
+ "review_comment_url": Required["str"],
1063
+ "review_comments": Required["int"],
1064
+ "review_comments_url": Required["str"],
1065
+ "stack": NotRequired["PullRequestStack"],
1066
+ "state": Required["Literal['open', 'closed']"],
1067
+ "statuses_url": Required["str"],
1068
+ "title": Required["str"],
1069
+ "updated_at": Required["str"],
1070
+ "url": Required["str"],
1071
+ "user": Required["SimpleUser"],
1072
+ },
1073
+ total=False,
1074
+ )
1075
+ PullRequestBase = TypedDict(
1076
+ "PullRequestBase",
1077
+ {
1078
+ "label": Required["str"],
1079
+ "ref": Required["str"],
1080
+ "repo": Required["Repository"],
1081
+ "sha": Required["str"],
1082
+ "user": Required["SimpleUser"],
1083
+ },
1084
+ total=False,
1085
+ )
1086
+ PullRequestEvent = TypedDict(
1087
+ "PullRequestEvent",
1088
+ {
1089
+ "action": Required["str"],
1090
+ "assignee": NotRequired["SimpleUser"],
1091
+ "assignees": NotRequired["list[SimpleUser]"],
1092
+ "label": NotRequired["Label"],
1093
+ "labels": NotRequired["list[Label]"],
1094
+ "number": Required["int"],
1095
+ "pull_request": Required["PullRequestMinimal"],
1096
+ },
1097
+ total=False,
1098
+ )
1099
+ PullRequestHead = TypedDict(
1100
+ "PullRequestHead",
1101
+ {
1102
+ "label": Required["str"],
1103
+ "ref": Required["str"],
1104
+ "repo": Required["Repository"],
1105
+ "sha": Required["str"],
1106
+ "user": Required["SimpleUser"],
1107
+ },
1108
+ total=False,
1109
+ )
1110
+ PullRequestLabelsItem = TypedDict(
1111
+ "PullRequestLabelsItem",
1112
+ {
1113
+ "archived_by": Required["PullRequestLabelsItemArchivedByVariant0 | None"],
1114
+ "color": Required["str"],
1115
+ "default": Required["bool"],
1116
+ "description": Required["str | None"],
1117
+ "id": Required["int"],
1118
+ "name": Required["str"],
1119
+ "node_id": Required["str"],
1120
+ "url": Required["str"],
1121
+ },
1122
+ total=False,
1123
+ )
1124
+ PullRequestLabelsItemArchivedByVariant0 = TypedDict(
1125
+ "PullRequestLabelsItemArchivedByVariant0",
1126
+ {
1127
+ "avatar_url": Required["str"],
1128
+ "email": NotRequired["str | None"],
1129
+ "events_url": Required["str"],
1130
+ "followers_url": Required["str"],
1131
+ "following_url": Required["str"],
1132
+ "gists_url": Required["str"],
1133
+ "gravatar_id": Required["str | None"],
1134
+ "html_url": Required["str"],
1135
+ "id": Required["int"],
1136
+ "login": Required["str"],
1137
+ "name": NotRequired["str | None"],
1138
+ "node_id": Required["str"],
1139
+ "organizations_url": Required["str"],
1140
+ "received_events_url": Required["str"],
1141
+ "repos_url": Required["str"],
1142
+ "site_admin": Required["bool"],
1143
+ "starred_at": NotRequired["str"],
1144
+ "starred_url": Required["str"],
1145
+ "subscriptions_url": Required["str"],
1146
+ "type": Required["str"],
1147
+ "url": Required["str"],
1148
+ "user_view_type": NotRequired["str"],
1149
+ },
1150
+ total=False,
1151
+ )
1152
+ PullRequestLinks = TypedDict(
1153
+ "PullRequestLinks",
1154
+ {
1155
+ "comments": Required["Link"],
1156
+ "commits": Required["Link"],
1157
+ "html": Required["Link"],
1158
+ "issue": Required["Link"],
1159
+ "review_comment": Required["Link"],
1160
+ "review_comments": Required["Link"],
1161
+ "self": Required["Link"],
1162
+ "statuses": Required["Link"],
1163
+ },
1164
+ total=False,
1165
+ )
1166
+ PullRequestMergeAsyncResult = TypedDict(
1167
+ "PullRequestMergeAsyncResult",
1168
+ {
1169
+ "details": Required[
1170
+ "PullRequestMergeAsyncResultDetailsVariant0 | PullRequestMergeAsyncResultDetailsVariant1 | PullRequestMergeAsyncResultDetailsVariant2 | PullRequestMergeAsyncResultDetailsVariant3"
1171
+ ],
1172
+ "status": Required["Literal['pending', 'merged', 'enqueued', 'failed']"],
1173
+ },
1174
+ total=False,
1175
+ )
1176
+ PullRequestMergeAsyncResultDetailsVariant0 = TypedDict(
1177
+ "PullRequestMergeAsyncResultDetailsVariant0",
1178
+ {
1179
+ "bypass_rules": NotRequired["bool"],
1180
+ "expected_head_sha": Required["str"],
1181
+ "merge_action": Required["Literal['default', 'merge_queue', 'direct_merge']"],
1182
+ "merge_method": Required["Literal['default', 'merge', 'squash', 'rebase']"],
1183
+ "message": Required["str"],
1184
+ "uuid": Required["str"],
1185
+ },
1186
+ total=False,
1187
+ )
1188
+ PullRequestMergeAsyncResultDetailsVariant1 = TypedDict(
1189
+ "PullRequestMergeAsyncResultDetailsVariant1", {"message": Required["str"]}, total=False
1190
+ )
1191
+ PullRequestMergeAsyncResultDetailsVariant2 = TypedDict(
1192
+ "PullRequestMergeAsyncResultDetailsVariant2", {"message": Required["str"]}, total=False
1193
+ )
1194
+ PullRequestMergeAsyncResultDetailsVariant3 = TypedDict(
1195
+ "PullRequestMergeAsyncResultDetailsVariant3",
1196
+ {"message": Required["str"], "sha": Required["str"]},
1197
+ total=False,
1198
+ )
1199
+ PullRequestMergeResult = TypedDict(
1200
+ "PullRequestMergeResult",
1201
+ {"merged": Required["bool"], "message": Required["str"], "sha": Required["str"]},
1202
+ total=False,
1203
+ )
1204
+ PullRequestMinimal = TypedDict(
1205
+ "PullRequestMinimal",
1206
+ {
1207
+ "base": Required["PullRequestMinimalBase"],
1208
+ "head": Required["PullRequestMinimalHead"],
1209
+ "id": Required["int"],
1210
+ "number": Required["int"],
1211
+ "url": Required["str"],
1212
+ },
1213
+ total=False,
1214
+ )
1215
+ PullRequestMinimalBase = TypedDict(
1216
+ "PullRequestMinimalBase",
1217
+ {
1218
+ "ref": Required["str"],
1219
+ "repo": Required["PullRequestMinimalBaseRepo"],
1220
+ "sha": Required["str"],
1221
+ },
1222
+ total=False,
1223
+ )
1224
+ PullRequestMinimalBaseRepo = TypedDict(
1225
+ "PullRequestMinimalBaseRepo",
1226
+ {"id": Required["int"], "name": Required["str"], "url": Required["str"]},
1227
+ total=False,
1228
+ )
1229
+ PullRequestMinimalHead = TypedDict(
1230
+ "PullRequestMinimalHead",
1231
+ {
1232
+ "ref": Required["str"],
1233
+ "repo": Required["PullRequestMinimalHeadRepo"],
1234
+ "sha": Required["str"],
1235
+ },
1236
+ total=False,
1237
+ )
1238
+ PullRequestMinimalHeadRepo = TypedDict(
1239
+ "PullRequestMinimalHeadRepo",
1240
+ {"id": Required["int"], "name": Required["str"], "url": Required["str"]},
1241
+ total=False,
1242
+ )
1243
+ PullRequestReview = TypedDict(
1244
+ "PullRequestReview",
1245
+ {
1246
+ "_links": Required["PullRequestReviewLinks"],
1247
+ "author_association": Required["AuthorAssociation"],
1248
+ "body": Required["str"],
1249
+ "body_html": NotRequired["str"],
1250
+ "body_text": NotRequired["str"],
1251
+ "commit_id": Required["str | None"],
1252
+ "html_url": Required["str"],
1253
+ "id": Required["int"],
1254
+ "node_id": Required["str"],
1255
+ "pull_request_url": Required["str"],
1256
+ "state": Required["str"],
1257
+ "submitted_at": NotRequired["str"],
1258
+ "user": Required["NullableSimpleUser"],
1259
+ },
1260
+ total=False,
1261
+ )
1262
+ PullRequestReviewComment = TypedDict(
1263
+ "PullRequestReviewComment",
1264
+ {
1265
+ "_links": Required["PullRequestReviewCommentLinks"],
1266
+ "author_association": Required["AuthorAssociation"],
1267
+ "body": Required["str"],
1268
+ "body_html": NotRequired["str"],
1269
+ "body_text": NotRequired["str"],
1270
+ "commit_id": Required["str"],
1271
+ "created_at": Required["str"],
1272
+ "diff_hunk": Required["str"],
1273
+ "html_url": Required["str"],
1274
+ "id": Required["int"],
1275
+ "in_reply_to_id": NotRequired["int"],
1276
+ "line": NotRequired["int"],
1277
+ "node_id": Required["str"],
1278
+ "original_commit_id": Required["str"],
1279
+ "original_line": NotRequired["int"],
1280
+ "original_position": NotRequired["int"],
1281
+ "original_start_line": NotRequired["int | None"],
1282
+ "path": Required["str"],
1283
+ "position": NotRequired["int"],
1284
+ "pull_request_review_id": Required["int | None"],
1285
+ "pull_request_url": Required["str"],
1286
+ "reactions": NotRequired["ReactionRollup"],
1287
+ "side": NotRequired["Literal['LEFT', 'RIGHT']"],
1288
+ "start_line": NotRequired["int | None"],
1289
+ "start_side": NotRequired["Literal['LEFT', 'RIGHT'] | None"],
1290
+ "subject_type": NotRequired["Literal['line', 'file']"],
1291
+ "updated_at": Required["str"],
1292
+ "url": Required["str"],
1293
+ "user": Required["NullableSimpleUser"],
1294
+ },
1295
+ total=False,
1296
+ )
1297
+ PullRequestReviewCommentEvent = TypedDict(
1298
+ "PullRequestReviewCommentEvent",
1299
+ {
1300
+ "action": Required["str"],
1301
+ "comment": Required["PullRequestReviewCommentEventComment"],
1302
+ "pull_request": Required["PullRequestMinimal"],
1303
+ },
1304
+ total=False,
1305
+ )
1306
+ PullRequestReviewCommentEventComment = TypedDict(
1307
+ "PullRequestReviewCommentEventComment",
1308
+ {
1309
+ "_links": Required["PullRequestReviewCommentEventCommentLinks"],
1310
+ "body": Required["str"],
1311
+ "commit_id": Required["str"],
1312
+ "created_at": Required["str"],
1313
+ "diff_hunk": Required["str"],
1314
+ "html_url": Required["str"],
1315
+ "id": Required["int"],
1316
+ "in_reply_to_id": NotRequired["int"],
1317
+ "node_id": Required["str"],
1318
+ "original_commit_id": Required["str"],
1319
+ "original_position": Required["int"],
1320
+ "path": Required["str"],
1321
+ "position": Required["int | None"],
1322
+ "pull_request_review_id": Required["int | None"],
1323
+ "pull_request_url": Required["str"],
1324
+ "reactions": Required["PullRequestReviewCommentEventCommentReactions"],
1325
+ "subject_type": NotRequired["str | None"],
1326
+ "updated_at": Required["str"],
1327
+ "url": Required["str"],
1328
+ "user": Required["PullRequestReviewCommentEventCommentUserVariant0 | None"],
1329
+ },
1330
+ total=False,
1331
+ )
1332
+ PullRequestReviewCommentEventCommentLinks = TypedDict(
1333
+ "PullRequestReviewCommentEventCommentLinks",
1334
+ {
1335
+ "html": Required["PullRequestReviewCommentEventCommentLinksHtml"],
1336
+ "pull_request": Required["PullRequestReviewCommentEventCommentLinksPullRequest"],
1337
+ "self": Required["PullRequestReviewCommentEventCommentLinksSelf"],
1338
+ },
1339
+ total=False,
1340
+ )
1341
+ PullRequestReviewCommentEventCommentLinksHtml = TypedDict(
1342
+ "PullRequestReviewCommentEventCommentLinksHtml", {"href": Required["str"]}, total=False
1343
+ )
1344
+ PullRequestReviewCommentEventCommentLinksPullRequest = TypedDict(
1345
+ "PullRequestReviewCommentEventCommentLinksPullRequest", {"href": Required["str"]}, total=False
1346
+ )
1347
+ PullRequestReviewCommentEventCommentLinksSelf = TypedDict(
1348
+ "PullRequestReviewCommentEventCommentLinksSelf", {"href": Required["str"]}, total=False
1349
+ )
1350
+ PullRequestReviewCommentEventCommentReactions = TypedDict(
1351
+ "PullRequestReviewCommentEventCommentReactions",
1352
+ {
1353
+ "+1": NotRequired["int"],
1354
+ "-1": NotRequired["int"],
1355
+ "confused": NotRequired["int"],
1356
+ "eyes": NotRequired["int"],
1357
+ "heart": NotRequired["int"],
1358
+ "hooray": NotRequired["int"],
1359
+ "laugh": NotRequired["int"],
1360
+ "rocket": NotRequired["int"],
1361
+ "total_count": NotRequired["int"],
1362
+ "url": NotRequired["str"],
1363
+ },
1364
+ total=False,
1365
+ )
1366
+ PullRequestReviewCommentEventCommentUserVariant0 = TypedDict(
1367
+ "PullRequestReviewCommentEventCommentUserVariant0",
1368
+ {
1369
+ "avatar_url": NotRequired["str"],
1370
+ "deleted": NotRequired["bool"],
1371
+ "email": NotRequired["str | None"],
1372
+ "events_url": NotRequired["str"],
1373
+ "followers_url": NotRequired["str"],
1374
+ "following_url": NotRequired["str"],
1375
+ "gists_url": NotRequired["str"],
1376
+ "gravatar_id": NotRequired["str"],
1377
+ "html_url": NotRequired["str"],
1378
+ "id": NotRequired["int"],
1379
+ "login": NotRequired["str"],
1380
+ "name": NotRequired["str"],
1381
+ "node_id": NotRequired["str"],
1382
+ "organizations_url": NotRequired["str"],
1383
+ "received_events_url": NotRequired["str"],
1384
+ "repos_url": NotRequired["str"],
1385
+ "site_admin": NotRequired["bool"],
1386
+ "starred_url": NotRequired["str"],
1387
+ "subscriptions_url": NotRequired["str"],
1388
+ "type": NotRequired["Literal['Bot', 'User', 'Organization']"],
1389
+ "url": NotRequired["str"],
1390
+ "user_view_type": NotRequired["str"],
1391
+ },
1392
+ total=False,
1393
+ )
1394
+ PullRequestReviewCommentLinks = TypedDict(
1395
+ "PullRequestReviewCommentLinks",
1396
+ {
1397
+ "html": Required["PullRequestReviewCommentLinksHtml"],
1398
+ "pull_request": Required["PullRequestReviewCommentLinksPullRequest"],
1399
+ "self": Required["PullRequestReviewCommentLinksSelf"],
1400
+ },
1401
+ total=False,
1402
+ )
1403
+ PullRequestReviewCommentLinksHtml = TypedDict(
1404
+ "PullRequestReviewCommentLinksHtml", {"href": Required["str"]}, total=False
1405
+ )
1406
+ PullRequestReviewCommentLinksPullRequest = TypedDict(
1407
+ "PullRequestReviewCommentLinksPullRequest", {"href": Required["str"]}, total=False
1408
+ )
1409
+ PullRequestReviewCommentLinksSelf = TypedDict(
1410
+ "PullRequestReviewCommentLinksSelf", {"href": Required["str"]}, total=False
1411
+ )
1412
+ PullRequestReviewEvent = TypedDict(
1413
+ "PullRequestReviewEvent",
1414
+ {
1415
+ "action": Required["str"],
1416
+ "pull_request": Required["PullRequestMinimal"],
1417
+ "review": Required["PullRequestReviewEventReview"],
1418
+ },
1419
+ total=False,
1420
+ )
1421
+ PullRequestReviewEventReview = TypedDict(
1422
+ "PullRequestReviewEventReview",
1423
+ {
1424
+ "_links": NotRequired["PullRequestReviewEventReviewLinks"],
1425
+ "body": NotRequired["str"],
1426
+ "commit_id": NotRequired["str"],
1427
+ "html_url": NotRequired["str"],
1428
+ "id": NotRequired["int"],
1429
+ "node_id": NotRequired["str"],
1430
+ "pull_request_url": NotRequired["str"],
1431
+ "state": NotRequired["str"],
1432
+ "submitted_at": NotRequired["str | None"],
1433
+ "updated_at": NotRequired["str"],
1434
+ "user": NotRequired["NullableSimpleUser"],
1435
+ },
1436
+ total=False,
1437
+ )
1438
+ PullRequestReviewEventReviewLinks = TypedDict(
1439
+ "PullRequestReviewEventReviewLinks",
1440
+ {
1441
+ "html": Required["PullRequestReviewEventReviewLinksHtml"],
1442
+ "pull_request": Required["PullRequestReviewEventReviewLinksPullRequest"],
1443
+ },
1444
+ total=False,
1445
+ )
1446
+ PullRequestReviewEventReviewLinksHtml = TypedDict(
1447
+ "PullRequestReviewEventReviewLinksHtml", {"href": Required["str"]}, total=False
1448
+ )
1449
+ PullRequestReviewEventReviewLinksPullRequest = TypedDict(
1450
+ "PullRequestReviewEventReviewLinksPullRequest", {"href": Required["str"]}, total=False
1451
+ )
1452
+ PullRequestReviewLinks = TypedDict(
1453
+ "PullRequestReviewLinks",
1454
+ {
1455
+ "html": Required["PullRequestReviewLinksHtml"],
1456
+ "pull_request": Required["PullRequestReviewLinksPullRequest"],
1457
+ },
1458
+ total=False,
1459
+ )
1460
+ PullRequestReviewLinksHtml = TypedDict(
1461
+ "PullRequestReviewLinksHtml", {"href": Required["str"]}, total=False
1462
+ )
1463
+ PullRequestReviewLinksPullRequest = TypedDict(
1464
+ "PullRequestReviewLinksPullRequest", {"href": Required["str"]}, total=False
1465
+ )
1466
+ PullRequestReviewRequest = TypedDict(
1467
+ "PullRequestReviewRequest",
1468
+ {"teams": Required["list[Team]"], "users": Required["list[SimpleUser]"]},
1469
+ total=False,
1470
+ )
1471
+ PullRequestSimple = TypedDict(
1472
+ "PullRequestSimple",
1473
+ {
1474
+ "_links": Required["PullRequestSimpleLinks"],
1475
+ "active_lock_reason": NotRequired["str | None"],
1476
+ "assignees": NotRequired["list[SimpleUser]"],
1477
+ "author_association": Required["AuthorAssociation"],
1478
+ "auto_merge": Required["AutoMerge"],
1479
+ "base": Required["PullRequestSimpleBase"],
1480
+ "body": Required["str | None"],
1481
+ "closed_at": Required["str | None"],
1482
+ "comments_url": Required["str"],
1483
+ "commits_url": Required["str"],
1484
+ "created_at": Required["str"],
1485
+ "diff_url": Required["str"],
1486
+ "draft": NotRequired["bool"],
1487
+ "head": Required["PullRequestSimpleHead"],
1488
+ "html_url": Required["str"],
1489
+ "id": Required["int"],
1490
+ "issue_url": Required["str"],
1491
+ "labels": Required["list[PullRequestSimpleLabelsItem]"],
1492
+ "locked": Required["bool"],
1493
+ "merged_at": Required["str | None"],
1494
+ "milestone": Required["NullableMilestone"],
1495
+ "node_id": Required["str"],
1496
+ "number": Required["int"],
1497
+ "patch_url": Required["str"],
1498
+ "requested_reviewers": NotRequired["list[SimpleUser]"],
1499
+ "requested_teams": NotRequired["list[Team]"],
1500
+ "review_comment_url": Required["str"],
1501
+ "review_comments_url": Required["str"],
1502
+ "stack": NotRequired["PullRequestStack"],
1503
+ "state": Required["str"],
1504
+ "statuses_url": Required["str"],
1505
+ "title": Required["str"],
1506
+ "updated_at": Required["str"],
1507
+ "url": Required["str"],
1508
+ "user": Required["NullableSimpleUser"],
1509
+ },
1510
+ total=False,
1511
+ )
1512
+ PullRequestSimpleBase = TypedDict(
1513
+ "PullRequestSimpleBase",
1514
+ {
1515
+ "label": Required["str"],
1516
+ "ref": Required["str"],
1517
+ "repo": Required["Repository"],
1518
+ "sha": Required["str"],
1519
+ "user": Required["NullableSimpleUser"],
1520
+ },
1521
+ total=False,
1522
+ )
1523
+ PullRequestSimpleHead = TypedDict(
1524
+ "PullRequestSimpleHead",
1525
+ {
1526
+ "label": Required["str"],
1527
+ "ref": Required["str"],
1528
+ "repo": Required["Repository"],
1529
+ "sha": Required["str"],
1530
+ "user": Required["NullableSimpleUser"],
1531
+ },
1532
+ total=False,
1533
+ )
1534
+ PullRequestSimpleLabelsItem = TypedDict(
1535
+ "PullRequestSimpleLabelsItem",
1536
+ {
1537
+ "archived_by": Required["PullRequestSimpleLabelsItemArchivedByVariant0 | None"],
1538
+ "color": Required["str"],
1539
+ "default": Required["bool"],
1540
+ "description": Required["str"],
1541
+ "id": Required["int"],
1542
+ "name": Required["str"],
1543
+ "node_id": Required["str"],
1544
+ "url": Required["str"],
1545
+ },
1546
+ total=False,
1547
+ )
1548
+ PullRequestSimpleLabelsItemArchivedByVariant0 = TypedDict(
1549
+ "PullRequestSimpleLabelsItemArchivedByVariant0",
1550
+ {
1551
+ "avatar_url": Required["str"],
1552
+ "email": NotRequired["str | None"],
1553
+ "events_url": Required["str"],
1554
+ "followers_url": Required["str"],
1555
+ "following_url": Required["str"],
1556
+ "gists_url": Required["str"],
1557
+ "gravatar_id": Required["str | None"],
1558
+ "html_url": Required["str"],
1559
+ "id": Required["int"],
1560
+ "login": Required["str"],
1561
+ "name": NotRequired["str | None"],
1562
+ "node_id": Required["str"],
1563
+ "organizations_url": Required["str"],
1564
+ "received_events_url": Required["str"],
1565
+ "repos_url": Required["str"],
1566
+ "site_admin": Required["bool"],
1567
+ "starred_at": NotRequired["str"],
1568
+ "starred_url": Required["str"],
1569
+ "subscriptions_url": Required["str"],
1570
+ "type": Required["str"],
1571
+ "url": Required["str"],
1572
+ "user_view_type": NotRequired["str"],
1573
+ },
1574
+ total=False,
1575
+ )
1576
+ PullRequestSimpleLinks = TypedDict(
1577
+ "PullRequestSimpleLinks",
1578
+ {
1579
+ "comments": Required["Link"],
1580
+ "commits": Required["Link"],
1581
+ "html": Required["Link"],
1582
+ "issue": Required["Link"],
1583
+ "review_comment": Required["Link"],
1584
+ "review_comments": Required["Link"],
1585
+ "self": Required["Link"],
1586
+ "statuses": Required["Link"],
1587
+ },
1588
+ total=False,
1589
+ )
1590
+ PullRequestStack: TypeAlias = "PullRequestStackVariant0 | None"
1591
+ PullRequestStackMinimal = TypedDict(
1592
+ "PullRequestStackMinimal",
1593
+ {
1594
+ "base": Required["PullRequestStackMinimalBase"],
1595
+ "created_at": Required["str"],
1596
+ "id": Required["int"],
1597
+ "node_id": Required["str"],
1598
+ "number": Required["int"],
1599
+ "open": Required["bool"],
1600
+ "pull_requests": Required["list[PullRequestStackMinimalPullRequestsItem]"],
1601
+ "url": Required["str"],
1602
+ },
1603
+ total=False,
1604
+ )
1605
+ PullRequestStackMinimalBase = TypedDict(
1606
+ "PullRequestStackMinimalBase", {"ref": Required["str"]}, total=False
1607
+ )
1608
+ PullRequestStackMinimalPullRequestsItem = TypedDict(
1609
+ "PullRequestStackMinimalPullRequestsItem",
1610
+ {
1611
+ "draft": Required["bool"],
1612
+ "head": Required["PullRequestStackMinimalPullRequestsItemHead"],
1613
+ "merged_at": Required["str | None"],
1614
+ "number": Required["int"],
1615
+ "state": Required["Literal['open', 'closed']"],
1616
+ },
1617
+ total=False,
1618
+ )
1619
+ PullRequestStackMinimalPullRequestsItemHead = TypedDict(
1620
+ "PullRequestStackMinimalPullRequestsItemHead",
1621
+ {"ref": Required["str"], "sha": Required["str"]},
1622
+ total=False,
1623
+ )
1624
+ PullRequestStackPullRequest: TypeAlias = "dict[str, object]"
1625
+ PullRequestStackVariant0 = TypedDict(
1626
+ "PullRequestStackVariant0",
1627
+ {
1628
+ "base": Required["PullRequestStackVariant0Base"],
1629
+ "id": NotRequired["int"],
1630
+ "number": NotRequired["int"],
1631
+ "position": NotRequired["int"],
1632
+ "size": NotRequired["int"],
1633
+ },
1634
+ total=False,
1635
+ )
1636
+ PullRequestStackVariant0Base = TypedDict(
1637
+ "PullRequestStackVariant0Base", {"ref": Required["str"], "sha": Required["str"]}, total=False
1638
+ )
1639
+ PullRequestWebhook = TypedDict(
1640
+ "PullRequestWebhook",
1641
+ {
1642
+ "_links": Required["PullRequestWebhookLinks"],
1643
+ "active_lock_reason": NotRequired["str | None"],
1644
+ "additions": Required["int"],
1645
+ "assignees": NotRequired["list[SimpleUser]"],
1646
+ "author_association": Required["AuthorAssociation"],
1647
+ "auto_merge": Required["AutoMerge"],
1648
+ "base": Required["PullRequestWebhookBase"],
1649
+ "body": Required["str | None"],
1650
+ "changed_files": Required["int"],
1651
+ "closed_at": Required["str | None"],
1652
+ "comments": Required["int"],
1653
+ "comments_url": Required["str"],
1654
+ "commits": Required["int"],
1655
+ "commits_url": Required["str"],
1656
+ "created_at": Required["str"],
1657
+ "deletions": Required["int"],
1658
+ "diff_url": Required["str"],
1659
+ "draft": NotRequired["bool"],
1660
+ "head": Required["PullRequestWebhookHead"],
1661
+ "html_url": Required["str"],
1662
+ "id": Required["int"],
1663
+ "issue_url": Required["str"],
1664
+ "labels": Required["list[PullRequestWebhookLabelsItem]"],
1665
+ "locked": Required["bool"],
1666
+ "maintainer_can_modify": Required["bool"],
1667
+ "mergeable": Required["bool | None"],
1668
+ "mergeable_state": Required["str"],
1669
+ "merged": Required["bool"],
1670
+ "merged_at": Required["str | None"],
1671
+ "merged_by": Required["NullableSimpleUser"],
1672
+ "milestone": Required["NullableMilestone"],
1673
+ "node_id": Required["str"],
1674
+ "number": Required["int"],
1675
+ "patch_url": Required["str"],
1676
+ "rebaseable": NotRequired["bool | None"],
1677
+ "requested_reviewers": NotRequired["list[SimpleUser]"],
1678
+ "requested_teams": NotRequired["list[TeamSimple]"],
1679
+ "review_comment_url": Required["str"],
1680
+ "review_comments": Required["int"],
1681
+ "review_comments_url": Required["str"],
1682
+ "stack": NotRequired["PullRequestStack"],
1683
+ "state": Required["Literal['open', 'closed']"],
1684
+ "statuses_url": Required["str"],
1685
+ "title": Required["str"],
1686
+ "updated_at": Required["str"],
1687
+ "url": Required["str"],
1688
+ "user": Required["SimpleUser"],
1689
+ "allow_auto_merge": NotRequired["bool"],
1690
+ "allow_update_branch": NotRequired["bool"],
1691
+ "delete_branch_on_merge": NotRequired["bool"],
1692
+ "merge_commit_message": NotRequired["Literal['PR_BODY', 'PR_TITLE', 'BLANK']"],
1693
+ "merge_commit_title": NotRequired["Literal['PR_TITLE', 'MERGE_MESSAGE']"],
1694
+ "squash_merge_commit_message": NotRequired[
1695
+ "Literal['PR_BODY', 'COMMIT_MESSAGES', 'BLANK']"
1696
+ ],
1697
+ "squash_merge_commit_title": NotRequired["Literal['PR_TITLE', 'COMMIT_OR_PR_TITLE']"],
1698
+ "use_squash_pr_title_as_default": NotRequired["bool"],
1699
+ },
1700
+ total=False,
1701
+ )
1702
+ PullRequestWebhookBase = TypedDict(
1703
+ "PullRequestWebhookBase",
1704
+ {
1705
+ "label": Required["str"],
1706
+ "ref": Required["str"],
1707
+ "repo": Required["Repository"],
1708
+ "sha": Required["str"],
1709
+ "user": Required["SimpleUser"],
1710
+ },
1711
+ total=False,
1712
+ )
1713
+ PullRequestWebhookHead = TypedDict(
1714
+ "PullRequestWebhookHead",
1715
+ {
1716
+ "label": Required["str"],
1717
+ "ref": Required["str"],
1718
+ "repo": Required["Repository"],
1719
+ "sha": Required["str"],
1720
+ "user": Required["SimpleUser"],
1721
+ },
1722
+ total=False,
1723
+ )
1724
+ PullRequestWebhookLabelsItem = TypedDict(
1725
+ "PullRequestWebhookLabelsItem",
1726
+ {
1727
+ "archived_by": Required["PullRequestWebhookLabelsItemArchivedByVariant0 | None"],
1728
+ "color": Required["str"],
1729
+ "default": Required["bool"],
1730
+ "description": Required["str | None"],
1731
+ "id": Required["int"],
1732
+ "name": Required["str"],
1733
+ "node_id": Required["str"],
1734
+ "url": Required["str"],
1735
+ },
1736
+ total=False,
1737
+ )
1738
+ PullRequestWebhookLabelsItemArchivedByVariant0 = TypedDict(
1739
+ "PullRequestWebhookLabelsItemArchivedByVariant0",
1740
+ {
1741
+ "avatar_url": Required["str"],
1742
+ "email": NotRequired["str | None"],
1743
+ "events_url": Required["str"],
1744
+ "followers_url": Required["str"],
1745
+ "following_url": Required["str"],
1746
+ "gists_url": Required["str"],
1747
+ "gravatar_id": Required["str | None"],
1748
+ "html_url": Required["str"],
1749
+ "id": Required["int"],
1750
+ "login": Required["str"],
1751
+ "name": NotRequired["str | None"],
1752
+ "node_id": Required["str"],
1753
+ "organizations_url": Required["str"],
1754
+ "received_events_url": Required["str"],
1755
+ "repos_url": Required["str"],
1756
+ "site_admin": Required["bool"],
1757
+ "starred_at": NotRequired["str"],
1758
+ "starred_url": Required["str"],
1759
+ "subscriptions_url": Required["str"],
1760
+ "type": Required["str"],
1761
+ "url": Required["str"],
1762
+ "user_view_type": NotRequired["str"],
1763
+ },
1764
+ total=False,
1765
+ )
1766
+ PullRequestWebhookLinks = TypedDict(
1767
+ "PullRequestWebhookLinks",
1768
+ {
1769
+ "comments": Required["Link"],
1770
+ "commits": Required["Link"],
1771
+ "html": Required["Link"],
1772
+ "issue": Required["Link"],
1773
+ "review_comment": Required["Link"],
1774
+ "review_comments": Required["Link"],
1775
+ "self": Required["Link"],
1776
+ "statuses": Required["Link"],
1777
+ },
1778
+ total=False,
1779
+ )
1780
+ PushEvent = TypedDict(
1781
+ "PushEvent",
1782
+ {
1783
+ "before": Required["str"],
1784
+ "head": Required["str"],
1785
+ "push_id": Required["int"],
1786
+ "ref": Required["str"],
1787
+ "repository_id": Required["int"],
1788
+ },
1789
+ total=False,
1790
+ )
1791
+ RateLimit = TypedDict(
1792
+ "RateLimit",
1793
+ {
1794
+ "limit": Required["int"],
1795
+ "remaining": Required["int"],
1796
+ "reset": Required["int"],
1797
+ "used": Required["int"],
1798
+ },
1799
+ total=False,
1800
+ )
1801
+ RateLimitOverview = TypedDict(
1802
+ "RateLimitOverview", {"resources": Required["RateLimitOverviewResources"]}, total=False
1803
+ )
1804
+ RateLimitOverviewResources = TypedDict(
1805
+ "RateLimitOverviewResources",
1806
+ {
1807
+ "actions_runner_registration": NotRequired["RateLimit"],
1808
+ "code_scanning_autofix": NotRequired["RateLimit"],
1809
+ "code_search": NotRequired["RateLimit"],
1810
+ "copilot_usage_records": NotRequired["RateLimit"],
1811
+ "core": Required["RateLimit"],
1812
+ "dependency_sbom": NotRequired["RateLimit"],
1813
+ "dependency_snapshots": NotRequired["RateLimit"],
1814
+ "graphql": NotRequired["RateLimit"],
1815
+ "integration_manifest": NotRequired["RateLimit"],
1816
+ "scim": NotRequired["RateLimit"],
1817
+ "search": Required["RateLimit"],
1818
+ "source_import": NotRequired["RateLimit"],
1819
+ },
1820
+ total=False,
1821
+ )
1822
+ Reaction = TypedDict(
1823
+ "Reaction",
1824
+ {
1825
+ "content": Required[
1826
+ "Literal['+1', '-1', 'laugh', 'confused', 'heart', 'hooray', 'rocket', 'eyes']"
1827
+ ],
1828
+ "created_at": Required["str"],
1829
+ "id": Required["int"],
1830
+ "node_id": Required["str"],
1831
+ "user": Required["NullableSimpleUser"],
1832
+ },
1833
+ total=False,
1834
+ )
1835
+ ReactionRollup = TypedDict(
1836
+ "ReactionRollup",
1837
+ {
1838
+ "+1": Required["int"],
1839
+ "-1": Required["int"],
1840
+ "confused": Required["int"],
1841
+ "eyes": Required["int"],
1842
+ "heart": Required["int"],
1843
+ "hooray": Required["int"],
1844
+ "laugh": Required["int"],
1845
+ "rocket": Required["int"],
1846
+ "total_count": Required["int"],
1847
+ "url": Required["str"],
1848
+ },
1849
+ total=False,
1850
+ )
1851
+ ReferencedWorkflow = TypedDict(
1852
+ "ReferencedWorkflow",
1853
+ {"path": Required["str"], "ref": NotRequired["str"], "sha": Required["str"]},
1854
+ total=False,
1855
+ )
1856
+ ReferrerTraffic = TypedDict(
1857
+ "ReferrerTraffic",
1858
+ {"count": Required["int"], "referrer": Required["str"], "uniques": Required["int"]},
1859
+ total=False,
1860
+ )
1861
+ Release = TypedDict(
1862
+ "Release",
1863
+ {
1864
+ "assets": Required["list[ReleaseAsset]"],
1865
+ "assets_url": Required["str"],
1866
+ "author": Required["SimpleUser"],
1867
+ "body": NotRequired["str | None"],
1868
+ "body_html": NotRequired["str"],
1869
+ "body_text": NotRequired["str"],
1870
+ "created_at": Required["str"],
1871
+ "discussion_url": NotRequired["str"],
1872
+ "draft": Required["bool"],
1873
+ "html_url": Required["str"],
1874
+ "id": Required["int"],
1875
+ "immutable": NotRequired["bool"],
1876
+ "mentions_count": NotRequired["int"],
1877
+ "name": Required["str | None"],
1878
+ "node_id": Required["str"],
1879
+ "prerelease": Required["bool"],
1880
+ "published_at": Required["str | None"],
1881
+ "reactions": NotRequired["ReactionRollup"],
1882
+ "tag_name": Required["str"],
1883
+ "tarball_url": Required["str | None"],
1884
+ "target_commitish": Required["str"],
1885
+ "updated_at": NotRequired["str | None"],
1886
+ "upload_url": Required["str"],
1887
+ "url": Required["str"],
1888
+ "zipball_url": Required["str | None"],
1889
+ },
1890
+ total=False,
1891
+ )
1892
+ ReleaseAsset = TypedDict(
1893
+ "ReleaseAsset",
1894
+ {
1895
+ "browser_download_url": Required["str"],
1896
+ "content_type": Required["str"],
1897
+ "created_at": Required["str"],
1898
+ "digest": Required["str | None"],
1899
+ "download_count": Required["int"],
1900
+ "id": Required["int"],
1901
+ "label": Required["str | None"],
1902
+ "name": Required["str"],
1903
+ "node_id": Required["str"],
1904
+ "size": Required["int"],
1905
+ "state": Required["Literal['uploaded', 'open']"],
1906
+ "updated_at": Required["str"],
1907
+ "uploader": Required["NullableSimpleUser"],
1908
+ "url": Required["str"],
1909
+ },
1910
+ total=False,
1911
+ )
1912
+ ReleaseEvent = TypedDict(
1913
+ "ReleaseEvent",
1914
+ {"action": Required["str"], "release": Required["ReleaseEventRelease"]},
1915
+ total=False,
1916
+ )
1917
+ ReleaseEventRelease = TypedDict(
1918
+ "ReleaseEventRelease",
1919
+ {
1920
+ "assets": Required["list[ReleaseAsset]"],
1921
+ "assets_url": Required["str"],
1922
+ "author": Required["SimpleUser"],
1923
+ "body": NotRequired["str | None"],
1924
+ "body_html": NotRequired["str"],
1925
+ "body_text": NotRequired["str"],
1926
+ "created_at": Required["str"],
1927
+ "discussion_url": NotRequired["str"],
1928
+ "draft": Required["bool"],
1929
+ "html_url": Required["str"],
1930
+ "id": Required["int"],
1931
+ "immutable": NotRequired["bool"],
1932
+ "mentions_count": NotRequired["int"],
1933
+ "name": Required["str | None"],
1934
+ "node_id": Required["str"],
1935
+ "prerelease": Required["bool"],
1936
+ "published_at": Required["str | None"],
1937
+ "reactions": NotRequired["ReactionRollup"],
1938
+ "tag_name": Required["str"],
1939
+ "tarball_url": Required["str | None"],
1940
+ "target_commitish": Required["str"],
1941
+ "updated_at": NotRequired["str | None"],
1942
+ "upload_url": Required["str"],
1943
+ "url": Required["str"],
1944
+ "zipball_url": Required["str | None"],
1945
+ "is_short_description_html_truncated": NotRequired["bool"],
1946
+ "short_description_html": NotRequired["str"],
1947
+ },
1948
+ total=False,
1949
+ )
1950
+ ReleaseNotesContent = TypedDict(
1951
+ "ReleaseNotesContent", {"body": Required["str"], "name": Required["str"]}, total=False
1952
+ )
1953
+ RemovedFromProjectIssueEvent = TypedDict(
1954
+ "RemovedFromProjectIssueEvent",
1955
+ {
1956
+ "actor": Required["SimpleUser"],
1957
+ "commit_id": Required["str | None"],
1958
+ "commit_url": Required["str | None"],
1959
+ "created_at": Required["str"],
1960
+ "event": Required["str"],
1961
+ "id": Required["int"],
1962
+ "node_id": Required["str"],
1963
+ "performed_via_github_app": Required["NullableIntegration"],
1964
+ "project_card": NotRequired["RemovedFromProjectIssueEventProjectCard"],
1965
+ "url": Required["str"],
1966
+ },
1967
+ total=False,
1968
+ )
1969
+ RemovedFromProjectIssueEventProjectCard = TypedDict(
1970
+ "RemovedFromProjectIssueEventProjectCard",
1971
+ {
1972
+ "column_name": Required["str"],
1973
+ "id": Required["int"],
1974
+ "previous_column_name": NotRequired["str"],
1975
+ "project_id": Required["int"],
1976
+ "project_url": Required["str"],
1977
+ "url": Required["str"],
1978
+ },
1979
+ total=False,
1980
+ )
1981
+ RenamedIssueEvent = TypedDict(
1982
+ "RenamedIssueEvent",
1983
+ {
1984
+ "actor": Required["SimpleUser"],
1985
+ "commit_id": Required["str | None"],
1986
+ "commit_url": Required["str | None"],
1987
+ "created_at": Required["str"],
1988
+ "event": Required["str"],
1989
+ "id": Required["int"],
1990
+ "node_id": Required["str"],
1991
+ "performed_via_github_app": Required["NullableIntegration"],
1992
+ "rename": Required["RenamedIssueEventRename"],
1993
+ "url": Required["str"],
1994
+ },
1995
+ total=False,
1996
+ )
1997
+ RenamedIssueEventRename = TypedDict(
1998
+ "RenamedIssueEventRename", {"from": Required["str"], "to": Required["str"]}, total=False
1999
+ )
2000
+ RepoCodespacesSecret = TypedDict(
2001
+ "RepoCodespacesSecret",
2002
+ {"created_at": Required["str"], "name": Required["str"], "updated_at": Required["str"]},
2003
+ total=False,
2004
+ )
2005
+ RepoSearchResultItem = TypedDict(
2006
+ "RepoSearchResultItem",
2007
+ {
2008
+ "allow_auto_merge": NotRequired["bool"],
2009
+ "allow_forking": NotRequired["bool"],
2010
+ "allow_merge_commit": NotRequired["bool"],
2011
+ "allow_rebase_merge": NotRequired["bool"],
2012
+ "allow_squash_merge": NotRequired["bool"],
2013
+ "archive_url": Required["str"],
2014
+ "archived": Required["bool"],
2015
+ "assignees_url": Required["str"],
2016
+ "blobs_url": Required["str"],
2017
+ "branches_url": Required["str"],
2018
+ "clone_url": Required["str"],
2019
+ "collaborators_url": Required["str"],
2020
+ "comments_url": Required["str"],
2021
+ "commits_url": Required["str"],
2022
+ "compare_url": Required["str"],
2023
+ "contents_url": Required["str"],
2024
+ "contributors_url": Required["str"],
2025
+ "created_at": Required["str"],
2026
+ "default_branch": Required["str"],
2027
+ "delete_branch_on_merge": NotRequired["bool"],
2028
+ "deployments_url": Required["str"],
2029
+ "description": Required["str | None"],
2030
+ "disabled": Required["bool"],
2031
+ "downloads_url": Required["str"],
2032
+ "events_url": Required["str"],
2033
+ "fork": Required["bool"],
2034
+ "forks": Required["int"],
2035
+ "forks_count": Required["int"],
2036
+ "forks_url": Required["str"],
2037
+ "full_name": Required["str"],
2038
+ "git_commits_url": Required["str"],
2039
+ "git_refs_url": Required["str"],
2040
+ "git_tags_url": Required["str"],
2041
+ "git_url": Required["str"],
2042
+ "has_discussions": NotRequired["bool"],
2043
+ "has_downloads": Required["bool"],
2044
+ "has_issues": Required["bool"],
2045
+ "has_pages": Required["bool"],
2046
+ "has_projects": Required["bool"],
2047
+ "has_pull_requests": NotRequired["bool"],
2048
+ "has_wiki": Required["bool"],
2049
+ "homepage": Required["str | None"],
2050
+ "hooks_url": Required["str"],
2051
+ "html_url": Required["str"],
2052
+ "id": Required["int"],
2053
+ "is_template": NotRequired["bool"],
2054
+ "issue_comment_url": Required["str"],
2055
+ "issue_events_url": Required["str"],
2056
+ "issues_url": Required["str"],
2057
+ "keys_url": Required["str"],
2058
+ "labels_url": Required["str"],
2059
+ "language": Required["str | None"],
2060
+ "languages_url": Required["str"],
2061
+ "license": Required["NullableLicenseSimple"],
2062
+ "master_branch": NotRequired["str"],
2063
+ "merges_url": Required["str"],
2064
+ "milestones_url": Required["str"],
2065
+ "mirror_url": Required["str | None"],
2066
+ "name": Required["str"],
2067
+ "node_id": Required["str"],
2068
+ "notifications_url": Required["str"],
2069
+ "open_issues": Required["int"],
2070
+ "open_issues_count": Required["int"],
2071
+ "owner": Required["NullableSimpleUser"],
2072
+ "permissions": NotRequired["RepoSearchResultItemPermissions"],
2073
+ "private": Required["bool"],
2074
+ "pull_request_creation_policy": NotRequired["Literal['all', 'collaborators_only']"],
2075
+ "pulls_url": Required["str"],
2076
+ "pushed_at": Required["str"],
2077
+ "releases_url": Required["str"],
2078
+ "score": Required["float"],
2079
+ "size": Required["int"],
2080
+ "ssh_url": Required["str"],
2081
+ "stargazers_count": Required["int"],
2082
+ "stargazers_url": Required["str"],
2083
+ "statuses_url": Required["str"],
2084
+ "subscribers_url": Required["str"],
2085
+ "subscription_url": Required["str"],
2086
+ "svn_url": Required["str"],
2087
+ "tags_url": Required["str"],
2088
+ "teams_url": Required["str"],
2089
+ "temp_clone_token": NotRequired["str"],
2090
+ "text_matches": NotRequired["SearchResultTextMatches"],
2091
+ "topics": NotRequired["list[str]"],
2092
+ "trees_url": Required["str"],
2093
+ "updated_at": Required["str"],
2094
+ "url": Required["str"],
2095
+ "visibility": NotRequired["str"],
2096
+ "watchers": Required["int"],
2097
+ "watchers_count": Required["int"],
2098
+ "web_commit_signoff_required": NotRequired["bool"],
2099
+ },
2100
+ total=False,
2101
+ )
2102
+ RepoSearchResultItemPermissions = TypedDict(
2103
+ "RepoSearchResultItemPermissions",
2104
+ {
2105
+ "admin": Required["bool"],
2106
+ "maintain": NotRequired["bool"],
2107
+ "pull": Required["bool"],
2108
+ "push": Required["bool"],
2109
+ "triage": NotRequired["bool"],
2110
+ },
2111
+ total=False,
2112
+ )
2113
+ Repository = TypedDict(
2114
+ "Repository",
2115
+ {
2116
+ "allow_auto_merge": NotRequired["bool"],
2117
+ "allow_forking": NotRequired["bool"],
2118
+ "allow_merge_commit": NotRequired["bool"],
2119
+ "allow_rebase_merge": NotRequired["bool"],
2120
+ "allow_squash_merge": NotRequired["bool"],
2121
+ "allow_update_branch": NotRequired["bool"],
2122
+ "anonymous_access_enabled": NotRequired["bool"],
2123
+ "archive_url": Required["str"],
2124
+ "archived": Required["bool"],
2125
+ "assignees_url": Required["str"],
2126
+ "blobs_url": Required["str"],
2127
+ "branches_url": Required["str"],
2128
+ "clone_url": Required["str"],
2129
+ "code_search_index_status": NotRequired["RepositoryCodeSearchIndexStatus"],
2130
+ "collaborators_url": Required["str"],
2131
+ "comments_url": Required["str"],
2132
+ "commits_url": Required["str"],
2133
+ "compare_url": Required["str"],
2134
+ "contents_url": Required["str"],
2135
+ "contributors_url": Required["str"],
2136
+ "created_at": Required["str | None"],
2137
+ "default_branch": Required["str"],
2138
+ "delete_branch_on_merge": NotRequired["bool"],
2139
+ "deployments_url": Required["str"],
2140
+ "description": Required["str | None"],
2141
+ "disabled": Required["bool"],
2142
+ "downloads_url": Required["str"],
2143
+ "events_url": Required["str"],
2144
+ "fork": Required["bool"],
2145
+ "forks": Required["int"],
2146
+ "forks_count": Required["int"],
2147
+ "forks_url": Required["str"],
2148
+ "full_name": Required["str"],
2149
+ "git_commits_url": Required["str"],
2150
+ "git_refs_url": Required["str"],
2151
+ "git_tags_url": Required["str"],
2152
+ "git_url": Required["str"],
2153
+ "has_discussions": NotRequired["bool"],
2154
+ "has_issues": Required["bool"],
2155
+ "has_pages": Required["bool"],
2156
+ "has_projects": Required["bool"],
2157
+ "has_pull_requests": NotRequired["bool"],
2158
+ "has_wiki": Required["bool"],
2159
+ "homepage": Required["str | None"],
2160
+ "hooks_url": Required["str"],
2161
+ "html_url": Required["str"],
2162
+ "id": Required["int"],
2163
+ "is_template": NotRequired["bool"],
2164
+ "issue_comment_url": Required["str"],
2165
+ "issue_events_url": Required["str"],
2166
+ "issues_url": Required["str"],
2167
+ "keys_url": Required["str"],
2168
+ "labels_url": Required["str"],
2169
+ "language": Required["str | None"],
2170
+ "languages_url": Required["str"],
2171
+ "license": Required["NullableLicenseSimple"],
2172
+ "merge_commit_message": NotRequired["Literal['PR_BODY', 'PR_TITLE', 'BLANK']"],
2173
+ "merge_commit_title": NotRequired["Literal['PR_TITLE', 'MERGE_MESSAGE']"],
2174
+ "merges_url": Required["str"],
2175
+ "milestones_url": Required["str"],
2176
+ "mirror_url": Required["str | None"],
2177
+ "name": Required["str"],
2178
+ "node_id": Required["str"],
2179
+ "notifications_url": Required["str"],
2180
+ "open_issues": Required["int"],
2181
+ "open_issues_count": Required["int"],
2182
+ "owner": Required["SimpleUser"],
2183
+ "permissions": NotRequired["RepositoryPermissions"],
2184
+ "private": Required["bool"],
2185
+ "pull_request_creation_policy": NotRequired["Literal['all', 'collaborators_only']"],
2186
+ "pulls_url": Required["str"],
2187
+ "pushed_at": Required["str | None"],
2188
+ "releases_url": Required["str"],
2189
+ "size": Required["int"],
2190
+ "squash_merge_commit_message": NotRequired[
2191
+ "Literal['PR_BODY', 'COMMIT_MESSAGES', 'BLANK']"
2192
+ ],
2193
+ "squash_merge_commit_title": NotRequired["Literal['PR_TITLE', 'COMMIT_OR_PR_TITLE']"],
2194
+ "ssh_url": Required["str"],
2195
+ "stargazers_count": Required["int"],
2196
+ "stargazers_url": Required["str"],
2197
+ "starred_at": NotRequired["str"],
2198
+ "statuses_url": Required["str"],
2199
+ "subscribers_url": Required["str"],
2200
+ "subscription_url": Required["str"],
2201
+ "svn_url": Required["str"],
2202
+ "tags_url": Required["str"],
2203
+ "teams_url": Required["str"],
2204
+ "temp_clone_token": NotRequired["str"],
2205
+ "topics": NotRequired["list[str]"],
2206
+ "trees_url": Required["str"],
2207
+ "updated_at": Required["str | None"],
2208
+ "url": Required["str"],
2209
+ "visibility": NotRequired["str"],
2210
+ "watchers": Required["int"],
2211
+ "watchers_count": Required["int"],
2212
+ "web_commit_signoff_required": NotRequired["bool"],
2213
+ },
2214
+ total=False,
2215
+ )
2216
+ RepositoryAdvisory = TypedDict(
2217
+ "RepositoryAdvisory",
2218
+ {
2219
+ "author": Required["RepositoryAdvisoryAuthorVariant0 | None"],
2220
+ "closed_at": Required["str | None"],
2221
+ "collaborating_teams": Required["list[Team] | None"],
2222
+ "collaborating_users": Required["list[SimpleUser] | None"],
2223
+ "created_at": Required["str | None"],
2224
+ "credits": Required["list[RepositoryAdvisoryCreditsVariant0Item] | None"],
2225
+ "credits_detailed": Required["list[RepositoryAdvisoryCredit] | None"],
2226
+ "cve_id": Required["str | None"],
2227
+ "cvss_severities": NotRequired["CvssSeverities"],
2228
+ "cwe_ids": Required["list[str] | None"],
2229
+ "cwes": Required["list[RepositoryAdvisoryCwesVariant0Item] | None"],
2230
+ "description": Required["str | None"],
2231
+ "ghsa_id": Required["str"],
2232
+ "html_url": Required["str"],
2233
+ "identifiers": Required["list[RepositoryAdvisoryIdentifiersItem]"],
2234
+ "private_fork": Required["RepositoryAdvisoryPrivateForkVariant0 | None"],
2235
+ "published_at": Required["str | None"],
2236
+ "publisher": Required["RepositoryAdvisoryPublisherVariant0 | None"],
2237
+ "severity": Required["Literal['critical', 'high', 'medium', 'low'] | None"],
2238
+ "state": Required["Literal['published', 'closed', 'withdrawn', 'draft', 'triage']"],
2239
+ "submission": Required["RepositoryAdvisorySubmissionVariant0 | None"],
2240
+ "summary": Required["str"],
2241
+ "updated_at": Required["str | None"],
2242
+ "url": Required["str"],
2243
+ "vulnerabilities": Required["list[RepositoryAdvisoryVulnerability] | None"],
2244
+ "withdrawn_at": Required["str | None"],
2245
+ },
2246
+ total=False,
2247
+ )
2248
+ RepositoryAdvisoryAuthorVariant0 = TypedDict(
2249
+ "RepositoryAdvisoryAuthorVariant0",
2250
+ {
2251
+ "avatar_url": Required["str"],
2252
+ "email": NotRequired["str | None"],
2253
+ "events_url": Required["str"],
2254
+ "followers_url": Required["str"],
2255
+ "following_url": Required["str"],
2256
+ "gists_url": Required["str"],
2257
+ "gravatar_id": Required["str | None"],
2258
+ "html_url": Required["str"],
2259
+ "id": Required["int"],
2260
+ "login": Required["str"],
2261
+ "name": NotRequired["str | None"],
2262
+ "node_id": Required["str"],
2263
+ "organizations_url": Required["str"],
2264
+ "received_events_url": Required["str"],
2265
+ "repos_url": Required["str"],
2266
+ "site_admin": Required["bool"],
2267
+ "starred_at": NotRequired["str"],
2268
+ "starred_url": Required["str"],
2269
+ "subscriptions_url": Required["str"],
2270
+ "type": Required["str"],
2271
+ "url": Required["str"],
2272
+ "user_view_type": NotRequired["str"],
2273
+ },
2274
+ total=False,
2275
+ )
2276
+ RepositoryAdvisoryComment = TypedDict(
2277
+ "RepositoryAdvisoryComment",
2278
+ {
2279
+ "advisory_url": Required["str"],
2280
+ "author_association": Required["AuthorAssociation"],
2281
+ "body": Required["str"],
2282
+ "created_at": Required["str"],
2283
+ "html_url": Required["str"],
2284
+ "id": Required["int"],
2285
+ "node_id": Required["str"],
2286
+ "updated_at": Required["str"],
2287
+ "url": Required["str"],
2288
+ "user": Required["NullableSimpleUser"],
2289
+ },
2290
+ total=False,
2291
+ )
2292
+ RepositoryAdvisoryCreate = TypedDict(
2293
+ "RepositoryAdvisoryCreate",
2294
+ {
2295
+ "credits": NotRequired["list[RepositoryAdvisoryCreateCreditsVariant0Item] | None"],
2296
+ "cve_id": NotRequired["str | None"],
2297
+ "cvss_vector_string": NotRequired["str | None"],
2298
+ "cwe_ids": NotRequired["list[str] | None"],
2299
+ "description": Required["str"],
2300
+ "severity": NotRequired["Literal['critical', 'high', 'medium', 'low'] | None"],
2301
+ "start_private_fork": NotRequired["bool"],
2302
+ "summary": Required["str"],
2303
+ "vulnerabilities": Required["list[RepositoryAdvisoryCreateVulnerabilitiesItem]"],
2304
+ },
2305
+ total=False,
2306
+ )
2307
+ RepositoryAdvisoryCreateCreditsVariant0Item = TypedDict(
2308
+ "RepositoryAdvisoryCreateCreditsVariant0Item",
2309
+ {"login": Required["str"], "type": Required["SecurityAdvisoryCreditTypes"]},
2310
+ total=False,
2311
+ )
2312
+ RepositoryAdvisoryCreateVulnerabilitiesItem = TypedDict(
2313
+ "RepositoryAdvisoryCreateVulnerabilitiesItem",
2314
+ {
2315
+ "package": Required["RepositoryAdvisoryCreateVulnerabilitiesItemPackage"],
2316
+ "patched_versions": NotRequired["str | None"],
2317
+ "vulnerable_functions": NotRequired["list[str] | None"],
2318
+ "vulnerable_version_range": NotRequired["str | None"],
2319
+ },
2320
+ total=False,
2321
+ )
2322
+ RepositoryAdvisoryCreateVulnerabilitiesItemPackage = TypedDict(
2323
+ "RepositoryAdvisoryCreateVulnerabilitiesItemPackage",
2324
+ {"ecosystem": Required["SecurityAdvisoryEcosystems"], "name": NotRequired["str | None"]},
2325
+ total=False,
2326
+ )
2327
+ RepositoryAdvisoryCredit = TypedDict(
2328
+ "RepositoryAdvisoryCredit",
2329
+ {
2330
+ "state": Required["Literal['accepted', 'declined', 'pending']"],
2331
+ "type": Required["SecurityAdvisoryCreditTypes"],
2332
+ "user": Required["SimpleUser"],
2333
+ },
2334
+ total=False,
2335
+ )
2336
+ RepositoryAdvisoryCreditsVariant0Item = TypedDict(
2337
+ "RepositoryAdvisoryCreditsVariant0Item",
2338
+ {"login": NotRequired["str"], "type": NotRequired["SecurityAdvisoryCreditTypes"]},
2339
+ total=False,
2340
+ )
2341
+ RepositoryAdvisoryCwesVariant0Item = TypedDict(
2342
+ "RepositoryAdvisoryCwesVariant0Item",
2343
+ {"cwe_id": Required["str"], "name": Required["str"]},
2344
+ total=False,
2345
+ )
2346
+ RepositoryAdvisoryDescriptionValidationError = TypedDict(
2347
+ "RepositoryAdvisoryDescriptionValidationError",
2348
+ {
2349
+ "documentation_url": Required["str"],
2350
+ "errors": NotRequired["list[RepositoryAdvisoryDescriptionValidationErrorErrorsItem]"],
2351
+ "message": Required["str"],
2352
+ },
2353
+ total=False,
2354
+ )
2355
+ RepositoryAdvisoryDescriptionValidationErrorErrorsItem = TypedDict(
2356
+ "RepositoryAdvisoryDescriptionValidationErrorErrorsItem",
2357
+ {
2358
+ "code": Required["str"],
2359
+ "field": NotRequired["str"],
2360
+ "index": NotRequired["int"],
2361
+ "message": NotRequired["str"],
2362
+ "option": NotRequired["str"],
2363
+ "resource": NotRequired["str"],
2364
+ "section": NotRequired["str"],
2365
+ "value": NotRequired["Union[str | None, int | None, list[str] | None]"],
2366
+ },
2367
+ total=False,
2368
+ )
2369
+ RepositoryAdvisoryIdentifiersItem = TypedDict(
2370
+ "RepositoryAdvisoryIdentifiersItem",
2371
+ {"type": Required["Literal['CVE', 'GHSA']"], "value": Required["str"]},
2372
+ total=False,
2373
+ )
2374
+ RepositoryAdvisoryPrivateForkVariant0 = TypedDict(
2375
+ "RepositoryAdvisoryPrivateForkVariant0",
2376
+ {
2377
+ "archive_url": Required["str"],
2378
+ "assignees_url": Required["str"],
2379
+ "blobs_url": Required["str"],
2380
+ "branches_url": Required["str"],
2381
+ "collaborators_url": Required["str"],
2382
+ "comments_url": Required["str"],
2383
+ "commits_url": Required["str"],
2384
+ "compare_url": Required["str"],
2385
+ "contents_url": Required["str"],
2386
+ "contributors_url": Required["str"],
2387
+ "deployments_url": Required["str"],
2388
+ "description": Required["str | None"],
2389
+ "downloads_url": Required["str"],
2390
+ "events_url": Required["str"],
2391
+ "fork": Required["bool"],
2392
+ "forks_url": Required["str"],
2393
+ "full_name": Required["str"],
2394
+ "git_commits_url": Required["str"],
2395
+ "git_refs_url": Required["str"],
2396
+ "git_tags_url": Required["str"],
2397
+ "hooks_url": Required["str"],
2398
+ "html_url": Required["str"],
2399
+ "id": Required["int"],
2400
+ "issue_comment_url": Required["str"],
2401
+ "issue_events_url": Required["str"],
2402
+ "issues_url": Required["str"],
2403
+ "keys_url": Required["str"],
2404
+ "labels_url": Required["str"],
2405
+ "languages_url": Required["str"],
2406
+ "merges_url": Required["str"],
2407
+ "milestones_url": Required["str"],
2408
+ "name": Required["str"],
2409
+ "node_id": Required["str"],
2410
+ "notifications_url": Required["str"],
2411
+ "owner": Required["SimpleUser"],
2412
+ "private": Required["bool"],
2413
+ "pulls_url": Required["str"],
2414
+ "releases_url": Required["str"],
2415
+ "stargazers_url": Required["str"],
2416
+ "statuses_url": Required["str"],
2417
+ "subscribers_url": Required["str"],
2418
+ "subscription_url": Required["str"],
2419
+ "tags_url": Required["str"],
2420
+ "teams_url": Required["str"],
2421
+ "trees_url": Required["str"],
2422
+ "url": Required["str"],
2423
+ },
2424
+ total=False,
2425
+ )
2426
+ RepositoryAdvisoryPublisherVariant0 = TypedDict(
2427
+ "RepositoryAdvisoryPublisherVariant0",
2428
+ {
2429
+ "avatar_url": Required["str"],
2430
+ "email": NotRequired["str | None"],
2431
+ "events_url": Required["str"],
2432
+ "followers_url": Required["str"],
2433
+ "following_url": Required["str"],
2434
+ "gists_url": Required["str"],
2435
+ "gravatar_id": Required["str | None"],
2436
+ "html_url": Required["str"],
2437
+ "id": Required["int"],
2438
+ "login": Required["str"],
2439
+ "name": NotRequired["str | None"],
2440
+ "node_id": Required["str"],
2441
+ "organizations_url": Required["str"],
2442
+ "received_events_url": Required["str"],
2443
+ "repos_url": Required["str"],
2444
+ "site_admin": Required["bool"],
2445
+ "starred_at": NotRequired["str"],
2446
+ "starred_url": Required["str"],
2447
+ "subscriptions_url": Required["str"],
2448
+ "type": Required["str"],
2449
+ "url": Required["str"],
2450
+ "user_view_type": NotRequired["str"],
2451
+ },
2452
+ total=False,
2453
+ )
2454
+ RepositoryAdvisorySubmissionVariant0 = TypedDict(
2455
+ "RepositoryAdvisorySubmissionVariant0", {"accepted": Required["bool"]}, total=False
2456
+ )
2457
+ RepositoryAdvisoryUpdate = TypedDict(
2458
+ "RepositoryAdvisoryUpdate",
2459
+ {
2460
+ "collaborating_teams": NotRequired["list[str] | None"],
2461
+ "collaborating_users": NotRequired["list[str] | None"],
2462
+ "credits": NotRequired["list[RepositoryAdvisoryUpdateCreditsVariant0Item] | None"],
2463
+ "cve_id": NotRequired["str | None"],
2464
+ "cvss_vector_string": NotRequired["str | None"],
2465
+ "cwe_ids": NotRequired["list[str] | None"],
2466
+ "description": NotRequired["str"],
2467
+ "severity": NotRequired["Literal['critical', 'high', 'medium', 'low'] | None"],
2468
+ "state": NotRequired["Literal['published', 'closed', 'draft']"],
2469
+ "summary": NotRequired["str"],
2470
+ "vulnerabilities": NotRequired["list[RepositoryAdvisoryUpdateVulnerabilitiesItem]"],
2471
+ },
2472
+ total=False,
2473
+ )
2474
+ RepositoryAdvisoryUpdateCreditsVariant0Item = TypedDict(
2475
+ "RepositoryAdvisoryUpdateCreditsVariant0Item",
2476
+ {"login": Required["str"], "type": Required["SecurityAdvisoryCreditTypes"]},
2477
+ total=False,
2478
+ )
2479
+ RepositoryAdvisoryUpdateVulnerabilitiesItem = TypedDict(
2480
+ "RepositoryAdvisoryUpdateVulnerabilitiesItem",
2481
+ {
2482
+ "package": Required["RepositoryAdvisoryUpdateVulnerabilitiesItemPackage"],
2483
+ "patched_versions": NotRequired["str | None"],
2484
+ "vulnerable_functions": NotRequired["list[str] | None"],
2485
+ "vulnerable_version_range": NotRequired["str | None"],
2486
+ },
2487
+ total=False,
2488
+ )
2489
+ RepositoryAdvisoryUpdateVulnerabilitiesItemPackage = TypedDict(
2490
+ "RepositoryAdvisoryUpdateVulnerabilitiesItemPackage",
2491
+ {"ecosystem": Required["SecurityAdvisoryEcosystems"], "name": NotRequired["str | None"]},
2492
+ total=False,
2493
+ )
2494
+ RepositoryAdvisoryVulnerability = TypedDict(
2495
+ "RepositoryAdvisoryVulnerability",
2496
+ {
2497
+ "package": Required["RepositoryAdvisoryVulnerabilityPackageVariant0 | None"],
2498
+ "patched_versions": Required["str | None"],
2499
+ "vulnerable_functions": Required["list[str] | None"],
2500
+ "vulnerable_version_range": Required["str | None"],
2501
+ },
2502
+ total=False,
2503
+ )
2504
+ RepositoryAdvisoryVulnerabilityPackageVariant0 = TypedDict(
2505
+ "RepositoryAdvisoryVulnerabilityPackageVariant0",
2506
+ {"ecosystem": Required["SecurityAdvisoryEcosystems"], "name": Required["str | None"]},
2507
+ total=False,
2508
+ )
2509
+ RepositoryCodeSearchIndexStatus = TypedDict(
2510
+ "RepositoryCodeSearchIndexStatus",
2511
+ {"lexical_commit_sha": NotRequired["str"], "lexical_search_ok": NotRequired["bool"]},
2512
+ total=False,
2513
+ )
2514
+ RepositoryCollaboratorPermission = TypedDict(
2515
+ "RepositoryCollaboratorPermission",
2516
+ {
2517
+ "permission": Required["str"],
2518
+ "role_name": Required["str"],
2519
+ "user": Required["NullableCollaborator"],
2520
+ },
2521
+ total=False,
2522
+ )
2523
+ RepositoryExternalPropertyPayload = TypedDict(
2524
+ "RepositoryExternalPropertyPayload",
2525
+ {"repository_name": Required["str"], "value": Required["str | None"]},
2526
+ total=False,
2527
+ )
2528
+ RepositoryHashAlgorithm = TypedDict(
2529
+ "RepositoryHashAlgorithm",
2530
+ {"hash_algorithm": Required["Literal['sha1', 'sha256']"]},
2531
+ total=False,
2532
+ )
2533
+ RepositoryInvitation = TypedDict(
2534
+ "RepositoryInvitation",
2535
+ {
2536
+ "created_at": Required["str"],
2537
+ "expired": NotRequired["bool"],
2538
+ "html_url": Required["str"],
2539
+ "id": Required["int"],
2540
+ "invitee": Required["NullableSimpleUser"],
2541
+ "inviter": Required["NullableSimpleUser"],
2542
+ "node_id": Required["str"],
2543
+ "permissions": Required[
2544
+ "Literal['read', 'write', 'admin', 'triage', 'triage_plus', 'maintain']"
2545
+ ],
2546
+ "repository": Required["MinimalRepository"],
2547
+ "url": Required["str"],
2548
+ },
2549
+ total=False,
2550
+ )
2551
+ RepositoryPermissions = TypedDict(
2552
+ "RepositoryPermissions",
2553
+ {
2554
+ "admin": Required["bool"],
2555
+ "maintain": NotRequired["bool"],
2556
+ "pull": Required["bool"],
2557
+ "push": Required["bool"],
2558
+ "triage": NotRequired["bool"],
2559
+ },
2560
+ total=False,
2561
+ )
2562
+ RepositoryRule: TypeAlias = "RepositoryRuleCreation | RepositoryRuleUpdate | RepositoryRuleDeletion | RepositoryRuleRequiredLinearHistory | RepositoryRuleMergeQueue | RepositoryRuleRequiredDeployments | RepositoryRuleRequiredSignatures | RepositoryRulePullRequest | RepositoryRuleRequiredStatusChecks | RepositoryRuleNonFastForward | RepositoryRuleCommitMessagePattern | RepositoryRuleCommitAuthorEmailPattern | RepositoryRuleCommitterEmailPattern | RepositoryRuleBranchNamePattern | RepositoryRuleTagNamePattern | RepositoryRuleWorkflows | RepositoryRuleCodeScanning | RepositoryRuleCodeQuality | RepositoryRuleCodeCoverage | RepositoryRuleCopilotCodeReview | RepositoryRuleLicenseComplianceScanning | RepositoryRuleFilePathRestriction | RepositoryRuleMaxFilePathLength | RepositoryRuleFileExtensionRestriction | RepositoryRuleMaxFileSize"
2563
+ RepositoryRuleBranchNamePattern = TypedDict(
2564
+ "RepositoryRuleBranchNamePattern",
2565
+ {
2566
+ "parameters": NotRequired["RepositoryRuleBranchNamePatternParameters"],
2567
+ "type": Required["Literal['branch_name_pattern']"],
2568
+ },
2569
+ total=False,
2570
+ )
2571
+ RepositoryRuleBranchNamePatternParameters = TypedDict(
2572
+ "RepositoryRuleBranchNamePatternParameters",
2573
+ {
2574
+ "name": NotRequired["str"],
2575
+ "negate": NotRequired["bool"],
2576
+ "operator": Required["Literal['starts_with', 'ends_with', 'contains', 'regex']"],
2577
+ "pattern": Required["str"],
2578
+ },
2579
+ total=False,
2580
+ )
2581
+ RepositoryRuleCodeCoverage = TypedDict(
2582
+ "RepositoryRuleCodeCoverage",
2583
+ {
2584
+ "parameters": NotRequired["RepositoryRuleCodeCoverageParameters"],
2585
+ "type": Required["Literal['code_coverage']"],
2586
+ },
2587
+ total=False,
2588
+ )
2589
+ RepositoryRuleCodeCoverageParameters = TypedDict(
2590
+ "RepositoryRuleCodeCoverageParameters",
2591
+ {"max_coverage_drop": NotRequired["float"], "minimum_coverage": NotRequired["float"]},
2592
+ total=False,
2593
+ )
2594
+ RepositoryRuleCodeQuality = TypedDict(
2595
+ "RepositoryRuleCodeQuality",
2596
+ {
2597
+ "parameters": NotRequired["RepositoryRuleCodeQualityParameters"],
2598
+ "type": Required["Literal['code_quality']"],
2599
+ },
2600
+ total=False,
2601
+ )
2602
+ RepositoryRuleCodeQualityParameters = TypedDict(
2603
+ "RepositoryRuleCodeQualityParameters",
2604
+ {"severity": Required["Literal['errors', 'warnings', 'notes', 'all']"]},
2605
+ total=False,
2606
+ )
2607
+ RepositoryRuleCodeScanning = TypedDict(
2608
+ "RepositoryRuleCodeScanning",
2609
+ {
2610
+ "parameters": NotRequired["RepositoryRuleCodeScanningParameters"],
2611
+ "type": Required["Literal['code_scanning']"],
2612
+ },
2613
+ total=False,
2614
+ )
2615
+ RepositoryRuleCodeScanningParameters = TypedDict(
2616
+ "RepositoryRuleCodeScanningParameters",
2617
+ {"code_scanning_tools": Required["list[RepositoryRuleParamsCodeScanningTool]"]},
2618
+ total=False,
2619
+ )
2620
+ RepositoryRuleCommitAuthorEmailPattern = TypedDict(
2621
+ "RepositoryRuleCommitAuthorEmailPattern",
2622
+ {
2623
+ "parameters": NotRequired["RepositoryRuleCommitAuthorEmailPatternParameters"],
2624
+ "type": Required["Literal['commit_author_email_pattern']"],
2625
+ },
2626
+ total=False,
2627
+ )
2628
+ RepositoryRuleCommitAuthorEmailPatternParameters = TypedDict(
2629
+ "RepositoryRuleCommitAuthorEmailPatternParameters",
2630
+ {
2631
+ "name": NotRequired["str"],
2632
+ "negate": NotRequired["bool"],
2633
+ "operator": Required["Literal['starts_with', 'ends_with', 'contains', 'regex']"],
2634
+ "pattern": Required["str"],
2635
+ },
2636
+ total=False,
2637
+ )
2638
+ RepositoryRuleCommitMessagePattern = TypedDict(
2639
+ "RepositoryRuleCommitMessagePattern",
2640
+ {
2641
+ "parameters": NotRequired["RepositoryRuleCommitMessagePatternParameters"],
2642
+ "type": Required["Literal['commit_message_pattern']"],
2643
+ },
2644
+ total=False,
2645
+ )
2646
+ RepositoryRuleCommitMessagePatternParameters = TypedDict(
2647
+ "RepositoryRuleCommitMessagePatternParameters",
2648
+ {
2649
+ "name": NotRequired["str"],
2650
+ "negate": NotRequired["bool"],
2651
+ "operator": Required["Literal['starts_with', 'ends_with', 'contains', 'regex']"],
2652
+ "pattern": Required["str"],
2653
+ },
2654
+ total=False,
2655
+ )
2656
+ RepositoryRuleCommitterEmailPattern = TypedDict(
2657
+ "RepositoryRuleCommitterEmailPattern",
2658
+ {
2659
+ "parameters": NotRequired["RepositoryRuleCommitterEmailPatternParameters"],
2660
+ "type": Required["Literal['committer_email_pattern']"],
2661
+ },
2662
+ total=False,
2663
+ )
2664
+ RepositoryRuleCommitterEmailPatternParameters = TypedDict(
2665
+ "RepositoryRuleCommitterEmailPatternParameters",
2666
+ {
2667
+ "name": NotRequired["str"],
2668
+ "negate": NotRequired["bool"],
2669
+ "operator": Required["Literal['starts_with', 'ends_with', 'contains', 'regex']"],
2670
+ "pattern": Required["str"],
2671
+ },
2672
+ total=False,
2673
+ )
2674
+ RepositoryRuleCopilotCodeReview = TypedDict(
2675
+ "RepositoryRuleCopilotCodeReview",
2676
+ {
2677
+ "parameters": NotRequired["RepositoryRuleCopilotCodeReviewParameters"],
2678
+ "type": Required["Literal['copilot_code_review']"],
2679
+ },
2680
+ total=False,
2681
+ )
2682
+ RepositoryRuleCopilotCodeReviewParameters = TypedDict(
2683
+ "RepositoryRuleCopilotCodeReviewParameters",
2684
+ {"review_draft_pull_requests": NotRequired["bool"], "review_on_push": NotRequired["bool"]},
2685
+ total=False,
2686
+ )
2687
+ RepositoryRuleCreation = TypedDict(
2688
+ "RepositoryRuleCreation", {"type": Required["Literal['creation']"]}, total=False
2689
+ )
2690
+ RepositoryRuleDeletion = TypedDict(
2691
+ "RepositoryRuleDeletion", {"type": Required["Literal['deletion']"]}, total=False
2692
+ )
2693
+ RepositoryRuleDetailed: TypeAlias = "Any"
2694
+ RepositoryRuleEnforcement: TypeAlias = "Literal['disabled', 'active', 'evaluate']"
2695
+ RepositoryRuleFileExtensionRestriction = TypedDict(
2696
+ "RepositoryRuleFileExtensionRestriction",
2697
+ {
2698
+ "parameters": NotRequired["RepositoryRuleFileExtensionRestrictionParameters"],
2699
+ "type": Required["Literal['file_extension_restriction']"],
2700
+ },
2701
+ total=False,
2702
+ )
2703
+ RepositoryRuleFileExtensionRestrictionParameters = TypedDict(
2704
+ "RepositoryRuleFileExtensionRestrictionParameters",
2705
+ {"restricted_file_extensions": Required["list[str]"]},
2706
+ total=False,
2707
+ )
2708
+ RepositoryRuleFilePathRestriction = TypedDict(
2709
+ "RepositoryRuleFilePathRestriction",
2710
+ {
2711
+ "parameters": NotRequired["RepositoryRuleFilePathRestrictionParameters"],
2712
+ "type": Required["Literal['file_path_restriction']"],
2713
+ },
2714
+ total=False,
2715
+ )
2716
+ RepositoryRuleFilePathRestrictionParameters = TypedDict(
2717
+ "RepositoryRuleFilePathRestrictionParameters",
2718
+ {
2719
+ "ignored_file_paths": NotRequired["list[str]"],
2720
+ "restricted_file_paths": Required["list[str]"],
2721
+ },
2722
+ total=False,
2723
+ )
2724
+ RepositoryRuleLicenseComplianceScanning = TypedDict(
2725
+ "RepositoryRuleLicenseComplianceScanning",
2726
+ {"type": Required["Literal['license_compliance_scanning']"]},
2727
+ total=False,
2728
+ )
2729
+ RepositoryRuleMaxFilePathLength = TypedDict(
2730
+ "RepositoryRuleMaxFilePathLength",
2731
+ {
2732
+ "parameters": NotRequired["RepositoryRuleMaxFilePathLengthParameters"],
2733
+ "type": Required["Literal['max_file_path_length']"],
2734
+ },
2735
+ total=False,
2736
+ )
2737
+ RepositoryRuleMaxFilePathLengthParameters = TypedDict(
2738
+ "RepositoryRuleMaxFilePathLengthParameters",
2739
+ {"max_file_path_length": Required["int"]},
2740
+ total=False,
2741
+ )
2742
+ RepositoryRuleMaxFileSize = TypedDict(
2743
+ "RepositoryRuleMaxFileSize",
2744
+ {
2745
+ "parameters": NotRequired["RepositoryRuleMaxFileSizeParameters"],
2746
+ "type": Required["Literal['max_file_size']"],
2747
+ },
2748
+ total=False,
2749
+ )
2750
+ RepositoryRuleMaxFileSizeParameters = TypedDict(
2751
+ "RepositoryRuleMaxFileSizeParameters",
2752
+ {"ignored_file_paths": NotRequired["list[str]"], "max_file_size": Required["int"]},
2753
+ total=False,
2754
+ )
2755
+ RepositoryRuleMergeQueue = TypedDict(
2756
+ "RepositoryRuleMergeQueue",
2757
+ {
2758
+ "parameters": NotRequired["RepositoryRuleMergeQueueParameters"],
2759
+ "type": Required["Literal['merge_queue']"],
2760
+ },
2761
+ total=False,
2762
+ )
2763
+ RepositoryRuleMergeQueueParameters = TypedDict(
2764
+ "RepositoryRuleMergeQueueParameters",
2765
+ {
2766
+ "check_response_timeout_minutes": Required["int"],
2767
+ "grouping_strategy": Required["Literal['ALLGREEN', 'HEADGREEN']"],
2768
+ "max_entries_to_build": Required["int"],
2769
+ "max_entries_to_merge": Required["int"],
2770
+ "merge_method": Required["Literal['MERGE', 'SQUASH', 'REBASE']"],
2771
+ "min_entries_to_merge": Required["int"],
2772
+ "min_entries_to_merge_wait_minutes": Required["int"],
2773
+ },
2774
+ total=False,
2775
+ )
2776
+ RepositoryRuleNonFastForward = TypedDict(
2777
+ "RepositoryRuleNonFastForward", {"type": Required["Literal['non_fast_forward']"]}, total=False
2778
+ )
2779
+ RepositoryRuleParamsActor = TypedDict(
2780
+ "RepositoryRuleParamsActor",
2781
+ {
2782
+ "id": Required["int"],
2783
+ "type": Required["Literal['User', 'Team', 'IntegrationInstallation', 'RepositoryRole']"],
2784
+ },
2785
+ total=False,
2786
+ )
2787
+ RepositoryRuleParamsCodeScanningTool = TypedDict(
2788
+ "RepositoryRuleParamsCodeScanningTool",
2789
+ {
2790
+ "alerts_threshold": Required["Literal['none', 'errors', 'errors_and_warnings', 'all']"],
2791
+ "security_alerts_threshold": Required[
2792
+ "Literal['none', 'critical', 'high_or_higher', 'medium_or_higher', 'all']"
2793
+ ],
2794
+ "tool": Required["str"],
2795
+ },
2796
+ total=False,
2797
+ )
2798
+ RepositoryRuleParamsDismissalRestriction = TypedDict(
2799
+ "RepositoryRuleParamsDismissalRestriction",
2800
+ {"allowed_actors": NotRequired["list[RepositoryRuleParamsActor]"], "enabled": Required["bool"]},
2801
+ total=False,
2802
+ )
2803
+ RepositoryRuleParamsProofOfPresence = TypedDict(
2804
+ "RepositoryRuleParamsProofOfPresence",
2805
+ {"required_authentication_level": Required["Literal['reauth', 'mfa']"]},
2806
+ total=False,
2807
+ )
2808
+ RepositoryRuleParamsRequiredReviewerConfiguration = TypedDict(
2809
+ "RepositoryRuleParamsRequiredReviewerConfiguration",
2810
+ {
2811
+ "file_patterns": Required["list[str]"],
2812
+ "minimum_approvals": Required["int"],
2813
+ "reviewer": Required["RepositoryRuleParamsReviewer"],
2814
+ },
2815
+ total=False,
2816
+ )
2817
+ RepositoryRuleParamsRestrictedCommits = TypedDict(
2818
+ "RepositoryRuleParamsRestrictedCommits",
2819
+ {"oid": Required["str"], "reason": NotRequired["str"]},
2820
+ total=False,
2821
+ )
2822
+ RepositoryRuleParamsReviewer = TypedDict(
2823
+ "RepositoryRuleParamsReviewer",
2824
+ {"id": Required["int"], "type": Required["Literal['Team']"]},
2825
+ total=False,
2826
+ )
2827
+ RepositoryRuleParamsStatusCheckConfiguration = TypedDict(
2828
+ "RepositoryRuleParamsStatusCheckConfiguration",
2829
+ {"context": Required["str"], "integration_id": NotRequired["int"]},
2830
+ total=False,
2831
+ )
2832
+ RepositoryRuleParamsWorkflowFileReference = TypedDict(
2833
+ "RepositoryRuleParamsWorkflowFileReference",
2834
+ {
2835
+ "path": Required["str"],
2836
+ "ref": NotRequired["str"],
2837
+ "repository_id": Required["int"],
2838
+ "sha": NotRequired["str"],
2839
+ },
2840
+ total=False,
2841
+ )
2842
+ RepositoryRulePullRequest = TypedDict(
2843
+ "RepositoryRulePullRequest",
2844
+ {
2845
+ "parameters": NotRequired["RepositoryRulePullRequestParameters"],
2846
+ "type": Required["Literal['pull_request']"],
2847
+ },
2848
+ total=False,
2849
+ )
2850
+ RepositoryRulePullRequestParameters = TypedDict(
2851
+ "RepositoryRulePullRequestParameters",
2852
+ {
2853
+ "allowed_merge_methods": NotRequired["list[Literal['merge', 'squash', 'rebase']]"],
2854
+ "dismiss_stale_reviews_on_push": Required["bool"],
2855
+ "dismissal_restriction": NotRequired["RepositoryRuleParamsDismissalRestriction"],
2856
+ "require_code_owner_review": Required["bool"],
2857
+ "require_extra_approval_for_unattributed_changes": NotRequired["bool"],
2858
+ "require_last_push_approval": Required["bool"],
2859
+ "required_approving_review_count": Required["int"],
2860
+ "required_review_thread_resolution": Required["bool"],
2861
+ "required_reviewers": NotRequired[
2862
+ "list[RepositoryRuleParamsRequiredReviewerConfiguration]"
2863
+ ],
2864
+ },
2865
+ total=False,
2866
+ )
2867
+ RepositoryRuleRequiredDeployments = TypedDict(
2868
+ "RepositoryRuleRequiredDeployments",
2869
+ {
2870
+ "parameters": NotRequired["RepositoryRuleRequiredDeploymentsParameters"],
2871
+ "type": Required["Literal['required_deployments']"],
2872
+ },
2873
+ total=False,
2874
+ )
2875
+ RepositoryRuleRequiredDeploymentsParameters = TypedDict(
2876
+ "RepositoryRuleRequiredDeploymentsParameters",
2877
+ {"required_deployment_environments": Required["list[str]"]},
2878
+ total=False,
2879
+ )
2880
+ RepositoryRuleRequiredLinearHistory = TypedDict(
2881
+ "RepositoryRuleRequiredLinearHistory",
2882
+ {"type": Required["Literal['required_linear_history']"]},
2883
+ total=False,
2884
+ )
2885
+ RepositoryRuleRequiredSignatures = TypedDict(
2886
+ "RepositoryRuleRequiredSignatures",
2887
+ {"type": Required["Literal['required_signatures']"]},
2888
+ total=False,
2889
+ )
2890
+ RepositoryRuleRequiredStatusChecks = TypedDict(
2891
+ "RepositoryRuleRequiredStatusChecks",
2892
+ {
2893
+ "parameters": NotRequired["RepositoryRuleRequiredStatusChecksParameters"],
2894
+ "type": Required["Literal['required_status_checks']"],
2895
+ },
2896
+ total=False,
2897
+ )
2898
+ RepositoryRuleRequiredStatusChecksParameters = TypedDict(
2899
+ "RepositoryRuleRequiredStatusChecksParameters",
2900
+ {
2901
+ "do_not_enforce_on_create": NotRequired["bool"],
2902
+ "required_status_checks": Required["list[RepositoryRuleParamsStatusCheckConfiguration]"],
2903
+ "strict_required_status_checks_policy": Required["bool"],
2904
+ },
2905
+ total=False,
2906
+ )
2907
+ RepositoryRuleRulesetInfo: TypeAlias = "Any"
2908
+ RepositoryRuleTagNamePattern = TypedDict(
2909
+ "RepositoryRuleTagNamePattern",
2910
+ {
2911
+ "parameters": NotRequired["RepositoryRuleTagNamePatternParameters"],
2912
+ "type": Required["Literal['tag_name_pattern']"],
2913
+ },
2914
+ total=False,
2915
+ )
2916
+ RepositoryRuleTagNamePatternParameters = TypedDict(
2917
+ "RepositoryRuleTagNamePatternParameters",
2918
+ {
2919
+ "name": NotRequired["str"],
2920
+ "negate": NotRequired["bool"],
2921
+ "operator": Required["Literal['starts_with', 'ends_with', 'contains', 'regex']"],
2922
+ "pattern": Required["str"],
2923
+ },
2924
+ total=False,
2925
+ )
2926
+ RepositoryRuleUpdate = TypedDict(
2927
+ "RepositoryRuleUpdate",
2928
+ {
2929
+ "parameters": NotRequired["RepositoryRuleUpdateParameters"],
2930
+ "type": Required["Literal['update']"],
2931
+ },
2932
+ total=False,
2933
+ )
2934
+ RepositoryRuleUpdateParameters = TypedDict(
2935
+ "RepositoryRuleUpdateParameters",
2936
+ {"update_allows_fetch_and_merge": Required["bool"]},
2937
+ total=False,
2938
+ )
2939
+ RepositoryRuleViolationError = TypedDict(
2940
+ "RepositoryRuleViolationError",
2941
+ {
2942
+ "documentation_url": NotRequired["str"],
2943
+ "message": NotRequired["str"],
2944
+ "metadata": NotRequired["RepositoryRuleViolationErrorMetadata"],
2945
+ "status": NotRequired["str"],
2946
+ },
2947
+ total=False,
2948
+ )
2949
+ RepositoryRuleViolationErrorMetadata = TypedDict(
2950
+ "RepositoryRuleViolationErrorMetadata",
2951
+ {"secret_scanning": NotRequired["RepositoryRuleViolationErrorMetadataSecretScanning"]},
2952
+ total=False,
2953
+ )
2954
+ RepositoryRuleViolationErrorMetadataSecretScanning = TypedDict(
2955
+ "RepositoryRuleViolationErrorMetadataSecretScanning",
2956
+ {
2957
+ "bypass_placeholders": NotRequired[
2958
+ "list[RepositoryRuleViolationErrorMetadataSecretScanningBypassPlaceholdersItem]"
2959
+ ]
2960
+ },
2961
+ total=False,
2962
+ )
2963
+ RepositoryRuleViolationErrorMetadataSecretScanningBypassPlaceholdersItem = TypedDict(
2964
+ "RepositoryRuleViolationErrorMetadataSecretScanningBypassPlaceholdersItem",
2965
+ {
2966
+ "placeholder_id": NotRequired["SecretScanningPushProtectionBypassPlaceholderId"],
2967
+ "token_type": NotRequired["str"],
2968
+ },
2969
+ total=False,
2970
+ )
2971
+ RepositoryRuleWorkflows = TypedDict(
2972
+ "RepositoryRuleWorkflows",
2973
+ {
2974
+ "parameters": NotRequired["RepositoryRuleWorkflowsParameters"],
2975
+ "type": Required["Literal['workflows']"],
2976
+ },
2977
+ total=False,
2978
+ )
2979
+ RepositoryRuleWorkflowsParameters = TypedDict(
2980
+ "RepositoryRuleWorkflowsParameters",
2981
+ {
2982
+ "do_not_enforce_on_create": NotRequired["bool"],
2983
+ "workflows": Required["list[RepositoryRuleParamsWorkflowFileReference]"],
2984
+ },
2985
+ total=False,
2986
+ )
2987
+ RepositoryRuleset = TypedDict(
2988
+ "RepositoryRuleset",
2989
+ {
2990
+ "_links": NotRequired["RepositoryRulesetLinks"],
2991
+ "bypass_actors": NotRequired["list[RepositoryRulesetBypassActor]"],
2992
+ "conditions": NotRequired[
2993
+ "Union[Union[RepositoryRulesetConditions, OrgRulesetConditions], None]"
2994
+ ],
2995
+ "created_at": NotRequired["str"],
2996
+ "current_user_can_bypass": NotRequired[
2997
+ "Literal['always', 'pull_requests_only', 'never', 'exempt']"
2998
+ ],
2999
+ "enforcement": Required["RepositoryRuleEnforcement"],
3000
+ "id": Required["int"],
3001
+ "name": Required["str"],
3002
+ "node_id": NotRequired["str"],
3003
+ "rules": NotRequired["list[RepositoryRule]"],
3004
+ "source": Required["str"],
3005
+ "source_type": NotRequired["Literal['Repository', 'Organization', 'Enterprise']"],
3006
+ "target": NotRequired["Literal['branch', 'tag', 'push', 'repository']"],
3007
+ "updated_at": NotRequired["str"],
3008
+ },
3009
+ total=False,
3010
+ )
3011
+ RepositoryRulesetBypassActor = TypedDict(
3012
+ "RepositoryRulesetBypassActor",
3013
+ {
3014
+ "actor_id": NotRequired["int | None"],
3015
+ "actor_type": Required[
3016
+ "Literal['Integration', 'OrganizationAdmin', 'RepositoryRole', 'Team', 'DeployKey', 'User']"
3017
+ ],
3018
+ "bypass_mode": NotRequired["Literal['always', 'pull_request', 'exempt']"],
3019
+ },
3020
+ total=False,
3021
+ )
3022
+ RepositoryRulesetConditions = TypedDict(
3023
+ "RepositoryRulesetConditions",
3024
+ {"ref_name": NotRequired["RepositoryRulesetConditionsRefName"]},
3025
+ total=False,
3026
+ )
3027
+ RepositoryRulesetConditionsRefName = TypedDict(
3028
+ "RepositoryRulesetConditionsRefName",
3029
+ {"exclude": NotRequired["list[str]"], "include": NotRequired["list[str]"]},
3030
+ total=False,
3031
+ )
3032
+ RepositoryRulesetConditionsRepositoryIdTarget = TypedDict(
3033
+ "RepositoryRulesetConditionsRepositoryIdTarget",
3034
+ {"repository_id": Required["RepositoryRulesetConditionsRepositoryIdTargetRepositoryId"]},
3035
+ total=False,
3036
+ )
3037
+ RepositoryRulesetConditionsRepositoryIdTargetRepositoryId = TypedDict(
3038
+ "RepositoryRulesetConditionsRepositoryIdTargetRepositoryId",
3039
+ {"repository_ids": NotRequired["list[int]"]},
3040
+ total=False,
3041
+ )
3042
+ RepositoryRulesetConditionsRepositoryNameTarget = TypedDict(
3043
+ "RepositoryRulesetConditionsRepositoryNameTarget",
3044
+ {"repository_name": Required["RepositoryRulesetConditionsRepositoryNameTargetRepositoryName"]},
3045
+ total=False,
3046
+ )
3047
+ RepositoryRulesetConditionsRepositoryNameTargetRepositoryName = TypedDict(
3048
+ "RepositoryRulesetConditionsRepositoryNameTargetRepositoryName",
3049
+ {
3050
+ "exclude": NotRequired["list[str]"],
3051
+ "include": NotRequired["list[str]"],
3052
+ "protected": NotRequired["bool"],
3053
+ },
3054
+ total=False,
3055
+ )
3056
+ RepositoryRulesetConditionsRepositoryPropertySpec = TypedDict(
3057
+ "RepositoryRulesetConditionsRepositoryPropertySpec",
3058
+ {
3059
+ "name": Required["str"],
3060
+ "property_values": Required["list[str]"],
3061
+ "source": NotRequired["Literal['custom', 'system']"],
3062
+ },
3063
+ total=False,
3064
+ )
3065
+ RepositoryRulesetConditionsRepositoryPropertyTarget = TypedDict(
3066
+ "RepositoryRulesetConditionsRepositoryPropertyTarget",
3067
+ {
3068
+ "repository_property": Required[
3069
+ "RepositoryRulesetConditionsRepositoryPropertyTargetRepositoryProperty"
3070
+ ]
3071
+ },
3072
+ total=False,
3073
+ )
3074
+ RepositoryRulesetConditionsRepositoryPropertyTargetRepositoryProperty = TypedDict(
3075
+ "RepositoryRulesetConditionsRepositoryPropertyTargetRepositoryProperty",
3076
+ {
3077
+ "exclude": NotRequired["list[RepositoryRulesetConditionsRepositoryPropertySpec]"],
3078
+ "include": NotRequired["list[RepositoryRulesetConditionsRepositoryPropertySpec]"],
3079
+ },
3080
+ total=False,
3081
+ )
3082
+ RepositoryRulesetLinks = TypedDict(
3083
+ "RepositoryRulesetLinks",
3084
+ {
3085
+ "html": NotRequired["RepositoryRulesetLinksHtmlVariant0 | None"],
3086
+ "self": NotRequired["RepositoryRulesetLinksSelf"],
3087
+ },
3088
+ total=False,
3089
+ )
3090
+ RepositoryRulesetLinksHtmlVariant0 = TypedDict(
3091
+ "RepositoryRulesetLinksHtmlVariant0", {"href": NotRequired["str"]}, total=False
3092
+ )
3093
+ RepositoryRulesetLinksSelf = TypedDict(
3094
+ "RepositoryRulesetLinksSelf", {"href": NotRequired["str"]}, total=False
3095
+ )
3096
+ RepositorySubscription = TypedDict(
3097
+ "RepositorySubscription",
3098
+ {
3099
+ "created_at": Required["str"],
3100
+ "ignored": Required["bool"],
3101
+ "reason": Required["str | None"],
3102
+ "repository_url": Required["str"],
3103
+ "subscribed": Required["bool"],
3104
+ "url": Required["str"],
3105
+ },
3106
+ total=False,
3107
+ )
3108
+ RepositoryWebhooks = TypedDict(
3109
+ "RepositoryWebhooks",
3110
+ {
3111
+ "allow_auto_merge": NotRequired["bool"],
3112
+ "allow_forking": NotRequired["bool"],
3113
+ "allow_merge_commit": NotRequired["bool"],
3114
+ "allow_rebase_merge": NotRequired["bool"],
3115
+ "allow_squash_merge": NotRequired["bool"],
3116
+ "allow_update_branch": NotRequired["bool"],
3117
+ "anonymous_access_enabled": NotRequired["bool"],
3118
+ "archive_url": Required["str"],
3119
+ "archived": Required["bool"],
3120
+ "assignees_url": Required["str"],
3121
+ "blobs_url": Required["str"],
3122
+ "branches_url": Required["str"],
3123
+ "clone_url": Required["str"],
3124
+ "collaborators_url": Required["str"],
3125
+ "comments_url": Required["str"],
3126
+ "commits_url": Required["str"],
3127
+ "compare_url": Required["str"],
3128
+ "contents_url": Required["str"],
3129
+ "contributors_url": Required["str"],
3130
+ "created_at": Required["str | None"],
3131
+ "custom_properties": NotRequired["dict[str, object]"],
3132
+ "default_branch": Required["str"],
3133
+ "delete_branch_on_merge": NotRequired["bool"],
3134
+ "deployments_url": Required["str"],
3135
+ "description": Required["str | None"],
3136
+ "disabled": Required["bool"],
3137
+ "downloads_url": Required["str"],
3138
+ "events_url": Required["str"],
3139
+ "fork": Required["bool"],
3140
+ "forks": Required["int"],
3141
+ "forks_count": Required["int"],
3142
+ "forks_url": Required["str"],
3143
+ "full_name": Required["str"],
3144
+ "git_commits_url": Required["str"],
3145
+ "git_refs_url": Required["str"],
3146
+ "git_tags_url": Required["str"],
3147
+ "git_url": Required["str"],
3148
+ "has_discussions": NotRequired["bool"],
3149
+ "has_downloads": Required["bool"],
3150
+ "has_issues": Required["bool"],
3151
+ "has_pages": Required["bool"],
3152
+ "has_projects": Required["bool"],
3153
+ "has_pull_requests": NotRequired["bool"],
3154
+ "has_wiki": Required["bool"],
3155
+ "homepage": Required["str | None"],
3156
+ "hooks_url": Required["str"],
3157
+ "html_url": Required["str"],
3158
+ "id": Required["int"],
3159
+ "is_template": NotRequired["bool"],
3160
+ "issue_comment_url": Required["str"],
3161
+ "issue_events_url": Required["str"],
3162
+ "issues_url": Required["str"],
3163
+ "keys_url": Required["str"],
3164
+ "labels_url": Required["str"],
3165
+ "language": Required["str | None"],
3166
+ "languages_url": Required["str"],
3167
+ "license": Required["NullableLicenseSimple"],
3168
+ "merge_commit_message": NotRequired["Literal['PR_BODY', 'PR_TITLE', 'BLANK']"],
3169
+ "merge_commit_title": NotRequired["Literal['PR_TITLE', 'MERGE_MESSAGE']"],
3170
+ "merges_url": Required["str"],
3171
+ "milestones_url": Required["str"],
3172
+ "mirror_url": Required["str | None"],
3173
+ "name": Required["str"],
3174
+ "network_count": NotRequired["int"],
3175
+ "node_id": Required["str"],
3176
+ "notifications_url": Required["str"],
3177
+ "open_issues": Required["int"],
3178
+ "open_issues_count": Required["int"],
3179
+ "organization": NotRequired["NullableSimpleUser"],
3180
+ "owner": Required["SimpleUser"],
3181
+ "permissions": NotRequired["RepositoryWebhooksPermissions"],
3182
+ "private": Required["bool"],
3183
+ "pull_request_creation_policy": NotRequired["Literal['all', 'collaborators_only']"],
3184
+ "pulls_url": Required["str"],
3185
+ "pushed_at": Required["str | None"],
3186
+ "releases_url": Required["str"],
3187
+ "size": Required["int"],
3188
+ "squash_merge_commit_message": NotRequired[
3189
+ "Literal['PR_BODY', 'COMMIT_MESSAGES', 'BLANK']"
3190
+ ],
3191
+ "squash_merge_commit_title": NotRequired["Literal['PR_TITLE', 'COMMIT_OR_PR_TITLE']"],
3192
+ "ssh_url": Required["str"],
3193
+ "stargazers_count": Required["int"],
3194
+ "stargazers_url": Required["str"],
3195
+ "starred_at": NotRequired["str"],
3196
+ "statuses_url": Required["str"],
3197
+ "subscribers_count": NotRequired["int"],
3198
+ "subscribers_url": Required["str"],
3199
+ "subscription_url": Required["str"],
3200
+ "svn_url": Required["str"],
3201
+ "tags_url": Required["str"],
3202
+ "teams_url": Required["str"],
3203
+ "temp_clone_token": NotRequired["str"],
3204
+ "template_repository": NotRequired["RepositoryWebhooksTemplateRepositoryVariant0 | None"],
3205
+ "topics": NotRequired["list[str]"],
3206
+ "trees_url": Required["str"],
3207
+ "updated_at": Required["str | None"],
3208
+ "url": Required["str"],
3209
+ "visibility": NotRequired["str"],
3210
+ "watchers": Required["int"],
3211
+ "watchers_count": Required["int"],
3212
+ "web_commit_signoff_required": NotRequired["bool"],
3213
+ },
3214
+ total=False,
3215
+ )
3216
+ RepositoryWebhooksPermissions = TypedDict(
3217
+ "RepositoryWebhooksPermissions",
3218
+ {
3219
+ "admin": Required["bool"],
3220
+ "maintain": NotRequired["bool"],
3221
+ "pull": Required["bool"],
3222
+ "push": Required["bool"],
3223
+ "triage": NotRequired["bool"],
3224
+ },
3225
+ total=False,
3226
+ )
3227
+ RepositoryWebhooksTemplateRepositoryVariant0 = TypedDict(
3228
+ "RepositoryWebhooksTemplateRepositoryVariant0",
3229
+ {
3230
+ "allow_auto_merge": NotRequired["bool"],
3231
+ "allow_merge_commit": NotRequired["bool"],
3232
+ "allow_rebase_merge": NotRequired["bool"],
3233
+ "allow_squash_merge": NotRequired["bool"],
3234
+ "allow_update_branch": NotRequired["bool"],
3235
+ "archive_url": NotRequired["str"],
3236
+ "archived": NotRequired["bool"],
3237
+ "assignees_url": NotRequired["str"],
3238
+ "blobs_url": NotRequired["str"],
3239
+ "branches_url": NotRequired["str"],
3240
+ "clone_url": NotRequired["str"],
3241
+ "collaborators_url": NotRequired["str"],
3242
+ "comments_url": NotRequired["str"],
3243
+ "commits_url": NotRequired["str"],
3244
+ "compare_url": NotRequired["str"],
3245
+ "contents_url": NotRequired["str"],
3246
+ "contributors_url": NotRequired["str"],
3247
+ "created_at": NotRequired["str"],
3248
+ "default_branch": NotRequired["str"],
3249
+ "delete_branch_on_merge": NotRequired["bool"],
3250
+ "deployments_url": NotRequired["str"],
3251
+ "description": NotRequired["str"],
3252
+ "disabled": NotRequired["bool"],
3253
+ "downloads_url": NotRequired["str"],
3254
+ "events_url": NotRequired["str"],
3255
+ "fork": NotRequired["bool"],
3256
+ "forks_count": NotRequired["int"],
3257
+ "forks_url": NotRequired["str"],
3258
+ "full_name": NotRequired["str"],
3259
+ "git_commits_url": NotRequired["str"],
3260
+ "git_refs_url": NotRequired["str"],
3261
+ "git_tags_url": NotRequired["str"],
3262
+ "git_url": NotRequired["str"],
3263
+ "has_downloads": NotRequired["bool"],
3264
+ "has_issues": NotRequired["bool"],
3265
+ "has_pages": NotRequired["bool"],
3266
+ "has_projects": NotRequired["bool"],
3267
+ "has_wiki": NotRequired["bool"],
3268
+ "homepage": NotRequired["str"],
3269
+ "hooks_url": NotRequired["str"],
3270
+ "html_url": NotRequired["str"],
3271
+ "id": NotRequired["int"],
3272
+ "is_template": NotRequired["bool"],
3273
+ "issue_comment_url": NotRequired["str"],
3274
+ "issue_events_url": NotRequired["str"],
3275
+ "issues_url": NotRequired["str"],
3276
+ "keys_url": NotRequired["str"],
3277
+ "labels_url": NotRequired["str"],
3278
+ "language": NotRequired["str"],
3279
+ "languages_url": NotRequired["str"],
3280
+ "merge_commit_message": NotRequired["Literal['PR_BODY', 'PR_TITLE', 'BLANK']"],
3281
+ "merge_commit_title": NotRequired["Literal['PR_TITLE', 'MERGE_MESSAGE']"],
3282
+ "merges_url": NotRequired["str"],
3283
+ "milestones_url": NotRequired["str"],
3284
+ "mirror_url": NotRequired["str"],
3285
+ "name": NotRequired["str"],
3286
+ "network_count": NotRequired["int"],
3287
+ "node_id": NotRequired["str"],
3288
+ "notifications_url": NotRequired["str"],
3289
+ "open_issues_count": NotRequired["int"],
3290
+ "owner": NotRequired["RepositoryWebhooksTemplateRepositoryVariant0Owner"],
3291
+ "permissions": NotRequired["RepositoryWebhooksTemplateRepositoryVariant0Permissions"],
3292
+ "private": NotRequired["bool"],
3293
+ "pulls_url": NotRequired["str"],
3294
+ "pushed_at": NotRequired["str"],
3295
+ "releases_url": NotRequired["str"],
3296
+ "size": NotRequired["int"],
3297
+ "squash_merge_commit_message": NotRequired[
3298
+ "Literal['PR_BODY', 'COMMIT_MESSAGES', 'BLANK']"
3299
+ ],
3300
+ "squash_merge_commit_title": NotRequired["Literal['PR_TITLE', 'COMMIT_OR_PR_TITLE']"],
3301
+ "ssh_url": NotRequired["str"],
3302
+ "stargazers_count": NotRequired["int"],
3303
+ "stargazers_url": NotRequired["str"],
3304
+ "statuses_url": NotRequired["str"],
3305
+ "subscribers_count": NotRequired["int"],
3306
+ "subscribers_url": NotRequired["str"],
3307
+ "subscription_url": NotRequired["str"],
3308
+ "svn_url": NotRequired["str"],
3309
+ "tags_url": NotRequired["str"],
3310
+ "teams_url": NotRequired["str"],
3311
+ "temp_clone_token": NotRequired["str"],
3312
+ "topics": NotRequired["list[str]"],
3313
+ "trees_url": NotRequired["str"],
3314
+ "updated_at": NotRequired["str"],
3315
+ "url": NotRequired["str"],
3316
+ "visibility": NotRequired["str"],
3317
+ "watchers_count": NotRequired["int"],
3318
+ },
3319
+ total=False,
3320
+ )
3321
+ RepositoryWebhooksTemplateRepositoryVariant0Owner = TypedDict(
3322
+ "RepositoryWebhooksTemplateRepositoryVariant0Owner",
3323
+ {
3324
+ "avatar_url": NotRequired["str"],
3325
+ "events_url": NotRequired["str"],
3326
+ "followers_url": NotRequired["str"],
3327
+ "following_url": NotRequired["str"],
3328
+ "gists_url": NotRequired["str"],
3329
+ "gravatar_id": NotRequired["str"],
3330
+ "html_url": NotRequired["str"],
3331
+ "id": NotRequired["int"],
3332
+ "login": NotRequired["str"],
3333
+ "node_id": NotRequired["str"],
3334
+ "organizations_url": NotRequired["str"],
3335
+ "received_events_url": NotRequired["str"],
3336
+ "repos_url": NotRequired["str"],
3337
+ "site_admin": NotRequired["bool"],
3338
+ "starred_url": NotRequired["str"],
3339
+ "subscriptions_url": NotRequired["str"],
3340
+ "type": NotRequired["str"],
3341
+ "url": NotRequired["str"],
3342
+ },
3343
+ total=False,
3344
+ )
3345
+ RepositoryWebhooksTemplateRepositoryVariant0Permissions = TypedDict(
3346
+ "RepositoryWebhooksTemplateRepositoryVariant0Permissions",
3347
+ {
3348
+ "admin": NotRequired["bool"],
3349
+ "maintain": NotRequired["bool"],
3350
+ "pull": NotRequired["bool"],
3351
+ "push": NotRequired["bool"],
3352
+ "triage": NotRequired["bool"],
3353
+ },
3354
+ total=False,
3355
+ )
3356
+ ReviewComment = TypedDict(
3357
+ "ReviewComment",
3358
+ {
3359
+ "_links": Required["ReviewCommentLinks"],
3360
+ "author_association": Required["AuthorAssociation"],
3361
+ "body": Required["str"],
3362
+ "body_html": NotRequired["str"],
3363
+ "body_text": NotRequired["str"],
3364
+ "commit_id": Required["str"],
3365
+ "created_at": Required["str"],
3366
+ "diff_hunk": Required["str"],
3367
+ "html_url": Required["str"],
3368
+ "id": Required["int"],
3369
+ "in_reply_to_id": NotRequired["int"],
3370
+ "line": NotRequired["int"],
3371
+ "node_id": Required["str"],
3372
+ "original_commit_id": Required["str"],
3373
+ "original_line": NotRequired["int"],
3374
+ "original_position": Required["int"],
3375
+ "original_start_line": NotRequired["int | None"],
3376
+ "path": Required["str"],
3377
+ "position": Required["int | None"],
3378
+ "pull_request_review_id": Required["int | None"],
3379
+ "pull_request_url": Required["str"],
3380
+ "reactions": NotRequired["ReactionRollup"],
3381
+ "side": NotRequired["Literal['LEFT', 'RIGHT']"],
3382
+ "start_line": NotRequired["int | None"],
3383
+ "start_side": NotRequired["Literal['LEFT', 'RIGHT'] | None"],
3384
+ "subject_type": NotRequired["Literal['line', 'file']"],
3385
+ "updated_at": Required["str"],
3386
+ "url": Required["str"],
3387
+ "user": Required["NullableSimpleUser"],
3388
+ },
3389
+ total=False,
3390
+ )
3391
+ ReviewCommentLinks = TypedDict(
3392
+ "ReviewCommentLinks",
3393
+ {"html": Required["Link"], "pull_request": Required["Link"], "self": Required["Link"]},
3394
+ total=False,
3395
+ )
3396
+ ReviewCustomGatesCommentRequired = TypedDict(
3397
+ "ReviewCustomGatesCommentRequired",
3398
+ {"comment": Required["str"], "environment_name": Required["str"]},
3399
+ total=False,
3400
+ )
3401
+ ReviewCustomGatesStateRequired = TypedDict(
3402
+ "ReviewCustomGatesStateRequired",
3403
+ {
3404
+ "comment": NotRequired["str"],
3405
+ "environment_name": Required["str"],
3406
+ "state": Required["Literal['approved', 'rejected']"],
3407
+ },
3408
+ total=False,
3409
+ )
3410
+ ReviewDismissedIssueEvent = TypedDict(
3411
+ "ReviewDismissedIssueEvent",
3412
+ {
3413
+ "actor": Required["SimpleUser"],
3414
+ "commit_id": Required["str | None"],
3415
+ "commit_url": Required["str | None"],
3416
+ "created_at": Required["str"],
3417
+ "dismissed_review": Required["ReviewDismissedIssueEventDismissedReview"],
3418
+ "event": Required["str"],
3419
+ "id": Required["int"],
3420
+ "node_id": Required["str"],
3421
+ "performed_via_github_app": Required["NullableIntegration"],
3422
+ "url": Required["str"],
3423
+ },
3424
+ total=False,
3425
+ )
3426
+ ReviewDismissedIssueEventDismissedReview = TypedDict(
3427
+ "ReviewDismissedIssueEventDismissedReview",
3428
+ {
3429
+ "dismissal_commit_id": NotRequired["str"],
3430
+ "dismissal_message": Required["str | None"],
3431
+ "review_id": Required["int"],
3432
+ "state": Required["str"],
3433
+ },
3434
+ total=False,
3435
+ )
3436
+ ReviewRequestRemovedIssueEvent = TypedDict(
3437
+ "ReviewRequestRemovedIssueEvent",
3438
+ {
3439
+ "actor": Required["SimpleUser"],
3440
+ "commit_id": Required["str | None"],
3441
+ "commit_url": Required["str | None"],
3442
+ "created_at": Required["str"],
3443
+ "event": Required["str"],
3444
+ "id": Required["int"],
3445
+ "node_id": Required["str"],
3446
+ "performed_via_github_app": Required["NullableIntegration"],
3447
+ "requested_reviewer": NotRequired["SimpleUser"],
3448
+ "requested_team": NotRequired["Team"],
3449
+ "review_requester": Required["SimpleUser"],
3450
+ "url": Required["str"],
3451
+ },
3452
+ total=False,
3453
+ )
3454
+ ReviewRequestedIssueEvent = TypedDict(
3455
+ "ReviewRequestedIssueEvent",
3456
+ {
3457
+ "actor": Required["SimpleUser"],
3458
+ "commit_id": Required["str | None"],
3459
+ "commit_url": Required["str | None"],
3460
+ "created_at": Required["str"],
3461
+ "event": Required["str"],
3462
+ "id": Required["int"],
3463
+ "node_id": Required["str"],
3464
+ "performed_via_github_app": Required["NullableIntegration"],
3465
+ "requested_reviewer": NotRequired["SimpleUser"],
3466
+ "requested_team": NotRequired["Team"],
3467
+ "review_requester": Required["SimpleUser"],
3468
+ "url": Required["str"],
3469
+ },
3470
+ total=False,
3471
+ )
3472
+ Root = TypedDict(
3473
+ "Root",
3474
+ {
3475
+ "code_search_url": Required["str"],
3476
+ "commit_search_url": Required["str"],
3477
+ "current_user_authorizations_html_url": Required["str"],
3478
+ "current_user_repositories_url": Required["str"],
3479
+ "current_user_url": Required["str"],
3480
+ "emails_url": Required["str"],
3481
+ "emojis_url": Required["str"],
3482
+ "events_url": Required["str"],
3483
+ "feeds_url": Required["str"],
3484
+ "followers_url": Required["str"],
3485
+ "following_url": Required["str"],
3486
+ "gists_url": Required["str"],
3487
+ "issue_search_url": Required["str"],
3488
+ "issues_url": Required["str"],
3489
+ "keys_url": Required["str"],
3490
+ "label_search_url": Required["str"],
3491
+ "notifications_url": Required["str"],
3492
+ "organization_repositories_url": Required["str"],
3493
+ "organization_teams_url": Required["str"],
3494
+ "organization_url": Required["str"],
3495
+ "public_gists_url": Required["str"],
3496
+ "rate_limit_url": Required["str"],
3497
+ "repository_search_url": Required["str"],
3498
+ "repository_url": Required["str"],
3499
+ "starred_gists_url": Required["str"],
3500
+ "starred_url": Required["str"],
3501
+ "topic_search_url": NotRequired["str"],
3502
+ "user_organizations_url": Required["str"],
3503
+ "user_repositories_url": Required["str"],
3504
+ "user_search_url": Required["str"],
3505
+ "user_url": Required["str"],
3506
+ },
3507
+ total=False,
3508
+ )
3509
+ RuleSuite = TypedDict(
3510
+ "RuleSuite",
3511
+ {
3512
+ "actor_id": NotRequired["int | None"],
3513
+ "actor_name": NotRequired["str | None"],
3514
+ "after_sha": NotRequired["str"],
3515
+ "before_sha": NotRequired["str"],
3516
+ "evaluation_result": NotRequired["Literal['pass', 'fail', 'bypass'] | None"],
3517
+ "id": NotRequired["int"],
3518
+ "pushed_at": NotRequired["str"],
3519
+ "ref": NotRequired["str"],
3520
+ "repository_id": NotRequired["int"],
3521
+ "repository_name": NotRequired["str"],
3522
+ "result": NotRequired["Literal['pass', 'fail', 'bypass']"],
3523
+ "rule_evaluations": NotRequired["list[RuleSuiteRuleEvaluationsItem]"],
3524
+ },
3525
+ total=False,
3526
+ )
3527
+ RuleSuitePullRequest = TypedDict(
3528
+ "RuleSuitePullRequest",
3529
+ {"pull_request": NotRequired["RuleSuitePullRequestPullRequest"]},
3530
+ total=False,
3531
+ )
3532
+ RuleSuitePullRequestPullRequest = TypedDict(
3533
+ "RuleSuitePullRequestPullRequest",
3534
+ {
3535
+ "id": NotRequired["int"],
3536
+ "number": NotRequired["int"],
3537
+ "proof_of_presence": NotRequired[
3538
+ "RuleSuitePullRequestPullRequestProofOfPresenceVariant0 | None"
3539
+ ],
3540
+ "reviews": NotRequired["list[RuleSuitePullRequestPullRequestReviewsItem]"],
3541
+ "user": NotRequired["RuleSuitePullRequestPullRequestUser"],
3542
+ },
3543
+ total=False,
3544
+ )
3545
+ RuleSuitePullRequestPullRequestProofOfPresenceVariant0 = TypedDict(
3546
+ "RuleSuitePullRequestPullRequestProofOfPresenceVariant0",
3547
+ {
3548
+ "base_sha": NotRequired["str"],
3549
+ "code": NotRequired["str"],
3550
+ "head_sha": NotRequired["str"],
3551
+ "required_level": NotRequired["str"],
3552
+ "state": NotRequired["str"],
3553
+ "verified_at": NotRequired["str"],
3554
+ "verified_level": NotRequired["str"],
3555
+ "verifier": NotRequired[
3556
+ "RuleSuitePullRequestPullRequestProofOfPresenceVariant0VerifierVariant0 | None"
3557
+ ],
3558
+ },
3559
+ total=False,
3560
+ )
3561
+ RuleSuitePullRequestPullRequestProofOfPresenceVariant0VerifierVariant0 = TypedDict(
3562
+ "RuleSuitePullRequestPullRequestProofOfPresenceVariant0VerifierVariant0",
3563
+ {"id": NotRequired["int"], "login": NotRequired["str"], "type": NotRequired["str"]},
3564
+ total=False,
3565
+ )
3566
+ RuleSuitePullRequestPullRequestReviewsItem = TypedDict(
3567
+ "RuleSuitePullRequestPullRequestReviewsItem",
3568
+ {
3569
+ "id": NotRequired["int"],
3570
+ "state": NotRequired["str"],
3571
+ "user": NotRequired["RuleSuitePullRequestPullRequestReviewsItemUser"],
3572
+ },
3573
+ total=False,
3574
+ )
3575
+ RuleSuitePullRequestPullRequestReviewsItemUser = TypedDict(
3576
+ "RuleSuitePullRequestPullRequestReviewsItemUser",
3577
+ {"id": NotRequired["int"], "login": NotRequired["str"], "type": NotRequired["str"]},
3578
+ total=False,
3579
+ )
3580
+ RuleSuitePullRequestPullRequestUser = TypedDict(
3581
+ "RuleSuitePullRequestPullRequestUser",
3582
+ {"id": NotRequired["int"], "login": NotRequired["str"], "type": NotRequired["str"]},
3583
+ total=False,
3584
+ )
3585
+ RuleSuiteRequiredStatusChecks = TypedDict(
3586
+ "RuleSuiteRequiredStatusChecks",
3587
+ {"checks": NotRequired["list[RuleSuiteRequiredStatusChecksChecksItem]"]},
3588
+ total=False,
3589
+ )
3590
+ RuleSuiteRequiredStatusChecksChecksItem = TypedDict(
3591
+ "RuleSuiteRequiredStatusChecksChecksItem",
3592
+ {
3593
+ "app": NotRequired["RuleSuiteRequiredStatusChecksChecksItemAppVariant0 | None"],
3594
+ "context": NotRequired["str"],
3595
+ "id": NotRequired["int"],
3596
+ "state": NotRequired["str"],
3597
+ "type": NotRequired["str"],
3598
+ },
3599
+ total=False,
3600
+ )
3601
+ RuleSuiteRequiredStatusChecksChecksItemAppVariant0 = TypedDict(
3602
+ "RuleSuiteRequiredStatusChecksChecksItemAppVariant0",
3603
+ {"id": NotRequired["int"], "name": NotRequired["str"], "slug": NotRequired["str"]},
3604
+ total=False,
3605
+ )
3606
+ RuleSuiteRuleEvaluationsItem = TypedDict(
3607
+ "RuleSuiteRuleEvaluationsItem",
3608
+ {
3609
+ "details": NotRequired["str | None"],
3610
+ "enforcement": NotRequired["Literal['active', 'evaluate', 'deleted ruleset']"],
3611
+ "metadata": NotRequired[
3612
+ "Union[RuleSuitePullRequest | RuleSuiteRequiredStatusChecks, None]"
3613
+ ],
3614
+ "result": NotRequired["Literal['pass', 'fail']"],
3615
+ "rule_source": NotRequired["RuleSuiteRuleEvaluationsItemRuleSource"],
3616
+ "rule_type": NotRequired["str"],
3617
+ },
3618
+ total=False,
3619
+ )
3620
+ RuleSuiteRuleEvaluationsItemRuleSource = TypedDict(
3621
+ "RuleSuiteRuleEvaluationsItemRuleSource",
3622
+ {
3623
+ "id": NotRequired["int | None"],
3624
+ "name": NotRequired["str | None"],
3625
+ "type": NotRequired["str"],
3626
+ },
3627
+ total=False,
3628
+ )
3629
+ RuleSuites: TypeAlias = "list[RuleSuitesItem]"
3630
+ RuleSuitesItem = TypedDict(
3631
+ "RuleSuitesItem",
3632
+ {
3633
+ "actor_id": NotRequired["int"],
3634
+ "actor_name": NotRequired["str"],
3635
+ "after_sha": NotRequired["str"],
3636
+ "before_sha": NotRequired["str"],
3637
+ "evaluation_result": NotRequired["Literal['pass', 'fail', 'bypass']"],
3638
+ "id": NotRequired["int"],
3639
+ "pushed_at": NotRequired["str"],
3640
+ "ref": NotRequired["str"],
3641
+ "repository_id": NotRequired["int"],
3642
+ "repository_name": NotRequired["str"],
3643
+ "result": NotRequired["Literal['pass', 'fail', 'bypass']"],
3644
+ },
3645
+ total=False,
3646
+ )
3647
+ RulesetVersion = TypedDict(
3648
+ "RulesetVersion",
3649
+ {
3650
+ "actor": Required["RulesetVersionActor"],
3651
+ "updated_at": Required["str"],
3652
+ "version_id": Required["int"],
3653
+ },
3654
+ total=False,
3655
+ )
3656
+ RulesetVersionActor = TypedDict(
3657
+ "RulesetVersionActor", {"id": NotRequired["int"], "type": NotRequired["str"]}, total=False
3658
+ )
3659
+ RulesetVersionWithState = TypedDict(
3660
+ "RulesetVersionWithState",
3661
+ {
3662
+ "actor": Required["RulesetVersionWithStateActor"],
3663
+ "updated_at": Required["str"],
3664
+ "version_id": Required["int"],
3665
+ "state": Required["dict[str, object]"],
3666
+ },
3667
+ total=False,
3668
+ )
3669
+ RulesetVersionWithStateActor = TypedDict(
3670
+ "RulesetVersionWithStateActor",
3671
+ {"id": NotRequired["int"], "type": NotRequired["str"]},
3672
+ total=False,
3673
+ )
3674
+ Runner = TypedDict(
3675
+ "Runner",
3676
+ {
3677
+ "busy": Required["bool"],
3678
+ "ephemeral": NotRequired["bool"],
3679
+ "id": Required["int"],
3680
+ "labels": Required["list[RunnerLabel]"],
3681
+ "name": Required["str"],
3682
+ "os": Required["str"],
3683
+ "runner_group_id": NotRequired["int"],
3684
+ "status": Required["str"],
3685
+ "version": NotRequired["str | None"],
3686
+ },
3687
+ total=False,
3688
+ )
3689
+ RunnerApplication = TypedDict(
3690
+ "RunnerApplication",
3691
+ {
3692
+ "architecture": Required["str"],
3693
+ "download_url": Required["str"],
3694
+ "filename": Required["str"],
3695
+ "os": Required["str"],
3696
+ "sha256_checksum": NotRequired["str"],
3697
+ "temp_download_token": NotRequired["str"],
3698
+ },
3699
+ total=False,
3700
+ )
3701
+ RunnerGroupsOrg = TypedDict(
3702
+ "RunnerGroupsOrg",
3703
+ {
3704
+ "allows_public_repositories": Required["bool"],
3705
+ "default": Required["bool"],
3706
+ "hosted_runners_url": NotRequired["str"],
3707
+ "id": Required["float"],
3708
+ "inherited": Required["bool"],
3709
+ "inherited_allows_public_repositories": NotRequired["bool"],
3710
+ "name": Required["str"],
3711
+ "network_configuration_id": NotRequired["str"],
3712
+ "restricted_to_workflows": NotRequired["bool"],
3713
+ "runners_url": Required["str"],
3714
+ "selected_repositories_url": NotRequired["str"],
3715
+ "selected_workflows": NotRequired["list[str]"],
3716
+ "visibility": Required["str"],
3717
+ "workflow_restrictions_read_only": NotRequired["bool"],
3718
+ },
3719
+ total=False,
3720
+ )
3721
+ RunnerLabel = TypedDict(
3722
+ "RunnerLabel",
3723
+ {
3724
+ "id": NotRequired["int"],
3725
+ "name": Required["str"],
3726
+ "type": NotRequired["Literal['read-only', 'custom']"],
3727
+ },
3728
+ total=False,
3729
+ )
3730
+ ScimError = TypedDict(
3731
+ "ScimError",
3732
+ {
3733
+ "detail": NotRequired["str | None"],
3734
+ "documentation_url": NotRequired["str | None"],
3735
+ "message": NotRequired["str | None"],
3736
+ "schemas": NotRequired["list[str]"],
3737
+ "scimType": NotRequired["str | None"],
3738
+ "status": NotRequired["int"],
3739
+ },
3740
+ total=False,
3741
+ )
3742
+ SearchResultTextMatches: TypeAlias = "list[SearchResultTextMatchesItem]"
3743
+ SearchResultTextMatchesItem = TypedDict(
3744
+ "SearchResultTextMatchesItem",
3745
+ {
3746
+ "fragment": NotRequired["str"],
3747
+ "matches": NotRequired["list[SearchResultTextMatchesItemMatchesItem]"],
3748
+ "object_type": NotRequired["str | None"],
3749
+ "object_url": NotRequired["str"],
3750
+ "property": NotRequired["str"],
3751
+ },
3752
+ total=False,
3753
+ )
3754
+ SearchResultTextMatchesItemMatchesItem = TypedDict(
3755
+ "SearchResultTextMatchesItemMatchesItem",
3756
+ {"indices": NotRequired["list[int]"], "text": NotRequired["str"]},
3757
+ total=False,
3758
+ )
3759
+ SecretScanningAlert = TypedDict(
3760
+ "SecretScanningAlert",
3761
+ {
3762
+ "assigned_to": NotRequired["NullableSimpleUser"],
3763
+ "closure_request_comment": NotRequired["str | None"],
3764
+ "closure_request_reviewer": NotRequired["NullableSimpleUser"],
3765
+ "closure_request_reviewer_comment": NotRequired["str | None"],
3766
+ "created_at": NotRequired["AlertCreatedAt"],
3767
+ "first_location_detected": NotRequired["NullableSecretScanningFirstDetectedLocation"],
3768
+ "has_more_locations": NotRequired["bool"],
3769
+ "html_url": NotRequired["AlertHtmlUrl"],
3770
+ "is_base64_encoded": NotRequired["bool | None"],
3771
+ "locations_url": NotRequired["str"],
3772
+ "multi_repo": NotRequired["bool | None"],
3773
+ "number": NotRequired["AlertNumber"],
3774
+ "provider": NotRequired["str | None"],
3775
+ "provider_slug": NotRequired["str | None"],
3776
+ "publicly_leaked": NotRequired["bool | None"],
3777
+ "push_protection_bypass_request_comment": NotRequired["str | None"],
3778
+ "push_protection_bypass_request_html_url": NotRequired["str | None"],
3779
+ "push_protection_bypass_request_reviewer": NotRequired["NullableSimpleUser"],
3780
+ "push_protection_bypass_request_reviewer_comment": NotRequired["str | None"],
3781
+ "push_protection_bypassed": NotRequired["bool | None"],
3782
+ "push_protection_bypassed_at": NotRequired["str | None"],
3783
+ "push_protection_bypassed_by": NotRequired["NullableSimpleUser"],
3784
+ "resolution": NotRequired["SecretScanningAlertResolution"],
3785
+ "resolution_comment": NotRequired["str | None"],
3786
+ "resolved_at": NotRequired["str | None"],
3787
+ "resolved_by": NotRequired["NullableSimpleUser"],
3788
+ "secret": NotRequired["str"],
3789
+ "secret_type": NotRequired["str"],
3790
+ "secret_type_display_name": NotRequired["str"],
3791
+ "state": NotRequired["SecretScanningAlertState"],
3792
+ "updated_at": NotRequired["NullableAlertUpdatedAt"],
3793
+ "url": NotRequired["AlertUrl"],
3794
+ "validity": NotRequired["Literal['active', 'inactive', 'unknown']"],
3795
+ },
3796
+ total=False,
3797
+ )
3798
+ SecretScanningAlertAssignee: TypeAlias = "str | None"
3799
+ SecretScanningAlertMetadata: TypeAlias = "list[SecretScanningAlertMetadataItem]"
3800
+ SecretScanningAlertMetadataItem = TypedDict(
3801
+ "SecretScanningAlertMetadataItem",
3802
+ {"key": Required["str"], "value": Required["str"]},
3803
+ total=False,
3804
+ )
3805
+ SecretScanningAlertResolution: TypeAlias = (
3806
+ "Literal['false_positive', 'wont_fix', 'revoked', 'used_in_tests'] | None"
3807
+ )
3808
+ SecretScanningAlertResolutionComment: TypeAlias = "str | None"
3809
+ SecretScanningAlertResolutionWebhook: TypeAlias = "Literal['false_positive', 'wont_fix', 'revoked', 'used_in_tests', 'pattern_deleted', 'pattern_edited'] | None"
3810
+ SecretScanningAlertState: TypeAlias = "Literal['open', 'resolved']"
3811
+ SecretScanningAlertWebhook = TypedDict(
3812
+ "SecretScanningAlertWebhook",
3813
+ {
3814
+ "assigned_to": NotRequired["NullableSimpleUser"],
3815
+ "closure_request_comment": NotRequired["str | None"],
3816
+ "closure_request_reviewer": NotRequired["NullableSimpleUser"],
3817
+ "closure_request_reviewer_comment": NotRequired["str | None"],
3818
+ "created_at": NotRequired["AlertCreatedAt"],
3819
+ "html_url": NotRequired["AlertHtmlUrl"],
3820
+ "locations_url": NotRequired["str"],
3821
+ "metadata": NotRequired["SecretScanningAlertMetadata"],
3822
+ "multi_repo": NotRequired["bool | None"],
3823
+ "number": NotRequired["AlertNumber"],
3824
+ "provider": NotRequired["str | None"],
3825
+ "provider_slug": NotRequired["str | None"],
3826
+ "publicly_leaked": NotRequired["bool | None"],
3827
+ "push_protection_bypass_request_comment": NotRequired["str | None"],
3828
+ "push_protection_bypass_request_html_url": NotRequired["str | None"],
3829
+ "push_protection_bypass_request_reviewer": NotRequired["NullableSimpleUser"],
3830
+ "push_protection_bypass_request_reviewer_comment": NotRequired["str | None"],
3831
+ "push_protection_bypassed": NotRequired["bool | None"],
3832
+ "push_protection_bypassed_at": NotRequired["str | None"],
3833
+ "push_protection_bypassed_by": NotRequired["NullableSimpleUser"],
3834
+ "resolution": NotRequired["SecretScanningAlertResolutionWebhook"],
3835
+ "resolution_comment": NotRequired["str | None"],
3836
+ "resolved_at": NotRequired["str | None"],
3837
+ "resolved_by": NotRequired["NullableSimpleUser"],
3838
+ "secret_category": NotRequired["Literal['default', 'generic']"],
3839
+ "secret_type": NotRequired["str"],
3840
+ "secret_type_display_name": NotRequired["str"],
3841
+ "updated_at": NotRequired["NullableAlertUpdatedAt"],
3842
+ "url": NotRequired["AlertUrl"],
3843
+ "validity": NotRequired["Literal['active', 'inactive', 'unknown']"],
3844
+ },
3845
+ total=False,
3846
+ )
3847
+ SecretScanningAlertWithMetadata = TypedDict(
3848
+ "SecretScanningAlertWithMetadata",
3849
+ {
3850
+ "assigned_to": NotRequired["NullableSimpleUser"],
3851
+ "closure_request_comment": NotRequired["str | None"],
3852
+ "closure_request_reviewer": NotRequired["NullableSimpleUser"],
3853
+ "closure_request_reviewer_comment": NotRequired["str | None"],
3854
+ "created_at": NotRequired["AlertCreatedAt"],
3855
+ "first_location_detected": NotRequired["NullableSecretScanningFirstDetectedLocation"],
3856
+ "has_more_locations": NotRequired["bool"],
3857
+ "html_url": NotRequired["AlertHtmlUrl"],
3858
+ "is_base64_encoded": NotRequired["bool | None"],
3859
+ "locations_url": NotRequired["str"],
3860
+ "metadata": NotRequired["SecretScanningAlertMetadata"],
3861
+ "multi_repo": NotRequired["bool | None"],
3862
+ "number": NotRequired["AlertNumber"],
3863
+ "provider": NotRequired["str | None"],
3864
+ "provider_slug": NotRequired["str | None"],
3865
+ "publicly_leaked": NotRequired["bool | None"],
3866
+ "push_protection_bypass_request_comment": NotRequired["str | None"],
3867
+ "push_protection_bypass_request_html_url": NotRequired["str | None"],
3868
+ "push_protection_bypass_request_reviewer": NotRequired["NullableSimpleUser"],
3869
+ "push_protection_bypass_request_reviewer_comment": NotRequired["str | None"],
3870
+ "push_protection_bypassed": NotRequired["bool | None"],
3871
+ "push_protection_bypassed_at": NotRequired["str | None"],
3872
+ "push_protection_bypassed_by": NotRequired["NullableSimpleUser"],
3873
+ "resolution": NotRequired["SecretScanningAlertResolution"],
3874
+ "resolution_comment": NotRequired["str | None"],
3875
+ "resolved_at": NotRequired["str | None"],
3876
+ "resolved_by": NotRequired["NullableSimpleUser"],
3877
+ "secret": NotRequired["str"],
3878
+ "secret_type": NotRequired["str"],
3879
+ "secret_type_display_name": NotRequired["str"],
3880
+ "state": NotRequired["SecretScanningAlertState"],
3881
+ "updated_at": NotRequired["NullableAlertUpdatedAt"],
3882
+ "url": NotRequired["AlertUrl"],
3883
+ "validity": NotRequired["Literal['active', 'inactive', 'unknown']"],
3884
+ },
3885
+ total=False,
3886
+ )
3887
+ SecretScanningCustomPattern = TypedDict(
3888
+ "SecretScanningCustomPattern",
3889
+ {
3890
+ "created_at": NotRequired["str"],
3891
+ "custom_pattern_version": NotRequired["SecretScanningRowVersion"],
3892
+ "end_delimiter": NotRequired["str | None"],
3893
+ "id": Required["int"],
3894
+ "must_match": NotRequired["list[str] | None"],
3895
+ "must_not_match": NotRequired["list[str] | None"],
3896
+ "name": Required["str"],
3897
+ "pattern": Required["str"],
3898
+ "push_protection_enabled": Required["bool"],
3899
+ "slug": Required["str"],
3900
+ "start_delimiter": NotRequired["str | None"],
3901
+ "state": Required["Literal['published', 'unpublished']"],
3902
+ "updated_at": NotRequired["str"],
3903
+ },
3904
+ total=False,
3905
+ )
3906
+ SecretScanningCustomPatternToCreate = TypedDict(
3907
+ "SecretScanningCustomPatternToCreate",
3908
+ {
3909
+ "end_delimiter": NotRequired["str"],
3910
+ "must_match": NotRequired["list[str]"],
3911
+ "must_not_match": NotRequired["list[str]"],
3912
+ "name": Required["str"],
3913
+ "pattern": Required["str"],
3914
+ "start_delimiter": NotRequired["str"],
3915
+ },
3916
+ total=False,
3917
+ )
3918
+ SecretScanningCustomPatternToDelete = TypedDict(
3919
+ "SecretScanningCustomPatternToDelete",
3920
+ {
3921
+ "custom_pattern_version": NotRequired["SecretScanningRowVersion"],
3922
+ "pattern_id": Required["int"],
3923
+ },
3924
+ total=False,
3925
+ )
3926
+ SecretScanningCustomPatternToUpdate: TypeAlias = "Any"
3927
+ SecretScanningCustomPatternValidationError = TypedDict(
3928
+ "SecretScanningCustomPatternValidationError",
3929
+ {
3930
+ "code": NotRequired[
3931
+ "Literal['invalid', 'unprocessable', 'start_delimiter', 'end_delimiter', 'name', 'must_match', 'must_not_match', 'custom_pattern_version_mismatch']"
3932
+ ],
3933
+ "message": NotRequired["str"],
3934
+ },
3935
+ total=False,
3936
+ )
3937
+ SecretScanningLocation = TypedDict(
3938
+ "SecretScanningLocation",
3939
+ {
3940
+ "details": NotRequired[
3941
+ "SecretScanningLocationCommit | SecretScanningLocationWikiCommit | SecretScanningLocationIssueTitle | SecretScanningLocationIssueBody | SecretScanningLocationIssueComment | SecretScanningLocationDiscussionTitle | SecretScanningLocationDiscussionBody | SecretScanningLocationDiscussionComment | SecretScanningLocationPullRequestTitle | SecretScanningLocationPullRequestBody | SecretScanningLocationPullRequestComment | SecretScanningLocationPullRequestReview | SecretScanningLocationPullRequestReviewComment"
3942
+ ],
3943
+ "type": NotRequired[
3944
+ "Literal['commit', 'wiki_commit', 'issue_title', 'issue_body', 'issue_comment', 'discussion_title', 'discussion_body', 'discussion_comment', 'pull_request_title', 'pull_request_body', 'pull_request_comment', 'pull_request_review', 'pull_request_review_comment']"
3945
+ ],
3946
+ },
3947
+ total=False,
3948
+ )
3949
+ SecretScanningLocationCommit = TypedDict(
3950
+ "SecretScanningLocationCommit",
3951
+ {
3952
+ "blob_sha": Required["str"],
3953
+ "blob_url": Required["str"],
3954
+ "commit_sha": Required["str"],
3955
+ "commit_url": Required["str"],
3956
+ "end_column": Required["float"],
3957
+ "end_line": Required["float"],
3958
+ "html_url": NotRequired["str"],
3959
+ "path": Required["str"],
3960
+ "start_column": Required["float"],
3961
+ "start_line": Required["float"],
3962
+ },
3963
+ total=False,
3964
+ )
3965
+ SecretScanningLocationDiscussionBody = TypedDict(
3966
+ "SecretScanningLocationDiscussionBody", {"discussion_body_url": Required["str"]}, total=False
3967
+ )
3968
+ SecretScanningLocationDiscussionComment = TypedDict(
3969
+ "SecretScanningLocationDiscussionComment",
3970
+ {"discussion_comment_url": Required["str"]},
3971
+ total=False,
3972
+ )
3973
+ SecretScanningLocationDiscussionTitle = TypedDict(
3974
+ "SecretScanningLocationDiscussionTitle", {"discussion_title_url": Required["str"]}, total=False
3975
+ )
3976
+ SecretScanningLocationIssueBody = TypedDict(
3977
+ "SecretScanningLocationIssueBody",
3978
+ {"html_url": NotRequired["str"], "issue_body_url": Required["str"]},
3979
+ total=False,
3980
+ )
3981
+ SecretScanningLocationIssueComment = TypedDict(
3982
+ "SecretScanningLocationIssueComment",
3983
+ {"html_url": NotRequired["str"], "issue_comment_url": Required["str"]},
3984
+ total=False,
3985
+ )
3986
+ SecretScanningLocationIssueTitle = TypedDict(
3987
+ "SecretScanningLocationIssueTitle",
3988
+ {"html_url": NotRequired["str"], "issue_title_url": Required["str"]},
3989
+ total=False,
3990
+ )
3991
+ SecretScanningLocationPullRequestBody = TypedDict(
3992
+ "SecretScanningLocationPullRequestBody",
3993
+ {"html_url": NotRequired["str"], "pull_request_body_url": Required["str"]},
3994
+ total=False,
3995
+ )
3996
+ SecretScanningLocationPullRequestComment = TypedDict(
3997
+ "SecretScanningLocationPullRequestComment",
3998
+ {"html_url": NotRequired["str"], "pull_request_comment_url": Required["str"]},
3999
+ total=False,
4000
+ )
4001
+ SecretScanningLocationPullRequestReview = TypedDict(
4002
+ "SecretScanningLocationPullRequestReview",
4003
+ {"html_url": NotRequired["str"], "pull_request_review_url": Required["str"]},
4004
+ total=False,
4005
+ )
4006
+ SecretScanningLocationPullRequestReviewComment = TypedDict(
4007
+ "SecretScanningLocationPullRequestReviewComment",
4008
+ {"html_url": NotRequired["str"], "pull_request_review_comment_url": Required["str"]},
4009
+ total=False,
4010
+ )
4011
+ SecretScanningLocationPullRequestTitle = TypedDict(
4012
+ "SecretScanningLocationPullRequestTitle",
4013
+ {"html_url": NotRequired["str"], "pull_request_title_url": Required["str"]},
4014
+ total=False,
4015
+ )
4016
+ SecretScanningLocationWikiCommit = TypedDict(
4017
+ "SecretScanningLocationWikiCommit",
4018
+ {
4019
+ "blob_sha": Required["str"],
4020
+ "commit_sha": Required["str"],
4021
+ "commit_url": Required["str"],
4022
+ "end_column": Required["float"],
4023
+ "end_line": Required["float"],
4024
+ "page_url": Required["str"],
4025
+ "path": Required["str"],
4026
+ "start_column": Required["float"],
4027
+ "start_line": Required["float"],
4028
+ },
4029
+ total=False,
4030
+ )
4031
+ SecretScanningPatternConfiguration = TypedDict(
4032
+ "SecretScanningPatternConfiguration",
4033
+ {
4034
+ "custom_pattern_overrides": NotRequired["list[SecretScanningPatternOverride]"],
4035
+ "pattern_config_version": NotRequired["SecretScanningRowVersion"],
4036
+ "provider_pattern_overrides": NotRequired["list[SecretScanningPatternOverride]"],
4037
+ },
4038
+ total=False,
4039
+ )
4040
+ SecretScanningPatternOverride = TypedDict(
4041
+ "SecretScanningPatternOverride",
4042
+ {
4043
+ "alert_total": NotRequired["int"],
4044
+ "alert_total_percentage": NotRequired["int"],
4045
+ "bypass_rate": NotRequired["int"],
4046
+ "custom_pattern_version": NotRequired["str | None"],
4047
+ "default_setting": NotRequired["Literal['disabled', 'enabled']"],
4048
+ "display_name": NotRequired["str"],
4049
+ "enterprise_setting": NotRequired["Literal['not-set', 'disabled', 'enabled'] | None"],
4050
+ "false_positive_rate": NotRequired["int"],
4051
+ "false_positives": NotRequired["int"],
4052
+ "setting": NotRequired["Literal['not-set', 'disabled', 'enabled']"],
4053
+ "slug": NotRequired["str"],
4054
+ "token_type": NotRequired["str"],
4055
+ },
4056
+ total=False,
4057
+ )
4058
+ SecretScanningPushProtectionBypass = TypedDict(
4059
+ "SecretScanningPushProtectionBypass",
4060
+ {
4061
+ "expire_at": NotRequired["str | None"],
4062
+ "reason": NotRequired["SecretScanningPushProtectionBypassReason"],
4063
+ "token_type": NotRequired["str"],
4064
+ },
4065
+ total=False,
4066
+ )
4067
+ SecretScanningPushProtectionBypassPlaceholderId: TypeAlias = "str"
4068
+ SecretScanningPushProtectionBypassReason: TypeAlias = (
4069
+ "Literal['false_positive', 'used_in_tests', 'will_fix_later']"
4070
+ )
4071
+ SecretScanningRowVersion: TypeAlias = "str | None"
4072
+ SecretScanningScan = TypedDict(
4073
+ "SecretScanningScan",
4074
+ {
4075
+ "completed_at": NotRequired["str | None"],
4076
+ "started_at": NotRequired["str | None"],
4077
+ "status": NotRequired["str"],
4078
+ "type": NotRequired["str"],
4079
+ },
4080
+ total=False,
4081
+ )
4082
+ SecretScanningScanHistory = TypedDict(
4083
+ "SecretScanningScanHistory",
4084
+ {
4085
+ "backfill_scans": NotRequired["list[SecretScanningScan]"],
4086
+ "custom_pattern_backfill_scans": NotRequired[
4087
+ "list[SecretScanningScanHistoryCustomPatternBackfillScansItem]"
4088
+ ],
4089
+ "generic_secrets_backfill_scans": NotRequired["list[SecretScanningScan]"],
4090
+ "incremental_scans": NotRequired["list[SecretScanningScan]"],
4091
+ "pattern_update_scans": NotRequired["list[SecretScanningScan]"],
4092
+ },
4093
+ total=False,
4094
+ )
4095
+ SecretScanningScanHistoryCustomPatternBackfillScansItem = TypedDict(
4096
+ "SecretScanningScanHistoryCustomPatternBackfillScansItem",
4097
+ {
4098
+ "completed_at": NotRequired["str | None"],
4099
+ "started_at": NotRequired["str | None"],
4100
+ "status": NotRequired["str"],
4101
+ "type": NotRequired["str"],
4102
+ "pattern_name": NotRequired["str"],
4103
+ "pattern_scope": NotRequired["str"],
4104
+ },
4105
+ total=False,
4106
+ )
4107
+ SecurityAdvisoryCreditTypes: TypeAlias = "Literal['analyst', 'finder', 'reporter', 'coordinator', 'remediation_developer', 'remediation_reviewer', 'remediation_verifier', 'tool', 'sponsor', 'other']"
4108
+ SecurityAdvisoryEcosystems: TypeAlias = "Literal['rubygems', 'npm', 'pip', 'maven', 'nuget', 'composer', 'go', 'rust', 'erlang', 'actions', 'pub', 'other', 'swift']"
4109
+ SecurityAdvisoryEpss: TypeAlias = "SecurityAdvisoryEpssVariant0 | None"
4110
+ SecurityAdvisoryEpssVariant0 = TypedDict(
4111
+ "SecurityAdvisoryEpssVariant0",
4112
+ {"percentage": NotRequired["float"], "percentile": NotRequired["float"]},
4113
+ total=False,
4114
+ )
4115
+ SecurityAndAnalysis: TypeAlias = "SecurityAndAnalysisVariant0 | None"
4116
+ SecurityAndAnalysisVariant0 = TypedDict(
4117
+ "SecurityAndAnalysisVariant0",
4118
+ {
4119
+ "advanced_security": NotRequired["SecurityAndAnalysisVariant0AdvancedSecurity"],
4120
+ "code_security": NotRequired["SecurityAndAnalysisVariant0CodeSecurity"],
4121
+ "dependabot_security_updates": NotRequired[
4122
+ "SecurityAndAnalysisVariant0DependabotSecurityUpdates"
4123
+ ],
4124
+ "secret_scanning": NotRequired["SecurityAndAnalysisVariant0SecretScanning"],
4125
+ "secret_scanning_ai_detection": NotRequired[
4126
+ "SecurityAndAnalysisVariant0SecretScanningAiDetection"
4127
+ ],
4128
+ "secret_scanning_delegated_alert_dismissal": NotRequired[
4129
+ "SecurityAndAnalysisVariant0SecretScanningDelegatedAlertDismissal"
4130
+ ],
4131
+ "secret_scanning_delegated_bypass": NotRequired[
4132
+ "SecurityAndAnalysisVariant0SecretScanningDelegatedBypass"
4133
+ ],
4134
+ "secret_scanning_delegated_bypass_options": NotRequired[
4135
+ "SecurityAndAnalysisVariant0SecretScanningDelegatedBypassOptions"
4136
+ ],
4137
+ "secret_scanning_non_provider_patterns": NotRequired[
4138
+ "SecurityAndAnalysisVariant0SecretScanningNonProviderPatterns"
4139
+ ],
4140
+ "secret_scanning_push_protection": NotRequired[
4141
+ "SecurityAndAnalysisVariant0SecretScanningPushProtection"
4142
+ ],
4143
+ },
4144
+ total=False,
4145
+ )
4146
+ SecurityAndAnalysisVariant0AdvancedSecurity = TypedDict(
4147
+ "SecurityAndAnalysisVariant0AdvancedSecurity",
4148
+ {"status": NotRequired["Literal['enabled', 'disabled']"]},
4149
+ total=False,
4150
+ )
4151
+ SecurityAndAnalysisVariant0CodeSecurity = TypedDict(
4152
+ "SecurityAndAnalysisVariant0CodeSecurity",
4153
+ {"status": NotRequired["Literal['enabled', 'disabled']"]},
4154
+ total=False,
4155
+ )
4156
+ SecurityAndAnalysisVariant0DependabotSecurityUpdates = TypedDict(
4157
+ "SecurityAndAnalysisVariant0DependabotSecurityUpdates",
4158
+ {"status": NotRequired["Literal['enabled', 'disabled']"]},
4159
+ total=False,
4160
+ )
4161
+ SecurityAndAnalysisVariant0SecretScanning = TypedDict(
4162
+ "SecurityAndAnalysisVariant0SecretScanning",
4163
+ {"status": NotRequired["Literal['enabled', 'disabled']"]},
4164
+ total=False,
4165
+ )
4166
+ SecurityAndAnalysisVariant0SecretScanningAiDetection = TypedDict(
4167
+ "SecurityAndAnalysisVariant0SecretScanningAiDetection",
4168
+ {"status": NotRequired["Literal['enabled', 'disabled']"]},
4169
+ total=False,
4170
+ )
4171
+ SecurityAndAnalysisVariant0SecretScanningDelegatedAlertDismissal = TypedDict(
4172
+ "SecurityAndAnalysisVariant0SecretScanningDelegatedAlertDismissal",
4173
+ {"status": NotRequired["Literal['enabled', 'disabled']"]},
4174
+ total=False,
4175
+ )
4176
+ SecurityAndAnalysisVariant0SecretScanningDelegatedBypass = TypedDict(
4177
+ "SecurityAndAnalysisVariant0SecretScanningDelegatedBypass",
4178
+ {"status": NotRequired["Literal['enabled', 'disabled']"]},
4179
+ total=False,
4180
+ )
4181
+ SecurityAndAnalysisVariant0SecretScanningDelegatedBypassOptions = TypedDict(
4182
+ "SecurityAndAnalysisVariant0SecretScanningDelegatedBypassOptions",
4183
+ {
4184
+ "reviewers": NotRequired[
4185
+ "list[SecurityAndAnalysisVariant0SecretScanningDelegatedBypassOptionsReviewersItem]"
4186
+ ]
4187
+ },
4188
+ total=False,
4189
+ )
4190
+ SecurityAndAnalysisVariant0SecretScanningDelegatedBypassOptionsReviewersItem = TypedDict(
4191
+ "SecurityAndAnalysisVariant0SecretScanningDelegatedBypassOptionsReviewersItem",
4192
+ {
4193
+ "mode": NotRequired["Literal['ALWAYS', 'EXEMPT']"],
4194
+ "reviewer_id": Required["int"],
4195
+ "reviewer_type": Required["Literal['TEAM', 'ROLE']"],
4196
+ },
4197
+ total=False,
4198
+ )
4199
+ SecurityAndAnalysisVariant0SecretScanningNonProviderPatterns = TypedDict(
4200
+ "SecurityAndAnalysisVariant0SecretScanningNonProviderPatterns",
4201
+ {"status": NotRequired["Literal['enabled', 'disabled']"]},
4202
+ total=False,
4203
+ )
4204
+ SecurityAndAnalysisVariant0SecretScanningPushProtection = TypedDict(
4205
+ "SecurityAndAnalysisVariant0SecretScanningPushProtection",
4206
+ {"status": NotRequired["Literal['enabled', 'disabled']"]},
4207
+ total=False,
4208
+ )
4209
+ SelectedActions = TypedDict(
4210
+ "SelectedActions",
4211
+ {
4212
+ "github_owned_allowed": NotRequired["bool"],
4213
+ "patterns_allowed": NotRequired["list[str]"],
4214
+ "verified_allowed": NotRequired["bool"],
4215
+ },
4216
+ total=False,
4217
+ )
4218
+ SelectedActionsUrl: TypeAlias = "str"
4219
+ SelfHostedRunnersSettings = TypedDict(
4220
+ "SelfHostedRunnersSettings",
4221
+ {
4222
+ "enabled_repositories": Required["Literal['all', 'selected', 'none']"],
4223
+ "selected_repositories_url": NotRequired["str"],
4224
+ },
4225
+ total=False,
4226
+ )
4227
+ ShaPinningRequired: TypeAlias = "bool"
4228
+ ShortBlob = TypedDict("ShortBlob", {"sha": Required["str"], "url": Required["str"]}, total=False)
4229
+ ShortBranch = TypedDict(
4230
+ "ShortBranch",
4231
+ {
4232
+ "commit": Required["ShortBranchCommit"],
4233
+ "name": Required["str"],
4234
+ "protected": Required["bool"],
4235
+ "protection": NotRequired["BranchProtection"],
4236
+ "protection_url": NotRequired["str"],
4237
+ },
4238
+ total=False,
4239
+ )
4240
+ ShortBranchCommit = TypedDict(
4241
+ "ShortBranchCommit", {"sha": Required["str"], "url": Required["str"]}, total=False
4242
+ )
4243
+ SimpleCheckSuite = TypedDict(
4244
+ "SimpleCheckSuite",
4245
+ {
4246
+ "after": NotRequired["str | None"],
4247
+ "app": NotRequired["Integration"],
4248
+ "before": NotRequired["str | None"],
4249
+ "conclusion": NotRequired[
4250
+ "Literal['success', 'failure', 'neutral', 'cancelled', 'skipped', 'timed_out', 'action_required', 'stale', 'startup_failure'] | None"
4251
+ ],
4252
+ "created_at": NotRequired["str"],
4253
+ "head_branch": NotRequired["str | None"],
4254
+ "head_sha": NotRequired["str"],
4255
+ "id": NotRequired["int"],
4256
+ "node_id": NotRequired["str"],
4257
+ "pull_requests": NotRequired["list[PullRequestMinimal]"],
4258
+ "repository": NotRequired["MinimalRepository"],
4259
+ "status": NotRequired[
4260
+ "Literal['queued', 'in_progress', 'completed', 'pending', 'waiting']"
4261
+ ],
4262
+ "updated_at": NotRequired["str"],
4263
+ "url": NotRequired["str"],
4264
+ },
4265
+ total=False,
4266
+ )
4267
+ SimpleCommit = TypedDict(
4268
+ "SimpleCommit",
4269
+ {
4270
+ "author": Required["SimpleCommitAuthorVariant0 | None"],
4271
+ "committer": Required["SimpleCommitCommitterVariant0 | None"],
4272
+ "id": Required["str"],
4273
+ "message": Required["str"],
4274
+ "timestamp": Required["str"],
4275
+ "tree_id": Required["str"],
4276
+ },
4277
+ total=False,
4278
+ )
4279
+ SimpleCommitAuthorVariant0 = TypedDict(
4280
+ "SimpleCommitAuthorVariant0", {"email": Required["str"], "name": Required["str"]}, total=False
4281
+ )
4282
+ SimpleCommitCommitterVariant0 = TypedDict(
4283
+ "SimpleCommitCommitterVariant0",
4284
+ {"email": Required["str"], "name": Required["str"]},
4285
+ total=False,
4286
+ )
4287
+ SimpleCommitStatus = TypedDict(
4288
+ "SimpleCommitStatus",
4289
+ {
4290
+ "avatar_url": Required["str | None"],
4291
+ "context": Required["str"],
4292
+ "created_at": Required["str"],
4293
+ "description": Required["str | None"],
4294
+ "id": Required["int"],
4295
+ "node_id": Required["str"],
4296
+ "required": NotRequired["bool | None"],
4297
+ "state": Required["str"],
4298
+ "target_url": Required["str | None"],
4299
+ "updated_at": Required["str"],
4300
+ "url": Required["str"],
4301
+ },
4302
+ total=False,
4303
+ )
4304
+ SimpleInstallation = TypedDict(
4305
+ "SimpleInstallation", {"id": Required["int"], "node_id": Required["str"]}, total=False
4306
+ )
4307
+ SimpleRepository = TypedDict(
4308
+ "SimpleRepository",
4309
+ {
4310
+ "archive_url": Required["str"],
4311
+ "assignees_url": Required["str"],
4312
+ "blobs_url": Required["str"],
4313
+ "branches_url": Required["str"],
4314
+ "collaborators_url": Required["str"],
4315
+ "comments_url": Required["str"],
4316
+ "commits_url": Required["str"],
4317
+ "compare_url": Required["str"],
4318
+ "contents_url": Required["str"],
4319
+ "contributors_url": Required["str"],
4320
+ "deployments_url": Required["str"],
4321
+ "description": Required["str | None"],
4322
+ "downloads_url": Required["str"],
4323
+ "events_url": Required["str"],
4324
+ "fork": Required["bool"],
4325
+ "forks_url": Required["str"],
4326
+ "full_name": Required["str"],
4327
+ "git_commits_url": Required["str"],
4328
+ "git_refs_url": Required["str"],
4329
+ "git_tags_url": Required["str"],
4330
+ "hooks_url": Required["str"],
4331
+ "html_url": Required["str"],
4332
+ "id": Required["int"],
4333
+ "issue_comment_url": Required["str"],
4334
+ "issue_events_url": Required["str"],
4335
+ "issues_url": Required["str"],
4336
+ "keys_url": Required["str"],
4337
+ "labels_url": Required["str"],
4338
+ "languages_url": Required["str"],
4339
+ "merges_url": Required["str"],
4340
+ "milestones_url": Required["str"],
4341
+ "name": Required["str"],
4342
+ "node_id": Required["str"],
4343
+ "notifications_url": Required["str"],
4344
+ "owner": Required["SimpleUser"],
4345
+ "private": Required["bool"],
4346
+ "pulls_url": Required["str"],
4347
+ "releases_url": Required["str"],
4348
+ "stargazers_url": Required["str"],
4349
+ "statuses_url": Required["str"],
4350
+ "subscribers_url": Required["str"],
4351
+ "subscription_url": Required["str"],
4352
+ "tags_url": Required["str"],
4353
+ "teams_url": Required["str"],
4354
+ "trees_url": Required["str"],
4355
+ "url": Required["str"],
4356
+ },
4357
+ total=False,
4358
+ )
4359
+ SimpleUser = TypedDict(
4360
+ "SimpleUser",
4361
+ {
4362
+ "avatar_url": Required["str"],
4363
+ "email": NotRequired["str | None"],
4364
+ "events_url": Required["str"],
4365
+ "followers_url": Required["str"],
4366
+ "following_url": Required["str"],
4367
+ "gists_url": Required["str"],
4368
+ "gravatar_id": Required["str | None"],
4369
+ "html_url": Required["str"],
4370
+ "id": Required["int"],
4371
+ "login": Required["str"],
4372
+ "name": NotRequired["str | None"],
4373
+ "node_id": Required["str"],
4374
+ "organizations_url": Required["str"],
4375
+ "received_events_url": Required["str"],
4376
+ "repos_url": Required["str"],
4377
+ "site_admin": Required["bool"],
4378
+ "starred_at": NotRequired["str"],
4379
+ "starred_url": Required["str"],
4380
+ "subscriptions_url": Required["str"],
4381
+ "type": Required["str"],
4382
+ "url": Required["str"],
4383
+ "user_view_type": NotRequired["str"],
4384
+ },
4385
+ total=False,
4386
+ )
4387
+ Snapshot = TypedDict(
4388
+ "Snapshot",
4389
+ {
4390
+ "detector": Required["SnapshotDetector"],
4391
+ "job": Required["SnapshotJob"],
4392
+ "manifests": NotRequired["dict[str, Manifest]"],
4393
+ "metadata": NotRequired["Metadata"],
4394
+ "ref": Required["str"],
4395
+ "scanned": Required["str"],
4396
+ "sha": Required["str"],
4397
+ "version": Required["int"],
4398
+ },
4399
+ total=False,
4400
+ )
4401
+ SnapshotDetector = TypedDict(
4402
+ "SnapshotDetector",
4403
+ {"name": Required["str"], "url": Required["str"], "version": Required["str"]},
4404
+ total=False,
4405
+ )
4406
+ SnapshotJob = TypedDict(
4407
+ "SnapshotJob",
4408
+ {"correlator": Required["str"], "html_url": NotRequired["str"], "id": Required["str"]},
4409
+ total=False,
4410
+ )
4411
+ SocialAccount = TypedDict(
4412
+ "SocialAccount", {"provider": Required["str"], "url": Required["str"]}, total=False
4413
+ )
4414
+ SshSigningKey = TypedDict(
4415
+ "SshSigningKey",
4416
+ {
4417
+ "created_at": Required["str"],
4418
+ "id": Required["int"],
4419
+ "key": Required["str"],
4420
+ "title": Required["str"],
4421
+ },
4422
+ total=False,
4423
+ )
4424
+ Stargazer = TypedDict(
4425
+ "Stargazer",
4426
+ {"starred_at": Required["str"], "user": Required["NullableSimpleUser"]},
4427
+ total=False,
4428
+ )
4429
+ StargazerHistory = TypedDict(
4430
+ "StargazerHistory",
4431
+ {"days": Required["list[int]"], "total": Required["int"], "week": Required["int"]},
4432
+ total=False,
4433
+ )
4434
+ StarredRepository = TypedDict(
4435
+ "StarredRepository",
4436
+ {"repo": Required["Repository"], "starred_at": Required["str"]},
4437
+ total=False,
4438
+ )
4439
+ StateChangeIssueEvent = TypedDict(
4440
+ "StateChangeIssueEvent",
4441
+ {
4442
+ "actor": Required["SimpleUser"],
4443
+ "commit_id": Required["str | None"],
4444
+ "commit_url": Required["str | None"],
4445
+ "created_at": Required["str"],
4446
+ "event": Required["str"],
4447
+ "id": Required["int"],
4448
+ "intent": NotRequired["NullableIssueEventIntent"],
4449
+ "node_id": Required["str"],
4450
+ "performed_via_github_app": Required["NullableIntegration"],
4451
+ "state_reason": NotRequired["str | None"],
4452
+ "url": Required["str"],
4453
+ },
4454
+ total=False,
4455
+ )
4456
+ Status = TypedDict(
4457
+ "Status",
4458
+ {
4459
+ "avatar_url": Required["str | None"],
4460
+ "context": Required["str"],
4461
+ "created_at": Required["str"],
4462
+ "creator": Required["NullableSimpleUser"],
4463
+ "description": Required["str | None"],
4464
+ "id": Required["int"],
4465
+ "node_id": Required["str"],
4466
+ "state": Required["str"],
4467
+ "target_url": Required["str | None"],
4468
+ "updated_at": Required["str"],
4469
+ "url": Required["str"],
4470
+ },
4471
+ total=False,
4472
+ )
4473
+ StatusCheckPolicy = TypedDict(
4474
+ "StatusCheckPolicy",
4475
+ {
4476
+ "checks": Required["list[StatusCheckPolicyChecksItem]"],
4477
+ "contexts": Required["list[str]"],
4478
+ "contexts_url": Required["str"],
4479
+ "strict": Required["bool"],
4480
+ "url": Required["str"],
4481
+ },
4482
+ total=False,
4483
+ )
4484
+ StatusCheckPolicyChecksItem = TypedDict(
4485
+ "StatusCheckPolicyChecksItem",
4486
+ {"app_id": Required["int | None"], "context": Required["str"]},
4487
+ total=False,
4488
+ )