models

package
v1.11.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 4, 2026 License: Apache-2.0 Imports: 4 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Actor

type Actor struct {
	AvatarUrl string `json:"avatar_url"`
	Login     string `json:"login"`
	Url       string `json:"url"`
}

type AnnouncementBannerInfo added in v1.1.0

type AnnouncementBannerInfo struct {
	Message           string       `json:"message"`
	CreatedAt         NullableTime `json:"created_at"`
	ExpiresAt         NullableTime `json:"expires_at"`
	IsUserDismissible bool         `json:"is_user_dismissible"`
}

type BaseBranchProtectionRule added in v0.38.0

type BaseBranchProtectionRule struct {
	AllowsDeletions                bool     `json:"allows_deletions"`
	AllowsForcePushes              bool     `json:"allows_force_pushes"`
	BlocksCreations                bool     `json:"blocks_creations"`
	Creator                        Actor    `json:"creator"`
	Id                             int      `graphql:"id: databaseId" json:"id"`
	NodeId                         string   `graphql:"nodeId: id" json:"node_id"`
	DismissesStaleReviews          bool     `json:"dismisses_stale_reviews"`
	IsAdminEnforced                bool     `json:"is_admin_enforced"`
	LockAllowsFetchAndMerge        bool     `json:"lock_allows_fetch_and_merge"`
	LockBranch                     bool     `json:"lock_branch"`
	Pattern                        string   `json:"pattern"`
	RequireLastPushApproval        bool     `json:"require_last_push_approval"`
	RequiredApprovingReviewCount   int      `json:"required_approving_review_count"`
	RequiredDeploymentEnvironments []string `json:"required_deployment_environments"`
	RequiredStatusChecks           []string `graphql:"requiredStatusChecks: requiredStatusCheckContexts" json:"required_status_checks"`
	RequiresApprovingReviews       bool     `json:"requires_approving_reviews"`
	RequiresConversationResolution bool     `json:"requires_conversation_resolution"`
	RequiresCodeOwnerReviews       bool     `json:"requires_code_owner_reviews"`
	RequiresCommitSignatures       bool     `json:"requires_commit_signatures"`
	RequiresDeployments            bool     `json:"requires_deployments"`
	RequiresLinearHistory          bool     `json:"requires_linear_history"`
	RequiresStatusChecks           bool     `json:"requires_status_checks"`
	RequiresStrictStatusChecks     bool     `json:"requires_strict_status_checks"`
	RestrictsPushes                bool     `json:"restricts_pushes"`
	RestrictsReviewDismissals      bool     `json:"restricts_review_dismissals"`
	MatchingBranches               struct {
		TotalCount int `json:"total_count"`
	} `graphql:"matchingBranches: matchingRefs" json:"matching_branches"`
}

type BaseCommit added in v0.38.0

type BaseCommit struct {
	BasicCommit
	Additions           int          `json:"additions"`
	AuthoredByCommitter bool         `json:"authored_by_committer"`
	ChangedFiles        int          `graphql:"changedFiles: changedFilesIfAvailable" json:"changed_files"`
	CommittedViaWeb     bool         `json:"committed_via_web"`
	CommitUrl           string       `json:"commit_url"`
	Deletions           int          `json:"deletions"`
	Signature           Signature    `json:"signature"`
	TarballUrl          string       `json:"tarball_url"`
	TreeUrl             string       `json:"tree_url"`
	CanSubscribe        bool         `graphql:"canSubscribe: viewerCanSubscribe" json:"can_subscribe"`
	Subscription        string       `graphql:"subscription: viewerSubscription" json:"subscription"`
	ZipballUrl          string       `json:"zipball_url"`
	MessageHeadline     string       `json:"message_headline"`
	Status              CommitStatus `json:"status"`
	NodeId              string       `graphql:"nodeId:id" json:"node_id"`
}

type BaseLicense added in v0.38.0

type BaseLicense struct {
	BasicLicense
	Body           string        `json:"body"`
	Conditions     []LicenseRule `json:"conditions"`
	Description    string        `json:"description"`
	Featured       bool          `json:"featured"`
	Hidden         bool          `json:"hidden"`
	Implementation string        `json:"implementation"`
	Limitations    []LicenseRule `json:"limitations"`
	Permissions    []LicenseRule `json:"permissions"`
	PseudoLicense  bool          `json:"pseudo_license"`
}

type BaseOrganization added in v0.39.1

type BaseOrganization struct {
	BasicOrganization
	Announcement                           string                       `json:"announcement"`
	AnnouncementExpiresAt                  NullableTime                 `json:"announcement_expires_at"`
	AnnouncementUserDismissible            bool                         `json:"announcement_user_dismissible"`
	AnyPinnableItems                       bool                         `json:"any_pinnable_items"`
	AvatarUrl                              string                       `json:"avatar_url"`
	EstimatedNextSponsorsPayoutInCents     int                          `json:"estimated_next_sponsors_payout_in_cents"`
	HasSponsorsListing                     bool                         `json:"has_sponsors_listing"`
	InteractionAbility                     RepositoryInteractionAbility `json:"interaction_ability"`
	IsSponsoringYou                        bool                         `graphql:"isSponsoringYou: isSponsoringViewer" json:"is_sponsoring_you"`
	IsVerified                             bool                         `json:"is_verified"`
	Location                               string                       `json:"location"`
	MonthlyEstimatedSponsorsIncomeInCents  int                          `json:"monthly_estimated_sponsors_income_in_cents"`
	NewTeamUrl                             string                       `json:"new_team_url"`
	PinnedItemsRemaining                   int                          `json:"pinned_items_remaining"`
	ProjectsUrl                            string                       `json:"projects_url"`
	SamlIdentityProvider                   OrganizationIdentityProvider `json:"saml_identity_provider"`
	SponsorsListing                        SponsorsListing              `json:"sponsors_listing"`
	TeamsUrl                               string                       `json:"teams_url"`
	TotalSponsorshipAmountAsSponsorInCents int                          `json:"total_sponsorship_amount_as_sponsor_in_cents"`
	TwitterUsername                        string                       `json:"twitter_username"`
	CanAdminister                          bool                         `graphql:"canAdminister: viewerCanAdminister" json:"can_administer"`
	CanChangedPinnedItems                  bool                         `graphql:"canChangedPinnedItems: viewerCanChangePinnedItems" json:"can_changed_pinned_items"`
	CanCreateProjects                      bool                         `graphql:"canCreateProjects: viewerCanCreateProjects" json:"can_create_projects"`
	CanCreateRepositories                  bool                         `graphql:"canCreateRepositories: viewerCanCreateRepositories" json:"can_create_repositories"`
	CanCreateTeams                         bool                         `graphql:"canCreateTeams: viewerCanCreateTeams" json:"can_create_teams"`
	CanSponsor                             bool                         `graphql:"canSponsor: viewerCanSponsor" json:"can_sponsor"`
	IsAMember                              bool                         `graphql:"isAMember: viewerIsAMember" json:"is_a_member"`
	IsFollowing                            bool                         `graphql:"isFollowing: viewerIsFollowing" json:"is_following"`
	IsSponsoring                           bool                         `graphql:"isSponsoring: viewerIsSponsoring" json:"is_sponsoring"`
	WebsiteUrl                             string                       `json:"website_url"`
}

type BaseRateLimit added in v0.38.0

type BaseRateLimit struct {
	Remaining int       `graphql:"remaining @include(if:$includeRLRemaining)" json:"remaining"`
	Used      int       `graphql:"used @include(if:$includeRLUsed)" json:"used"`
	Cost      int       `graphql:"cost @include(if:$includeRLCost)" json:"cost"`
	Limit     int       `graphql:"limit @include(if:$includeRLLimit)" json:"limit"`
	ResetAt   time.Time `graphql:"resetAt @include(if:$includeRLResetAt)" json:"reset_at"`
	NodeCount int       `graphql:"remaining @include(if:$includeRLNodeCount)" json:"node_count"`
}

RateLimit information

type BaseUser added in v0.38.0

type BaseUser struct {
	BasicUser
	AnyPinnableItems                      bool                         `json:"any_pinnable_items"`
	AvatarUrl                             string                       `json:"avatar_url"`
	Bio                                   string                       `json:"bio"`
	Company                               string                       `json:"company"`
	EstimatedNextSponsorsPayoutInCents    int                          `json:"estimated_next_sponsors_payout_in_cents"`
	HasSponsorsListing                    bool                         `json:"has_sponsors_listing"`
	InteractionAbility                    RepositoryInteractionAbility `graphql:"interactionAbility @include(if:$includeUserInteractionAbility)" json:"interaction_ability,omitempty"`
	IsBountyHunter                        bool                         `json:"is_bounty_hunter"`
	IsCampusExpert                        bool                         `json:"is_campus_expert"`
	IsDeveloperProgramMember              bool                         `json:"is_developer_program_member"`
	IsEmployee                            bool                         `json:"is_employee"`
	IsFollowingYou                        bool                         `graphql:"isFollowingYou: isFollowingViewer" json:"is_following_you"`
	IsGitHubStar                          bool                         `json:"is_github_star"`
	IsHireable                            bool                         `json:"is_hireable"`
	IsSiteAdmin                           bool                         `json:"is_site_admin"`
	IsSponsoringYou                       bool                         `graphql:"isSponsoringYou: isSponsoringViewer" json:"is_sponsoring_you"`
	IsYou                                 bool                         `graphql:"isYou: isViewer" json:"is_you"`
	Location                              string                       `json:"location"`
	MonthlyEstimatedSponsorsIncomeInCents int                          `json:"monthly_estimated_sponsors_income_in_cents"`
	PinnedItemsRemaining                  int                          `json:"pinned_items_remaining"`
	ProjectsUrl                           string                       `json:"projects_url"`
	Pronouns                              string                       `json:"pronouns"`
	SponsorsListing                       SponsorsListing              `json:"sponsors_listing,omitempty"`
	Status                                userStatus                   `json:"status,omitempty"`
	TwitterUsername                       string                       `json:"twitter_username"`
	CanChangedPinnedItems                 bool                         `graphql:"canChangedPinnedItems: viewerCanChangePinnedItems" json:"can_changed_pinned_items"`
	CanCreateProjects                     bool                         `graphql:"canCreateProjects: viewerCanCreateProjects" json:"can_create_projects"`
	CanFollow                             bool                         `graphql:"canFollow: viewerCanFollow" json:"can_follow"`
	CanSponsor                            bool                         `graphql:"canSponsor: viewerCanSponsor" json:"can_sponsor"`
	IsFollowing                           bool                         `graphql:"isFollowing: viewerIsFollowing" json:"is_following"`
	IsSponsoring                          bool                         `graphql:"isSponsoring: viewerIsSponsoring" json:"is_sponsoring"`
	WebsiteUrl                            string                       `json:"website_url"`
}

type BasicCommit

type BasicCommit struct {
	Sha           string       `graphql:"sha: oid" json:"sha"`
	ShortSha      string       `graphql:"shortSha: abbreviatedOid" json:"short_sha"`
	AuthoredDate  NullableTime `json:"authored_date"`
	Author        GitActor     `json:"author"`
	CommittedDate NullableTime `json:"committed_date"`
	Committer     GitActor     `json:"committer"`
	Message       string       `json:"message"`
	Url           string       `json:"url"`
}

BasicCommit returns the core fields of a Commit.

type BasicLicense

type BasicLicense struct {
	Key      string `json:"key"`
	Name     string `json:"name"`
	Nickname string `json:"nickname"`
	SpdxId   string `json:"spdx_id"`
	Url      string `json:"url"`
}

type BasicOrganization

type BasicOrganization struct {
	Login       string       `json:"login"`
	CreatedAt   NullableTime `json:"created_at"`
	UpdatedAt   NullableTime `json:"updated_at"`
	Description string       `json:"description"`
	Email       string       `json:"email"`
	Url         string       `json:"url"`
	// contains filtered or unexported fields
}

type BasicPullRequest

type BasicPullRequest struct {
	Id                  int                                `graphql:"id: databaseId @include(if:$includePRId)" json:"id"`
	NodeId              string                             `graphql:"nodeId: id @include(if:$includePRNodeId)" json:"node_id"`
	Number              int                                `json:"number"`
	ActiveLockReason    githubv4.LockReason                `graphql:"activeLockReason @include(if:$includePRActiveLockReason)" json:"active_lock_reason"`
	Additions           int                                `graphql:"additions @include(if:$includePRAdditions)" json:"additions"`
	Author              Actor                              `graphql:"author @include(if:$includePRAuthor)" json:"author"`
	AuthorAssociation   githubv4.CommentAuthorAssociation  `graphql:"authorAssociation @include(if:$includePRAuthorAssociation)" json:"author_association"`
	BaseRefName         string                             `graphql:"baseRefName @include(if:$includePRBaseRefName)" json:"base_ref_name"`
	Body                string                             `graphql:"body @include(if:$includePRBody)" json:"body"`
	ChangedFiles        int                                `graphql:"changedFiles @include(if:$includePRChangedFiles)" json:"changed_files"`
	ChecksUrl           string                             `graphql:"checksUrl @include(if:$includePRChecksUrl)" json:"checks_url"`
	Closed              bool                               `graphql:"closed @include(if:$includePRClosed)" json:"closed"`
	ClosedAt            NullableTime                       `graphql:"closedAt @include(if:$includePRClosedAt)" json:"closed_at"`
	CreatedAt           NullableTime                       `graphql:"createdAt @include(if:$includePRCreatedAt)" json:"created_at"`
	CreatedViaEmail     bool                               `graphql:"createdViaEmail @include(if:$includePRCreatedViaEmail)" json:"created_via_email"`
	Deletions           int                                `graphql:"deletions @include(if:$includePRDeletions)" json:"deletions"`
	Editor              Actor                              `graphql:"editor @include(if:$includePREditor)" json:"editor"`
	HeadRefName         string                             `graphql:"headRefName @include(if:$includePRHeadRefName)" json:"head_ref_name"`
	HeadRefOid          string                             `graphql:"headRefOid @include(if:$includePRHeadRefOid)" json:"head_ref_oid"`
	IncludesCreatedEdit bool                               `graphql:"includesCreatedEdit @include(if:$includePRIncludesCreatedEdit)" json:"includes_created_edit"`
	IsCrossRepository   bool                               `graphql:"isCrossRepository @include(if:$includePRIsCrossRepository)" json:"is_cross_repository"`
	IsDraft             bool                               `graphql:"isDraft @include(if:$includePRIsDraft)" json:"is_draft"`
	IsReadByUser        bool                               `graphql:"isReadByUser: isReadByViewer @include(if:$includePRIsReadByUser)" json:"is_read_by_user"`
	LastEditedAt        NullableTime                       `graphql:"lastEditedAt @include(if:$includePRLastEditedAt)" json:"last_edited_at"`
	Locked              bool                               `graphql:"locked @include(if:$includePRLocked)" json:"locked"`
	MaintainerCanModify bool                               `graphql:"maintainerCanModify @include(if:$includePRMaintainerCanModify)" json:"maintainer_can_modify"`
	Mergeable           githubv4.MergeableState            `graphql:"mergeable @include(if:$includePRMergeable)" json:"mergeable"`
	Merged              bool                               `graphql:"merged @include(if:$includePRMerged)" json:"merged"`
	MergedAt            NullableTime                       `graphql:"mergedAt @include(if:$includePRMergedAt)" json:"merged_at"`
	MergedBy            Actor                              `graphql:"mergedBy @include(if:$includePRMergedBy)" json:"merged_by"`
	Milestone           Milestone                          `graphql:"milestone @include(if:$includePRMilestone)" json:"milestone"`
	Permalink           string                             `graphql:"permalink @include(if:$includePRPermalink)" json:"permalink"`
	PublishedAt         NullableTime                       `graphql:"publishedAt @include(if:$includePRPublishedAt)" json:"published_at"`
	RevertUrl           string                             `graphql:"revertUrl @include(if:$includePRRevertUrl)" json:"revert_url"`
	ReviewDecision      githubv4.PullRequestReviewDecision `graphql:"reviewDecision @include(if:$includePRReviewDecision)" json:"review_decision"`
	State               githubv4.PullRequestState          `graphql:"state @include(if:$includePRState)" json:"state"`
	Title               string                             `graphql:"title @include(if:$includePRTitle)" json:"title"`
	TotalCommentsCount  int                                `graphql:"totalCommentsCount @include(if:$includePRTotalCommentsCount)" json:"total_comments_count"`
	UpdatedAt           NullableTime                       `graphql:"updatedAt @include(if:$includePRUpdatedAt)" json:"updated_at"`
	Url                 string                             `graphql:"url @include(if:$includePRUrl)" json:"url"`
	Repo                struct {
		NameWithOwner string `json:"name_with_owner"`
	} `graphql:"repo: repository" json:"repo"`
}

type BasicRef

type BasicRef struct {
	Name   string `json:"name"`
	Prefix string `json:"prefix"`
}

type BasicRefWithBranchProtectionRule

type BasicRefWithBranchProtectionRule struct {
	BasicRef
	BranchProtectionRule *BaseBranchProtectionRule `json:"branch_protection_rule,omitempty"`
}

type BasicUser

type BasicUser struct {
	Login     string       `json:"login"`
	Email     string       `json:"email,omitempty"`
	CreatedAt NullableTime `json:"created_at"`
	UpdatedAt NullableTime `json:"updated_at"`
	Url       string       `json:"url"`
	// contains filtered or unexported fields
}

type Blob

type Blob struct {
	NodeId      string `graphql:"nodeId: id" json:"node_id"`
	IsTruncated bool   `json:"is_truncated"`
	IsBinary    bool   `json:"is_binary"`
	Text        string `json:"text"`
	ByteSize    int    `json:"byte_size"`
	CommitSha   string `graphql:"commitSha: oid" json:"commit_sha"`
	CommitUrl   string `json:"commit_url"`
}

type Branch

type Branch struct {
	Name   string
	Target struct {
		Commit BaseCommit `graphql:"... on Commit"`
	}
	BranchProtectionRule BranchProtectionRule `graphql:"branchProtectionRule @include(if:$includeBranchProtectionRule)" json:"branch_protection_rule"`
}

type BranchActorAllowances

type BranchActorAllowances struct {
	TotalCount int
	PageInfo   PageInfo
	Nodes      []struct {
		Actor struct {
			Type string `graphql:"type: __typename"`
			App  struct {
				Name string
				Slug string
			} `graphql:"... on App"`
			Team struct {
				Name string
				Slug string
			} `graphql:"... on Team"`
			User struct {
				Name  string
				Login string
			} `graphql:"... on User"`
		}
	}
}

func (*BranchActorAllowances) Explode

func (b *BranchActorAllowances) Explode() ([]NameSlug, []NameSlug, []NameLogin)

Explode returns 3 collections from BranchActorAllowances by type (in order) Apps, Teams, Users.

type BranchProtectionRule

type BranchProtectionRule struct {
	AllowsDeletions                bool     `graphql:"allowsDeletions @include(if:$includeAllowsDeletions)" json:"allows_deletions"`
	AllowsForcePushes              bool     `graphql:"allowsForcePushes @include(if:$includeAllowsForcePushes)" json:"allows_force_pushes"`
	BlocksCreations                bool     `graphql:"blocksCreations @include(if:$includeBlocksCreations)" json:"blocks_creations"`
	Creator                        Actor    `graphql:"creator @include(if:$includeCreator)" json:"creator"`
	Id                             int      `graphql:"id: databaseId @include(if:$includeBranchProtectionRuleId)" json:"id"`
	NodeId                         string   `graphql:"nodeId: id" json:"node_id"`
	DismissesStaleReviews          bool     `graphql:"dismissesStaleReviews @include(if:$includeDismissesStaleReviews)" json:"dismisses_stale_reviews"`
	IsAdminEnforced                bool     `graphql:"isAdminEnforced @include(if:$includeIsAdminEnforced)" json:"is_admin_enforced"`
	LockAllowsFetchAndMerge        bool     `graphql:"lockAllowsFetchAndMerge @include(if:$includeLockAllowsFetchAndMerge)" json:"lock_allows_fetch_and_merge"`
	LockBranch                     bool     `graphql:"lockBranch @include(if:$includeLockBranch)" json:"lock_branch"`
	Pattern                        string   `graphql:"pattern @include(if:$includePattern)" json:"pattern"`
	RequireLastPushApproval        bool     `graphql:"requireLastPushApproval @include(if:$includeRequireLastPushApproval)" json:"require_last_push_approval"`
	RequiredApprovingReviewCount   int      `` /* 127-byte string literal not displayed */
	RequiredDeploymentEnvironments []string `` /* 132-byte string literal not displayed */
	RequiredStatusChecks           []string `` /* 131-byte string literal not displayed */
	RequiresApprovingReviews       bool     `graphql:"requiresApprovingReviews @include(if:$includeRequiresApprovingReviews)" json:"requires_approving_reviews"`
	RequiresConversationResolution bool     `` /* 132-byte string literal not displayed */
	RequiresCodeOwnerReviews       bool     `graphql:"requiresCodeOwnerReviews @include(if:$includeRequiresCodeOwnerReviews)" json:"requires_code_owner_reviews"`
	RequiresCommitSignatures       bool     `graphql:"requiresCommitSignatures @include(if:$includeRequiresCommitSignatures)" json:"requires_commit_signatures"`
	RequiresDeployments            bool     `graphql:"requiresDeployments @include(if:$includeRequiresDeployments)" json:"requires_deployments"`
	RequiresLinearHistory          bool     `graphql:"requiresLinearHistory @include(if:$includeRequiresLinearHistory)" json:"requires_linear_history"`
	RequiresStatusChecks           bool     `graphql:"requiresStatusChecks @include(if:$includeRequiresStatusChecks)" json:"requires_status_checks"`
	RequiresStrictStatusChecks     bool     `graphql:"requiresStrictStatusChecks @include(if:$includeRequiresStrictStatusChecks)" json:"requires_strict_status_checks"`
	RestrictsPushes                bool     `graphql:"restrictsPushes @include(if:$includeRestrictsPushes)" json:"restricts_pushes"`
	RestrictsReviewDismissals      bool     `graphql:"restrictsReviewDismissals @include(if:$includeRestrictsReviewDismissals)" json:"restricts_review_dismissals"`
	MatchingBranches               struct {
		TotalCount int `json:"total_count"`
	} `graphql:"matchingBranches: matchingRefs @include(if:$includeMatchingBranches)" json:"matching_branches"`
}

type BranchProtectionRuleWithBypassForcePushAllowances

type BranchProtectionRuleWithBypassForcePushAllowances struct {
	BranchProtectionRule
	BypassForcePushAllowances BranchActorAllowances `graphql:"bypassForcePushAllowances(first: $pageSize, after: $cursor)"`
}

type BranchProtectionRuleWithBypassPullRequestAllowances

type BranchProtectionRuleWithBypassPullRequestAllowances struct {
	BranchProtectionRule
	BypassPullRequestAllowances BranchActorAllowances `graphql:"bypassPullRequestAllowances(first: $pageSize, after: $cursor)"`
}

type BranchProtectionRuleWithFirstPageEmbeddedItems

type BranchProtectionRuleWithFirstPageEmbeddedItems struct {
	BranchProtectionRule
	PushAllowances              BranchActorAllowances `graphql:"pushAllowances(first: 100)"`
	BypassForcePushAllowances   BranchActorAllowances `graphql:"bypassForcePushAllowances(first: 100)"`
	BypassPullRequestAllowances BranchActorAllowances `graphql:"bypassPullRequestAllowances(first: 100)"`
}

type BranchProtectionRuleWithPushAllowances

type BranchProtectionRuleWithPushAllowances struct {
	BranchProtectionRule
	PushAllowances BranchActorAllowances `graphql:"pushAllowances(first: $pageSize, after: $cursor)"`
}

type BypassActor added in v0.42.0

type BypassActor struct {
	BypassMode               string `json:"bypass_mode"`
	DeployKey                bool   `json:"deploy_key"`
	ID                       string `json:"id"`
	RepositoryRoleDatabaseID int    `json:"repository_role_database_id"`
	RepositoryRoleName       string `json:"repository_role_name"`
}

type CVSS added in v0.32.0

type CVSS struct {
	Score        float32 `json:"score"`
	VectorString string  `json:"vector_string"`
}

type CodeScanningParameters added in v0.42.0

type CodeScanningParameters struct {
	CodeScanningTools []CodeScanningTool `json:"code_scanning_tools"`
}

type CodeScanningTool added in v0.42.0

type CodeScanningTool struct {
	AlertsThreshold         string `json:"alerts_threshold"`
	SecurityAlertsThreshold string `json:"security_alerts_threshold"`
	Tool                    string `json:"tool"`
}

type CollaboratorLogin added in v0.40.0

type CollaboratorLogin struct {
	Login   string `json:"login"`
	Email   string `json:"email"`
	Url     string `json:"url"`
	Name    string `json:"name"`
	Company string `json:"company"`
}

type Commit

type Commit struct {
	Sha                 string       `graphql:"sha: oid" json:"sha"`
	ShortSha            string       `graphql:"shortSha: abbreviatedOid @include(if:$includeCommitShortSha)" json:"short_sha"`
	AuthoredDate        NullableTime `graphql:"authoredDate @include(if:$includeCommitAuthoredDate)" json:"authored_date"`
	Author              GitActor     `graphql:"author @include(if:$includeCommitAuthor)" json:"author"`
	CommittedDate       NullableTime `graphql:"committedDate @include(if:$includeCommitCommittedDate)" json:"committed_date"`
	Committer           GitActor     `graphql:"committer @include(if:$includeCommitCommitter)" json:"committer"`
	Message             string       `graphql:"message @include(if:$includeCommitMessage)" json:"message"`
	Url                 string       `graphql:"url @include(if:$includeCommitUrl)" json:"url"`
	Additions           int          `graphql:"additions @include(if:$includeCommitAdditions)" json:"additions"`
	AuthoredByCommitter bool         `graphql:"authoredByCommitter @include(if:$includeCommitAuthoredByCommitter)" json:"authored_by_committer"`
	ChangedFiles        int          `graphql:"changedFiles: changedFilesIfAvailable @include(if:$includeCommitChangedFiles)" json:"changed_files"`
	CommittedViaWeb     bool         `graphql:"committedViaWeb @include(if:$includeCommitCommittedViaWeb)" json:"committed_via_web"`
	CommitUrl           string       `graphql:"commitUrl @include(if:$includeCommitCommitUrl)" json:"commit_url"`
	Deletions           int          `graphql:"deletions @include(if:$includeCommitDeletions)" json:"deletions"`
	Signature           Signature    `graphql:"signature @include(if:$includeCommitSignature)" json:"signature"`
	TarballUrl          string       `graphql:"tarballUrl @include(if:$includeCommitTarballUrl)" json:"tarball_url"`
	TreeUrl             string       `graphql:"treeUrl @include(if:$includeCommitTreeUrl)" json:"tree_url"`
	CanSubscribe        bool         `graphql:"canSubscribe: viewerCanSubscribe @include(if:$includeCommitCanSubscribe)" json:"can_subscribe"`
	Subscription        string       `graphql:"subscription: viewerSubscription @include(if:$includeCommitSubscription)" json:"subscription"`
	ZipballUrl          string       `graphql:"zipballUrl @include(if:$includeCommitZipballUrl)" json:"zipball_url"`
	MessageHeadline     string       `graphql:"messageHeadline @include(if:$includeCommitMessageHeadline)" json:"message_headline"`
	Status              CommitStatus `graphql:"status @include(if:$includeCommitStatus)" json:"status"`
	NodeId              string       `graphql:"nodeId:id @include(if:$includeCommitNodeId)" json:"node_id"`
}

Commit returns the full detail of a Commit

type CommitAuthorEmailPatternParameters added in v0.42.0

type CommitAuthorEmailPatternParameters struct {
	Name     string `json:"name"`
	Negate   bool   `json:"negate"`
	Operator string `json:"operator"`
	Pattern  string `json:"pattern"`
}

type CommitMessagePatternParameters added in v0.42.0

type CommitMessagePatternParameters struct {
	Name     string `json:"name"`
	Negate   bool   `json:"negate"`
	Operator string `json:"operator"`
	Pattern  string `json:"pattern"`
}

type CommitStatus

type CommitStatus struct {
	State string `json:"state"`
}

type CommitterEmailPatternParameters added in v0.42.0

type CommitterEmailPatternParameters struct {
	Name     string `json:"name"`
	Negate   bool   `json:"negate"`
	Operator string `json:"operator"`
	Pattern  string `json:"pattern"`
}

type CommunityProfile added in v0.38.0

type CommunityProfile struct {
	LicenseInfo          BaseLicense             `graphql:"licenseInfo @include(if:$includeCPLicense)" json:"license_info"`
	CodeOfConduct        RepositoryCodeOfConduct `graphql:"codeOfConduct @include(if:$includeCPCodeOfConduct)" json:"code_of_conduct"`
	IssueTemplates       []IssueTemplate         `graphql:"issueTemplates @include(if:$includeCPIssueTemplates)" json:"issue_templates"`
	PullRequestTemplates []PullRequestTemplate   `graphql:"pullRequestTemplates @include(if:$includeCPPullRequestTemplates)" json:"pull_request_templates"`
	// readme
	ReadMeLower struct {
		Blob Blob `graphql:"... on Blob"`
	} `graphql:"readMeLower: object(expression: \"HEAD:readme.md\") @include(if:$includeCPReadme)"`
	ReadMeUpper struct {
		Blob Blob `graphql:"... on Blob"`
	} `graphql:"readMeUpper: object(expression: \"HEAD:README.md\") @include(if:$includeCPReadme)"`
	// contributing
	ContributingLower struct {
		Blob Blob `graphql:"... on Blob"`
	} `graphql:"contributingLower: object(expression: \"HEAD:contributing.md\") @include(if:$includeCPContributing)"`
	ContributingTitle struct {
		Blob Blob `graphql:"... on Blob"`
	} `graphql:"contributingTitle: object(expression: \"HEAD:Contributing.md\") @include(if:$includeCPContributing)"`
	ContributingUpper struct {
		Blob Blob `graphql:"... on Blob"`
	} `graphql:"contributingUpper: object(expression: \"HEAD:CONTRIBUTING.md\") @include(if:$includeCPContributing)"`
	// security
	SecurityLower struct {
		Blob Blob `graphql:"... on Blob"`
	} `graphql:"securityLower: object(expression: \"HEAD:security.md\") @include(if:$includeCPSecurity)"`
	SecurityTitle struct {
		Blob Blob `graphql:"... on Blob"`
	} `graphql:"securityTitle: object(expression: \"HEAD:Security.md\") @include(if:$includeCPSecurity)"`
	SecurityUpper struct {
		Blob Blob `graphql:"... on Blob"`
	} `graphql:"securityUpper: object(expression: \"HEAD:SECURITY.md\") @include(if:$includeCPSecurity)"`
}

type Conditions added in v0.42.0

type Conditions struct {
	RefName struct {
		Exclude []string `json:"exclude"`
		Include []string `json:"include"`
	} `json:"ref_name"`
	RepositoryID struct {
		RepositoryIds []string `json:"repository_ids"`
	} `json:"repository_id"`
	RepositoryName struct {
		Exclude   []string `json:"exclude"`
		Include   []string `json:"include"`
		Protected bool     `json:"protected"`
	} `json:"repository_name"`
}

type Count

type Count struct {
	TotalCount int `json:"total_count"`
}

type Deployment

type Deployment struct {
	Id                  int                      `graphql:"id: databaseId @include(if:$includeDeploymentId)" json:"id,omitempty"`
	NodeId              string                   `graphql:"nodeId: id @include(if:$includeDeploymentNodeId)" json:"node_id,omitempty"`
	CommitSha           string                   `graphql:"sha: commitOid @include(if:$includeDeploymentCommitSha)" json:"sha"`
	CreatedAt           NullableTime             `graphql:"createdAt @include(if:$includeDeploymentCreatedAt)" json:"created_at,omitempty"`
	Creator             Actor                    `graphql:"creator @include(if:$includeDeploymentCreator)" json:"creator,omitempty"`
	Description         string                   `graphql:"description @include(if:$includeDeploymentDescription)" json:"description,omitempty"`
	Environment         string                   `graphql:"environment @include(if:$includeDeploymentEnvironment)" json:"environment,omitempty"`
	LatestEnvironment   string                   `graphql:"latestEnvironment @include(if:$includeDeploymentLatestEnvironment)" json:"latest_environment,omitempty"`
	LatestStatus        DeploymentStatus         `graphql:"latestStatus @include(if:$includeDeploymentLatestStatus)" json:"latest_status,omitempty"`
	OriginalEnvironment string                   `graphql:"originalEnvironment @include(if:$includeDeploymentOriginalEnvironment)" json:"original_environment,omitempty"`
	Payload             string                   `graphql:"payload @include(if:$includeDeploymentPayload)" json:"payload,omitempty"`
	Ref                 BasicRef                 `graphql:"ref @include(if:$includeDeploymentRef)" json:"ref,omitempty"`
	State               githubv4.DeploymentState `graphql:"state @include(if:$includeDeploymentState)" json:"state,omitempty"`
	Task                string                   `graphql:"task @include(if:$includeDeploymentTask)" json:"task,omitempty"`
	UpdatedAt           NullableTime             `graphql:"updatedAt @include(if:$includeDeploymentUpdatedAt)" json:"updated_at,omitempty"`
}

type DeploymentStatus

type DeploymentStatus struct {
	NodeId         string                         `graphql:"nodeId: id" json:"node_id,omitempty"`
	CreatedAt      NullableTime                   `json:"created_at"`
	Creator        Actor                          `json:"creator"`
	Description    string                         `json:"description"`
	EnvironmentUrl string                         `json:"environment_url"`
	LogUrl         string                         `json:"log_url"`
	State          githubv4.DeploymentStatusState `json:"state"`
	UpdatedAt      NullableTime                   `json:"updated_at"`
}

type Discussion added in v1.6.0

type Discussion struct {
	Id        int          `graphql:"id: databaseId @include(if:$includeDiscussionId)" json:"id"`
	NodeId    string       `graphql:"nodeId: id @include(if:$includeDiscussionNodeId)" json:"node_id"`
	Number    int          `graphql:"number" json:"number"`
	Title     string       `graphql:"title" json:"title"`
	Url       string       `graphql:"url" json:"url"`
	CreatedAt NullableTime `graphql:"createdAt @include(if:$includeDiscussionCreatedAt)" json:"created_at"`
	UpdatedAt NullableTime `graphql:"updatedAt @include(if:$includeDiscussionUpdatedAt)" json:"updated_at"`
	Author    Actor        `graphql:"author @include(if:$includeDiscussionAuthor)" json:"author"`
	Category  struct {
		Name string `graphql:"name" json:"name"`
	} `graphql:"category @include(if:$includeDiscussionCategory)" json:"category"`
	Answer   *DiscussionComment `graphql:"answer @include(if:$includeDiscussionAnswer)" json:"answer"`
	Comments struct {
		TotalCount int
		Nodes      []DiscussionComment
	} `graphql:"comments(first: 10) @include(if:$includeDiscussionComments)" json:"comments"`
}

type DiscussionComment added in v1.6.0

type DiscussionComment struct {
	Id        int          `graphql:"id: databaseId" json:"id"`
	NodeId    string       `graphql:"nodeId: id" json:"node_id"`
	Author    Actor        `graphql:"author" json:"author"`
	Body      string       `graphql:"body" json:"body"`
	BodyText  string       `graphql:"bodyText" json:"body_text"`
	CreatedAt NullableTime `graphql:"createdAt" json:"created_at"`
	UpdatedAt NullableTime `graphql:"updatedAt" json:"updated_at"`
	IsAnswer  bool         `graphql:"isAnswer" json:"is_answer"`
}

type DiscussionCommentReplies added in v1.6.0

type DiscussionCommentReplies struct {
	Replies struct {
		PageInfo   PageInfo
		TotalCount int
		Nodes      []DiscussionComment
	} `graphql:"replies(first: $pageSize, after: $cursor)"`
}

type DiscussionComments added in v1.6.0

type DiscussionComments struct {
	Comments struct {
		PageInfo   PageInfo
		TotalCount int
		Nodes      []DiscussionComment
	} `graphql:"comments(first: $pageSize, after: $cursor)"`
}

type Environment

type Environment struct {
	Id     int    `graphql:"id: databaseId @include(if:$includeEnvironmentId)" json:"id,omitempty"`
	NodeId string `graphql:"nodeId: id @include(if:$includeEnvironmentNodeId)" json:"node_id,omitempty"`
	Name   string `graphql:"name @include(if:$includeEnvironmentName)" json:"name,omitempty"`
}

type FileExtensionRestrictionParameters added in v0.42.0

type FileExtensionRestrictionParameters struct {
	RestrictedFileExtensions []string `json:"restricted_file_extensions"`
}

type FilePathRestrictionParameters added in v0.42.0

type FilePathRestrictionParameters struct {
	RestrictedFilePaths []string `json:"restricted_file_paths"`
}

type GitActor

type GitActor struct {
	AvatarUrl string       `json:"avatar_url"`
	Date      NullableTime `json:"date"`
	Email     string       `json:"email"`
	Name      string       `json:"name"`
	User      BasicUser    `json:"user"`
}

type Issue

type Issue struct {
	Id                      int                                  `graphql:"id: databaseId @include(if:$includeIssueId)" json:"id"`
	NodeId                  string                               `graphql:"nodeId: id @include(if:$includeIssueNodeId)" json:"node_id"`
	Number                  int                                  `json:"number"`
	ActiveLockReason        githubv4.LockReason                  `graphql:"activeLockReason @include(if:$includeIssueActiveLockReason)" json:"active_lock_reason"`
	Author                  Actor                                `graphql:"author @include(if:$includeIssueAuthor)" json:"author"`
	AuthorAssociation       githubv4.CommentAuthorAssociation    `graphql:"authorAssociation @include(if:$includeIssueAuthorAssociation)" json:"author_association"`
	Body                    string                               `graphql:"body @include(if:$includeIssueBody)" json:"body"`
	BodyUrl                 string                               `graphql:"bodyUrl @include(if:$includeIssueBodyUrl)" json:"body_url"`
	Closed                  bool                                 `graphql:"closed @include(if:$includeIssueClosed)" json:"closed"`
	ClosedAt                NullableTime                         `graphql:"closedAt @include(if:$includeIssueClosedAt)" json:"closed_at"`
	CreatedAt               NullableTime                         `graphql:"createdAt @include(if:$includeIssueCreatedAt)" json:"created_at"`
	CreatedViaEmail         bool                                 `graphql:"createdViaEmail @include(if:$includeIssueCreatedViaEmail)" json:"created_via_email"`
	Editor                  Actor                                `graphql:"editor @include(if:$includeIssueEditor)" json:"editor"`
	FullDatabaseId          string                               `graphql:"fullDatabaseId @include(if:$includeIssueFullDatabaseId)" json:"full_database_id"`
	IncludesCreatedEdit     bool                                 `graphql:"includesCreatedEdit @include(if:$includeIssueIncludesCreatedEdit)" json:"includes_created_edit"`
	IsPinned                bool                                 `graphql:"isPinned @include(if:$includeIssueIsPinned)" json:"is_pinned"`
	IsReadByUser            bool                                 `graphql:"isReadByUser: isReadByViewer @include(if:$includeIssueIsReadByUser)" json:"is_read_by_user"`
	LastEditedAt            NullableTime                         `graphql:"lastEditedAt @include(if:$includeIssueLastEditedAt)" json:"last_edited_at"`
	Locked                  bool                                 `graphql:"locked @include(if:$includeIssueLocked)" json:"locked"`
	Milestone               Milestone                            `graphql:"milestone @include(if:$includeIssueMilestone)" json:"milestone"`
	PublishedAt             NullableTime                         `graphql:"publishedAt @include(if:$includeIssuePublishedAt)" json:"published_at"`
	State                   githubv4.IssueState                  `graphql:"state @include(if:$includeIssueState)" json:"state"`
	StateReason             githubv4.IssueStateReason            `graphql:"stateReason @include(if:$includeIssueStateReason)" json:"state_reason"`
	Title                   string                               `graphql:"title @include(if:$includeIssueTitle)" json:"title"`
	UpdatedAt               NullableTime                         `graphql:"updatedAt @include(if:$includeIssueUpdatedAt)" json:"updated_at"`
	Url                     string                               `graphql:"url @include(if:$includeIssueUrl)" json:"url"`
	UserCanClose            bool                                 `graphql:"userCanClose: viewerCanClose @include(if:$includeIssueViewer)" json:"user_can_close"`
	UserCanReact            bool                                 `graphql:"userCanReact: viewerCanReact @include(if:$includeIssueViewer)" json:"user_can_react"`
	UserCanReopen           bool                                 `graphql:"userCanReopen: viewerCanReopen @include(if:$includeIssueViewer)" json:"user_can_reopen"`
	UserCanSubscribe        bool                                 `graphql:"userCanSubscribe: viewerCanSubscribe @include(if:$includeIssueViewer)" json:"user_can_subscribe"`
	UserCanUpdate           bool                                 `graphql:"userCanUpdate: viewerCanUpdate @include(if:$includeIssueViewer)" json:"user_can_update"`
	UserCannotUpdateReasons []githubv4.CommentCannotUpdateReason `` /* 127-byte string literal not displayed */
	UserDidAuthor           bool                                 `graphql:"userDidAuthor: viewerDidAuthor @include(if:$includeIssueViewer)" json:"user_did_author"`
	UserSubscription        githubv4.SubscriptionState           `graphql:"userSubscription: viewerSubscription @include(if:$includeIssueViewer)" json:"user_subscription"`
	Comments                Count                                `graphql:"comments @include(if:$includeIssueCommentCount)" json:"comments"`
	Labels                  struct {
		TotalCount int
		Nodes      []Label
	} `graphql:"labels(first: 100) @include(if:$includeIssueLabels)" json:"labels"`
	Repo struct {
		NameWithOwner string `json:"name_with_owner"`
	} `graphql:"repo: repository" json:"repo"`
	Assignees struct {
		TotalCount int
		Nodes      []BaseUser
	} `graphql:"assignees(first: 10) @include(if:$includeIssueAssignees)" json:"assignees"`
}

type IssueComment

type IssueComment struct {
	Id                  int                                  `graphql:"id: databaseId @include(if:$includeIssueCommentId)" json:"id"`
	NodeId              string                               `graphql:"nodeId: id @include(if:$includeIssueCommentNodeId)" json:"node_id"`
	Author              Actor                                `graphql:"author @include(if:$includeIssueCommentAuthor)" json:"author"`
	AuthorAssociation   githubv4.CommentAuthorAssociation    `graphql:"authorAssociation @include(if:$includeIssueCommentAuthorAssociation)" json:"author_association"`
	Body                string                               `graphql:"body @include(if:$includeIssueCommentBody)" json:"body"`
	BodyText            string                               `graphql:"bodyText @include(if:$includeIssueCommentBodyText)" json:"body_text"`
	CreatedAt           NullableTime                         `graphql:"createdAt @include(if:$includeIssueCommentCreatedAt)" json:"created_at"`
	CreatedViaEmail     bool                                 `graphql:"createdViaEmail @include(if:$includeIssueCommentCreatedViaEmail)" json:"created_via_email"`
	Editor              Actor                                `graphql:"editor @include(if:$includeIssueCommentEditor)" json:"editor"`
	IncludesCreatedEdit bool                                 `graphql:"includesCreatedEdit @include(if:$includeIssueCommentIncludesCreatedEdit)" json:"includes_created_edit"`
	IsMinimized         bool                                 `graphql:"isMinimized @include(if:$includeIssueCommentIsMinimized)" json:"is_minimized"`
	LastEditedAt        NullableTime                         `graphql:"lastEditedAt @include(if:$includeIssueCommentLastEditedAt)" json:"last_edited_at"`
	MinimizedReason     string                               `graphql:"minimizedReason @include(if:$includeIssueCommentMinimizedReason)" json:"minimized_reason"`
	PublishedAt         NullableTime                         `graphql:"publishedAt @include(if:$includeIssueCommentPublishedAt)" json:"published_at"`
	UpdatedAt           NullableTime                         `graphql:"updatedAt @include(if:$includeIssueCommentUpdatedAt)" json:"updated_at"`
	Url                 string                               `graphql:"url @include(if:$includeIssueCommentUrl)" json:"url"`
	CanDelete           bool                                 `graphql:"canDelete: viewerCanDelete @include(if:$includeIssueCommentViewer)" json:"can_delete"`
	CanMinimize         bool                                 `graphql:"canMinimize: viewerCanMinimize @include(if:$includeIssueCommentViewer)" json:"can_minimize"`
	CanReact            bool                                 `graphql:"canReact: viewerCanReact @include(if:$includeIssueCommentViewer)" json:"can_react"`
	CanUpdate           bool                                 `graphql:"canUpdate: viewerCanUpdate @include(if:$includeIssueCommentViewer)" json:"can_update"`
	CannotUpdateReasons []githubv4.CommentCannotUpdateReason `graphql:"cannotUpdateReasons: viewerCannotUpdateReasons @include(if:$includeIssueCommentViewer)" json:"cannot_update_reasons"`
	DidAuthor           bool                                 `graphql:"didAuthor: viewerDidAuthor @include(if:$includeIssueCommentViewer)" json:"did_author"`
}

type IssueTemplate

type IssueTemplate struct {
	About    string `json:"about"`
	Body     string `json:"body"`
	Filename string `json:"filename"`
	Name     string `json:"name"`
	Title    string `json:"title"`
}

type Label added in v0.30.0

type Label struct {
	NodeId      string `graphql:"nodeId: id" json:"node_id"`
	Name        string `json:"name"`
	Description string `json:"description"`
	IsDefault   bool   `json:"is_default"`
	Color       string `json:"color"`
}

type Language

type Language struct {
	Id    githubv4.ID `json:"id"`
	Name  string      `json:"name"`
	Color string      `json:"color"`
}

type License

type License struct {
	Key            string        `json:"key"`
	Name           string        `graphql:"name @include(if:$includeLicenseName)" json:"name"`
	Nickname       string        `graphql:"nickname @include(if:$includeLicenseNickname)" json:"nickname"`
	SpdxId         string        `graphql:"spdxId @include(if:$includeLicenseSpdxId)" json:"spdx_id"`
	Url            string        `graphql:"url @include(if:$includeLicenseUrl)" json:"url"`
	Body           string        `json:"body"`
	Conditions     []LicenseRule `graphql:"conditions @include(if:$includeLicenseConditions)" json:"conditions"`
	Description    string        `graphql:"description @include(if:$includeLicenseDescription)" json:"description"`
	Featured       bool          `graphql:"featured @include(if:$includeLicenseFeatured)" json:"featured"`
	Hidden         bool          `graphql:"hidden @include(if:$includeLicenseHidden)" json:"hidden"`
	Implementation string        `graphql:"implementation @include(if:$includeLicenseImplementation)" json:"implementation"`
	Limitations    []LicenseRule `graphql:"limitations @include(if:$includeLicenseLimitations)" json:"limitations"`
	Permissions    []LicenseRule `graphql:"permissions @include(if:$includeLicensePermissions)" json:"permissions"`
	PseudoLicense  bool          `graphql:"pseudoLicense @include(if:$includeLicensePseudoLicense)" json:"pseudo_license"`
}

type LicenseRule

type LicenseRule struct {
	Description string
	Key         string
	Label       string
}

type MaxFilePathLengthParameters added in v0.42.0

type MaxFilePathLengthParameters struct {
	MaxFilePathLength int `json:"max_file_path_length"`
}

type MaxFileSizeParameters added in v0.42.0

type MaxFileSizeParameters struct {
	MaxFileSize int `json:"max_file_size"`
}

type Milestone

type Milestone struct {
	Closed             bool                    `json:"closed"`
	ClosedAt           NullableTime            `json:"closed_at"`
	CreatedAt          NullableTime            `json:"created_at"`
	Creator            Actor                   `json:"creator"`
	Description        string                  `json:"description"`
	DueOn              NullableTime            `json:"due_on"`
	Number             int                     `json:"number"`
	ProgressPercentage float32                 `json:"progress_percentage"`
	State              githubv4.MilestoneState `json:"state"`
	Title              string                  `json:"title"`
	UpdatedAt          NullableTime            `json:"updated_at"`
	UserCanClose       bool                    `graphql:"userCanClose: viewerCanClose" json:"user_can_close"`
	UserCanReopen      bool                    `graphql:"userCanReopen: viewerCanReopen" json:"user_can_reopen"`
}

type NameLogin

type NameLogin struct {
	Name  string `json:"name"`
	Login string `json:"login"`
}

type NameSlug

type NameSlug struct {
	Name string `json:"name"`
	Slug string `json:"slug"`
}

type NullableDate added in v1.10.1

type NullableDate struct {
	time.Time
}

NullableDate wraps time.Time to support unmarshalling the GraphQL `Date` scalar (e.g. "2024-08-11"), which does not include a time-of-day or timezone component like `DateTime`/`ISO8601DateTime` scalars do.

func (NullableDate) MarshalJSON added in v1.10.1

func (d NullableDate) MarshalJSON() ([]byte, error)

func (*NullableDate) UnmarshalJSON added in v1.10.1

func (d *NullableDate) UnmarshalJSON(data []byte) error

type NullableTime

type NullableTime struct {
	time.Time
}

func (NullableTime) MarshalJSON

func (t NullableTime) MarshalJSON() ([]byte, error)

type Organization

type Organization struct {
	BasicOrganization
	AnnouncementBanner                     AnnouncementBannerInfo       `graphql:"announcementBanner @include(if:$includeAnnouncementBanner)" json:"announcement_banner"`
	AnyPinnableItems                       bool                         `graphql:"anyPinnableItems @include(if:$includeAnyPinnableItems)" json:"any_pinnable_items"`
	AvatarUrl                              string                       `graphql:"avatarUrl @include(if:$includeAvatarUrl)" json:"avatar_url"`
	EstimatedNextSponsorsPayoutInCents     int                          `` /* 147-byte string literal not displayed */
	HasSponsorsListing                     bool                         `graphql:"hasSponsorsListing @include(if:$includeHasSponsorsListing)" json:"has_sponsors_listing"`
	InteractionAbility                     RepositoryInteractionAbility `graphql:"interactionAbility @include(if:$includeInteractionAbility)" json:"interaction_ability"`
	IsSponsoringYou                        bool                         `graphql:"isSponsoringYou: isSponsoringViewer @include(if:$includeIsSponsoringYou)" json:"is_sponsoring_you"`
	IsVerified                             bool                         `graphql:"isVerified @include(if:$includeIsVerified)" json:"is_verified"`
	Location                               string                       `graphql:"location @include(if:$includeLocation)" json:"location"`
	MonthlyEstimatedSponsorsIncomeInCents  int                          `` /* 156-byte string literal not displayed */
	NewTeamUrl                             string                       `graphql:"newTeamUrl @include(if:$includeNewTeamUrl)" json:"new_team_url"`
	PinnedItemsRemaining                   int                          `graphql:"pinnedItemsRemaining @include(if:$includePinnedItemsRemaining)" json:"pinned_items_remaining"`
	ProjectsUrl                            string                       `graphql:"projectsUrl @include(if:$includeProjectsUrl)" json:"projects_url"`
	SamlIdentityProvider                   OrganizationIdentityProvider `graphql:"samlIdentityProvider @include(if:$includeSamlIdentityProvider)" json:"saml_identity_provider"`
	SponsorsListing                        SponsorsListing              `graphql:"sponsorsListing @include(if:$includeSponsorsListing)" json:"sponsors_listing"`
	TeamsUrl                               string                       `graphql:"teamsUrl @include(if:$includeTeamsUrl)" json:"teams_url"`
	TotalSponsorshipAmountAsSponsorInCents int                          `` /* 160-byte string literal not displayed */
	TwitterUsername                        string                       `graphql:"twitterUsername @include(if:$includeTwitterUsername)" json:"twitter_username"`
	CanAdminister                          bool                         `graphql:"canAdminister: viewerCanAdminister @include(if:$includeOrgViewer)" json:"can_administer"`
	CanChangedPinnedItems                  bool                         `graphql:"canChangedPinnedItems: viewerCanChangePinnedItems @include(if:$includeOrgViewer)" json:"can_changed_pinned_items"`
	CanCreateProjects                      bool                         `graphql:"canCreateProjects: viewerCanCreateProjects @include(if:$includeOrgViewer)" json:"can_create_projects"`
	CanCreateRepositories                  bool                         `graphql:"canCreateRepositories: viewerCanCreateRepositories @include(if:$includeOrgViewer)" json:"can_create_repositories"`
	CanCreateTeams                         bool                         `graphql:"canCreateTeams: viewerCanCreateTeams @include(if:$includeOrgViewer)" json:"can_create_teams"`
	CanSponsor                             bool                         `graphql:"canSponsor: viewerCanSponsor @include(if:$includeOrgViewer)" json:"can_sponsor"`
	IsAMember                              bool                         `graphql:"isAMember: viewerIsAMember @include(if:$includeIsAMember)" json:"is_a_member"`
	IsFollowing                            bool                         `graphql:"isFollowing: viewerIsFollowing @include(if:$includeIsFollowing)" json:"is_following"`
	IsSponsoring                           bool                         `graphql:"isSponsoring: viewerIsSponsoring @include(if:$includeIsSponsoring)" json:"is_sponsoring"`
	WebsiteUrl                             string                       `graphql:"websiteUrl @include(if:$includeWebsiteUrl)" json:"website_url"`
}

type OrganizationExternalIdentity added in v0.29.0

type OrganizationExternalIdentity struct {
	Guid                   string               `graphql:"guid @include(if:$includeOrgExternalIdentityGuid)" json:"guid"`
	User                   BasicUser            `graphql:"user @include(if:$includeOrgExternalIdentityUser)" json:"user"`
	SamlIdentity           externalIdentitySaml `graphql:"samlIdentity @include(if:$includeOrgExternalIdentitySamlIdentity)" json:"saml_identity,omitempty"`
	ScimIdentity           externalIdentityBase `graphql:"scimIdentity @include(if:$includeOrgExternalIdentityScimIdentity)" json:"scim_identity,omitempty"`
	OrganizationInvitation struct {
		CreatedAt      NullableTime                        `json:"created_at"`
		Email          string                              `json:"email"`
		InvitationType githubv4.OrganizationInvitationType `json:"invitation_type"`
		Invitee        BasicUser                           `json:"invitee"`
		Inviter        BasicUser                           `json:"inviter"`
		Organization   BasicOrganization                   `json:"organization"`
		Role           githubv4.OrganizationInvitationRole `json:"role"`
	} `` /* 126-byte string literal not displayed */
}

type OrganizationIdentityProvider

type OrganizationIdentityProvider struct {
	DigestMethod    string `json:"digest_method"`
	Issuer          string `json:"issuer"`
	SignatureMethod string `json:"signature_method"`
	SsoUrl          string `json:"sso_url"`
}

type OrganizationWithCounts

type OrganizationWithCounts struct {
	Organization
	MembersWithRole     Count `graphql:"membersWithRole @include(if:$includeMembersWithRole)" json:"members_with_role"`
	Packages            Count `graphql:"packages @include(if:$includePackages)" json:"packages"`
	PinnableItems       Count `graphql:"pinnableItems @include(if:$includePinnableItems)" json:"pinnable_items"`
	PinnedItems         Count `graphql:"pinnedItems @include(if:$includePinnedItems)" json:"pinned_items"`
	ProjectsV2          Count `graphql:"projectsV2 @include(if:$includeProjectsV2)" json:"projects_v2"`
	Sponsoring          Count `graphql:"sponsoring @include(if:$includeSponsoring)" json:"sponsoring"`
	Sponsors            Count `graphql:"sponsors @include(if:$includeSponsors)" json:"sponsors"`
	Teams               Count `graphql:"teams @include(if:$includeTeams)" json:"teams"`
	PrivateRepositories Count `` /* 130-byte string literal not displayed */
	PublicRepositories  Count `` /* 126-byte string literal not displayed */
	Repositories        struct {
		TotalCount     int `json:"total_count"`
		TotalDiskUsage int `json:"total_disk_usage"`
	} `graphql:"repositories @include(if:$includeRepositories)" json:"repositories"`
}

type OrganizationWithOwnerProperties

type OrganizationWithOwnerProperties struct {
	Organization
	IpAllowListEnabledSetting                     githubv4.IpAllowListEnabledSettingValue                 `json:"ip_allow_list_enabled_setting"`
	IpAllowListForInstalledAppsEnabledSetting     githubv4.IpAllowListForInstalledAppsEnabledSettingValue `json:"ip_allow_list_for_installed_apps_enabled_setting"`
	MembersCanForkPrivateRepositories             bool                                                    `json:"members_can_fork_private_repositories"`
	OrganizationBillingEmail                      string                                                  `json:"organization_billing_email"`
	NotificationDeliveryRestrictionEnabledSetting githubv4.NotificationRestrictionSettingValue            `json:"notification_delivery_restriction_enabled_setting"`
	RequiresTwoFactorAuthentication               bool                                                    `json:"requires_two_factor_authentication"`
	WebCommitSignoffRequired                      bool                                                    `json:"web_commit_signoff_required"`
}

type OrganizationWithOwnerPropertiesAndCounts

type OrganizationWithOwnerPropertiesAndCounts struct {
	OrganizationWithOwnerProperties
	MembersWithRole     Count `json:"members_with_role"`
	Packages            Count `json:"packages"`
	PinnableItems       Count `json:"pinnable_items"`
	PinnedItems         Count `json:"pinned_items"`
	Projects            Count `json:"projects"`
	ProjectsV2          Count `json:"projects_v2"`
	Sponsoring          Count `json:"sponsoring"`
	Sponsors            Count `json:"sponsors"`
	Teams               Count `json:"teams"`
	PrivateRepositories Count `graphql:"privateRepositories: repositories(privacy: PRIVATE)" json:"private_repositories"`
	PublicRepositories  Count `graphql:"publicRepositories: repositories(privacy: PUBLIC)" json:"public_repositories"`
	Repositories        struct {
		TotalCount     int `json:"total_count"`
		TotalDiskUsage int `json:"total_disk_usage"`
	} `json:"repositories"`
}

type PageInfo

type PageInfo struct {
	EndCursor   githubv4.String
	HasNextPage bool
}

PageInfo returns EndCursor and HasNextPage to facilitate paging.

type Parameters added in v0.42.0

type Parameters struct {
	Type                               string                             `graphql:"__typename"`
	PullRequestParameters              PullRequestParameters              `graphql:"... on PullRequestParameters"`
	CodeScanningParameters             CodeScanningParameters             `graphql:"... on CodeScanningParameters"`
	CommitAuthorEmailPatternParameters CommitAuthorEmailPatternParameters `graphql:"... on CommitAuthorEmailPatternParameters"`
	CommitMessagePatternParameters     CommitMessagePatternParameters     `graphql:"... on CommitMessagePatternParameters"`
	CommitterEmailPatternParameters    CommitterEmailPatternParameters    `graphql:"... on CommitterEmailPatternParameters"`
	FileExtensionRestrictionParameters FileExtensionRestrictionParameters `graphql:"... on FileExtensionRestrictionParameters"`
	FilePathRestrictionParameters      FilePathRestrictionParameters      `graphql:"... on FilePathRestrictionParameters"`
	MaxFilePathLengthParameters        MaxFilePathLengthParameters        `graphql:"... on MaxFilePathLengthParameters"`
	MaxFileSizeParameters              MaxFileSizeParameters              `graphql:"... on MaxFileSizeParameters"`
	RequiredDeploymentsParameters      RequiredDeploymentsParameters      `graphql:"... on RequiredDeploymentsParameters"`
	RequiredStatusChecksParameters     RequiredStatusChecksParameters     `graphql:"... on RequiredStatusChecksParameters"`
	TagNamePatternParameters           TagNamePatternParameters           `graphql:"... on TagNamePatternParameters"`
	UpdateParameters                   UpdateParameters                   `graphql:"... on UpdateParameters"`
	WorkflowsParameters                WorkflowsParameters                `graphql:"... on WorkflowsParameters"`
}

type ProjectV2 added in v1.11.0

type ProjectV2 struct {
	Id                 string         `graphql:"id: fullDatabaseId @include(if:$includeId)" json:"id"`
	NodeId             string         `graphql:"nodeId: id @include(if:$includeNodeId)" json:"node_id"`
	Number             int            `json:"number"`
	Owner              ProjectV2Owner `graphql:"owner @include(if:$includeOwner)" json:"owner,omitempty"`
	Creator            Actor          `graphql:"creator @include(if:$includeCreator)" json:"creator,omitempty"`
	Title              string         `graphql:"title @include(if:$includeTitle)" json:"title"`
	Description        string         `graphql:"description: shortDescription @include(if:$includeDescription)" json:"description"`
	IsPublic           bool           `graphql:"public @include(if:$includeIsPublic)" json:"public"`
	ClosedAt           NullableTime   `graphql:"closedAt @include(if:$includeClosedAt)" json:"closed_at"`
	CreatedAt          NullableTime   `graphql:"createdAt @include(if:$includeCreatedAt)" json:"created_at"`
	UpdatedAt          NullableTime   `graphql:"updatedAt @include(if:$includeUpdatedAt)" json:"updated_at"`
	Closed             bool           `graphql:"closed @include(if:$includeState)" json:"closed"`
	LatestStatusUpdate struct {
		Nodes []ProjectV2StatusUpdate
	} `graphql:"statusUpdates(first: 1) @include(if:$includeLatestStatusUpdate)" json:"latest_status_update"`
	IsTemplate   bool   `graphql:"template @include(if:$includeIsTemplate)" json:"template"`
	Readme       string `graphql:"readme @include(if:$includeReadme)" json:"readme"`
	ResourcePath string `graphql:"resourcePath @include(if:$includeResourcePath)" json:"resource_path"`
	Url          string `graphql:"url @include(if:$includeUrl)" json:"url"`
	Repositories struct {
		TotalCount int
		Nodes      []struct {
			NameWithOwner string `json:"name_with_owner"`
		}
	} `graphql:"repositories(first: 100) @include(if:$includeRepositories)" json:"repositories"`
	Teams struct {
		TotalCount int
		Nodes      []struct {
			Slug string `json:"slug"`
		}
	} `graphql:"teams(first: 100) @include(if:$includeTeams)" json:"teams"`
}

type ProjectV2FieldRef added in v1.11.0

type ProjectV2FieldRef struct {
	Common struct {
		Name     string
		DataType string
	} `graphql:"... on ProjectV2FieldCommon"`
}

type ProjectV2Item added in v1.11.0

type ProjectV2Item struct {
	Id          string                     `graphql:"id: fullDatabaseId" json:"id"`
	NodeId      string                     `graphql:"nodeId: id" json:"node_id"`
	Type        githubv4.ProjectV2ItemType `json:"type"`
	IsArchived  bool                       `json:"is_archived"`
	CreatedAt   NullableTime               `json:"created_at"`
	UpdatedAt   NullableTime               `json:"updated_at"`
	Creator     Actor                      `graphql:"creator @include(if:$includeItemCreator)" json:"creator"`
	Content     ProjectV2ItemContent       `graphql:"content @include(if:$includeItemContent)" json:"content"`
	FieldValues struct {
		Nodes []ProjectV2ItemFieldValue
	} `graphql:"fieldValues(first: 50) @include(if:$includeItemFieldValues)" json:"field_values"`
}

type ProjectV2ItemArchivedState added in v1.11.0

type ProjectV2ItemArchivedState string

ProjectV2ItemArchivedState isn't defined in the pinned githubv4 version. The type name must match the GraphQL enum name, since githubv4 uses it when declaring query variables.

const (
	ProjectV2ItemArchivedStateArchived    ProjectV2ItemArchivedState = "ARCHIVED"
	ProjectV2ItemArchivedStateNotArchived ProjectV2ItemArchivedState = "NOT_ARCHIVED"
)

type ProjectV2ItemAssignees added in v1.11.0

type ProjectV2ItemAssignees struct {
	TotalCount int
	Nodes      []BasicUser
}

type ProjectV2ItemContent added in v1.11.0

type ProjectV2ItemContent struct {
	Issue struct {
		Id         int    `graphql:"id: databaseId"`
		NodeId     string `graphql:"nodeId: id"`
		Number     int
		Title      string
		Body       string `graphql:"body @include(if:$includeItemBody)"`
		Url        string
		State      githubv4.IssueState `graphql:"issueState: state"`
		Closed     bool
		ClosedAt   NullableTime
		CreatedAt  NullableTime
		UpdatedAt  NullableTime
		Author     Actor `graphql:"author @include(if:$includeItemAuthor)"`
		Repository struct {
			NameWithOwner string
		}
		Assignees ProjectV2ItemAssignees `graphql:"assignees(first: 10) @include(if:$includeItemAssignees)"`
		Labels    ProjectV2ItemLabels    `graphql:"labels(first: 100) @include(if:$includeItemLabels)"`
		Milestone Milestone              `graphql:"milestone @include(if:$includeItemMilestone)"`
	} `graphql:"... on Issue"`
	PullRequest struct {
		Id         int    `graphql:"id: databaseId"`
		NodeId     string `graphql:"nodeId: id"`
		Number     int
		Title      string
		Body       string `graphql:"body @include(if:$includeItemBody)"`
		Url        string
		State      githubv4.PullRequestState `graphql:"pullRequestState: state"`
		Closed     bool
		ClosedAt   NullableTime
		CreatedAt  NullableTime
		UpdatedAt  NullableTime
		Author     Actor `graphql:"author @include(if:$includeItemAuthor)"`
		Repository struct {
			NameWithOwner string
		}
		Assignees ProjectV2ItemAssignees `graphql:"assignees(first: 10) @include(if:$includeItemAssignees)"`
		Labels    ProjectV2ItemLabels    `graphql:"labels(first: 100) @include(if:$includeItemLabels)"`
		Milestone Milestone              `graphql:"milestone @include(if:$includeItemMilestone)"`
	} `graphql:"... on PullRequest"`
	DraftIssue struct {
		NodeId    string `graphql:"nodeId: id"`
		Title     string
		Body      string `graphql:"body @include(if:$includeItemBody)"`
		CreatedAt NullableTime
		UpdatedAt NullableTime
		Creator   Actor                  `graphql:"creator @include(if:$includeItemAuthor)"`
		Assignees ProjectV2ItemAssignees `graphql:"assignees(first: 10) @include(if:$includeItemAssignees)"`
	} `graphql:"... on DraftIssue"`
}

ProjectV2ItemContent holds the item's content, one struct per possible type. The GraphQL client fills every fragment that shares a JSON key with the response, so read the fragment that matches the item's type.

type ProjectV2ItemFieldValue added in v1.11.0

type ProjectV2ItemFieldValue struct {
	TypeName string `graphql:"typeName: __typename"`
	Text     struct {
		Field ProjectV2FieldRef
		Text  string
	} `graphql:"... on ProjectV2ItemFieldTextValue"`
	Number struct {
		Field  ProjectV2FieldRef
		Number float64
	} `graphql:"... on ProjectV2ItemFieldNumberValue"`
	Date struct {
		Field ProjectV2FieldRef
		Date  string
	} `graphql:"... on ProjectV2ItemFieldDateValue"`
	SingleSelect struct {
		Field ProjectV2FieldRef
		Name  string
	} `graphql:"... on ProjectV2ItemFieldSingleSelectValue"`
	MultiSelect struct {
		Field   ProjectV2FieldRef
		Options []struct {
			Name string
		}
	} `graphql:"... on ProjectV2ItemFieldMultiSelectValue"`
	Iteration struct {
		Field       ProjectV2FieldRef
		Title       string
		StartDate   string
		Duration    int
		IterationId string
	} `graphql:"... on ProjectV2ItemFieldIterationValue"`
	IssueField struct {
		Field           ProjectV2FieldRef
		IssueFieldValue struct {
			Text struct {
				StringValue string `graphql:"stringValue: value"`
			} `graphql:"... on IssueFieldTextValue"`
			Date struct {
				StringValue string `graphql:"stringValue: value"`
			} `graphql:"... on IssueFieldDateValue"`
			SingleSelect struct {
				StringValue string `graphql:"stringValue: value"`
			} `graphql:"... on IssueFieldSingleSelectValue"`
			MultiSelect struct {
				StringValue string `graphql:"stringValue: value"`
			} `graphql:"... on IssueFieldMultiSelectValue"`
			Number struct {
				NumberValue *float64 `graphql:"numberValue: value"`
			} `graphql:"... on IssueFieldNumberValue"`
		}
	} `graphql:"... on ProjectV2ItemIssueFieldValue"`
}

ProjectV2ItemFieldValue only selects the value types of custom fields. Built-in fields such as Assignees and Labels come back with just their type name.

type ProjectV2ItemLabels added in v1.11.0

type ProjectV2ItemLabels struct {
	Nodes []Label
}

type ProjectV2Owner added in v1.11.0

type ProjectV2Owner struct {
	TypeName     string `graphql:"type: __typename" json:"-"`
	Organization struct {
		Id    int    `graphql:"id: databaseId" json:"id"`
		Login string `json:"login"`
	} `graphql:"... on Organization" json:"-"`
	User struct {
		Id    int    `graphql:"id: databaseId" json:"id"`
		Login string `json:"login"`
	} `graphql:"... on User" json:"-"`
}

ProjectV2Owner represents the owner of a project, which can be an Organization or User.

func (ProjectV2Owner) MarshalJSON added in v1.11.0

func (o ProjectV2Owner) MarshalJSON() ([]byte, error)

type ProjectV2StatusUpdate added in v1.11.0

type ProjectV2StatusUpdate struct {
	Id         string       `graphql:"id: fullDatabaseId" json:"id"`
	NodeId     string       `graphql:"nodeId: id" json:"node_id"`
	Status     string       `json:"status"`
	Body       string       `json:"body"`
	StartDate  string       `json:"start_date"`
	TargetDate string       `json:"target_date"`
	CreatedAt  NullableTime `json:"created_at"`
	UpdatedAt  NullableTime `json:"updated_at"`
	Creator    Actor        `json:"creator"`
}

ProjectV2StatusUpdate represents a single status update on a project.

type PullRequest

type PullRequest struct {
	BasicPullRequest
	BaseRef             *BasicRef                            `graphql:"baseRef @include(if:$includePRBaseRef)" json:"base_ref,omitempty"`
	HeadRef             *BasicRef                            `graphql:"headRef @include(if:$includePRHeadRef)" json:"head_ref,omitempty"`
	MergeCommit         *BasicCommit                         `graphql:"mergeCommit @include(if:$includePRMergeCommit)" json:"merge_commit,omitempty"`
	SuggestedReviewers  []SuggestedReviewer                  `graphql:"suggestedReviewers @include(if:$includePRSuggested)" json:"suggested_reviewers"`
	CanApplySuggestion  bool                                 `graphql:"canApplySuggestion:viewerCanApplySuggestion @include(if:$includePRViewer)" json:"can_apply_suggestion"`
	CanClose            bool                                 `graphql:"canClose:viewerCanClose @include(if:$includePRViewer)" json:"can_close"`
	CanDeleteHeadRef    bool                                 `graphql:"canDeleteHeadRef:viewerCanDeleteHeadRef @include(if:$includePRViewer)" json:"can_delete_head_ref"`
	CanDisableAutoMerge bool                                 `graphql:"canDisableAutoMerge:viewerCanDisableAutoMerge @include(if:$includePRViewer)" json:"can_disable_auto_merge"`
	CanEditFiles        bool                                 `graphql:"canEditFiles:viewerCanEditFiles @include(if:$includePRViewer)" json:"can_edit_files"`
	CanEnableAutoMerge  bool                                 `graphql:"canEnableAutoMerge:viewerCanEnableAutoMerge @include(if:$includePRViewer)" json:"can_enable_auto_merge"`
	CanMergeAsAdmin     bool                                 `graphql:"canMergeAsAdmin:viewerCanMergeAsAdmin @include(if:$includePRViewer)" json:"can_merge_as_admin"`
	CanReact            bool                                 `graphql:"canReact:viewerCanReact @include(if:$includePRViewer)" json:"can_react"`
	CanReopen           bool                                 `graphql:"canReopen:viewerCanReopen @include(if:$includePRViewer)" json:"can_reopen"`
	CanSubscribe        bool                                 `graphql:"canSubscribe:viewerCanSubscribe @include(if:$includePRViewer)" json:"can_subscribe"`
	CanUpdate           bool                                 `graphql:"canUpdate:viewerCanUpdate @include(if:$includePRViewer)" json:"can_update"`
	CanUpdateBranch     bool                                 `graphql:"canUpdateBranch:viewerCanUpdateBranch @include(if:$includePRViewer)" json:"can_update_branch"`
	DidAuthor           bool                                 `graphql:"didAuthor:viewerDidAuthor @include(if:$includePRViewer)" json:"did_author"`
	CannotUpdateReasons []githubv4.CommentCannotUpdateReason `graphql:"cannotUpdateReasons: viewerCannotUpdateReasons @include(if:$includePRViewer)" json:"cannot_update_reasons"`
	Subscription        githubv4.SubscriptionState           `graphql:"subscription: viewerSubscription @include(if:$includePRViewer)" json:"subscription"`

	// Counts
	Commits        Count `graphql:"commits @include(if:$includePRCommitCount)" json:"commits"`
	ReviewRequests Count `graphql:"reviewRequests @include(if:$includePRReviewRequestCount)" json:"review_requests"`
	Reviews        Count `graphql:"reviews @include(if:$includePRReviewCount)" json:"reviews"`
	Labels         struct {
		TotalCount int
		Nodes      []Label
	} `graphql:"labels(first: 100) @include(if:$includePRLabels)" json:"labels"`
	Assignees struct {
		TotalCount int
		Nodes      []BaseUser
	} `graphql:"assignees(first: 10) @include(if:$includePRAssignees)" json:"assignees"`
}

type PullRequestParameters added in v0.42.0

type PullRequestParameters struct {
	DismissStaleReviewsOnPush      bool `json:"dismiss_stale_reviews_on_push"`
	RequireCodeOwnerReview         bool `json:"require_code_owner_review"`
	RequireLastPushApproval        bool `json:"require_last_push_approval"`
	RequiredApprovingReviewCount   int  `json:"required_approving_review_count"`
	RequiredReviewThreadResolution bool `json:"required_review_thread_resolution"`
}

type PullRequestReview added in v0.31.0

type PullRequestReview struct {
	Id                        int                               `graphql:"id: databaseId @include(if:$includePRReviewId)" json:"id"`
	NodeId                    string                            `graphql:"nodeId: id @include(if:$includePRReviewNodeId)" json:"node_id"`
	Author                    Actor                             `graphql:"author @include(if:$includePRReviewAuthor)" json:"author"`
	AuthorAssociation         githubv4.CommentAuthorAssociation `graphql:"authorAssociation @include(if:$includePRReviewAuthorAssociation)" json:"author_association"`
	AuthorCanPushToRepository bool                              `` /* 127-byte string literal not displayed */
	State                     string                            `graphql:"state @include(if:$includePRReviewState)" json:"state"`
	Body                      string                            `graphql:"body @include(if:$includePRReviewBody)" json:"body"`
	Url                       string                            `graphql:"url @include(if:$includePRReviewUrl)" json:"html_url"`
	SubmittedAt               NullableTime                      `graphql:"submittedAt @include(if:$includePRReviewSubmittedAt)" json:"submitted_at"`
}

type PullRequestTemplate

type PullRequestTemplate struct {
	Filename string `json:"filename"`
	Body     string `json:"body"`
}

type RateLimit

type RateLimit struct {
	Remaining int
	Used      int
	Cost      int
	Limit     int
	ResetAt   time.Time
	NodeCount int
}

type Release

type Release struct {
	Author       BasicUser    `json:"author"`
	CreatedAt    NullableTime `json:"created_at"`
	Description  string       `json:"description"`
	IsDraft      bool         `json:"is_draft"`
	IsLatest     bool         `json:"is_latest"`
	IsPrerelease bool         `json:"is_prerelease"`
	PublishedAt  NullableTime `json:"published_at"`
	Tag          BasicRef     `json:"tag"`
	TagCommit    BasicCommit  `json:"tag_commit"`
	TagName      string       `json:"tag_name"`
	UpdatedAt    NullableTime `json:"updated_at"`
	Url          string       `json:"url"`
	CanReact     bool         `graphql:"canReact: viewerCanReact" json:"can_react"`
	// contains filtered or unexported fields
}

type Repository

type Repository struct {
	AllowUpdateBranch             bool                             `graphql:"allowUpdateBranch @include(if:$includeAllowUpdateBranch)" json:"allow_update_branch"`
	ArchivedAt                    NullableTime                     `graphql:"archivedAt @include(if:$includeArchivedAt)" json:"archived_at"`
	AutoMergeAllowed              bool                             `graphql:"autoMergeAllowed @include(if:$includeAutoMergeAllowed)" json:"auto_merge_allowed"`
	CodeOfConduct                 RepositoryCodeOfConduct          `graphql:"codeOfConduct @include(if:$includeCodeOfConduct)" json:"code_of_conduct"`
	ContactLinks                  []RepositoryContactLink          `graphql:"contactLinks @include(if:$includeContactLinks)" json:"contact_links"`
	CreatedAt                     NullableTime                     `graphql:"createdAt @include(if:$includeCreatedAt)" json:"created_at"`
	DefaultBranchRef              BasicRefWithBranchProtectionRule `graphql:"defaultBranchRef @include(if:$includeDefaultBranchRef)" json:"default_branch_ref"`
	DeleteBranchOnMerge           bool                             `graphql:"deleteBranchOnMerge @include(if:$includeDeleteBranchOnMerge)" json:"delete_branch_on_merge"`
	Description                   string                           `graphql:"description @include(if:$includeDescription)" json:"description"`
	DiskUsage                     int                              `graphql:"diskUsage @include(if:$includeDiskUsage)" json:"disk_usage "`
	ForkCount                     int                              `graphql:"forkCount @include(if:$includeForkCount)" json:"fork_count"`
	ForkingAllowed                bool                             `graphql:"forkingAllowed @include(if:$includeForkingAllowed)" json:"forking_allowed"`
	FundingLinks                  []RepositoryFundingLinks         `graphql:"fundingLinks @include(if:$includeFundingLinks)" json:"funding_links"`
	HasDiscussionsEnabled         bool                             `graphql:"hasDiscussionsEnabled @include(if:$includeHasDiscussionsEnabled)" json:"has_discussions_enabled"`
	HasIssuesEnabled              bool                             `graphql:"hasIssuesEnabled @include(if:$includeHasIssuesEnabled)" json:"has_issues_enabled"`
	HasProjectsEnabled            bool                             `graphql:"hasProjectsEnabled @include(if:$includeHasProjectsEnabled)" json:"has_projects_enabled"`
	HasVulnerabilityAlertsEnabled bool                             `` /* 130-byte string literal not displayed */
	HasWikiEnabled                bool                             `graphql:"hasWikiEnabled @include(if:$includeHasWikiEnabled)" json:"has_wiki_enabled"`
	HomepageUrl                   string                           `graphql:"homepageUrl @include(if:$includeHomepageUrl)" json:"homepage_url"`
	InteractionAbility            RepositoryInteractionAbility     `graphql:"interactionAbility @include(if:$includeUserInteractionAbility)" json:"interaction_ability,omitempty"`
	IsArchived                    bool                             `graphql:"isArchived @include(if:$includeIsArchived)" json:"is_archived"`
	IsBlankIssuesEnabled          bool                             `graphql:"isBlankIssuesEnabled @include(if:$includeIsBlankIssuesEnabled)" json:"is_blank_issues_enabled"`
	IsDisabled                    bool                             `graphql:"isDisabled @include(if:$includeIsDisabled)" json:"is_disabled"`
	IsEmpty                       bool                             `graphql:"isEmpty @include(if:$includeIsEmpty)" json:"is_empty"`
	IsFork                        bool                             `graphql:"isFork @include(if:$includeIsFork)" json:"is_fork"`
	IsInOrganization              bool                             `graphql:"isInOrganization @include(if:$includeIsInOrganization)" json:"is_in_organization"`
	IsLocked                      bool                             `graphql:"isLocked @include(if:$includeIsLocked)" json:"is_locked"`
	IsMirror                      bool                             `graphql:"isMirror @include(if:$includeIsMirror)" json:"is_mirror"`
	IsPrivate                     bool                             `graphql:"isPrivate @include(if:$includeIsPrivate)" json:"is_private"`
	IsSecurityPolicyEnabled       bool                             `graphql:"isSecurityPolicyEnabled @include(if:$includeIsSecurityPolicyEnabled)" json:"is_security_policy_enabled"`
	IsTemplate                    bool                             `graphql:"isTemplate @include(if:$includeIsTemplate)" json:"is_template"`
	IsUserConfigurationRepository bool                             `` /* 130-byte string literal not displayed */
	IssueTemplates                []IssueTemplate                  `graphql:"issueTemplates @include(if:$includeIssueTemplates)" json:"issue_templates"`
	LicenseInfo                   BasicLicense                     `graphql:"licenseInfo @include(if:$includeLicenseInfo)" json:"license_info"`
	LockReason                    githubv4.LockReason              `graphql:"lockReason @include(if:$includeLockReason)" json:"lock_reason"`
	MergeCommitAllowed            bool                             `graphql:"mergeCommitAllowed @include(if:$includeMergeCommitAllowed)" json:"merge_commit_allowed"`
	MergeCommitMessage            githubv4.MergeCommitMessage      `graphql:"mergeCommitMessage @include(if:$includeMergeCommitMessage)" json:"merge_commit_message"`
	MergeCommitTitle              githubv4.MergeCommitTitle        `graphql:"mergeCommitTitle @include(if:$includeMergeCommitTitle)" json:"merge_commit_title"`
	MirrorUrl                     string                           `graphql:"mirrorUrl @include(if:$includeMirrorUrl)" json:"mirror_url"`
	NameWithOwner                 string                           `json:"name_with_owner"`
	OpenGraphImageUrl             string                           `graphql:"openGraphImageUrl @include(if:$includeOpenGraphImageUrl)" json:"open_graph_image_url"`
	Owner                         struct {
		Login string `json:"login"`
	} `json:"owner"`
	PrimaryLanguage                Language                                `graphql:"primaryLanguage @include(if:$includePrimaryLanguage)" json:"primary_language"`
	ProjectsUrl                    string                                  `graphql:"projectsUrl @include(if:$includeProjectsUrl)" json:"projects_url"`
	PullRequestTemplates           []PullRequestTemplate                   `graphql:"pullRequestTemplates @include(if:$includePullRequestTemplates)" json:"pull_request_templates"`
	PushedAt                       NullableTime                            `graphql:"pushedAt @include(if:$includePushedAt)" json:"pushed_at"`
	RebaseMergeAllowed             bool                                    `graphql:"rebaseMergeAllowed @include(if:$includeRebaseMergeAllowed)" json:"rebase_merge_allowed"`
	SecurityPolicyUrl              string                                  `graphql:"securityPolicyUrl @include(if:$includeSecurityPolicyUrl)" json:"security_policy_url"`
	SquashMergeAllowed             bool                                    `graphql:"squashMergeAllowed @include(if:$includeSquashMergeAllowed)" json:"squash_merge_allowed"`
	SquashMergeCommitMessage       githubv4.SquashMergeCommitMessage       `graphql:"squashMergeCommitMessage @include(if:$includeSquashMergeCommitMessage)" json:"squash_merge_commit_message"`
	SquashMergeCommitTitle         githubv4.SquashMergeCommitTitle         `graphql:"squashMergeCommitTitle @include(if:$includeSquashMergeCommitTitle)" json:"squash_merge_commit_title"`
	SshUrl                         string                                  `graphql:"sshUrl @include(if:$includeSshUrl)" json:"ssh_url"`
	StargazerCount                 int                                     `graphql:"stargazerCount @include(if:$includeStargazerCount)" json:"stargazer_count"`
	UpdatedAt                      NullableTime                            `graphql:"updatedAt @include(if:$includeUpdatedAt)" json:"updated_at"`
	Url                            string                                  `graphql:"url @include(if:$includeUrl)" json:"url"`
	UsesCustomOpenGraphImage       bool                                    `graphql:"usesCustomOpenGraphImage @include(if:$includeUsesCustomOpenGraphImage)" json:"uses_custom_open_graph_image"`
	CanAdminister                  bool                                    `graphql:"canAdminister: viewerCanAdminister @include(if:$includeCanAdminister)" json:"can_administer"`
	CanCreateProjects              bool                                    `graphql:"canCreateProjects: viewerCanCreateProjects @include(if:$includeCanCreateProjects)" json:"can_create_projects"`
	CanSubscribe                   bool                                    `graphql:"canSubscribe: viewerCanSubscribe @include(if:$includeCanSubscribe)" json:"can_subscribe"`
	CanUpdateTopics                bool                                    `graphql:"canUpdateTopics: viewerCanUpdateTopics @include(if:$includeCanUpdateTopics)" json:"can_update_topics"`
	HasStarred                     bool                                    `graphql:"hasStarred: viewerHasStarred @include(if:$includeHasStarred)" json:"has_starred"`
	YourPermission                 githubv4.RepositoryPermission           `graphql:"yourPermission: viewerPermission  @include(if:$includeYourPermission)" json:"your_permission"`
	PossibleCommitEmails           []string                                `` /* 130-byte string literal not displayed */
	Subscription                   githubv4.SubscriptionState              `graphql:"subscription: viewerSubscription @include(if:$includeSubscription)" json:"subscription"`
	Visibility                     githubv4.RepositoryVisibility           `graphql:"visibility @include(if:$includeVisibility)" json:"visibility"`
	WebCommitSignoffRequired       bool                                    `graphql:"webCommitSignoffRequired @include(if:$includeWebCommitSignoffRequired)" json:"web_commit_signoff_required"`
	RepositoryTopics               Count                                   `graphql:"repositoryTopics @include(if:$includeRepositoryTopics)" json:"repository_topics"`
	RepositoryCustomPropertyValues RepositoryCustomPropertyValueConnection `` /* 145-byte string literal not displayed */
	OpenIssues                     Count                                   `graphql:"issues(states: OPEN) @include(if:$includeOpenIssues)" json:"open_issues"`
	Watchers                       Count                                   `graphql:"watchers @include(if:$includeWatchers)" json:"watchers"`
	// contains filtered or unexported fields
}

type RepositoryCodeOfConduct

type RepositoryCodeOfConduct struct {
	Id   githubv4.ID `json:"-"`
	Key  string      `json:"key"`
	Name string      `json:"name"`
	Body string      `json:"body"`
	Url  string      `json:"url"`
}
type RepositoryContactLink struct {
	Name  string `json:"name"`
	About string `json:"about"`
	Url   string `json:"url"`
}

type RepositoryCustomPropertyValue added in v1.9.0

type RepositoryCustomPropertyValue struct {
	PropertyName string      `json:"property_name"`
	Value        interface{} `json:"value"`
}

type RepositoryCustomPropertyValueConnection added in v1.9.0

type RepositoryCustomPropertyValueConnection struct {
	Nodes []RepositoryCustomPropertyValue `json:"nodes"`
}
type RepositoryFundingLinks struct {
	Url      string                   `json:"url"`
	Platform githubv4.FundingPlatform `json:"platform"`
}

type RepositoryInteractionAbility

type RepositoryInteractionAbility struct {
	ExpiresAt NullableTime `json:"expires_at,omitempty"`
	Limit     string       `json:"repository_interaction_limit,omitempty"`
	Origin    string       `json:"repository_interaction_limit_origin,omitempty"`
}

type RepositoryVulnerabilityAlert added in v0.32.0

type RepositoryVulnerabilityAlert struct {
	NodeId                     string                                               `graphql:"nodeId: id @include(if:$includeVulnerabilityAlertNodeId)" json:"node_id"`
	Number                     int                                                  `graphql:"number: number @include(if:$includeVulnerabilityAlertNumber)" json:"number"`
	AutoDismissedAt            NullableTime                                         `graphql:"autoDismissedAt: autoDismissedAt @include(if:$includeVulnerabilityAlertAutoDismissedAt)" json:"auto_dismissed_at"`
	CreatedAt                  NullableTime                                         `graphql:"createdAt: createdAt @include(if:$includeVulnerabilityAlertCreatedAt)" json:"created_at"`
	DependencyScope            githubv4.RepositoryVulnerabilityAlertDependencyScope `graphql:"dependencyScope: dependencyScope @include(if:$includeVulnerabilityAlertDependencyScope)" json:"dependency_scope"`
	DismissComment             string                                               `graphql:"dismissComment: dismissComment @include(if:$includeVulnerabilityAlertDismissComment)" json:"dismiss_comment"`
	DismissReason              string                                               `graphql:"dismissReason: dismissReason @include(if:$includeVulnerabilityAlertDismissReason)" json:"dismiss_reason"`
	DismissedAt                NullableTime                                         `graphql:"dismissedAt: dismissedAt @include(if:$includeVulnerabilityAlertDismissedAt)" json:"dismissed_at"`
	Dismisser                  BasicUser                                            `graphql:"dismisser: dismisser @include(if:$includeVulnerabilityAlertDismisser)" json:"dismisser"`
	FixedAt                    NullableTime                                         `graphql:"fixedAt: fixedAt @include(if:$includeVulnerabilityAlertFixedAt)" json:"fixed_at"`
	State                      githubv4.RepositoryVulnerabilityAlertState           `graphql:"state: state @include(if:$includeVulnerabilityAlertState)" json:"state"`
	SecurityAdvisory           SecurityAdvisory                                     `graphql:"securityAdvisory: securityAdvisory @include(if:$includeVulnerabilityAlertSecurityAdvisory)" json:"security_advisory"`
	SecurityVulnerability      SecurityVulnerability                                `` /* 145-byte string literal not displayed */
	VulnerableManifestFilename string                                               `` /* 166-byte string literal not displayed */
	VulnerableManifestPath     string                                               `` /* 150-byte string literal not displayed */
	VulnerableRequirements     string                                               `` /* 149-byte string literal not displayed */
}

type RequiredDeploymentsParameters added in v0.42.0

type RequiredDeploymentsParameters struct {
	RequiredDeploymentEnvironments []string `json:"required_deployment_environments"`
}

type RequiredStatusChecksParameters added in v0.42.0

type RequiredStatusChecksParameters struct {
	RequiredStatusChecks             []StatusCheckConfiguration `json:"required_status_checks"`
	StrictRequiredStatusChecksPolicy bool                       `json:"strict_required_status_checks_policy"`
}

type Rule added in v0.42.0

type Rule struct {
	ID         string     `json:"id"`
	Type       string     `json:"type"`
	Parameters Parameters `json:"parameters"`
}

type Ruleset added in v0.42.0

type Ruleset struct {
	CreatedAt    string        `json:"created_at"`
	DatabaseID   int           `json:"database_id"`
	Enforcement  string        `json:"enforcement"`
	Name         string        `json:"name"`
	ID           string        `json:"id"`
	Rules        []Rule        `json:"rules"`
	BypassActors []BypassActor `json:"bypass_actors"`
	Conditions   Conditions    `json:"conditions"`
}

type SearchIssueResult added in v0.36.0

type SearchIssueResult struct {
	TextMatches []TextMatch
	Node        struct {
		Issue `graphql:"... on Issue"`
	}
}

type SearchPullRequestResult added in v0.36.0

type SearchPullRequestResult struct {
	TextMatches []TextMatch
	Node        struct {
		PullRequest `graphql:"... on PullRequest"`
	}
}

type SearchRepositoryResult added in v0.33.1

type SearchRepositoryResult struct {
	TextMatches []TextMatch
	Node        struct {
		Repository `graphql:"... on Repository"`
	}
}

type SecurityAdvisory added in v0.32.0

type SecurityAdvisory struct {
	Id                     int                                     `graphql:"id: databaseId" json:"id"`
	NodeId                 string                                  `graphql:"nodeId: id" json:"node_id"`
	Classification         githubv4.SecurityAdvisoryClassification `json:"classification"`
	Cvss                   CVSS                                    `json:"cvss"`
	Description            string                                  `json:"description"`
	GhsaId                 string                                  `json:"ghsa_id"`
	Identifiers            []SecurityAdvisoryIdentifier            `json:"identifiers"`
	NotificationsPermalink string                                  `json:"notifications_permalink"`
	Origin                 string                                  `json:"origin"`
	Permalink              string                                  `json:"permalink"`
	PublishedAt            NullableTime                            `json:"published_at"`
	References             []SecurityAdvisoryReference             `json:"references"`
	Severity               githubv4.SecurityAdvisorySeverity       `json:"severity"`
	Summary                string                                  `json:"summary"`
	UpdatedAt              NullableTime                            `json:"updated_at"`
	WithdrawnAt            NullableTime                            `json:"withdrawn_at"`
}

type SecurityAdvisoryIdentifier added in v0.32.0

type SecurityAdvisoryIdentifier struct {
	Type  string `json:"type"`
	Value string `json:"value"`
}

type SecurityAdvisoryPackage added in v0.32.0

type SecurityAdvisoryPackage struct {
	Name      string                             `json:"name"`
	Ecosystem githubv4.SecurityAdvisoryEcosystem `json:"ecosystem"`
}

type SecurityAdvisoryPackageVersion added in v0.32.0

type SecurityAdvisoryPackageVersion struct {
	Identifier string `json:"identifier"`
}

type SecurityAdvisoryReference added in v0.32.0

type SecurityAdvisoryReference struct {
	Url string `json:"url"`
}

type SecurityVulnerability added in v0.32.0

type SecurityVulnerability struct {
	Advisory               SecurityAdvisory                  `json:"advisory"`
	FirstPatchedVersion    SecurityAdvisoryPackageVersion    `json:"first_patched_version"`
	Package                SecurityAdvisoryPackage           `json:"package"`
	Severity               githubv4.SecurityAdvisorySeverity `json:"severity"`
	UpdatedAt              NullableTime                      `json:"updated_at"`
	VulnerableVersionRange string                            `json:"vulnerable_version_range"`
}

type Signature

type Signature struct {
	Email             string `json:"email"`
	IsValid           bool   `json:"is_valid"`
	State             string `json:"state"`
	WasSignedByGitHub bool   `json:"was_signed_by_github"`
	Signer            struct {
		Email string `json:"email"`
		Login string `json:"login"`
	} `json:"signer"`
}

Signature returns information about signatures including the Email, State and validity (IsValid).

type SponsorsGoal

type SponsorsGoal struct {
	Description     string                    `json:"description"`
	PercentComplete int                       `json:"percent_complete"`
	TargetValue     int                       `json:"target_value"`
	Title           string                    `json:"title"`
	Kind            githubv4.SponsorsGoalKind `json:"kind"`
}

type SponsorsListing

type SponsorsListing struct {
	Id                         string               `json:"id,omitempty"`
	ActiveGoal                 SponsorsGoal         `json:"active_goal"`
	ActiveStripeConnectAccount StripeConnectAccount `json:"active_stripe_connect_account"`
	BillingCountryOrRegion     string               `json:"billing_country_or_region"`
	ContactEmailAddress        string               `json:"contact_email_address"`
	CreatedAt                  time.Time            `json:"created_at"`
	DashboardUrl               string               `json:"dashboard_url"`
	FullDescription            string               `json:"full_description"`
	IsPublic                   bool                 `json:"is_public"`
	Name                       string               `json:"name"`
	NextPayoutDate             NullableDate         `json:"next_payout_date"`
	ResidenceCountryOrRegion   string               `json:"residence_country_or_region"`
	ShortDescription           string               `json:"short_description"`
	Slug                       string               `json:"slug"`
	Url                        string               `json:"url"`
}

type StatusCheckConfiguration added in v0.42.0

type StatusCheckConfiguration struct {
	Context       string `json:"context"`
	IntegrationId int    `json:"integration_id"`
}

type StripeConnectAccount

type StripeConnectAccount struct {
	AccountId              string `json:"account_id"`
	BillingCountryOrRegion string `json:"billing_country_or_region"`
	CountryOrRegion        string `json:"country_or_region"`
	IsActive               bool   `json:"is_active"`
	StripeDashboardUrl     string `json:"stripe_dashboard_url"`
}

type SuggestedReviewer

type SuggestedReviewer struct {
	IsAuthor    bool      `json:"is_author"`
	IsCommenter bool      `json:"is_commenter"`
	Reviewer    BasicUser `json:"reviewer"`
}

type TagNamePatternParameters added in v0.42.0

type TagNamePatternParameters struct {
	Name     string `json:"name"`
	Negate   bool   `json:"negate"`
	Operator string `json:"operator"`
	Pattern  string `json:"pattern"`
}

type TagWithCommits

type TagWithCommits struct {
	Name   string `graphql:"name @include(if:$includeTagName)" json:"name"`
	Target struct {
		Commit BaseCommit `graphql:"... on Commit"`
		Tag    struct {
			Message string
			Tagger  struct {
				Name string
				Date time.Time
				User struct {
					Login string
				}
			}
			Target struct {
				Commit BaseCommit `graphql:"... on Commit"`
			}
		} `graphql:"... on Tag"`
	} `graphql:"target @include(if:$includeTagTarget)" json:"target"`
}

type Team

type Team struct {
	AvatarUrl    string            `graphql:"avatarUrl @include(if:$includeTeamAvatarUrl)" json:"avatar_url"`
	CombinedSlug string            `graphql:"combinedSlug @include(if:$includeTeamCombinedSlug)" json:"combined_slug"`
	CreatedAt    time.Time         `graphql:"createdAt @include(if:$includeTeamCreatedAt)" json:"created_at"`
	Description  string            `graphql:"description @include(if:$includeTeamDescription)" json:"description"`
	EditTeamUrl  string            `graphql:"editTeamUrl @include(if:$includeTeamEditTeamUrl)" json:"edit_team_url"`
	MembersUrl   string            `graphql:"membersUrl @include(if:$includeTeamMembersUrl)" json:"members_url"`
	NewTeamUrl   string            `graphql:"newTeamUrl @include(if:$includeTeamNewTeamUrl)" json:"new_team_url"`
	Organization BasicOrganization `json:"organization"`
	ParentTeam   struct {
		Slug string `json:"slug,omitempty"`
		// contains filtered or unexported fields
	} `graphql:"parentTeam @include(if:$includeTeamParentTeam)" json:"parent_team"`
	Privacy         string    `graphql:"privacy @include(if:$includeTeamPrivacy)" json:"privacy"`
	RepositoriesUrl string    `graphql:"repositoriesUrl @include(if:$includeTeamRepositoriesUrl)" json:"repositories_url"`
	Slug            string    `json:"slug"`
	TeamsUrl        string    `graphql:"teamsUrl @include(if:$includeTeamTeamsUrl)" json:"teams_url"`
	UpdatedAt       time.Time `graphql:"updatedAt @include(if:$includeTeamUpdatedAt)" json:"updated_at"`
	Url             string    `graphql:"url @include(if:$includeTeamUrl)" json:"url"`
	CanAdminister   bool      `graphql:"canAdminister: viewerCanAdminister @include(if:$includeTeamCanAdminister)" json:"can_administer"`
	CanSubscribe    bool      `graphql:"canSubscribe: viewerCanSubscribe @include(if:$includeTeamCanSubscribe)" json:"can_subscribe"`
	Subscription    string    `graphql:"subscription: viewerSubscription @include(if:$includeTeamSubscription)" json:"subscription"`
	// contains filtered or unexported fields
}

type TeamMemberWithRole

type TeamMemberWithRole struct {
	Role githubv4.TeamMemberRole `json:"role"`
	Node User
}

type TeamRepositoryWithPermission

type TeamRepositoryWithPermission struct {
	Permission githubv4.RepositoryPermission `json:"permission"`
	Node       Repository
}

type TeamWithCounts

type TeamWithCounts struct {
	Team
	Ancestors    Count `graphql:"ancestors @include(if:$includeTeamAncestors)" json:"ancestors"`
	ChildTeams   Count `graphql:"childTeams @include(if:$includeTeamChildTeams)" json:"child_teams"`
	Invitations  Count `graphql:"invitations @include(if:$includeTeamInvitations)" json:"invitations"`
	Members      Count `graphql:"members @include(if:$includeTeamMembers)" json:"members"`
	ProjectsV2   Count `graphql:"projectsV2 @include(if:$includeTeamProjectsV2)" json:"projects_v2"`
	Repositories Count `graphql:"repositories @include(if:$includeTeamRepositories)" json:"repositories"`
}

type TextMatch

type TextMatch struct {
	Fragment   string               `json:"fragment"`
	Property   string               `json:"property"`
	Highlights []TextMatchHighlight `json:"highlights"`
}

type TextMatchHighlight

type TextMatchHighlight struct {
	BeginIndice int    `json:"begin_indice"`
	EndIndice   int    `json:"end_indice"`
	Text        string `json:"text"`
}

type TreeEntry

type TreeEntry struct {
	Name        string   `json:"name"`
	Path        string   `json:"path"`
	LineCount   int      `json:"line_count"`
	Size        int      `json:"size"`
	IsGenerated bool     `json:"is_generated"`
	Language    Language `json:"language"`
	Extension   string   `json:"extension"`
	Mode        int      `json:"mode"`
	Object      struct {
		Blob Blob `graphql:"... on Blob" json:"blob"`
	} `json:"object"`
}

type UpdateParameters added in v0.42.0

type UpdateParameters struct {
	UpdateAllowsFetchAndMerge bool `json:"update_allows_fetch_and_merge"`
}

type User

type User struct {
	BasicUser
	AnyPinnableItems                      bool                         `graphql:"anyPinnableItems @include(if:$includeUserAnyPinnableItems)" json:"any_pinnable_items"`
	AvatarUrl                             string                       `graphql:"avatarUrl @include(if:$includeUserAvatarUrl)" json:"avatar_url"`
	Bio                                   string                       `graphql:"bio @include(if:$includeUserBio)" json:"bio"`
	Company                               string                       `graphql:"company @include(if:$includeUserCompany)" json:"company"`
	EstimatedNextSponsorsPayoutInCents    int                          `` /* 151-byte string literal not displayed */
	HasSponsorsListing                    bool                         `graphql:"hasSponsorsListing @include(if:$includeUserHasSponsorsListing)" json:"has_sponsors_listing"`
	InteractionAbility                    RepositoryInteractionAbility `graphql:"interactionAbility @include(if:$includeUserInteractionAbility)" json:"interaction_ability,omitempty"`
	IsBountyHunter                        bool                         `graphql:"isBountyHunter @include(if:$includeUserIsBountyHunter)" json:"is_bounty_hunter"`
	IsCampusExpert                        bool                         `graphql:"isCampusExpert @include(if:$includeUserIsCampusExpert)" json:"is_campus_expert"`
	IsDeveloperProgramMember              bool                         `graphql:"isDeveloperProgramMember @include(if:$includeUserIsDeveloperProgramMember)" json:"is_developer_program_member"`
	IsEmployee                            bool                         `graphql:"isEmployee @include(if:$includeUserIsEmployee)" json:"is_employee"`
	IsFollowingYou                        bool                         `graphql:"isFollowingYou: isFollowingViewer @include(if:$includeUserIsFollowingYou)" json:"is_following_you"`
	IsGitHubStar                          bool                         `graphql:"isGitHubStar @include(if:$includeUserIsGitHubStar)" json:"is_github_star"`
	IsHireable                            bool                         `graphql:"isHireable @include(if:$includeUserIsHireable)" json:"is_hireable"`
	IsSiteAdmin                           bool                         `graphql:"isSiteAdmin @include(if:$includeUserIsSiteAdmin)" json:"is_site_admin"`
	IsSponsoringYou                       bool                         `graphql:"isSponsoringYou: isSponsoringViewer @include(if:$includeUserIsSponsoringYou)" json:"is_sponsoring_you"`
	IsYou                                 bool                         `graphql:"isYou: isViewer @include(if:$includeUserIsYou)" json:"is_you"`
	Location                              string                       `graphql:"location @include(if:$includeUserLocation)" json:"location,omitempty"`
	MonthlyEstimatedSponsorsIncomeInCents int                          `` /* 160-byte string literal not displayed */
	PinnedItemsRemaining                  int                          `graphql:"pinnedItemsRemaining @include(if:$includeUserPinnedItemsRemaining)" json:"pinned_items_remaining"`
	ProjectsUrl                           string                       `graphql:"projectsUrl @include(if:$includeUserProjectsUrl)" json:"projects_url"`
	Pronouns                              string                       `graphql:"pronouns @include(if:$includeUserPronouns)" json:"pronouns"`
	SponsorsListing                       SponsorsListing              `graphql:"sponsorsListing @include(if:$includeUserSponsorsListing)" json:"sponsors_listing,omitempty"`
	Status                                userStatus                   `graphql:"status @include(if:$includeUserStatus)" json:"status,omitempty"`
	TwitterUsername                       string                       `graphql:"twitterUsername @include(if:$includeUserTwitterUsername)" json:"twitter_username"`
	CanChangedPinnedItems                 bool                         `` /* 138-byte string literal not displayed */
	CanCreateProjects                     bool                         `graphql:"canCreateProjects: viewerCanCreateProjects @include(if:$includeUserCanCreateProjects)" json:"can_create_projects"`
	CanFollow                             bool                         `graphql:"canFollow: viewerCanFollow @include(if:$includeUserCanFollow)" json:"can_follow"`
	CanSponsor                            bool                         `graphql:"canSponsor: viewerCanSponsor @include(if:$includeUserCanSponsor)" json:"can_sponsor"`
	IsFollowing                           bool                         `graphql:"isFollowing: viewerIsFollowing @include(if:$includeUserIsFollowing)" json:"is_following"`
	IsSponsoring                          bool                         `graphql:"isSponsoring: viewerIsSponsoring @include(if:$includeUserIsSponsoring)" json:"is_sponsoring"`
	WebsiteUrl                            string                       `graphql:"websiteUrl @include(if:$includeUserWebsiteUrl)" json:"website_url"`
}

type UserWithCounts

type UserWithCounts struct {
	User
	Repositories struct {
		TotalDiskUsage int
	} `graphql:"repositories @include(if:$includeUserRepositories)" json:"repositories"`
	Followers           Count `graphql:"followers @include(if:$includeUserFollowers)" json:"followers"`
	Following           Count `graphql:"following @include(if:$includeUserFollowing)" json:"following"`
	PublicRepositories  Count `` /* 130-byte string literal not displayed */
	PrivateRepositories Count `` /* 134-byte string literal not displayed */
	PublicGists         Count `graphql:"publicGists: gists(privacy: PUBLIC) @include(if:$includeUserPublicGists)" json:"public_gists"`
	Issues              Count `graphql:"issues @include(if:$includeUserIssues)" json:"issues"`
	Organizations       Count `graphql:"organizations @include(if:$includeUserOrganizations)" json:"organizations"`
	PublicKeys          Count `graphql:"publicKeys @include(if:$includeUserPublicKeys)" json:"public_keys"`
	OpenPullRequests    Count `graphql:"openPullRequests: pullRequests(states: OPEN) @include(if:$includeUserOpenPullRequests)" json:"open_pull_requests"`
	MergedPullRequests  Count `` /* 130-byte string literal not displayed */
	ClosedPullRequests  Count `` /* 130-byte string literal not displayed */
	Packages            Count `graphql:"packages @include(if:$includeUserPackages)" json:"packages"`
	PinnedItems         Count `graphql:"pinnedItems @include(if:$includeUserPinnedItems)" json:"pinned_items"`
	Sponsoring          Count `graphql:"sponsoring @include(if:$includeUserSponsoring)" json:"sponsoring"`
	Sponsors            Count `graphql:"sponsors @include(if:$includeUserSponsors)" json:"sponsors"`
	StarredRepositories Count `graphql:"starredRepositories @include(if:$includeUserStarredRepositories)" json:"starred_repositories"`
	Watching            Count `graphql:"watching @include(if:$includeUserWatching)" json:"watching"`
}

type WorkflowFileReference added in v0.42.0

type WorkflowFileReference struct {
	Path         string `json:"path"`
	Ref          string `json:"ref"`
	RepositoryId int    `json:"repository_id"`
	Sha          string `json:"sha"`
}

type WorkflowsParameters added in v0.42.0

type WorkflowsParameters struct {
	Workflows []WorkflowFileReference `json:"workflows"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL