GitHub Pull Request Event
GitHub pull_request webhook payload with branches, labels, reviewers, and changes tracking.
github
Install
$ npx shadcn@latest add @open-types/github-pull-request-event
Dependencies
Source
import type {
GitHubUser,
GitHubRepository,
GitHubOrganization,
GitHubLabel,
GitHubMilestone,
} from "./github-shared";
export type GitHubPullRequestAction =
| "assigned"
| "auto_merge_disabled"
| "auto_merge_enabled"
| "closed"
| "converted_to_draft"
| "demilestoned"
| "dequeued"
| "edited"
| "enqueued"
| "labeled"
| "locked"
| "milestoned"
| "opened"
| "ready_for_review"
| "reopened"
| "review_request_removed"
| "review_requested"
| "synchronize"
| "unassigned"
| "unlabeled"
| "unlocked";
export interface GitHubPullRequestBranch {
label: string;
ref: string;
sha: string;
user: GitHubUser;
repo: GitHubRepository | null;
}
export interface GitHubPullRequest {
id: number;
node_id: string;
number: number;
state: "open" | "closed";
locked: boolean;
title: string;
user: GitHubUser;
body: string | null;
created_at: string;
updated_at: string;
closed_at: string | null;
merged_at: string | null;
merge_commit_sha: string | null;
head: GitHubPullRequestBranch;
base: GitHubPullRequestBranch;
draft: boolean;
merged: boolean;
mergeable: boolean | null;
mergeable_state?: string;
merged_by?: GitHubUser | null;
comments?: number;
review_comments?: number;
commits?: number;
additions?: number;
deletions?: number;
changed_files?: number;
labels: GitHubLabel[];
milestone: GitHubMilestone | null;
assignee: GitHubUser | null;
assignees: GitHubUser[];
requested_reviewers: GitHubUser[];
html_url: string;
url: string;
}
export interface GitHubPullRequestChanges {
title?: { from: string };
body?: { from: string };
}
export interface GitHubPullRequestEvent {
action: GitHubPullRequestAction;
number: number;
pull_request: GitHubPullRequest;
repository: GitHubRepository;
sender: GitHubUser;
organization?: GitHubOrganization;
label?: GitHubLabel;
changes?: GitHubPullRequestChanges;
}
import type {
GitHubUser,
GitHubRepository,
GitHubOrganization,
GitHubLabel,
GitHubMilestone,
} from "./github-shared";
export type GitHubPullRequestAction =
| "assigned"
| "auto_merge_disabled"
| "auto_merge_enabled"
| "closed"
| "converted_to_draft"
| "demilestoned"
| "dequeued"
| "edited"
| "enqueued"
| "labeled"
| "locked"
| "milestoned"
| "opened"
| "ready_for_review"
| "reopened"
| "review_request_removed"
| "review_requested"
| "synchronize"
| "unassigned"
| "unlabeled"
| "unlocked";
export interface GitHubPullRequestBranch {
label: string;
ref: string;
sha: string;
user: GitHubUser;
repo: GitHubRepository | null;
}
export interface GitHubPullRequest {
id: number;
node_id: string;
number: number;
state: "open" | "closed";
locked: boolean;
title: string;
user: GitHubUser;
body: string | null;
created_at: string;
updated_at: string;
closed_at: string | null;
merged_at: string | null;
merge_commit_sha: string | null;
head: GitHubPullRequestBranch;
base: GitHubPullRequestBranch;
draft: boolean;
merged: boolean;
mergeable: boolean | null;
mergeable_state?: string;
merged_by?: GitHubUser | null;
comments?: number;
review_comments?: number;
commits?: number;
additions?: number;
deletions?: number;
changed_files?: number;
labels: GitHubLabel[];
milestone: GitHubMilestone | null;
assignee: GitHubUser | null;
assignees: GitHubUser[];
requested_reviewers: GitHubUser[];
html_url: string;
url: string;
}
export interface GitHubPullRequestChanges {
title?: { from: string };
body?: { from: string };
}
export interface GitHubPullRequestEvent {
action: GitHubPullRequestAction;
number: number;
pull_request: GitHubPullRequest;
repository: GitHubRepository;
sender: GitHubUser;
organization?: GitHubOrganization;
label?: GitHubLabel;
changes?: GitHubPullRequestChanges;
}