1use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Default, Serialize, Deserialize)]
7pub struct QueryOptions {
8 #[serde(skip_serializing_if = "Option::is_none")]
10 pub page: Option<i64>,
11 #[serde(skip_serializing_if = "Option::is_none")]
13 pub per_page: Option<i64>,
14
15 #[serde(skip_serializing_if = "Option::is_none")]
17 pub state: Option<String>,
18 #[serde(skip_serializing_if = "Option::is_none")]
20 pub sort: Option<String>,
21 #[serde(skip_serializing_if = "Option::is_none")]
23 pub direction: Option<String>,
24 #[serde(skip_serializing_if = "Option::is_none")]
26 pub order: Option<String>,
27 #[serde(skip_serializing_if = "Option::is_none")]
29 pub r#type: Option<String>,
30 #[serde(skip_serializing_if = "Option::is_none")]
32 pub scope: Option<String>,
33
34 #[serde(skip_serializing_if = "Option::is_none")]
36 pub q: Option<String>,
37
38 #[serde(rename = "ref")]
40 #[serde(skip_serializing_if = "Option::is_none")]
41 pub git_ref: Option<String>,
42 #[serde(skip_serializing_if = "Option::is_none")]
44 pub sha: Option<String>,
45 #[serde(skip_serializing_if = "Option::is_none")]
47 pub path: Option<String>,
48 #[serde(skip_serializing_if = "Option::is_none")]
50 pub branch: Option<String>,
51 #[serde(skip_serializing_if = "Option::is_none")]
53 pub tag: Option<String>,
54 #[serde(skip_serializing_if = "Option::is_none")]
56 pub base: Option<String>,
57 #[serde(skip_serializing_if = "Option::is_none")]
59 pub head: Option<String>,
60 #[serde(skip_serializing_if = "Option::is_none")]
62 pub recursive: Option<bool>,
63
64 #[serde(skip_serializing_if = "Option::is_none")]
66 pub draft: Option<bool>,
67
68 #[serde(skip_serializing_if = "Option::is_none")]
70 pub labels: Option<String>,
71 #[serde(skip_serializing_if = "Option::is_none")]
73 pub milestones: Option<String>,
74 #[serde(skip_serializing_if = "Option::is_none")]
76 pub assigned_by: Option<String>,
77 #[serde(skip_serializing_if = "Option::is_none")]
79 pub mentioned_by: Option<String>,
80 #[serde(skip_serializing_if = "Option::is_none")]
82 pub created_by: Option<String>,
83 #[serde(skip_serializing_if = "Option::is_none")]
85 pub author: Option<String>,
86 #[serde(skip_serializing_if = "Option::is_none")]
88 pub committer: Option<String>,
89
90 #[serde(skip_serializing_if = "Option::is_none")]
92 pub since: Option<String>,
93 #[serde(skip_serializing_if = "Option::is_none")]
95 pub until: Option<String>,
96 #[serde(skip_serializing_if = "Option::is_none")]
98 pub before: Option<String>,
99
100 #[serde(skip_serializing_if = "Option::is_none")]
102 pub affiliation: Option<String>,
103 #[serde(skip_serializing_if = "Option::is_none")]
105 pub permission: Option<String>,
106 #[serde(skip_serializing_if = "Option::is_none")]
108 pub not: Option<String>,
109
110 #[serde(skip_serializing_if = "Option::is_none")]
112 pub name: Option<String>,
113 #[serde(skip_serializing_if = "Option::is_none")]
115 pub pre_release: Option<bool>,
116 #[serde(skip_serializing_if = "Option::is_none")]
118 pub encrypted_value: Option<String>,
119}
120
121#[derive(Debug, Clone, Serialize, Deserialize)]
123pub struct PaginationInfo {
124 pub page: i64,
125 pub per_page: i64,
126 pub total: i64,
127 pub total_pages: i64,
128}
129
130#[derive(Debug, Clone, Serialize, Deserialize)]
131pub struct AddCollaboratorParams {
132 #[serde(skip_serializing_if = "Option::is_none")]
134 pub permission: Option<String>,
135}
136
137#[derive(Debug, Clone, Serialize, Deserialize)]
138pub struct CommitUserParams {
139 #[serde(skip_serializing_if = "Option::is_none")]
140 pub date: Option<String>,
141 pub email: String,
142 pub name: String,
143}
144
145#[derive(Debug, Clone, Serialize, Deserialize)]
146pub struct CreateActionLinkParams {
147 #[serde(skip_serializing_if = "Option::is_none")]
148 pub description: Option<String>,
149 #[serde(skip_serializing_if = "Option::is_none")]
150 pub link: Option<String>,
151 #[serde(skip_serializing_if = "Option::is_none")]
152 pub name: Option<String>,
153 #[serde(skip_serializing_if = "Option::is_none")]
154 pub run_id: Option<f64>,
155}
156
157#[derive(Debug, Clone, Serialize, Deserialize)]
158pub struct CreateCommitParams {
159 #[serde(skip_serializing_if = "Option::is_none")]
160 pub author: Option<CommitUserParams>,
161 #[serde(skip_serializing_if = "Option::is_none")]
162 pub committer: Option<CommitUserParams>,
163 pub message: String,
164 #[serde(skip_serializing_if = "Option::is_none")]
165 pub parents: Option<Vec<String>>,
166 pub tree: String,
167}
168
169#[derive(Debug, Clone, Serialize, Deserialize)]
170pub struct CreateEmailParams {
171 #[serde(skip_serializing_if = "Option::is_none")]
172 pub emails: Option<Vec<String>>,
173}
174
175#[derive(Debug, Clone, Serialize, Deserialize)]
176pub struct CreateIssueCommentParams {
177 #[serde(skip_serializing_if = "Option::is_none")]
178 pub body: Option<String>,
179 #[serde(skip_serializing_if = "Option::is_none")]
180 pub is_review: Option<bool>,
181 #[serde(skip_serializing_if = "Option::is_none")]
182 pub is_thread: Option<bool>,
183 #[serde(skip_serializing_if = "Option::is_none")]
184 pub reply_to: Option<f64>,
185 #[serde(skip_serializing_if = "Option::is_none")]
186 pub thread_id: Option<f64>,
187}
188
189#[derive(Debug, Clone, Serialize, Deserialize)]
190pub struct CreateFileParams {
191 #[serde(skip_serializing_if = "Option::is_none")]
193 pub branch: Option<String>,
194 #[serde(skip_serializing_if = "Option::is_none")]
196 pub content: Option<String>,
197 #[serde(skip_serializing_if = "Option::is_none")]
199 pub from_path: Option<String>,
200 #[serde(skip_serializing_if = "Option::is_none")]
202 pub message: Option<String>,
203 #[serde(skip_serializing_if = "Option::is_none")]
205 pub new_branch: Option<String>,
206 #[serde(skip_serializing_if = "Option::is_none")]
208 pub sha: Option<String>,
209 #[serde(skip_serializing_if = "Option::is_none")]
211 pub signoff: Option<bool>,
212}
213
214#[derive(Debug, Clone, Serialize, Deserialize)]
215pub struct CreateOrgRepositoryParams {
216 #[serde(skip_serializing_if = "Option::is_none")]
218 pub allow_merge_commit: Option<bool>,
219 #[serde(skip_serializing_if = "Option::is_none")]
221 pub allow_rebase_merge: Option<bool>,
222 #[serde(skip_serializing_if = "Option::is_none")]
224 pub allow_squash_merge: Option<bool>,
225 #[serde(skip_serializing_if = "Option::is_none")]
227 pub auto_init: Option<bool>,
228 #[serde(skip_serializing_if = "Option::is_none")]
230 pub default_branch: Option<String>,
231 #[serde(skip_serializing_if = "Option::is_none")]
233 pub delete_branch_on_merge: Option<bool>,
234 #[serde(skip_serializing_if = "Option::is_none")]
236 pub description: Option<String>,
237 #[serde(skip_serializing_if = "Option::is_none")]
239 pub gitignores: Option<Vec<String>>,
240 #[serde(skip_serializing_if = "Option::is_none")]
242 pub is_template: Option<bool>,
243 #[serde(skip_serializing_if = "Option::is_none")]
245 pub license_template: Option<String>,
246 #[serde(skip_serializing_if = "Option::is_none")]
248 pub name: Option<String>,
249 #[serde(skip_serializing_if = "Option::is_none")]
251 pub private: Option<bool>,
252 #[serde(skip_serializing_if = "Option::is_none")]
254 pub visibility: Option<String>,
255}
256
257#[derive(Debug, Clone, Serialize, Deserialize)]
258pub struct CreatePagesDeploymentParams {
259 #[serde(skip_serializing_if = "Option::is_none")]
260 pub artifact_id: Option<f64>,
261}
262
263#[derive(Debug, Clone, Serialize, Deserialize)]
264pub struct CreatePullRequestParams {
265 #[serde(skip_serializing_if = "Option::is_none")]
267 pub assignees: Option<Vec<String>>,
268 #[serde(skip_serializing_if = "Option::is_none")]
270 pub base: Option<String>,
271 #[serde(skip_serializing_if = "Option::is_none")]
273 pub body: Option<String>,
274 #[serde(skip_serializing_if = "Option::is_none")]
276 pub draft: Option<bool>,
277 #[serde(skip_serializing_if = "Option::is_none")]
279 pub due_date: Option<String>,
280 #[serde(skip_serializing_if = "Option::is_none")]
282 pub head: Option<String>,
283 #[serde(skip_serializing_if = "Option::is_none")]
285 pub head_repo: Option<String>,
286 #[serde(skip_serializing_if = "Option::is_none")]
288 pub labels: Option<Vec<f64>>,
289 #[serde(skip_serializing_if = "Option::is_none")]
291 pub maintainer_can_modify: Option<bool>,
292 #[serde(skip_serializing_if = "Option::is_none")]
294 pub milestone: Option<f64>,
295 #[serde(skip_serializing_if = "Option::is_none")]
297 pub title: Option<String>,
298}
299
300#[derive(Debug, Clone, Serialize, Deserialize)]
301pub struct CreateIssueCommentReactionParams {
302 #[serde(skip_serializing_if = "Option::is_none")]
303 pub content: Option<String>,
304}
305
306#[derive(Debug, Clone, Serialize, Deserialize)]
307pub struct CreateReferenceParams {
308 #[serde(skip_serializing_if = "Option::is_none")]
309 pub r#ref: Option<String>,
310 #[serde(skip_serializing_if = "Option::is_none")]
311 pub sha: Option<String>,
312}
313
314#[derive(Debug, Clone, Serialize, Deserialize)]
315pub struct CreateReleaseParams {
316 #[serde(skip_serializing_if = "Option::is_none")]
317 pub body: Option<String>,
318 #[serde(skip_serializing_if = "Option::is_none")]
319 pub draft: Option<bool>,
320 #[serde(skip_serializing_if = "Option::is_none")]
321 pub is_authorized_only: Option<bool>,
322 #[serde(skip_serializing_if = "Option::is_none")]
323 pub name: Option<String>,
324 #[serde(skip_serializing_if = "Option::is_none")]
325 pub prerelease: Option<bool>,
326 #[serde(skip_serializing_if = "Option::is_none")]
327 pub tag_name: Option<String>,
328 #[serde(skip_serializing_if = "Option::is_none")]
329 pub target_commitish: Option<String>,
330}
331
332#[derive(Debug, Clone, Serialize, Deserialize)]
333pub struct CreateRepositoryParams {
334 #[serde(skip_serializing_if = "Option::is_none")]
335 pub auto_init: Option<bool>,
336 #[serde(skip_serializing_if = "Option::is_none")]
337 pub description: Option<String>,
338 #[serde(skip_serializing_if = "Option::is_none")]
339 pub gitignores: Option<Vec<String>>,
340 #[serde(skip_serializing_if = "Option::is_none")]
341 pub is_template: Option<bool>,
342 #[serde(skip_serializing_if = "Option::is_none")]
343 pub name: Option<String>,
344 #[serde(skip_serializing_if = "Option::is_none")]
345 pub private: Option<bool>,
346}
347
348#[derive(Debug, Clone, Serialize, Deserialize)]
349pub struct TreeItem {
350 #[serde(skip_serializing_if = "Option::is_none")]
351 pub content: Option<String>,
352 #[serde(skip_serializing_if = "Option::is_none")]
353 pub mode: Option<String>,
354 #[serde(skip_serializing_if = "Option::is_none")]
355 pub path: Option<String>,
356 #[serde(skip_serializing_if = "Option::is_none")]
357 pub sha: Option<String>,
358 #[serde(skip_serializing_if = "Option::is_none")]
359 pub r#type: Option<String>,
360}
361
362#[derive(Debug, Clone, Serialize, Deserialize)]
363pub struct CreateTreeParams {
364 #[serde(skip_serializing_if = "Option::is_none")]
365 pub base_tree: Option<String>,
366 #[serde(skip_serializing_if = "Option::is_none")]
367 pub tree: Option<Vec<TreeItem>>,
368}
369
370#[derive(Debug, Clone, Serialize, Deserialize)]
371pub struct CreateVariableParams {
372 #[serde(skip_serializing_if = "Option::is_none")]
373 pub name: Option<String>,
374 #[serde(skip_serializing_if = "Option::is_none")]
375 pub value: Option<String>,
376}
377
378#[derive(Debug, Clone, Serialize, Deserialize)]
379pub struct CreateWebhookConfigParams {
380 #[serde(skip_serializing_if = "Option::is_none")]
381 pub authorization_header: Option<String>,
382 #[serde(skip_serializing_if = "Option::is_none")]
383 pub branch_filter: Option<String>,
384 #[serde(skip_serializing_if = "Option::is_none")]
385 pub content_type: Option<String>,
386 #[serde(skip_serializing_if = "Option::is_none")]
387 pub http_method: Option<String>,
388 #[serde(skip_serializing_if = "Option::is_none")]
389 pub url: Option<String>,
390}
391
392#[derive(Debug, Clone, Serialize, Deserialize)]
393pub struct CreateWebhookParams {
394 #[serde(skip_serializing_if = "Option::is_none")]
395 pub active: Option<bool>,
396 #[serde(skip_serializing_if = "Option::is_none")]
397 pub config: Option<CreateWebhookConfigParams>,
398 #[serde(skip_serializing_if = "Option::is_none")]
399 pub events: Option<Vec<String>>,
400}
401
402#[derive(Debug, Clone, Serialize, Deserialize)]
403pub struct DeleteEmailParams {
404 #[serde(skip_serializing_if = "Option::is_none")]
405 pub emails: Option<Vec<String>>,
406}
407
408#[derive(Debug, Clone, Serialize, Deserialize)]
409pub struct DeleteFileParams {
410 #[serde(skip_serializing_if = "Option::is_none")]
412 pub branch: Option<String>,
413 #[serde(skip_serializing_if = "Option::is_none")]
415 pub message: Option<String>,
416 #[serde(skip_serializing_if = "Option::is_none")]
418 pub new_branch: Option<String>,
419 #[serde(skip_serializing_if = "Option::is_none")]
421 pub sha: Option<String>,
422 #[serde(skip_serializing_if = "Option::is_none")]
424 pub signoff: Option<bool>,
425}
426
427#[derive(Debug, Clone, Serialize, Deserialize)]
428pub struct UpdateReleaseParams {
429 #[serde(skip_serializing_if = "Option::is_none")]
430 pub body: Option<String>,
431 #[serde(skip_serializing_if = "Option::is_none")]
432 pub draft: Option<bool>,
433 #[serde(skip_serializing_if = "Option::is_none")]
434 pub is_authorized_only: Option<bool>,
435 #[serde(skip_serializing_if = "Option::is_none")]
436 pub name: Option<String>,
437 #[serde(skip_serializing_if = "Option::is_none")]
438 pub prerelease: Option<bool>,
439 #[serde(skip_serializing_if = "Option::is_none")]
440 pub tag_name: Option<String>,
441 #[serde(skip_serializing_if = "Option::is_none")]
442 pub target_commitish: Option<String>,
443}
444
445#[derive(Debug, Clone, Serialize, Deserialize)]
446pub struct CreateForkParams {
447 #[serde(skip_serializing_if = "Option::is_none")]
449 pub description: Option<String>,
450 #[serde(skip_serializing_if = "Option::is_none")]
452 pub name: Option<String>,
453 #[serde(skip_serializing_if = "Option::is_none")]
455 pub organization: Option<String>,
456}
457
458#[derive(Debug, Clone, Serialize, Deserialize)]
459pub struct UpdateRepositoryParams {
460 #[serde(skip_serializing_if = "Option::is_none")]
461 pub allow_auto_merge: Option<bool>,
462 #[serde(skip_serializing_if = "Option::is_none")]
463 pub allow_merge: Option<bool>,
464 #[serde(skip_serializing_if = "Option::is_none")]
465 pub allow_rebase: Option<bool>,
466 #[serde(skip_serializing_if = "Option::is_none")]
467 pub allow_rebase_merge: Option<bool>,
468 #[serde(skip_serializing_if = "Option::is_none")]
469 pub allow_squash_merge: Option<bool>,
470 #[serde(skip_serializing_if = "Option::is_none")]
471 pub allow_update_branch: Option<bool>,
472 #[serde(skip_serializing_if = "Option::is_none")]
473 pub archived: Option<bool>,
474 #[serde(skip_serializing_if = "Option::is_none")]
475 pub autodetect_manual_merge: Option<bool>,
476 #[serde(skip_serializing_if = "Option::is_none")]
477 pub default_allow_maintainer_edit: Option<bool>,
478 #[serde(skip_serializing_if = "Option::is_none")]
479 pub default_branch: Option<String>,
480 #[serde(skip_serializing_if = "Option::is_none")]
481 pub default_merge_style: Option<String>,
482 #[serde(skip_serializing_if = "Option::is_none")]
483 pub delete_branch_on_merge: Option<bool>,
484 #[serde(skip_serializing_if = "Option::is_none")]
485 pub description: Option<String>,
486 #[serde(skip_serializing_if = "Option::is_none")]
487 pub homepage: Option<String>,
488 #[serde(skip_serializing_if = "Option::is_none")]
489 pub ignore_whitespace: Option<bool>,
490 #[serde(skip_serializing_if = "Option::is_none")]
491 pub is_template: Option<bool>,
492 #[serde(skip_serializing_if = "Option::is_none")]
494 pub name: Option<String>,
495 #[serde(skip_serializing_if = "Option::is_none")]
496 pub private: Option<bool>,
497}
498
499#[derive(Debug, Clone, Serialize, Deserialize)]
500pub struct TeamRepoPermissions {
501 #[serde(skip_serializing_if = "Option::is_none")]
502 pub permission: Option<String>,
503}
504
505#[derive(Debug, Clone, Serialize, Deserialize)]
506pub struct UpdateBranchParams {
507 #[serde(skip_serializing_if = "Option::is_none")]
508 pub expected_head_sha: Option<String>,
509}
510
511#[derive(Debug, Clone, Serialize, Deserialize)]
512pub struct UpdateIssueCommentParams {
513 #[serde(skip_serializing_if = "Option::is_none")]
514 pub body: Option<String>,
515}
516
517#[derive(Debug, Clone, Serialize, Deserialize)]
518pub struct UpdatePullRequestParams {
519 #[serde(skip_serializing_if = "Option::is_none")]
521 pub base: Option<String>,
522 #[serde(skip_serializing_if = "Option::is_none")]
524 pub body: Option<String>,
525 #[serde(skip_serializing_if = "Option::is_none")]
527 pub maintainer_can_modify: Option<bool>,
528 #[serde(skip_serializing_if = "Option::is_none")]
530 pub state: Option<String>,
531 #[serde(skip_serializing_if = "Option::is_none")]
533 pub title: Option<String>,
534}
535
536#[derive(Debug, Clone, Serialize, Deserialize)]
537pub struct UpdateWebhookConfigParams {
538 #[serde(skip_serializing_if = "Option::is_none")]
539 pub authorization_header: Option<String>,
540 #[serde(skip_serializing_if = "Option::is_none")]
541 pub branch_filter: Option<String>,
542 #[serde(skip_serializing_if = "Option::is_none")]
543 pub content_type: Option<String>,
544 #[serde(skip_serializing_if = "Option::is_none")]
545 pub http_method: Option<String>,
546 #[serde(skip_serializing_if = "Option::is_none")]
547 pub url: Option<String>,
548}
549
550#[derive(Debug, Clone, Serialize, Deserialize)]
551pub struct UpdateWebhookParams {
552 #[serde(skip_serializing_if = "Option::is_none")]
553 pub active: Option<bool>,
554 #[serde(skip_serializing_if = "Option::is_none")]
555 pub add_events: Option<Vec<String>>,
556 #[serde(skip_serializing_if = "Option::is_none")]
557 pub config: Option<UpdateWebhookConfigParams>,
558 #[serde(skip_serializing_if = "Option::is_none")]
559 pub events: Option<Vec<String>>,
560 #[serde(skip_serializing_if = "Option::is_none")]
561 pub remove_events: Option<Vec<String>>,
562}
563
564#[derive(Debug, Clone, Serialize, Deserialize)]
565pub struct ActionWorkflowRun {
566 #[serde(skip_serializing_if = "Option::is_none")]
567 pub head_sha: Option<String>,
568 #[serde(skip_serializing_if = "Option::is_none")]
569 pub id: Option<f64>,
570 #[serde(skip_serializing_if = "Option::is_none")]
571 pub repository_id: Option<f64>,
572}
573
574#[derive(Debug, Clone, Serialize, Deserialize)]
575pub struct ActionArtifact {
576 #[serde(skip_serializing_if = "Option::is_none")]
577 pub archive_download_url: Option<String>,
578 #[serde(skip_serializing_if = "Option::is_none")]
579 pub created_at: Option<String>,
580 #[serde(skip_serializing_if = "Option::is_none")]
581 pub expired: Option<bool>,
582 #[serde(skip_serializing_if = "Option::is_none")]
583 pub expires_at: Option<String>,
584 #[serde(skip_serializing_if = "Option::is_none")]
585 pub id: Option<f64>,
586 #[serde(skip_serializing_if = "Option::is_none")]
587 pub name: Option<String>,
588 #[serde(skip_serializing_if = "Option::is_none")]
589 pub size_in_bytes: Option<f64>,
590 #[serde(skip_serializing_if = "Option::is_none")]
591 pub updated_at: Option<String>,
592 #[serde(skip_serializing_if = "Option::is_none")]
593 pub url: Option<String>,
594 #[serde(skip_serializing_if = "Option::is_none")]
595 pub workflow_run: Option<ActionWorkflowRun>,
596}
597
598#[derive(Debug, Clone, Serialize, Deserialize)]
599pub struct ActionArtifactList {
600 #[serde(skip_serializing_if = "Option::is_none")]
601 pub artifacts: Option<Vec<ActionArtifact>>,
602 #[serde(skip_serializing_if = "Option::is_none")]
603 pub total_count: Option<f64>,
604}
605
606#[derive(Debug, Clone, Serialize, Deserialize)]
607pub struct ActionLink {
608 #[serde(skip_serializing_if = "Option::is_none")]
609 pub description: Option<String>,
610 #[serde(skip_serializing_if = "Option::is_none")]
611 pub id: Option<f64>,
612 #[serde(skip_serializing_if = "Option::is_none")]
613 pub link: Option<String>,
614 #[serde(skip_serializing_if = "Option::is_none")]
615 pub name: Option<String>,
616 #[serde(skip_serializing_if = "Option::is_none")]
617 pub run_id: Option<f64>,
618}
619
620#[derive(Debug, Clone, Serialize, Deserialize)]
621pub struct UserPublicInfo {
622 pub avatar_url: String,
624 pub followers_url: String,
626 pub following_url: String,
628 pub html_url: String,
630 pub id: f64,
632 pub login: String,
634 pub organizations_url: String,
636 pub repos_url: String,
638 pub site_admin: bool,
640 pub r#type: String,
642 pub url: String,
644}
645
646#[derive(Debug, Clone, Serialize, Deserialize)]
647pub struct ActionRun {
648 #[serde(skip_serializing_if = "Option::is_none")]
649 pub actor: Option<UserPublicInfo>,
650 #[serde(skip_serializing_if = "Option::is_none")]
651 pub approved_by: Option<f64>,
652 #[serde(skip_serializing_if = "Option::is_none")]
653 pub commit_sha: Option<String>,
654 #[serde(skip_serializing_if = "Option::is_none")]
655 pub event: Option<String>,
656 #[serde(skip_serializing_if = "Option::is_none")]
657 pub id: Option<f64>,
658 #[serde(skip_serializing_if = "Option::is_none")]
659 pub index: Option<f64>,
660 #[serde(skip_serializing_if = "Option::is_none")]
661 pub is_fork_pull_request: Option<bool>,
662 #[serde(skip_serializing_if = "Option::is_none")]
663 pub name: Option<String>,
664 #[serde(skip_serializing_if = "Option::is_none")]
665 pub need_approval: Option<bool>,
666 #[serde(skip_serializing_if = "Option::is_none")]
667 pub r#ref: Option<String>,
668 #[serde(skip_serializing_if = "Option::is_none")]
669 pub started: Option<String>,
670 #[serde(skip_serializing_if = "Option::is_none")]
671 pub status: Option<String>,
672 #[serde(skip_serializing_if = "Option::is_none")]
673 pub stopped: Option<String>,
674 #[serde(skip_serializing_if = "Option::is_none")]
675 pub title: Option<String>,
676}
677
678#[derive(Debug, Clone, Serialize, Deserialize)]
679pub struct ActionRunJobStep {
680 #[serde(skip_serializing_if = "Option::is_none")]
681 pub completed_at: Option<String>,
682 #[serde(skip_serializing_if = "Option::is_none")]
683 pub name: Option<String>,
684 #[serde(skip_serializing_if = "Option::is_none")]
685 pub number: Option<f64>,
686 #[serde(skip_serializing_if = "Option::is_none")]
687 pub started_at: Option<String>,
688 #[serde(skip_serializing_if = "Option::is_none")]
689 pub status: Option<String>,
690}
691
692#[derive(Debug, Clone, Serialize, Deserialize)]
693pub struct ActionRunJob {
694 #[serde(skip_serializing_if = "Option::is_none")]
695 pub completed_at: Option<String>,
696 #[serde(skip_serializing_if = "Option::is_none")]
697 pub head_branch: Option<String>,
698 #[serde(skip_serializing_if = "Option::is_none")]
699 pub head_sha: Option<String>,
700 #[serde(skip_serializing_if = "Option::is_none")]
701 pub id: Option<f64>,
702 #[serde(skip_serializing_if = "Option::is_none")]
703 pub labels: Option<Vec<String>>,
704 #[serde(skip_serializing_if = "Option::is_none")]
705 pub name: Option<String>,
706 #[serde(skip_serializing_if = "Option::is_none")]
707 pub run_id: Option<f64>,
708 #[serde(skip_serializing_if = "Option::is_none")]
709 pub runner_id: Option<f64>,
710 #[serde(skip_serializing_if = "Option::is_none")]
711 pub runner_name: Option<String>,
712 #[serde(skip_serializing_if = "Option::is_none")]
713 pub started_at: Option<String>,
714 #[serde(skip_serializing_if = "Option::is_none")]
715 pub status: Option<String>,
716 #[serde(skip_serializing_if = "Option::is_none")]
717 pub steps: Option<Vec<ActionRunJobStep>>,
718 #[serde(skip_serializing_if = "Option::is_none")]
719 pub workflow_name: Option<String>,
720}
721
722#[derive(Debug, Clone, Serialize, Deserialize)]
723pub struct ActionRunnerLabel {
724 #[serde(skip_serializing_if = "Option::is_none")]
725 pub id: Option<f64>,
726 #[serde(skip_serializing_if = "Option::is_none")]
727 pub name: Option<String>,
728 #[serde(skip_serializing_if = "Option::is_none")]
729 pub r#type: Option<String>,
730}
731
732#[derive(Debug, Clone, Serialize, Deserialize)]
733pub struct ActionRunner {
734 #[serde(skip_serializing_if = "Option::is_none")]
735 pub busy: Option<bool>,
736 #[serde(skip_serializing_if = "Option::is_none")]
737 pub id: Option<f64>,
738 #[serde(skip_serializing_if = "Option::is_none")]
739 pub labels: Option<Vec<ActionRunnerLabel>>,
740 #[serde(skip_serializing_if = "Option::is_none")]
741 pub name: Option<String>,
742 #[serde(skip_serializing_if = "Option::is_none")]
743 pub status: Option<String>,
744}
745
746#[derive(Debug, Clone, Serialize, Deserialize)]
747pub struct ActionRunners {
748 #[serde(skip_serializing_if = "Option::is_none")]
749 pub runners: Option<Vec<ActionRunner>>,
750 #[serde(skip_serializing_if = "Option::is_none")]
751 pub total_count: Option<f64>,
752}
753
754#[derive(Debug, Clone, Serialize, Deserialize)]
755pub struct AssignmentClass {
756 #[serde(skip_serializing_if = "Option::is_none")]
757 pub archived: Option<bool>,
758 #[serde(skip_serializing_if = "Option::is_none")]
759 pub id: Option<f64>,
760 #[serde(skip_serializing_if = "Option::is_none")]
761 pub name: Option<String>,
762 #[serde(skip_serializing_if = "Option::is_none")]
763 pub url: Option<String>,
764}
765
766#[derive(Debug, Clone, Serialize, Deserialize)]
767pub struct AssignmentRepository {
768 #[serde(skip_serializing_if = "Option::is_none")]
769 pub default_branch: Option<String>,
770 #[serde(skip_serializing_if = "Option::is_none")]
771 pub full_name: Option<String>,
772 #[serde(skip_serializing_if = "Option::is_none")]
773 pub html_url: Option<String>,
774 #[serde(skip_serializing_if = "Option::is_none")]
775 pub id: Option<f64>,
776 #[serde(skip_serializing_if = "Option::is_none")]
777 pub node_id: Option<String>,
778 #[serde(skip_serializing_if = "Option::is_none")]
779 pub private: Option<bool>,
780}
781
782#[derive(Debug, Clone, Serialize, Deserialize)]
783pub struct Assignment {
784 #[serde(skip_serializing_if = "Option::is_none")]
785 pub accepted: Option<f64>,
786 #[serde(skip_serializing_if = "Option::is_none")]
787 pub deadline: Option<String>,
788 #[serde(skip_serializing_if = "Option::is_none")]
789 pub editor: Option<String>,
790 #[serde(skip_serializing_if = "Option::is_none")]
791 pub feedback_pull_requests_enabled: Option<bool>,
792 #[serde(skip_serializing_if = "Option::is_none")]
793 pub id: Option<f64>,
794 #[serde(skip_serializing_if = "Option::is_none")]
795 pub invitations_enabled: Option<bool>,
796 #[serde(skip_serializing_if = "Option::is_none")]
797 pub invite_link: Option<String>,
798 #[serde(skip_serializing_if = "Option::is_none")]
799 pub language: Option<String>,
800 #[serde(skip_serializing_if = "Option::is_none")]
801 pub max_members: Option<f64>,
802 #[serde(skip_serializing_if = "Option::is_none")]
803 pub max_teams: Option<f64>,
804 #[serde(skip_serializing_if = "Option::is_none")]
805 pub passing: Option<f64>,
806 #[serde(skip_serializing_if = "Option::is_none")]
807 pub public_repo: Option<bool>,
808 #[serde(skip_serializing_if = "Option::is_none")]
809 pub slug: Option<String>,
810 #[serde(skip_serializing_if = "Option::is_none")]
811 pub smartclass: Option<AssignmentClass>,
812 #[serde(skip_serializing_if = "Option::is_none")]
813 pub stater_code_repository: Option<AssignmentRepository>,
814 #[serde(skip_serializing_if = "Option::is_none")]
815 pub student_are_repo_admins: Option<bool>,
816 #[serde(skip_serializing_if = "Option::is_none")]
817 pub submitted: Option<f64>,
818 #[serde(skip_serializing_if = "Option::is_none")]
819 pub title: Option<String>,
820 #[serde(skip_serializing_if = "Option::is_none")]
821 pub r#type: Option<String>,
822}
823
824#[derive(Debug, Clone, Serialize, Deserialize)]
825pub struct Attachment {
826 #[serde(skip_serializing_if = "Option::is_none")]
827 pub browser_download_url: Option<String>,
828 #[serde(skip_serializing_if = "Option::is_none")]
829 pub created_at: Option<String>,
830 #[serde(skip_serializing_if = "Option::is_none")]
831 pub download_count: Option<f64>,
832 #[serde(skip_serializing_if = "Option::is_none")]
833 pub id: Option<f64>,
834 #[serde(skip_serializing_if = "Option::is_none")]
835 pub name: Option<String>,
836 #[serde(skip_serializing_if = "Option::is_none")]
837 pub size: Option<f64>,
838 #[serde(skip_serializing_if = "Option::is_none")]
839 pub uuid: Option<String>,
840}
841
842#[derive(Debug, Clone, Serialize, Deserialize)]
843pub struct CommitMeta {
844 #[serde(skip_serializing_if = "Option::is_none")]
845 pub created: Option<String>,
846 #[serde(skip_serializing_if = "Option::is_none")]
847 pub html_url: Option<String>,
848 #[serde(skip_serializing_if = "Option::is_none")]
849 pub sha: Option<String>,
850 #[serde(skip_serializing_if = "Option::is_none")]
851 pub url: Option<String>,
852}
853
854#[derive(Debug, Clone, Serialize, Deserialize)]
855pub struct Branch {
856 pub commit: CommitMeta,
858 pub name: String,
860 pub protected: bool,
862}
863
864#[derive(Debug, Clone, Serialize, Deserialize)]
865pub struct Permissions {
866 #[serde(skip_serializing_if = "Option::is_none")]
867 pub admin: Option<bool>,
868 #[serde(skip_serializing_if = "Option::is_none")]
869 pub pull: Option<bool>,
870 #[serde(skip_serializing_if = "Option::is_none")]
871 pub push: Option<bool>,
872}
873
874#[derive(Debug, Clone, Serialize, Deserialize)]
875pub struct Collaborator {
876 pub avatar_url: String,
878 #[serde(skip_serializing_if = "Option::is_none")]
880 pub bio: Option<String>,
881 #[serde(skip_serializing_if = "Option::is_none")]
883 pub email: Option<String>,
884 #[serde(skip_serializing_if = "Option::is_none")]
886 pub followers_url: Option<String>,
887 #[serde(skip_serializing_if = "Option::is_none")]
889 pub following_url: Option<String>,
890 #[serde(skip_serializing_if = "Option::is_none")]
892 pub full_name: Option<String>,
893 pub html_url: String,
895 pub id: f64,
897 pub login: String,
899 #[serde(skip_serializing_if = "Option::is_none")]
901 pub name: Option<String>,
902 #[serde(skip_serializing_if = "Option::is_none")]
904 pub organizations_url: Option<String>,
905 pub permissions: Permissions,
907 #[serde(skip_serializing_if = "Option::is_none")]
909 pub repos_url: Option<String>,
910 pub site_admin: bool,
912 #[serde(skip_serializing_if = "Option::is_none")]
914 pub starred_url: Option<String>,
915 #[serde(skip_serializing_if = "Option::is_none")]
917 pub subscriptions_url: Option<String>,
918 pub r#type: String,
920 #[serde(skip_serializing_if = "Option::is_none")]
922 pub url: Option<String>,
923 #[serde(skip_serializing_if = "Option::is_none")]
925 pub website: Option<String>,
926}
927
928#[derive(Debug, Clone, Serialize, Deserialize)]
929pub struct RepoPublicInfo {
930 #[serde(skip_serializing_if = "Option::is_none")]
931 pub contents_url: Option<String>,
932 #[serde(skip_serializing_if = "Option::is_none")]
933 pub description: Option<String>,
934 #[serde(skip_serializing_if = "Option::is_none")]
935 pub fork: Option<bool>,
936 #[serde(skip_serializing_if = "Option::is_none")]
937 pub forks_url: Option<String>,
938 #[serde(skip_serializing_if = "Option::is_none")]
939 pub full_name: Option<String>,
940 #[serde(skip_serializing_if = "Option::is_none")]
941 pub html_url: Option<String>,
942 #[serde(skip_serializing_if = "Option::is_none")]
943 pub id: Option<f64>,
944 #[serde(skip_serializing_if = "Option::is_none")]
945 pub issue_comment_url: Option<String>,
946 #[serde(skip_serializing_if = "Option::is_none")]
947 pub issues_url: Option<String>,
948 #[serde(skip_serializing_if = "Option::is_none")]
949 pub languages_url: Option<String>,
950 #[serde(skip_serializing_if = "Option::is_none")]
951 pub name: Option<String>,
952 #[serde(skip_serializing_if = "Option::is_none")]
953 pub owner: Option<UserPublicInfo>,
954 #[serde(skip_serializing_if = "Option::is_none")]
955 pub private: Option<bool>,
956 #[serde(skip_serializing_if = "Option::is_none")]
957 pub pulls_url: Option<String>,
958 #[serde(skip_serializing_if = "Option::is_none")]
959 pub url: Option<String>,
960}
961
962#[derive(Debug, Clone, Serialize, Deserialize)]
963pub struct CollaboratorInvitation {
964 #[serde(skip_serializing_if = "Option::is_none")]
965 pub created_at: Option<String>,
966 #[serde(skip_serializing_if = "Option::is_none")]
967 pub id: Option<f64>,
968 #[serde(skip_serializing_if = "Option::is_none")]
969 pub invitee: Option<UserPublicInfo>,
970 #[serde(skip_serializing_if = "Option::is_none")]
971 pub inviter: Option<UserPublicInfo>,
972 #[serde(skip_serializing_if = "Option::is_none")]
973 pub permissions: Option<String>,
974 #[serde(skip_serializing_if = "Option::is_none")]
975 pub repository: Option<RepoPublicInfo>,
976}
977
978#[derive(Debug, Clone, Serialize, Deserialize)]
979pub struct Comment {
980 pub author_association: String,
982 pub body: String,
984 pub created_at: String,
986 pub html_url: String,
988 pub id: f64,
990 pub issue_url: String,
992 pub updated_at: String,
994 #[serde(skip_serializing_if = "Option::is_none")]
996 pub url: Option<String>,
997 pub user: UserPublicInfo,
999}
1000
1001#[derive(Debug, Clone, Serialize, Deserialize)]
1002pub struct CommitFiles {
1003 #[serde(skip_serializing_if = "Option::is_none")]
1004 pub additions: Option<f64>,
1005 #[serde(skip_serializing_if = "Option::is_none")]
1006 pub blob_url: Option<String>,
1007 #[serde(skip_serializing_if = "Option::is_none")]
1008 pub changes: Option<f64>,
1009 #[serde(skip_serializing_if = "Option::is_none")]
1010 pub contents_url: Option<String>,
1011 #[serde(skip_serializing_if = "Option::is_none")]
1012 pub deletions: Option<f64>,
1013 #[serde(skip_serializing_if = "Option::is_none")]
1014 pub filename: Option<String>,
1015 #[serde(skip_serializing_if = "Option::is_none")]
1016 pub patch: Option<String>,
1017 #[serde(skip_serializing_if = "Option::is_none")]
1018 pub raw_url: Option<String>,
1019 #[serde(skip_serializing_if = "Option::is_none")]
1020 pub sha: Option<String>,
1021 #[serde(skip_serializing_if = "Option::is_none")]
1022 pub status: Option<String>,
1023}
1024
1025#[derive(Debug, Clone, Serialize, Deserialize)]
1026pub struct CommitUser {
1027 #[serde(skip_serializing_if = "Option::is_none")]
1028 pub date: Option<String>,
1029 #[serde(skip_serializing_if = "Option::is_none")]
1030 pub email: Option<String>,
1031 #[serde(skip_serializing_if = "Option::is_none")]
1032 pub name: Option<String>,
1033}
1034
1035#[derive(Debug, Clone, Serialize, Deserialize)]
1036pub struct TreeMeta {
1037 #[serde(skip_serializing_if = "Option::is_none")]
1038 pub created: Option<String>,
1039 #[serde(skip_serializing_if = "Option::is_none")]
1040 pub sha: Option<String>,
1041 #[serde(skip_serializing_if = "Option::is_none")]
1042 pub url: Option<String>,
1043}
1044
1045#[derive(Debug, Clone, Serialize, Deserialize)]
1046pub struct RepoCommit {
1047 pub author: CommitUser,
1049 pub committer: CommitUser,
1051 pub message: String,
1053 pub tree: TreeMeta,
1055 #[serde(skip_serializing_if = "Option::is_none")]
1056 pub url: Option<String>,
1057}
1058
1059#[derive(Debug, Clone, Serialize, Deserialize)]
1060pub struct CommitStats {
1061 #[serde(skip_serializing_if = "Option::is_none")]
1062 pub additions: Option<f64>,
1063 #[serde(skip_serializing_if = "Option::is_none")]
1064 pub deletions: Option<f64>,
1065 #[serde(skip_serializing_if = "Option::is_none")]
1066 pub total: Option<f64>,
1067}
1068
1069#[derive(Debug, Clone, Serialize, Deserialize)]
1070pub struct Commit {
1071 #[serde(skip_serializing_if = "Option::is_none")]
1072 pub author: Option<UserPublicInfo>,
1073 #[serde(skip_serializing_if = "Option::is_none")]
1074 pub branch: Option<String>,
1075 #[serde(skip_serializing_if = "Option::is_none")]
1076 pub commit: Option<RepoCommit>,
1077 #[serde(skip_serializing_if = "Option::is_none")]
1078 pub committer: Option<UserPublicInfo>,
1079 #[serde(skip_serializing_if = "Option::is_none")]
1080 pub created: Option<String>,
1081 #[serde(skip_serializing_if = "Option::is_none")]
1082 pub files: Option<Vec<CommitFiles>>,
1083 #[serde(skip_serializing_if = "Option::is_none")]
1084 pub html_url: Option<String>,
1085 #[serde(skip_serializing_if = "Option::is_none")]
1086 pub parents: Option<Vec<CommitMeta>>,
1087 pub sha: String,
1089 #[serde(skip_serializing_if = "Option::is_none")]
1090 pub stats: Option<CommitStats>,
1091 #[serde(skip_serializing_if = "Option::is_none")]
1092 pub url: Option<String>,
1093}
1094
1095#[derive(Debug, Clone, Serialize, Deserialize)]
1096pub struct CommitVerification {
1097 #[serde(skip_serializing_if = "Option::is_none")]
1098 pub payload: Option<String>,
1099 #[serde(skip_serializing_if = "Option::is_none")]
1100 pub reason: Option<String>,
1101 #[serde(skip_serializing_if = "Option::is_none")]
1102 pub signature: Option<String>,
1103 #[serde(skip_serializing_if = "Option::is_none")]
1104 pub verified: Option<bool>,
1105 #[serde(rename = "verifiedAt")]
1106 #[serde(skip_serializing_if = "Option::is_none")]
1107 pub verified_at: Option<String>,
1108}
1109
1110#[derive(Debug, Clone, Serialize, Deserialize)]
1111pub struct CompareResponse {
1112 #[serde(skip_serializing_if = "Option::is_none")]
1113 pub ahead_by: Option<f64>,
1114 #[serde(skip_serializing_if = "Option::is_none")]
1115 pub base_commit: Option<Commit>,
1116 #[serde(skip_serializing_if = "Option::is_none")]
1117 pub behind_by: Option<f64>,
1118 #[serde(skip_serializing_if = "Option::is_none")]
1119 pub commits: Option<Vec<Commit>>,
1120 #[serde(skip_serializing_if = "Option::is_none")]
1121 pub files: Option<Vec<CommitFiles>>,
1122 #[serde(skip_serializing_if = "Option::is_none")]
1123 pub html_url: Option<String>,
1124 #[serde(skip_serializing_if = "Option::is_none")]
1125 pub merge_base_commit: Option<Commit>,
1126 #[serde(skip_serializing_if = "Option::is_none")]
1127 pub status: Option<String>,
1128 #[serde(skip_serializing_if = "Option::is_none")]
1129 pub total_commits: Option<f64>,
1130 #[serde(skip_serializing_if = "Option::is_none")]
1131 pub url: Option<String>,
1132}
1133
1134#[derive(Debug, Clone, Serialize, Deserialize)]
1135pub struct WebhookConfig {
1136 #[serde(skip_serializing_if = "Option::is_none")]
1137 pub authorization_header: Option<String>,
1138 #[serde(skip_serializing_if = "Option::is_none")]
1139 pub branch_filter: Option<String>,
1140 #[serde(skip_serializing_if = "Option::is_none")]
1141 pub content_type: Option<String>,
1142 #[serde(skip_serializing_if = "Option::is_none")]
1143 pub http_method: Option<String>,
1144 #[serde(skip_serializing_if = "Option::is_none")]
1145 pub url: Option<String>,
1146}
1147
1148#[derive(Debug, Clone, Serialize, Deserialize)]
1149pub struct FileLinksResponse {
1150 #[serde(skip_serializing_if = "Option::is_none")]
1151 pub git: Option<String>,
1152 #[serde(skip_serializing_if = "Option::is_none")]
1153 pub html: Option<String>,
1154 #[serde(skip_serializing_if = "Option::is_none")]
1155 pub self_: Option<String>,
1156}
1157
1158#[derive(Debug, Clone, Serialize, Deserialize)]
1159pub struct ContentsResponse {
1160 #[serde(rename = "_links")]
1162 pub links: FileLinksResponse,
1163 #[serde(skip_serializing_if = "Option::is_none")]
1165 pub content: Option<String>,
1166 #[serde(skip_serializing_if = "Option::is_none")]
1168 pub download_url: Option<String>,
1169 pub encoding: String,
1171 pub git_url: String,
1173 pub html_url: String,
1175 #[serde(skip_serializing_if = "Option::is_none")]
1177 pub language: Option<String>,
1178 pub name: String,
1180 pub path: String,
1182 pub sha: String,
1184 pub size: f64,
1186 #[serde(skip_serializing_if = "Option::is_none")]
1188 pub submodule_git_url: Option<String>,
1189 #[serde(skip_serializing_if = "Option::is_none")]
1191 pub target: Option<String>,
1192 pub r#type: String,
1194 pub url: String,
1196}
1197
1198#[derive(Debug, Clone, Serialize, Deserialize)]
1199pub struct FileCommitResponse {
1200 #[serde(skip_serializing_if = "Option::is_none")]
1201 pub author: Option<CommitUser>,
1202 #[serde(skip_serializing_if = "Option::is_none")]
1203 pub committer: Option<CommitUser>,
1204 #[serde(skip_serializing_if = "Option::is_none")]
1205 pub created: Option<String>,
1206 #[serde(skip_serializing_if = "Option::is_none")]
1207 pub html_url: Option<String>,
1208 #[serde(skip_serializing_if = "Option::is_none")]
1209 pub message: Option<String>,
1210 #[serde(skip_serializing_if = "Option::is_none")]
1211 pub parents: Option<Vec<CommitMeta>>,
1212 #[serde(skip_serializing_if = "Option::is_none")]
1213 pub sha: Option<String>,
1214 #[serde(skip_serializing_if = "Option::is_none")]
1215 pub tree: Option<CommitMeta>,
1216 #[serde(skip_serializing_if = "Option::is_none")]
1217 pub url: Option<String>,
1218 #[serde(skip_serializing_if = "Option::is_none")]
1219 pub verification: Option<CommitVerification>,
1220}
1221
1222#[derive(Debug, Clone, Serialize, Deserialize)]
1223pub struct FileCreationResponse {
1224 #[serde(skip_serializing_if = "Option::is_none")]
1225 pub commit: Option<FileCommitResponse>,
1226 pub content: ContentsResponse,
1228}
1229
1230#[derive(Debug, Clone, Serialize, Deserialize)]
1231pub struct FileDeleteResponse {
1232 #[serde(skip_serializing_if = "Option::is_none")]
1233 pub commit: Option<FileCommitResponse>,
1234 #[serde(skip_serializing_if = "Option::is_none")]
1235 pub content: Option<serde_json::Value>,
1236}
1237
1238#[derive(Debug, Clone, Serialize, Deserialize)]
1239pub struct Email {
1240 pub email: String,
1242 pub primary: bool,
1244 pub verified: bool,
1246 pub visibility: String,
1248}
1249
1250#[derive(Debug, Clone, Serialize, Deserialize)]
1251pub struct GitEntry {
1252 #[serde(skip_serializing_if = "Option::is_none")]
1253 pub mode: Option<String>,
1254 #[serde(skip_serializing_if = "Option::is_none")]
1255 pub path: Option<String>,
1256 #[serde(skip_serializing_if = "Option::is_none")]
1257 pub sha: Option<String>,
1258 #[serde(skip_serializing_if = "Option::is_none")]
1259 pub size: Option<f64>,
1260 #[serde(skip_serializing_if = "Option::is_none")]
1261 pub r#type: Option<String>,
1262 #[serde(skip_serializing_if = "Option::is_none")]
1263 pub url: Option<String>,
1264}
1265
1266#[derive(Debug, Clone, Serialize, Deserialize)]
1267pub struct GitObject {
1268 #[serde(skip_serializing_if = "Option::is_none")]
1269 pub sha: Option<String>,
1270 #[serde(skip_serializing_if = "Option::is_none")]
1271 pub r#type: Option<String>,
1272 #[serde(skip_serializing_if = "Option::is_none")]
1273 pub url: Option<String>,
1274}
1275
1276#[derive(Debug, Clone, Serialize, Deserialize)]
1277pub struct GitTreeResponse {
1278 pub page: f64,
1280 pub sha: String,
1282 pub total_count: f64,
1284 #[serde(default, deserialize_with = "crate::deserialize_null_as_default")]
1286 pub tree: Vec<GitEntry>,
1287 pub truncated: bool,
1289 pub url: String,
1291}
1292
1293#[derive(Debug, Clone, Serialize, Deserialize)]
1294pub struct User {
1295 #[serde(skip_serializing_if = "Option::is_none")]
1297 pub avatar_url: Option<String>,
1298 #[serde(skip_serializing_if = "Option::is_none")]
1300 pub bio: Option<String>,
1301 #[serde(skip_serializing_if = "Option::is_none")]
1303 pub created_at: Option<String>,
1304 #[serde(skip_serializing_if = "Option::is_none")]
1306 pub email: Option<String>,
1307 #[serde(skip_serializing_if = "Option::is_none")]
1309 pub followers: Option<f64>,
1310 #[serde(skip_serializing_if = "Option::is_none")]
1312 pub followers_url: Option<String>,
1313 #[serde(skip_serializing_if = "Option::is_none")]
1314 pub following: Option<f64>,
1315 #[serde(skip_serializing_if = "Option::is_none")]
1317 pub following_url: Option<String>,
1318 #[serde(skip_serializing_if = "Option::is_none")]
1320 pub full_name: Option<String>,
1321 #[serde(skip_serializing_if = "Option::is_none")]
1323 pub html_url: Option<String>,
1324 #[serde(skip_serializing_if = "Option::is_none")]
1326 pub id: Option<f64>,
1327 #[serde(skip_serializing_if = "Option::is_none")]
1329 pub is_verified: Option<bool>,
1330 #[serde(skip_serializing_if = "Option::is_none")]
1332 pub location: Option<String>,
1333 #[serde(skip_serializing_if = "Option::is_none")]
1335 pub login: Option<String>,
1336 #[serde(skip_serializing_if = "Option::is_none")]
1338 pub name: Option<String>,
1339 #[serde(skip_serializing_if = "Option::is_none")]
1341 pub organizations_url: Option<String>,
1342 #[serde(skip_serializing_if = "Option::is_none")]
1344 pub public_repos: Option<f64>,
1345 #[serde(skip_serializing_if = "Option::is_none")]
1347 pub repos_url: Option<String>,
1348 #[serde(skip_serializing_if = "Option::is_none")]
1350 pub site_admin: Option<bool>,
1351 #[serde(skip_serializing_if = "Option::is_none")]
1353 pub starred_url: Option<String>,
1354 #[serde(skip_serializing_if = "Option::is_none")]
1356 pub stars_count: Option<f64>,
1357 #[serde(skip_serializing_if = "Option::is_none")]
1359 pub subscriptions_url: Option<String>,
1360 #[serde(skip_serializing_if = "Option::is_none")]
1362 pub r#type: Option<String>,
1363 #[serde(skip_serializing_if = "Option::is_none")]
1365 pub updated_at: Option<String>,
1366 #[serde(skip_serializing_if = "Option::is_none")]
1368 pub url: Option<String>,
1369 #[serde(skip_serializing_if = "Option::is_none")]
1371 pub website: Option<String>,
1372}
1373
1374#[derive(Debug, Clone, Serialize, Deserialize)]
1375pub struct Label {
1376 pub color: String,
1378 pub description: String,
1380 pub exclusive: bool,
1382 pub id: f64,
1384 pub is_archived: bool,
1386 pub name: String,
1388 pub url: String,
1390}
1391
1392#[derive(Debug, Clone, Serialize, Deserialize)]
1393pub struct Milestone {
1394 #[serde(skip_serializing_if = "Option::is_none")]
1395 pub closed_at: Option<String>,
1396 #[serde(skip_serializing_if = "Option::is_none")]
1397 pub closed_issues: Option<f64>,
1398 #[serde(skip_serializing_if = "Option::is_none")]
1399 pub created_at: Option<String>,
1400 #[serde(skip_serializing_if = "Option::is_none")]
1401 pub description: Option<String>,
1402 #[serde(skip_serializing_if = "Option::is_none")]
1403 pub due_on: Option<String>,
1404 #[serde(skip_serializing_if = "Option::is_none")]
1405 pub id: Option<f64>,
1406 #[serde(skip_serializing_if = "Option::is_none")]
1407 pub open_issues: Option<f64>,
1408 #[serde(skip_serializing_if = "Option::is_none")]
1409 pub state: Option<String>,
1410 #[serde(skip_serializing_if = "Option::is_none")]
1411 pub title: Option<String>,
1412 #[serde(skip_serializing_if = "Option::is_none")]
1413 pub updated_at: Option<String>,
1414}
1415
1416#[derive(Debug, Clone, Serialize, Deserialize)]
1417pub struct PullRequestMeta {
1418 #[serde(skip_serializing_if = "Option::is_none")]
1419 pub draft: Option<bool>,
1420 #[serde(skip_serializing_if = "Option::is_none")]
1421 pub html_url: Option<String>,
1422 #[serde(skip_serializing_if = "Option::is_none")]
1423 pub merged: Option<bool>,
1424 #[serde(skip_serializing_if = "Option::is_none")]
1425 pub merged_at: Option<String>,
1426}
1427
1428#[derive(Debug, Clone, Serialize, Deserialize)]
1429pub struct RepositoryMeta {
1430 #[serde(skip_serializing_if = "Option::is_none")]
1431 pub full_name: Option<String>,
1432 #[serde(skip_serializing_if = "Option::is_none")]
1433 pub id: Option<f64>,
1434 #[serde(skip_serializing_if = "Option::is_none")]
1435 pub name: Option<String>,
1436 #[serde(skip_serializing_if = "Option::is_none")]
1437 pub owner: Option<String>,
1438}
1439
1440#[derive(Debug, Clone, Serialize, Deserialize)]
1441pub struct Issue {
1442 #[serde(skip_serializing_if = "Option::is_none")]
1443 pub assets: Option<Vec<Attachment>>,
1444 #[serde(skip_serializing_if = "Option::is_none")]
1445 pub assignee: Option<User>,
1446 #[serde(default, deserialize_with = "crate::deserialize_null_as_default")]
1448 pub assignees: Vec<User>,
1449 pub body: String,
1451 #[serde(skip_serializing_if = "Option::is_none")]
1453 pub closed_at: Option<String>,
1454 pub comments: f64,
1456 pub created_at: String,
1458 #[serde(skip_serializing_if = "Option::is_none")]
1459 pub due_date: Option<String>,
1460 pub html_url: String,
1462 pub id: f64,
1464 #[serde(skip_serializing_if = "Option::is_none")]
1465 pub is_locked: Option<bool>,
1466 #[serde(default, deserialize_with = "crate::deserialize_null_as_default")]
1468 pub labels: Vec<Label>,
1469 #[serde(skip_serializing_if = "Option::is_none")]
1471 pub milestone: Option<Milestone>,
1472 pub number: f64,
1474 #[serde(skip_serializing_if = "Option::is_none")]
1475 pub original_author: Option<String>,
1476 #[serde(skip_serializing_if = "Option::is_none")]
1477 pub original_author_id: Option<f64>,
1478 #[serde(skip_serializing_if = "Option::is_none")]
1480 pub pull_request: Option<PullRequestMeta>,
1481 #[serde(skip_serializing_if = "Option::is_none")]
1482 pub r#ref: Option<String>,
1483 #[serde(skip_serializing_if = "Option::is_none")]
1484 pub repository: Option<RepositoryMeta>,
1485 pub state: String,
1487 pub title: String,
1489 pub updated_at: String,
1491 #[serde(skip_serializing_if = "Option::is_none")]
1492 pub url: Option<String>,
1493 pub user: User,
1495}
1496
1497#[derive(Debug, Clone, Serialize, Deserialize)]
1498pub struct JobsResponse {
1499 #[serde(skip_serializing_if = "Option::is_none")]
1500 pub jobs: Option<Vec<ActionRunJob>>,
1501 #[serde(skip_serializing_if = "Option::is_none")]
1502 pub total_count: Option<f64>,
1503}
1504
1505#[derive(Debug, Clone, Serialize, Deserialize)]
1506pub struct Repository {
1507 pub allow_merge_commit: bool,
1509 pub allow_rebase_merge: bool,
1511 pub allow_squash_merge: bool,
1513 pub archived: bool,
1515 pub clone_url: String,
1517 #[serde(skip_serializing_if = "Option::is_none")]
1518 pub contents_url: Option<String>,
1519 pub created_at: String,
1521 pub default_branch: String,
1523 pub delete_branch_on_merge: bool,
1525 #[serde(skip_serializing_if = "Option::is_none")]
1527 pub description: Option<String>,
1528 pub disabled: bool,
1530 pub fork: bool,
1532 #[serde(skip_serializing_if = "Option::is_none")]
1533 pub forks: Option<f64>,
1534 pub forks_count: f64,
1536 #[serde(skip_serializing_if = "Option::is_none")]
1537 pub forks_url: Option<String>,
1538 pub full_name: String,
1540 pub has_issues: bool,
1542 pub has_wiki: bool,
1544 pub html_url: String,
1546 pub id: f64,
1548 pub is_template: bool,
1550 #[serde(skip_serializing_if = "Option::is_none")]
1551 pub issue_comment_url: Option<String>,
1552 #[serde(skip_serializing_if = "Option::is_none")]
1553 pub issues_url: Option<String>,
1554 #[serde(skip_serializing_if = "Option::is_none")]
1556 pub language: Option<String>,
1557 #[serde(skip_serializing_if = "Option::is_none")]
1558 pub languages_url: Option<String>,
1559 #[serde(skip_serializing_if = "Option::is_none")]
1560 pub mirror_url: Option<String>,
1561 pub name: String,
1563 #[serde(skip_serializing_if = "Option::is_none")]
1564 pub open_issues: Option<f64>,
1565 pub open_issues_count: f64,
1567 pub owner: UserPublicInfo,
1569 #[serde(skip_serializing_if = "Option::is_none")]
1570 pub parent: Option<Box<Repository>>,
1571 pub permissions: Permissions,
1573 pub private: bool,
1575 #[serde(skip_serializing_if = "Option::is_none")]
1576 pub pulls_url: Option<String>,
1577 pub pushed_at: String,
1579 pub size: f64,
1581 pub ssh_url: String,
1583 pub stargazers_count: f64,
1585 #[serde(skip_serializing_if = "Option::is_none")]
1586 pub template_repository: Option<Box<Repository>>,
1587 #[serde(default, deserialize_with = "crate::deserialize_null_as_default")]
1589 pub topics: Vec<String>,
1590 pub updated_at: String,
1592 #[serde(skip_serializing_if = "Option::is_none")]
1593 pub url: Option<String>,
1594 pub visibility: String,
1596 #[serde(skip_serializing_if = "Option::is_none")]
1597 pub watchers: Option<f64>,
1598 pub watchers_count: f64,
1600}
1601
1602#[derive(Debug, Clone, Serialize, Deserialize)]
1603pub struct PRBranchInfo {
1604 #[serde(skip_serializing_if = "Option::is_none")]
1605 pub label: Option<String>,
1606 #[serde(skip_serializing_if = "Option::is_none")]
1607 pub r#ref: Option<String>,
1608 #[serde(skip_serializing_if = "Option::is_none")]
1609 pub repo: Option<Repository>,
1610 #[serde(skip_serializing_if = "Option::is_none")]
1611 pub repo_id: Option<f64>,
1612 #[serde(skip_serializing_if = "Option::is_none")]
1613 pub sha: Option<String>,
1614}
1615
1616#[derive(Debug, Clone, Serialize, Deserialize)]
1617pub struct PackageVersionMetadata {
1618 #[serde(skip_serializing_if = "Option::is_none")]
1619 pub package_type: Option<String>,
1620}
1621
1622#[derive(Debug, Clone, Serialize, Deserialize)]
1623pub struct PackageVersion {
1624 #[serde(skip_serializing_if = "Option::is_none")]
1625 pub created_at: Option<String>,
1626 #[serde(skip_serializing_if = "Option::is_none")]
1627 pub description: Option<String>,
1628 #[serde(skip_serializing_if = "Option::is_none")]
1629 pub html_url: Option<String>,
1630 #[serde(skip_serializing_if = "Option::is_none")]
1631 pub id: Option<f64>,
1632 #[serde(skip_serializing_if = "Option::is_none")]
1633 pub license: Option<String>,
1634 #[serde(skip_serializing_if = "Option::is_none")]
1635 pub metadata: Option<PackageVersionMetadata>,
1636 #[serde(skip_serializing_if = "Option::is_none")]
1637 pub name: Option<String>,
1638 #[serde(skip_serializing_if = "Option::is_none")]
1639 pub package_html_url: Option<String>,
1640 #[serde(skip_serializing_if = "Option::is_none")]
1641 pub url: Option<String>,
1642}
1643
1644#[derive(Debug, Clone, Serialize, Deserialize)]
1645pub struct PagesDeployment {
1646 #[serde(skip_serializing_if = "Option::is_none")]
1647 pub id: Option<f64>,
1648 #[serde(skip_serializing_if = "Option::is_none")]
1649 pub page_url: Option<String>,
1650 #[serde(skip_serializing_if = "Option::is_none")]
1651 pub status_url: Option<String>,
1652}
1653
1654#[derive(Debug, Clone, Serialize, Deserialize)]
1655pub struct PagesDeploymentStatus {
1656 #[serde(skip_serializing_if = "Option::is_none")]
1657 pub status: Option<String>,
1658}
1659
1660#[derive(Debug, Clone, Serialize, Deserialize)]
1661pub struct Team {
1662 #[serde(skip_serializing_if = "Option::is_none")]
1664 pub can_create_org_repo: Option<bool>,
1665 #[serde(skip_serializing_if = "Option::is_none")]
1667 pub description: Option<String>,
1668 pub id: f64,
1670 #[serde(skip_serializing_if = "Option::is_none")]
1672 pub includes_all_repositories: Option<bool>,
1673 pub name: String,
1675 #[serde(skip_serializing_if = "Option::is_none")]
1677 pub num_members: Option<f64>,
1678 #[serde(skip_serializing_if = "Option::is_none")]
1680 pub num_repos: Option<f64>,
1681 pub permission: String,
1683 #[serde(skip_serializing_if = "Option::is_none")]
1685 pub permission_actions: Option<String>,
1686 #[serde(skip_serializing_if = "Option::is_none")]
1688 pub permission_code: Option<String>,
1689 #[serde(skip_serializing_if = "Option::is_none")]
1691 pub permission_packages: Option<String>,
1692 #[serde(skip_serializing_if = "Option::is_none")]
1694 pub permission_pulls: Option<String>,
1695 #[serde(skip_serializing_if = "Option::is_none")]
1697 pub permission_releases: Option<String>,
1698}
1699
1700#[derive(Debug, Clone, Serialize, Deserialize)]
1701pub struct PullRequest {
1702 #[serde(skip_serializing_if = "Option::is_none")]
1703 pub assignee: Option<User>,
1704 #[serde(default, deserialize_with = "crate::deserialize_null_as_default")]
1706 pub assignees: Vec<User>,
1707 pub base: PRBranchInfo,
1709 pub body: String,
1711 #[serde(skip_serializing_if = "Option::is_none")]
1713 pub closed_at: Option<String>,
1714 pub comments: f64,
1716 pub created_at: String,
1718 #[serde(skip_serializing_if = "Option::is_none")]
1719 pub diff_url: Option<String>,
1720 pub head: PRBranchInfo,
1722 pub html_url: String,
1724 pub id: f64,
1726 pub is_draft: bool,
1728 #[serde(default, deserialize_with = "crate::deserialize_null_as_default")]
1730 pub labels: Vec<Label>,
1731 pub locked: bool,
1733 pub maintainer_can_modify: bool,
1735 #[serde(skip_serializing_if = "Option::is_none")]
1737 pub merge_commit_sha: Option<String>,
1738 pub mergeable: bool,
1740 pub merged: bool,
1742 #[serde(skip_serializing_if = "Option::is_none")]
1744 pub merged_at: Option<String>,
1745 #[serde(skip_serializing_if = "Option::is_none")]
1746 pub merged_by: Option<User>,
1747 #[serde(skip_serializing_if = "Option::is_none")]
1749 pub milestone: Option<Milestone>,
1750 pub number: f64,
1752 #[serde(skip_serializing_if = "Option::is_none")]
1753 pub patch_url: Option<String>,
1754 #[serde(default, deserialize_with = "crate::deserialize_null_as_default")]
1756 pub requested_reviewers: Vec<User>,
1757 #[serde(default, deserialize_with = "crate::deserialize_null_as_default")]
1759 pub requested_teams: Vec<Team>,
1760 pub state: String,
1762 pub title: String,
1764 pub updated_at: String,
1766 pub url: String,
1768 pub user: User,
1770}
1771
1772#[derive(Debug, Clone, Serialize, Deserialize)]
1773pub struct Reaction {
1774 #[serde(skip_serializing_if = "Option::is_none")]
1775 pub content: Option<String>,
1776 #[serde(skip_serializing_if = "Option::is_none")]
1777 pub created_at: Option<String>,
1778 #[serde(skip_serializing_if = "Option::is_none")]
1779 pub id: Option<f64>,
1780 #[serde(skip_serializing_if = "Option::is_none")]
1781 pub user: Option<UserPublicInfo>,
1782}
1783
1784#[derive(Debug, Clone, Serialize, Deserialize)]
1785pub struct Reference {
1786 #[serde(skip_serializing_if = "Option::is_none")]
1787 pub object: Option<GitObject>,
1788 pub r#ref: String,
1790 #[serde(skip_serializing_if = "Option::is_none")]
1791 pub url: Option<String>,
1792}
1793
1794#[derive(Debug, Clone, Serialize, Deserialize)]
1795pub struct RegistrationToken {
1796 #[serde(skip_serializing_if = "Option::is_none")]
1797 pub token: Option<String>,
1798}
1799
1800#[derive(Debug, Clone, Serialize, Deserialize)]
1801pub struct Release {
1802 #[serde(skip_serializing_if = "Option::is_none")]
1803 pub assets: Option<Vec<Attachment>>,
1804 #[serde(skip_serializing_if = "Option::is_none")]
1805 pub author: Option<User>,
1806 #[serde(skip_serializing_if = "Option::is_none")]
1807 pub body: Option<String>,
1808 #[serde(skip_serializing_if = "Option::is_none")]
1809 pub created_at: Option<String>,
1810 #[serde(skip_serializing_if = "Option::is_none")]
1811 pub draft: Option<bool>,
1812 #[serde(skip_serializing_if = "Option::is_none")]
1813 pub html_url: Option<String>,
1814 #[serde(skip_serializing_if = "Option::is_none")]
1815 pub id: Option<f64>,
1816 #[serde(skip_serializing_if = "Option::is_none")]
1817 pub is_authorized_only: Option<bool>,
1818 #[serde(skip_serializing_if = "Option::is_none")]
1819 pub name: Option<String>,
1820 #[serde(skip_serializing_if = "Option::is_none")]
1821 pub prerelease: Option<bool>,
1822 #[serde(skip_serializing_if = "Option::is_none")]
1823 pub published_at: Option<String>,
1824 #[serde(skip_serializing_if = "Option::is_none")]
1825 pub tag_name: Option<String>,
1826 #[serde(skip_serializing_if = "Option::is_none")]
1827 pub tarball_url: Option<String>,
1828 #[serde(skip_serializing_if = "Option::is_none")]
1829 pub target_commitish: Option<String>,
1830 #[serde(skip_serializing_if = "Option::is_none")]
1831 pub upload_url: Option<String>,
1832 #[serde(skip_serializing_if = "Option::is_none")]
1833 pub url: Option<String>,
1834 #[serde(skip_serializing_if = "Option::is_none")]
1835 pub zipball_url: Option<String>,
1836}
1837
1838#[derive(Debug, Clone, Serialize, Deserialize)]
1839pub struct TreeEntry {
1840 #[serde(skip_serializing_if = "Option::is_none")]
1841 pub mode: Option<String>,
1842 #[serde(skip_serializing_if = "Option::is_none")]
1843 pub path: Option<String>,
1844 #[serde(skip_serializing_if = "Option::is_none")]
1845 pub sha: Option<String>,
1846 #[serde(skip_serializing_if = "Option::is_none")]
1847 pub size: Option<f64>,
1848 #[serde(skip_serializing_if = "Option::is_none")]
1850 pub r#type: Option<String>,
1851}
1852
1853#[derive(Debug, Clone, Serialize, Deserialize)]
1854pub struct RepoTree {
1855 #[serde(skip_serializing_if = "Option::is_none")]
1856 pub sha: Option<String>,
1857 #[serde(default, deserialize_with = "crate::deserialize_null_as_default")]
1859 pub tree: Vec<TreeEntry>,
1860 #[serde(skip_serializing_if = "Option::is_none")]
1861 pub truncated: Option<bool>,
1862 #[serde(skip_serializing_if = "Option::is_none")]
1863 pub url: Option<String>,
1864}
1865
1866#[derive(Debug, Clone, Serialize, Deserialize)]
1867pub struct RunsResponse {
1868 #[serde(skip_serializing_if = "Option::is_none")]
1869 pub total_count: Option<f64>,
1870 #[serde(skip_serializing_if = "Option::is_none")]
1871 pub workflow_runs: Option<Vec<ActionRun>>,
1872}
1873
1874#[derive(Debug, Clone, Serialize, Deserialize)]
1875pub struct Secret {
1876 #[serde(skip_serializing_if = "Option::is_none")]
1877 pub created_at: Option<String>,
1878 #[serde(skip_serializing_if = "Option::is_none")]
1879 pub name: Option<String>,
1880}
1881
1882#[derive(Debug, Clone, Serialize, Deserialize)]
1883pub struct SecretList {
1884 #[serde(skip_serializing_if = "Option::is_none")]
1885 pub secrets: Option<Vec<Secret>>,
1886 #[serde(skip_serializing_if = "Option::is_none")]
1887 pub total_count: Option<f64>,
1888}
1889
1890#[derive(Debug, Clone, Serialize, Deserialize)]
1891pub struct TrackedTime {
1892 #[serde(skip_serializing_if = "Option::is_none")]
1894 pub created: Option<String>,
1895 #[serde(skip_serializing_if = "Option::is_none")]
1896 pub id: Option<f64>,
1897 #[serde(skip_serializing_if = "Option::is_none")]
1898 pub issue: Option<Issue>,
1899 #[serde(skip_serializing_if = "Option::is_none")]
1901 pub issue_id: Option<f64>,
1902 #[serde(skip_serializing_if = "Option::is_none")]
1904 pub time: Option<f64>,
1905 #[serde(skip_serializing_if = "Option::is_none")]
1907 pub user_id: Option<f64>,
1908 #[serde(skip_serializing_if = "Option::is_none")]
1909 pub user_name: Option<String>,
1910}
1911
1912#[derive(Debug, Clone, Serialize, Deserialize)]
1913pub struct TimelineComment {
1914 pub assignee: User,
1916 #[serde(skip_serializing_if = "Option::is_none")]
1917 pub assignee_team: Option<Team>,
1918 #[serde(skip_serializing_if = "Option::is_none")]
1920 pub body: Option<String>,
1921 pub created_at: String,
1923 #[serde(skip_serializing_if = "Option::is_none")]
1924 pub dependent_issue: Option<Issue>,
1925 pub html_url: String,
1927 pub id: f64,
1929 #[serde(skip_serializing_if = "Option::is_none")]
1930 pub issue_url: Option<String>,
1931 pub label: Label,
1933 #[serde(skip_serializing_if = "Option::is_none")]
1934 pub milestone: Option<Milestone>,
1935 #[serde(skip_serializing_if = "Option::is_none")]
1936 pub new_ref: Option<String>,
1937 #[serde(skip_serializing_if = "Option::is_none")]
1938 pub new_title: Option<String>,
1939 #[serde(skip_serializing_if = "Option::is_none")]
1940 pub old_milestone: Option<Milestone>,
1941 #[serde(skip_serializing_if = "Option::is_none")]
1942 pub old_project_id: Option<f64>,
1943 #[serde(skip_serializing_if = "Option::is_none")]
1944 pub old_ref: Option<String>,
1945 #[serde(skip_serializing_if = "Option::is_none")]
1946 pub old_title: Option<String>,
1947 #[serde(skip_serializing_if = "Option::is_none")]
1948 pub project_id: Option<f64>,
1949 #[serde(skip_serializing_if = "Option::is_none")]
1950 pub pull_request_url: Option<String>,
1951 #[serde(skip_serializing_if = "Option::is_none")]
1952 pub ref_action: Option<String>,
1953 #[serde(skip_serializing_if = "Option::is_none")]
1954 pub ref_comment: Option<Comment>,
1955 #[serde(skip_serializing_if = "Option::is_none")]
1957 pub ref_commit_sha: Option<String>,
1958 #[serde(skip_serializing_if = "Option::is_none")]
1959 pub ref_issue: Option<Issue>,
1960 #[serde(skip_serializing_if = "Option::is_none")]
1962 pub removed_assignee: Option<bool>,
1963 #[serde(skip_serializing_if = "Option::is_none")]
1964 pub resolve_doer: Option<User>,
1965 #[serde(skip_serializing_if = "Option::is_none")]
1966 pub review_id: Option<f64>,
1967 #[serde(skip_serializing_if = "Option::is_none")]
1968 pub tracked_time: Option<TrackedTime>,
1969 pub r#type: String,
1971 #[serde(skip_serializing_if = "Option::is_none")]
1973 pub updated_at: Option<String>,
1974 pub user: User,
1976}
1977
1978#[derive(Debug, Clone, Serialize, Deserialize)]
1979pub struct UpdateBranchResponse {
1980 #[serde(skip_serializing_if = "Option::is_none")]
1981 pub message: Option<String>,
1982 #[serde(skip_serializing_if = "Option::is_none")]
1983 pub url: Option<String>,
1984}
1985
1986#[derive(Debug, Clone, Serialize, Deserialize)]
1987pub struct UserPrefsArray {
1988 #[serde(skip_serializing_if = "Option::is_none")]
1989 pub incomplete_results: Option<bool>,
1990 #[serde(skip_serializing_if = "Option::is_none")]
1991 pub items: Option<Vec<User>>,
1992 #[serde(skip_serializing_if = "Option::is_none")]
1993 pub total_count: Option<f64>,
1994}
1995
1996#[derive(Debug, Clone, Serialize, Deserialize)]
1997pub struct Variable {
1998 #[serde(skip_serializing_if = "Option::is_none")]
1999 pub created_at: Option<String>,
2000 #[serde(skip_serializing_if = "Option::is_none")]
2001 pub name: Option<String>,
2002 #[serde(skip_serializing_if = "Option::is_none")]
2003 pub updated_at: Option<String>,
2004 #[serde(skip_serializing_if = "Option::is_none")]
2005 pub value: Option<String>,
2006}
2007
2008#[derive(Debug, Clone, Serialize, Deserialize)]
2009pub struct VariableList {
2010 #[serde(skip_serializing_if = "Option::is_none")]
2011 pub total_count: Option<f64>,
2012 #[serde(skip_serializing_if = "Option::is_none")]
2013 pub variables: Option<Vec<Variable>>,
2014}
2015
2016#[derive(Debug, Clone, Serialize, Deserialize)]
2017pub struct Webhook {
2018 #[serde(skip_serializing_if = "Option::is_none")]
2019 pub active: Option<bool>,
2020 #[serde(skip_serializing_if = "Option::is_none")]
2021 pub config: Option<WebhookConfig>,
2022 #[serde(skip_serializing_if = "Option::is_none")]
2023 pub created_at: Option<String>,
2024 #[serde(skip_serializing_if = "Option::is_none")]
2025 pub events: Option<Vec<String>>,
2026 #[serde(skip_serializing_if = "Option::is_none")]
2027 pub id: Option<f64>,
2028 #[serde(skip_serializing_if = "Option::is_none")]
2029 pub last_response_status: Option<String>,
2030 #[serde(skip_serializing_if = "Option::is_none")]
2031 pub r#type: Option<String>,
2032 #[serde(skip_serializing_if = "Option::is_none")]
2033 pub updated_at: Option<String>,
2034}
2035
2036#[derive(Debug, Clone, Serialize, Deserialize)]
2037pub struct WorkflowDispatchInput {
2038 #[serde(skip_serializing_if = "Option::is_none")]
2039 pub default: Option<String>,
2040 #[serde(skip_serializing_if = "Option::is_none")]
2041 pub description: Option<String>,
2042 #[serde(skip_serializing_if = "Option::is_none")]
2043 pub name: Option<String>,
2044 #[serde(skip_serializing_if = "Option::is_none")]
2045 pub options: Option<Vec<String>>,
2046 #[serde(skip_serializing_if = "Option::is_none")]
2047 pub required: Option<bool>,
2048 #[serde(skip_serializing_if = "Option::is_none")]
2049 pub r#type: Option<String>,
2050}
2051
2052#[derive(Debug, Clone, Serialize, Deserialize)]
2053pub struct WorkflowDispatchInputList {
2054 #[serde(skip_serializing_if = "Option::is_none")]
2055 pub inputs: Option<Vec<WorkflowDispatchInput>>,
2056}