GitHub Release Event
GitHub release webhook payload with assets, tag tracking, and draft/prerelease flags.
github
Install
$ npx shadcn@latest add @open-types/github-release-event
Dependencies
Source
import type {
GitHubUser,
GitHubRepository,
GitHubOrganization,
} from "./github-shared";
export interface GitHubReleaseAsset {
url: string;
browser_download_url: string;
id: number;
node_id: string;
name: string;
label: string | null;
state: string;
content_type: string;
size: number;
download_count: number;
created_at: string;
updated_at: string;
}
export interface GitHubRelease {
url: string;
html_url: string;
id: number;
node_id: string;
tag_name: string;
target_commitish: string;
name: string | null;
body: string | null;
draft: boolean;
prerelease: boolean;
created_at: string;
published_at: string | null;
author: GitHubUser;
assets: GitHubReleaseAsset[];
}
export type GitHubReleaseEventAction =
| "published"
| "unpublished"
| "created"
| "edited"
| "deleted"
| "prereleased"
| "released";
export interface GitHubReleaseEvent {
action: GitHubReleaseEventAction;
release: GitHubRelease;
repository: GitHubRepository;
sender: GitHubUser;
organization?: GitHubOrganization;
}
import type {
GitHubUser,
GitHubRepository,
GitHubOrganization,
} from "./github-shared";
export interface GitHubReleaseAsset {
url: string;
browser_download_url: string;
id: number;
node_id: string;
name: string;
label: string | null;
state: string;
content_type: string;
size: number;
download_count: number;
created_at: string;
updated_at: string;
}
export interface GitHubRelease {
url: string;
html_url: string;
id: number;
node_id: string;
tag_name: string;
target_commitish: string;
name: string | null;
body: string | null;
draft: boolean;
prerelease: boolean;
created_at: string;
published_at: string | null;
author: GitHubUser;
assets: GitHubReleaseAsset[];
}
export type GitHubReleaseEventAction =
| "published"
| "unpublished"
| "created"
| "edited"
| "deleted"
| "prereleased"
| "released";
export interface GitHubReleaseEvent {
action: GitHubReleaseEventAction;
release: GitHubRelease;
repository: GitHubRepository;
sender: GitHubUser;
organization?: GitHubOrganization;
}