export interface GithubInput { op: "repo_view" | "file_read" | "pr_create" | "pr_checkout" | "pr_push" | "search_issues" | "search_prs" | "search_code" | "search_commits" | "search_repos" | "run_watch"; repo?: string; branch?: string; path?: string; pr?: string | string[]; force?: boolean; forceWithLease?: boolean; title?: string; body?: string; base?: string; head?: string; draft?: boolean; fill?: boolean; reviewer?: string[]; assignee?: string[]; label?: string[]; query?: string; since?: string; until?: string; dateField?: "created" | "updated"; limit?: number; run?: string; tail?: number; } export interface GhApiSearchResponse { total_count?: number; incomplete_results?: boolean; items?: T[]; } export interface GhApiUser { login?: string; name?: string | null; } export interface GhApiLabel { name?: string; } export interface GhApiPullRequestRef { merged_at?: string | null; } export interface GhApiSearchIssueItem { number?: number; title?: string; state?: string; state_reason?: string | null; user?: GhApiUser | null; labels?: GhApiLabel[]; created_at?: string; updated_at?: string; html_url?: string; repository_url?: string; pull_request?: GhApiPullRequestRef | null; } export interface GhApiSearchCodeItem { name?: string; path?: string; sha?: string; html_url?: string; repository?: { full_name?: string; } | null; text_matches?: Array<{ fragment?: string; property?: string; }>; } export interface GhApiSearchCommitGitActor { name?: string; email?: string; date?: string; } export interface GhApiSearchCommitItem { sha?: string; node_id?: string; html_url?: string; author?: GhApiUser | null; committer?: GhApiUser | null; commit?: { author?: GhApiSearchCommitGitActor | null; committer?: GhApiSearchCommitGitActor | null; message?: string; } | null; repository?: { full_name?: string; } | null; } export interface GhApiSearchRepoItem { full_name?: string; description?: string | null; language?: string | null; stargazers_count?: number; forks_count?: number; open_issues_count?: number; archived?: boolean; fork?: boolean; private?: boolean; visibility?: string | null; updated_at?: string; created_at?: string; html_url?: string; owner?: GhApiUser | null; } export interface GhUser { login?: string; name?: string | null; } export interface GhLabel { name?: string; } export interface GhComment { author?: GhUser | null; body?: string; createdAt?: string; url?: string; isMinimized?: boolean; minimizedReason?: string | null; } export interface GhRepoTopic { name?: string; topic?: { name?: string; }; } export interface GhRepoLanguage { name?: string; } export interface GhRepoBranch { name?: string; } export interface GhRepoViewData { nameWithOwner?: string; description?: string | null; url?: string; sshUrl?: string; defaultBranchRef?: GhRepoBranch | null; homepageUrl?: string | null; forkCount?: number; isArchived?: boolean; isFork?: boolean; primaryLanguage?: GhRepoLanguage | null; repositoryTopics?: GhRepoTopic[]; stargazerCount?: number; updatedAt?: string; viewerPermission?: string | null; visibility?: string | null; } export interface GhIssueViewData { author?: GhUser | null; body?: string | null; comments?: GhComment[]; createdAt?: string; labels?: GhLabel[]; number?: number; state?: string; stateReason?: string | null; title?: string; updatedAt?: string; url?: string; } export interface GhPrFile { path?: string; additions?: number; deletions?: number; changeType?: string; } export interface GhPrViewData extends GhIssueViewData { baseRefName?: string; files?: GhPrFile[]; headRefName?: string; headRefOid?: string; headRepository?: GhRepoViewData | null; headRepositoryOwner?: GhUser | null; isCrossRepository?: boolean; isDraft?: boolean; maintainerCanModify?: boolean; mergeStateStatus?: string; reviewComments?: GhPrReviewComment[]; reviews?: GhPrReview[]; reviewDecision?: string; } export interface GhPrReviewCommit { oid?: string | null; } export interface GhPrReview { author?: GhUser | null; body?: string | null; commit?: GhPrReviewCommit | null; state?: string | null; submittedAt?: string | null; } export interface GhPrReviewCommentApi { body?: string | null; created_at?: string | null; html_url?: string | null; id?: number; in_reply_to_id?: number | null; line?: number | null; original_line?: number | null; path?: string | null; side?: string | null; user?: GhUser | null; } export interface GhPrReviewComment { author?: GhUser | null; body?: string | null; createdAt?: string; id: number; inReplyToId?: number; line?: number; originalLine?: number; path?: string; side?: string; url?: string; } export interface GhBranchApiResponse { commit?: { sha?: string | null; } | null; } export interface GhSearchRepository { nameWithOwner?: string; } export interface GhSearchResult { author?: GhUser | null; createdAt?: string; labels?: GhLabel[]; number?: number; repository?: GhSearchRepository | null; state?: string; title?: string; updatedAt?: string; url?: string; } export interface GhSearchCodeTextMatch { fragment?: string; property?: string; } export interface GhSearchCodeResult { path?: string; repository?: GhSearchRepository | null; sha?: string; textMatches?: GhSearchCodeTextMatch[]; url?: string; } export interface GhSearchCommitGitActor { name?: string; email?: string; date?: string; } export interface GhSearchCommitDetail { author?: GhSearchCommitGitActor | null; committer?: GhSearchCommitGitActor | null; message?: string; } export interface GhSearchCommitResult { author?: GhUser | null; commit?: GhSearchCommitDetail | null; committer?: GhUser | null; id?: string; repository?: GhSearchRepository | null; sha?: string; url?: string; } export interface GhSearchRepoResult { createdAt?: string; description?: string | null; forksCount?: number; fullName?: string; isArchived?: boolean; isFork?: boolean; isPrivate?: boolean; language?: string | null; openIssuesCount?: number; owner?: GhUser | null; stargazersCount?: number; updatedAt?: string; url?: string; visibility?: string | null; } export interface GhRunReference { repo?: string; runId?: number; } export interface GhActionsRunListResponse { workflow_runs?: GhActionsRunApi[]; } export interface GhActionsRunApi { id?: number; name?: string | null; display_title?: string | null; status?: string | null; conclusion?: string | null; head_branch?: string | null; head_sha?: string | null; created_at?: string | null; updated_at?: string | null; html_url?: string | null; } export interface GhActionsJobsResponse { total_count?: number; jobs?: GhActionsJobApi[]; } export interface GhActionsJobApi { id?: number; name?: string | null; status?: string | null; conclusion?: string | null; started_at?: string | null; completed_at?: string | null; html_url?: string | null; }