githubv4

package module
v0.0.0-...-24a1d20 Latest Latest
Warning

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

Go to latest
Published: Oct 6, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

README

go-githubv4

Go Reference

Package githubv4 is a client library for accessing GitHub GraphQL API v4 (https://docs.github.com/en/graphql).

If you're looking for a client library for GitHub REST API v3, the recommended package is github.com/google/go-github/github.

Focus

Follows the same slick design as shurcooL/githubv4:

  • Friendly, simple and powerful API.
  • Correctness, high performance and efficiency.
  • Support all of GitHub GraphQL API v4 via code generation from schema.

...but includes the following enhancements:

  • Maps Golang primitive data types to GraphQL types (variable values).
  • Returns structured error types that reflect GraphQL-level errors (for error handling / backoff).
  • Returns HTTP response status/headers (for error handling / backoff).

Installation

go get -u github.com/jbrekelmans/githubv4

Usage

Authentication

GitHub GraphQL API v4 requires authentication. The githubv4 package does not directly handle authentication. Instead, when creating a new client, you're expected to pass an http.Client that performs authentication. The easiest and recommended way to do this is to use the golang.org/x/oauth2 package. You'll need an OAuth token from GitHub (for example, a personal API token) with the right scopes. Then:

import "golang.org/x/oauth2"

func main() {
	src := oauth2.StaticTokenSource(
		&oauth2.Token{AccessToken: os.Getenv("GITHUB_TOKEN")},
	)
	httpClient := oauth2.NewClient(context.Background(), src)

	client := githubv4.NewClient(httpClient)
	// Use client...
}

If you are using GitHub Enterprise, use githubv4.NewEnterpriseClient:

client := githubv4.NewEnterpriseClient(os.Getenv("GITHUB_ENDPOINT"), httpClient)
// Use client...
Simple Query

To make a query, you need to define a Go type that corresponds to the GitHub GraphQL schema, and contains the fields you're interested in querying. You can look up the GitHub GraphQL schema at https://docs.github.com/en/graphql/reference/queries.

For example, to make the following GraphQL query:

query {
	viewer {
		login
		createdAt
	}
}

You can define this variable:

var query struct {
	Viewer struct {
		Login     githubv4.String
		CreatedAt githubv4.DateTime
	}
}

Then call client.Query, passing a pointer to it:

_, err := client.Query(context.Background(), &query, nil)
if err != nil {
	// Handle error.
}
fmt.Println("    Login:", query.Viewer.Login)
fmt.Println("CreatedAt:", query.Viewer.CreatedAt)

// Output:
//     Login: gopher
// CreatedAt: 2017-05-26 21:17:14 +0000 UTC
Scalar Types

For each scalar in the GitHub GraphQL schema listed at https://docs.github.com/en/graphql/reference/scalars, there is a corresponding Go type in package githubv4 (except for Boolean, Float and Int you can use primitive data types).

You can use these types when writing queries:

var query struct {
	Viewer struct {
		Login          string
		CreatedAt      githubv4.DateTime
		IsBountyHunter bool
		BioHTML        githubv4.HTML
		WebsiteURL     githubv4.URI
	}
}
// Call client.Query() and use results in query...

However, depending on how you're planning to use the results of your query, it's often more convenient to use other Go types.

The encoding/json rules are used for converting individual JSON-encoded fields from a GraphQL response into Go values. See https://godoc.org/encoding/json#Unmarshal for details. The json.Unmarshaler interface is respected.

That means you can simplify the earlier query by using predeclared Go types:

// import "time"

var query struct {
	Viewer struct {
		Login          string    // E.g., "gopher".
		CreatedAt      time.Time // E.g., time.Date(2017, 5, 26, 21, 17, 14, 0, time.UTC).
		IsBountyHunter bool      // E.g., true.
		BioHTML        string    // E.g., `I am learning <a href="https://graphql.org">GraphQL</a>!`.
		WebsiteURL     string    // E.g., "https://golang.org".
	}
}
// Call client.Query() and use results in query...

The DateTime scalar is described as "an ISO-8601 encoded UTC date string". If you wanted to fetch in that form without parsing it into a time.Time, you can use the string type. For example, this would work:

// import "html/template"

type MyBoolean bool

var query struct {
	Viewer struct {
		Login          string        // E.g., "gopher".
		CreatedAt      string        // E.g., "2017-05-26T21:17:14Z".
		IsBountyHunter MyBoolean     // E.g., MyBoolean(true).
		BioHTML        template.HTML // E.g., template.HTML(`I am learning <a href="https://graphql.org">GraphQL</a>!`).
		WebsiteURL     template.URL  // E.g., template.URL("https://golang.org").
	}
}
// Call client.Query() and use results in query...
Arguments and Variables

Often, you'll want to specify arguments on some fields. You can use the graphql struct field tag for this.

For example, to make the following GraphQL query:

{
	repository(owner: "octocat", name: "Hello-World") {
		description
	}
}

You can define this variable:

var q struct {
	Repository struct {
		Description string
	} `graphql:"repository(owner: \"octocat\", name: \"Hello-World\")"`
}

Then call client.Query:

_, err := client.Query(context.Background(), &q, nil)
if err != nil {
	// Handle error.
}
fmt.Println(q.Repository.Description)

// Output:
// My first repository on GitHub!

However, that'll only work if the arguments are constant and known in advance. Otherwise, you will need to make use of variables. Replace the constants in the struct field tag with variable names:

// fetchRepoDescription fetches description of repo with owner and name.
func fetchRepoDescription(ctx context.Context, owner, name string) (string, error) {
	var q struct {
		Repository struct {
			Description string
		} `graphql:"repository(owner: $owner, name: $name)"`
	}

When sending variables to GraphQL, you need to use exact types that match GraphQL scalar types, otherwise the GraphQL server will return an error.

So, define a variables map with their values that are converted to GraphQL scalar types:

	variables := map[string]interface{}{
		"owner": githubv4.String(owner),
		"name":  githubv4.String(name),
	}

Finally, call client.Query providing variables:

	_, err := client.Query(ctx, &q, variables)
	return q.Repository.Description, err
}
Inline Fragments

Some GraphQL queries contain inline fragments. You can use the graphql struct field tag to express them.

For example, to make the following GraphQL query:

{
	repositoryOwner(login: "github") {
		login
		... on Organization {
			description
		}
		... on User {
			bio
		}
	}
}

You can define this variable:

var q struct {
	RepositoryOwner struct {
		Login        string
		Organization struct {
			Description string
		} `graphql:"... on Organization"`
		User struct {
			Bio string
		} `graphql:"... on User"`
	} `graphql:"repositoryOwner(login: \"github\")"`
}

Alternatively, you can define the struct types corresponding to inline fragments, and use them as embedded fields in your query:

type (
	OrganizationFragment struct {
		Description string
	}
	UserFragment struct {
		Bio string
	}
)

var q struct {
	RepositoryOwner struct {
		Login                string
		OrganizationFragment `graphql:"... on Organization"`
		UserFragment         `graphql:"... on User"`
	} `graphql:"repositoryOwner(login: \"github\")"`
}

Then call client.Query:

_, err := client.Query(context.Background(), &q, nil)
if err != nil {
	// Handle error.
}
fmt.Println(q.RepositoryOwner.Login)
fmt.Println(q.RepositoryOwner.Description)
fmt.Println(q.RepositoryOwner.Bio)

// Output:
// github
// How people build software.
//
Pagination

Imagine you wanted to get a complete list of comments in an issue, and not just the first 10 or so. To do that, you'll need to perform multiple queries and use pagination information. For example:

type comment struct {
	Body   string
	Author struct {
		Login     string
		AvatarURL string `graphql:"avatarUrl(size: 72)"`
	}
	ViewerCanReact bool
}
var q struct {
	Repository struct {
		Issue struct {
			Comments struct {
				Nodes    []comment
				PageInfo struct {
					EndCursor   githubv4.String
					HasNextPage bool
				}
			} `graphql:"comments(first: 100, after: $commentsCursor)"` // 100 per page.
		} `graphql:"issue(number: $issueNumber)"`
	} `graphql:"repository(owner: $repositoryOwner, name: $repositoryName)"`
}
variables := map[string]interface{}{
	"repositoryOwner": githubv4.String(owner),
	"repositoryName":  githubv4.String(name),
	"issueNumber":     githubv4.Int(issue),
	"commentsCursor":  (*githubv4.String)(nil), // Null after argument to get first page.
}

// Get comments from all pages.
var allComments []comment
for {
	err := client.Query(ctx, &q, variables)
	if err != nil {
		return err
	}
	allComments = append(allComments, q.Repository.Issue.Comments.Nodes...)
	if !q.Repository.Issue.Comments.PageInfo.HasNextPage {
		break
	}
	variables["commentsCursor"] = githubv4.NewString(q.Repository.Issue.Comments.PageInfo.EndCursor)
}

There is more than one way to perform pagination. Consider additional fields inside PageInfo object.

Mutations

Mutations often require information that you can only find out by performing a query first. Let's suppose you've already done that.

For example, to make the following GraphQL mutation:

mutation($input: AddReactionInput!) {
	addReaction(input: $input) {
		reaction {
			content
		}
		subject {
			id
		}
	}
}
variables {
	"input": {
		"subjectId": "MDU6SXNzdWUyMTc5NTQ0OTc=",
		"content": "HOORAY"
	}
}

You can define:

var m struct {
	AddReaction struct {
		Reaction struct {
			Content githubv4.ReactionContent
		}
		Subject struct {
			ID githubv4.ID
		}
	} `graphql:"addReaction(input: $input)"`
}
input := githubv4.AddReactionInput{
	SubjectID: targetIssue.ID, // ID of the target issue from a previous query.
	Content:   githubv4.ReactionContentHooray,
}

Then call client.Mutate:

_, err := client.Mutate(context.Background(), &m, input, nil)
if err != nil {
	// Handle error.
}
fmt.Printf("Added a %v reaction to subject with ID %#v!\n", m.AddReaction.Reaction.Content, m.AddReaction.Subject.ID)

// Output:
// Added a HOORAY reaction to subject with ID "MDU6SXNzdWUyMTc5NTQ0OTc="!
Error Handling

Error handling is needed to:

  1. Be a good citizen and back off on rate limits.

  2. Retry on transient errors when reliability is important.

Error handling should be implemented by handling one (or more) of the following cases.

import "errors"
 
...

resp, err := client.Query(ctx, &q, nil)
if resp != nil && resp.StatusCode/100 == 5 {
    // 5xx error
}
var gerr *githubv4.Error
if errors.As(err, &gerr) && len(gerr.Errors) == 1 && gerr.Errors[0].Type == "RATE_LIMITED" {
    // rate limit
}

// For completeness:
if terr := (interface{Timeout() bool})(nil); errors.As(err, &terr) && terr.Timeout() {
    // timeout produced by HTTP client/transport/dial/DNSLookup
}
if terr := (interface{Temporary() bool})(nil); errors.As(err, &terr) && terr.Temporary() {
    // "temporary" error produced by HTTP client/transport/dial/DNSLookup
}

Acknowledgements

License

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AbortQueuedMigrationsInput

type AbortQueuedMigrationsInput struct {
	// The ID of the organization that is running the migrations.
	OwnerID ID "json:\"ownerId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AbortQueuedMigrationsInput is an autogenerated input type of AbortQueuedMigrations.

type AcceptEnterpriseAdministratorInvitationInput

type AcceptEnterpriseAdministratorInvitationInput struct {
	// The id of the invitation being accepted.
	InvitationID ID "json:\"invitationId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AcceptEnterpriseAdministratorInvitationInput is an autogenerated input type of AcceptEnterpriseAdministratorInvitation.

type AcceptTopicSuggestionInput

type AcceptTopicSuggestionInput struct {
	// The Node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The name of the suggested topic.
	Name string "json:\"name\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AcceptTopicSuggestionInput is an autogenerated input type of AcceptTopicSuggestion.

type ActorType

type ActorType string

ActorType represents the actor's type.

const (
	// ActorTypeUser. Indicates a user actor.
	ActorTypeUser ActorType = "USER"
	// ActorTypeTeam. Indicates a team actor.
	ActorTypeTeam ActorType = "TEAM"
)

type AddAssigneesToAssignableInput

type AddAssigneesToAssignableInput struct {
	// The id of the assignable object to add assignees to.
	AssignableID ID "json:\"assignableId\""
	// The id of users to add as assignees.
	AssigneeIDs []ID "json:\"assigneeIds\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddAssigneesToAssignableInput is an autogenerated input type of AddAssigneesToAssignable.

type AddCommentInput

type AddCommentInput struct {
	// The Node ID of the subject to modify.
	SubjectID ID "json:\"subjectId\""
	// The contents of the comment.
	Body string "json:\"body\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddCommentInput is an autogenerated input type of AddComment.

type AddDiscussionCommentInput

type AddDiscussionCommentInput struct {
	// The Node ID of the discussion to comment on.
	DiscussionID ID "json:\"discussionId\""
	// The Node ID of the discussion comment within this discussion to reply to.
	ReplyToID *ID "json:\"replyToId,omitempty\""
	// The contents of the comment.
	Body string "json:\"body\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddDiscussionCommentInput is an autogenerated input type of AddDiscussionComment.

type AddDiscussionPollVoteInput

type AddDiscussionPollVoteInput struct {
	// The Node ID of the discussion poll option to vote for.
	PollOptionID ID "json:\"pollOptionId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddDiscussionPollVoteInput is an autogenerated input type of AddDiscussionPollVote.

type AddEnterpriseOrganizationMemberInput

type AddEnterpriseOrganizationMemberInput struct {
	// The ID of the enterprise which owns the organization.
	EnterpriseID ID "json:\"enterpriseId\""
	// The ID of the organization the users will be added to.
	OrganizationID ID "json:\"organizationId\""
	// The IDs of the enterprise members to add.
	UserIDs []ID "json:\"userIds\""
	// The role to assign the users in the organization.
	Role *OrganizationMemberRole "json:\"role,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddEnterpriseOrganizationMemberInput is an autogenerated input type of AddEnterpriseOrganizationMember.

type AddEnterpriseSupportEntitlementInput

type AddEnterpriseSupportEntitlementInput struct {
	// The ID of the Enterprise which the admin belongs to.
	EnterpriseID ID "json:\"enterpriseId\""
	// The login of a member who will receive the support entitlement.
	Login string "json:\"login\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddEnterpriseSupportEntitlementInput is an autogenerated input type of AddEnterpriseSupportEntitlement.

type AddLabelsToLabelableInput

type AddLabelsToLabelableInput struct {
	// The id of the labelable object to add labels to.
	LabelableID ID "json:\"labelableId\""
	// The ids of the labels to add.
	LabelIDs []ID "json:\"labelIds\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddLabelsToLabelableInput is an autogenerated input type of AddLabelsToLabelable.

type AddProjectCardInput

type AddProjectCardInput struct {
	// The Node ID of the ProjectColumn.
	ProjectColumnID ID "json:\"projectColumnId\""
	// The content of the card. Must be a member of the ProjectCardItem union.
	ContentID *ID "json:\"contentId,omitempty\""
	// The note on the card.
	Note *string "json:\"note,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddProjectCardInput is an autogenerated input type of AddProjectCard.

type AddProjectColumnInput

type AddProjectColumnInput struct {
	// The Node ID of the project.
	ProjectID ID "json:\"projectId\""
	// The name of the column.
	Name string "json:\"name\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddProjectColumnInput is an autogenerated input type of AddProjectColumn.

type AddProjectV2DraftIssueInput

type AddProjectV2DraftIssueInput struct {
	// The ID of the Project to add the draft issue to.
	ProjectID ID "json:\"projectId\""
	// The title of the draft issue. A project item can also be created by providing the URL of an Issue or Pull Request if you have access.
	Title string "json:\"title\""
	// The body of the draft issue.
	Body *string "json:\"body,omitempty\""
	// The IDs of the assignees of the draft issue.
	AssigneeIDs *[]ID "json:\"assigneeIds,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddProjectV2DraftIssueInput is an autogenerated input type of AddProjectV2DraftIssue.

type AddProjectV2ItemByIDInput

type AddProjectV2ItemByIDInput struct {
	// The ID of the Project to add the item to.
	ProjectID ID "json:\"projectId\""
	// The id of the Issue or Pull Request to add.
	ContentID ID "json:\"contentId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddProjectV2ItemByIDInput is an autogenerated input type of AddProjectV2ItemById.

type AddPullRequestReviewCommentInput

type AddPullRequestReviewCommentInput struct {
	// The node ID of the pull request reviewing
	//
	// **Upcoming Change on 2023-10-01 UTC**
	// **Description:** `pullRequestId` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead
	// **Reason:** We are deprecating the addPullRequestReviewComment mutation.
	PullRequestID *ID "json:\"pullRequestId,omitempty\""
	// The Node ID of the review to modify.
	//
	// **Upcoming Change on 2023-10-01 UTC**
	// **Description:** `pullRequestReviewId` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead
	// **Reason:** We are deprecating the addPullRequestReviewComment mutation.
	PullRequestReviewID *ID "json:\"pullRequestReviewId,omitempty\""
	// The SHA of the commit to comment on.
	//
	// **Upcoming Change on 2023-10-01 UTC**
	// **Description:** `commitOID` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead
	// **Reason:** We are deprecating the addPullRequestReviewComment mutation.
	CommitOID *GitObjectID "json:\"commitOID,omitempty\""
	// The text of the comment. This field is required
	//
	// **Upcoming Change on 2023-10-01 UTC**
	// **Description:** `body` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead
	// **Reason:** We are deprecating the addPullRequestReviewComment mutation.
	Body *string "json:\"body,omitempty\""
	// The relative path of the file to comment on.
	//
	// **Upcoming Change on 2023-10-01 UTC**
	// **Description:** `path` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead
	// **Reason:** We are deprecating the addPullRequestReviewComment mutation.
	Path *string "json:\"path,omitempty\""
	// The line index in the diff to comment on.
	//
	// **Upcoming Change on 2023-10-01 UTC**
	// **Description:** `position` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead
	// **Reason:** We are deprecating the addPullRequestReviewComment mutation.
	Position *int "json:\"position,omitempty\""
	// The comment id to reply to.
	//
	// **Upcoming Change on 2023-10-01 UTC**
	// **Description:** `inReplyTo` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead
	// **Reason:** We are deprecating the addPullRequestReviewComment mutation.
	InReplyTo *ID "json:\"inReplyTo,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddPullRequestReviewCommentInput is an autogenerated input type of AddPullRequestReviewComment.

type AddPullRequestReviewInput

type AddPullRequestReviewInput struct {
	// The Node ID of the pull request to modify.
	PullRequestID ID "json:\"pullRequestId\""
	// The commit OID the review pertains to.
	CommitOID *GitObjectID "json:\"commitOID,omitempty\""
	// The contents of the review body comment.
	Body *string "json:\"body,omitempty\""
	// The event to perform on the pull request review.
	Event *PullRequestReviewEvent "json:\"event,omitempty\""
	// The review line comments.
	//
	// **Upcoming Change on 2023-10-01 UTC**
	// **Description:** `comments` will be removed. use the `threads` argument instead
	// **Reason:** We are deprecating comment fields that use diff-relative positioning.
	Comments *[]*DraftPullRequestReviewComment "json:\"comments,omitempty\""
	// The review line comment threads.
	Threads *[]*DraftPullRequestReviewThread "json:\"threads,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddPullRequestReviewInput is an autogenerated input type of AddPullRequestReview.

type AddPullRequestReviewThreadInput

type AddPullRequestReviewThreadInput struct {
	// Path to the file being commented on.
	Path string "json:\"path\""
	// Body of the thread's first comment.
	Body string "json:\"body\""
	// The node ID of the pull request reviewing.
	PullRequestID *ID "json:\"pullRequestId,omitempty\""
	// The Node ID of the review to modify.
	PullRequestReviewID *ID "json:\"pullRequestReviewId,omitempty\""
	// The line of the blob to which the thread refers, required for line-level threads. The end of the line range for multi-line comments.
	Line *int "json:\"line,omitempty\""
	// The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.
	Side *DiffSide "json:\"side,omitempty\""
	// The first line of the range to which the comment refers.
	StartLine *int "json:\"startLine,omitempty\""
	// The side of the diff on which the start line resides.
	StartSide *DiffSide "json:\"startSide,omitempty\""
	// The level at which the comments in the corresponding thread are targeted, can be a diff line or a file.
	SubjectType *PullRequestReviewThreadSubjectType "json:\"subjectType,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddPullRequestReviewThreadInput is an autogenerated input type of AddPullRequestReviewThread.

type AddPullRequestReviewThreadReplyInput

type AddPullRequestReviewThreadReplyInput struct {
	// The Node ID of the pending review to which the reply will belong.
	PullRequestReviewID *ID "json:\"pullRequestReviewId,omitempty\""
	// The Node ID of the thread to which this reply is being written.
	PullRequestReviewThreadID ID "json:\"pullRequestReviewThreadId\""
	// The text of the reply.
	Body string "json:\"body\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddPullRequestReviewThreadReplyInput is an autogenerated input type of AddPullRequestReviewThreadReply.

type AddReactionInput

type AddReactionInput struct {
	// The Node ID of the subject to modify.
	SubjectID ID "json:\"subjectId\""
	// The name of the emoji to react with.
	Content ReactionContent "json:\"content\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddReactionInput is an autogenerated input type of AddReaction.

type AddStarInput

type AddStarInput struct {
	// The Starrable ID to star.
	StarrableID ID "json:\"starrableId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddStarInput is an autogenerated input type of AddStar.

type AddUpvoteInput

type AddUpvoteInput struct {
	// The Node ID of the discussion or comment to upvote.
	SubjectID ID "json:\"subjectId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddUpvoteInput is an autogenerated input type of AddUpvote.

type AddVerifiableDomainInput

type AddVerifiableDomainInput struct {
	// The ID of the owner to add the domain to.
	OwnerID ID "json:\"ownerId\""
	// The URL of the domain.
	Domain URI "json:\"domain\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

AddVerifiableDomainInput is an autogenerated input type of AddVerifiableDomain.

type ApproveDeploymentsInput

type ApproveDeploymentsInput struct {
	// The node ID of the workflow run containing the pending deployments.
	WorkflowRunID ID "json:\"workflowRunId\""
	// The ids of environments to reject deployments.
	EnvironmentIDs []ID "json:\"environmentIds\""
	// Optional comment for approving deployments.
	Comment *string "json:\"comment,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ApproveDeploymentsInput is an autogenerated input type of ApproveDeployments.

type ApproveVerifiableDomainInput

type ApproveVerifiableDomainInput struct {
	// The ID of the verifiable domain to approve.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ApproveVerifiableDomainInput is an autogenerated input type of ApproveVerifiableDomain.

type ArchiveProjectV2ItemInput

type ArchiveProjectV2ItemInput struct {
	// The ID of the Project to archive the item from.
	ProjectID ID "json:\"projectId\""
	// The ID of the ProjectV2Item to archive.
	ItemID ID "json:\"itemId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ArchiveProjectV2ItemInput is an autogenerated input type of ArchiveProjectV2Item.

type ArchiveRepositoryInput

type ArchiveRepositoryInput struct {
	// The ID of the repository to mark as archived.
	RepositoryID ID "json:\"repositoryId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ArchiveRepositoryInput is an autogenerated input type of ArchiveRepository.

type AuditLogOrder

type AuditLogOrder struct {
	// The field to order Audit Logs by.
	Field *AuditLogOrderField "json:\"field,omitempty\""
	// The ordering direction.
	Direction *OrderDirection "json:\"direction,omitempty\""
}

AuditLogOrder represents ordering options for Audit Log connections.

type AuditLogOrderField

type AuditLogOrderField string

AuditLogOrderField represents properties by which Audit Log connections can be ordered.

const (
	// AuditLogOrderFieldCreatedAt. Order audit log entries by timestamp.
	AuditLogOrderFieldCreatedAt AuditLogOrderField = "CREATED_AT"
)

type Base64String

type Base64String struct {
	S string
}

Base64String represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as Base64String in GraphQL as expected by the GitHub API.

Base64String is a (potentially binary) string encoded using base64.

func (Base64String) MarshalText

func (base64String Base64String) MarshalText() ([]byte, error)

func (*Base64String) UnmarshalText

func (base64String *Base64String) UnmarshalText(b []byte) error

type BigInt

type BigInt struct {
	N big.Int
}

BigInt represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as BigInt in GraphQL as expected by the GitHub API.

BigInt represents non-fractional signed whole numeric values. Since the value may exceed the size of a 32-bit integer, it's encoded as a string.

func (BigInt) MarshalText

func (bigInt BigInt) MarshalText() ([]byte, error)

func (*BigInt) UnmarshalText

func (bigInt *BigInt) UnmarshalText(b []byte) error

type BranchNamePatternParametersInput

type BranchNamePatternParametersInput struct {
	// How this rule will appear to users.
	Name *string "json:\"name,omitempty\""
	// If true, the rule will fail if the pattern matches.
	Negate *bool "json:\"negate,omitempty\""
	// The operator to use for matching.
	Operator string "json:\"operator\""
	// The pattern to match with.
	Pattern string "json:\"pattern\""
}

BranchNamePatternParametersInput represents parameters to be used for the branch_name_pattern rule.

type BulkSponsorship

type BulkSponsorship struct {
	// The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given.
	SponsorableID *ID "json:\"sponsorableId,omitempty\""
	// The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given.
	SponsorableLogin *string "json:\"sponsorableLogin,omitempty\""
	// The amount to pay to the sponsorable in US dollars. Valid values: 1-12000.
	Amount int "json:\"amount\""
}

BulkSponsorship represents information about a sponsorship to make for a user or organization with a GitHub Sponsors profile, as part of sponsoring many users or organizations at once.

type CancelEnterpriseAdminInvitationInput

type CancelEnterpriseAdminInvitationInput struct {
	// The Node ID of the pending enterprise administrator invitation.
	InvitationID ID "json:\"invitationId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CancelEnterpriseAdminInvitationInput is an autogenerated input type of CancelEnterpriseAdminInvitation.

type CancelSponsorshipInput

type CancelSponsorshipInput struct {
	// The ID of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorLogin is not given.
	SponsorID *ID "json:\"sponsorId,omitempty\""
	// The username of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorId is not given.
	SponsorLogin *string "json:\"sponsorLogin,omitempty\""
	// The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given.
	SponsorableID *ID "json:\"sponsorableId,omitempty\""
	// The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given.
	SponsorableLogin *string "json:\"sponsorableLogin,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CancelSponsorshipInput is an autogenerated input type of CancelSponsorship.

type ChangeUserStatusInput

type ChangeUserStatusInput struct {
	// The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., :grinning:.
	Emoji *string "json:\"emoji,omitempty\""
	// A short description of your current status.
	Message *string "json:\"message,omitempty\""
	// The ID of the organization whose members will be allowed to see the status. If omitted, the status will be publicly visible.
	OrganizationID *ID "json:\"organizationId,omitempty\""
	// Whether this status should indicate you are not fully available on GitHub, e.g., you are away.
	LimitedAvailability *bool "json:\"limitedAvailability,omitempty\""
	// If set, the user status will not be shown after this date.
	ExpiresAt *DateTime "json:\"expiresAt,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ChangeUserStatusInput is an autogenerated input type of ChangeUserStatus.

type CheckAnnotationData

type CheckAnnotationData struct {
	// The path of the file to add an annotation to.
	Path string "json:\"path\""
	// The location of the annotation.
	Location CheckAnnotationRange "json:\"location\""
	// Represents an annotation's information level.
	AnnotationLevel CheckAnnotationLevel "json:\"annotationLevel\""
	// A short description of the feedback for these lines of code.
	Message string "json:\"message\""
	// The title that represents the annotation.
	Title *string "json:\"title,omitempty\""
	// Details about this annotation.
	RawDetails *string "json:\"rawDetails,omitempty\""
}

CheckAnnotationData represents information from a check run analysis to specific lines of code.

type CheckAnnotationLevel

type CheckAnnotationLevel string

CheckAnnotationLevel represents represents an annotation's information level.

const (
	// CheckAnnotationLevelFailure. An annotation indicating an inescapable error.
	CheckAnnotationLevelFailure CheckAnnotationLevel = "FAILURE"
	// CheckAnnotationLevelNotice. An annotation indicating some information.
	CheckAnnotationLevelNotice CheckAnnotationLevel = "NOTICE"
	// CheckAnnotationLevelWarning. An annotation indicating an ignorable error.
	CheckAnnotationLevelWarning CheckAnnotationLevel = "WARNING"
)

type CheckAnnotationRange

type CheckAnnotationRange struct {
	// The starting line of the range.
	StartLine int "json:\"startLine\""
	// The starting column of the range.
	StartColumn *int "json:\"startColumn,omitempty\""
	// The ending line of the range.
	EndLine int "json:\"endLine\""
	// The ending column of the range.
	EndColumn *int "json:\"endColumn,omitempty\""
}

CheckAnnotationRange represents information from a check run analysis to specific lines of code.

type CheckConclusionState

type CheckConclusionState string

CheckConclusionState represents the possible states for a check suite or run conclusion.

const (
	// CheckConclusionStateActionRequired. The check suite or run requires action.
	CheckConclusionStateActionRequired CheckConclusionState = "ACTION_REQUIRED"
	// CheckConclusionStateTimedOut. The check suite or run has timed out.
	CheckConclusionStateTimedOut CheckConclusionState = "TIMED_OUT"
	// CheckConclusionStateCancelled. The check suite or run has been cancelled.
	CheckConclusionStateCancelled CheckConclusionState = "CANCELLED"
	// CheckConclusionStateFailure. The check suite or run has failed.
	CheckConclusionStateFailure CheckConclusionState = "FAILURE"
	// CheckConclusionStateSuccess. The check suite or run has succeeded.
	CheckConclusionStateSuccess CheckConclusionState = "SUCCESS"
	// CheckConclusionStateNeutral. The check suite or run was neutral.
	CheckConclusionStateNeutral CheckConclusionState = "NEUTRAL"
	// CheckConclusionStateSkipped. The check suite or run was skipped.
	CheckConclusionStateSkipped CheckConclusionState = "SKIPPED"
	// CheckConclusionStateStartupFailure. The check suite or run has failed at startup.
	CheckConclusionStateStartupFailure CheckConclusionState = "STARTUP_FAILURE"
	// CheckConclusionStateStale. The check suite or run was marked stale by GitHub. Only GitHub can use this conclusion.
	CheckConclusionStateStale CheckConclusionState = "STALE"
)

type CheckRunAction

type CheckRunAction struct {
	// The text to be displayed on a button in the web UI.
	Label string "json:\"label\""
	// A short explanation of what this action would do.
	Description string "json:\"description\""
	// A reference for the action on the integrator's system.
	Identifier string "json:\"identifier\""
}

CheckRunAction represents possible further actions the integrator can perform.

type CheckRunFilter

type CheckRunFilter struct {
	// Filters the check runs by this type.
	CheckType *CheckRunType "json:\"checkType,omitempty\""
	// Filters the check runs created by this application ID.
	AppID *int "json:\"appId,omitempty\""
	// Filters the check runs by this name.
	CheckName *string "json:\"checkName,omitempty\""
	// Filters the check runs by this status. Superceded by statuses.
	Status *CheckStatusState "json:\"status,omitempty\""
	// Filters the check runs by this status. Overrides status.
	Statuses *[]CheckStatusState "json:\"statuses,omitempty\""
	// Filters the check runs by these conclusions.
	Conclusions *[]CheckConclusionState "json:\"conclusions,omitempty\""
}

CheckRunFilter represents the filters that are available when fetching check runs.

type CheckRunOutput

type CheckRunOutput struct {
	// A title to provide for this check run.
	Title string "json:\"title\""
	// The summary of the check run (supports Commonmark).
	Summary string "json:\"summary\""
	// The details of the check run (supports Commonmark).
	Text *string "json:\"text,omitempty\""
	// The annotations that are made as part of the check run.
	Annotations *[]CheckAnnotationData "json:\"annotations,omitempty\""
	// Images attached to the check run output displayed in the GitHub pull request UI.
	Images *[]CheckRunOutputImage "json:\"images,omitempty\""
}

CheckRunOutput represents descriptive details about the check run.

type CheckRunOutputImage

type CheckRunOutputImage struct {
	// The alternative text for the image.
	Alt string "json:\"alt\""
	// The full URL of the image.
	ImageURL URI "json:\"imageUrl\""
	// A short image description.
	Caption *string "json:\"caption,omitempty\""
}

CheckRunOutputImage represents images attached to the check run output displayed in the GitHub pull request UI.

type CheckRunState

type CheckRunState string

CheckRunState represents the possible states of a check run in a status rollup.

const (
	// CheckRunStateActionRequired. The check run requires action.
	CheckRunStateActionRequired CheckRunState = "ACTION_REQUIRED"
	// CheckRunStateCancelled. The check run has been cancelled.
	CheckRunStateCancelled CheckRunState = "CANCELLED"
	// CheckRunStateCompleted. The check run has been completed.
	CheckRunStateCompleted CheckRunState = "COMPLETED"
	// CheckRunStateFailure. The check run has failed.
	CheckRunStateFailure CheckRunState = "FAILURE"
	// CheckRunStateInProgress. The check run is in progress.
	CheckRunStateInProgress CheckRunState = "IN_PROGRESS"
	// CheckRunStateNeutral. The check run was neutral.
	CheckRunStateNeutral CheckRunState = "NEUTRAL"
	// CheckRunStatePending. The check run is in pending state.
	CheckRunStatePending CheckRunState = "PENDING"
	// CheckRunStateQueued. The check run has been queued.
	CheckRunStateQueued CheckRunState = "QUEUED"
	// CheckRunStateSkipped. The check run was skipped.
	CheckRunStateSkipped CheckRunState = "SKIPPED"
	// CheckRunStateStale. The check run was marked stale by GitHub. Only GitHub can use this conclusion.
	CheckRunStateStale CheckRunState = "STALE"
	// CheckRunStateStartupFailure. The check run has failed at startup.
	CheckRunStateStartupFailure CheckRunState = "STARTUP_FAILURE"
	// CheckRunStateSuccess. The check run has succeeded.
	CheckRunStateSuccess CheckRunState = "SUCCESS"
	// CheckRunStateTimedOut. The check run has timed out.
	CheckRunStateTimedOut CheckRunState = "TIMED_OUT"
	// CheckRunStateWaiting. The check run is in waiting state.
	CheckRunStateWaiting CheckRunState = "WAITING"
)

type CheckRunType

type CheckRunType string

CheckRunType represents the possible types of check runs.

const (
	// CheckRunTypeAll. Every check run available.
	CheckRunTypeAll CheckRunType = "ALL"
	// CheckRunTypeLatest. The latest check run.
	CheckRunTypeLatest CheckRunType = "LATEST"
)

type CheckStatusState

type CheckStatusState string

CheckStatusState represents the possible states for a check suite or run status.

const (
	// CheckStatusStateQueued. The check suite or run has been queued.
	CheckStatusStateQueued CheckStatusState = "QUEUED"
	// CheckStatusStateInProgress. The check suite or run is in progress.
	CheckStatusStateInProgress CheckStatusState = "IN_PROGRESS"
	// CheckStatusStateCompleted. The check suite or run has been completed.
	CheckStatusStateCompleted CheckStatusState = "COMPLETED"
	// CheckStatusStateWaiting. The check suite or run is in waiting state.
	CheckStatusStateWaiting CheckStatusState = "WAITING"
	// CheckStatusStatePending. The check suite or run is in pending state.
	CheckStatusStatePending CheckStatusState = "PENDING"
	// CheckStatusStateRequested. The check suite or run has been requested.
	CheckStatusStateRequested CheckStatusState = "REQUESTED"
)

type CheckSuiteAutoTriggerPreference

type CheckSuiteAutoTriggerPreference struct {
	// The node ID of the application that owns the check suite.
	AppID ID "json:\"appId\""
	// Set to `true` to enable automatic creation of CheckSuite events upon pushes to the repository.
	Setting bool "json:\"setting\""
}

CheckSuiteAutoTriggerPreference represents the auto-trigger preferences that are available for check suites.

type CheckSuiteFilter

type CheckSuiteFilter struct {
	// Filters the check suites created by this application ID.
	AppID *int "json:\"appId,omitempty\""
	// Filters the check suites by this name.
	CheckName *string "json:\"checkName,omitempty\""
}

CheckSuiteFilter represents the filters that are available when fetching check suites.

type ClearLabelsFromLabelableInput

type ClearLabelsFromLabelableInput struct {
	// The id of the labelable object to clear the labels from.
	LabelableID ID "json:\"labelableId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ClearLabelsFromLabelableInput is an autogenerated input type of ClearLabelsFromLabelable.

type ClearProjectV2ItemFieldValueInput

type ClearProjectV2ItemFieldValueInput struct {
	// The ID of the Project.
	ProjectID ID "json:\"projectId\""
	// The ID of the item to be cleared.
	ItemID ID "json:\"itemId\""
	// The ID of the field to be cleared.
	FieldID ID "json:\"fieldId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ClearProjectV2ItemFieldValueInput is an autogenerated input type of ClearProjectV2ItemFieldValue.

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client is a GitHub GraphQL v4 client.

func NewClient

func NewClient(httpClient *http.Client) *Client

NewClient constructs a client for https://api.github.com/graphql. The *http.Client should add credentials/tokens to requests.

func NewEnterpriseClient

func NewEnterpriseClient(url string, httpClient *http.Client) *Client

NewEnterpriseClient constructs a client for the specified GitHub GraphQL v4 endpoint. The *http.Client should add credentials/tokens to requests.

func (*Client) Mutate

func (c *Client) Mutate(ctx context.Context, m any, input Input, variables map[string]any) (*http.Response, error)

Mutate does a mutation operation. m is a pointer to a struct that defines the GraphQL mutation, and also receives the response data.

See Query for more information.

func (*Client) Query

func (c *Client) Query(ctx context.Context, q any, variables map[string]any) (*http.Response, error)

Query does a query operation. q is a pointer to a struct that defines the GraphQL query, and also receives the response data.

If the HTTP response status and headers were received successfully then returns a non-nil *http.Response that reflects the status and headers. The body of the returned HTTP response is always closed.

If the GraphQL response was completely received and parsed, and contains GraphQL-level errors, an error of type *Error is returned that reflects the GraphQL-level errors.

Users should interpret any of the following as a transient error condition that may go away (after some time) by retrying: 1. The returned error, say x, implements interface{ Temporary() bool } and x.Temporary() is true. 2. The returned error wraps an error, say x, that implements interface{ Temporary() bool } and x.Temporary() is true. 3. The returned error, say x, implements interface{ Timeout() bool } and x.Timeout() is true. 4. The returned error wraps an error, say x, that implements interface{ Timeout() bool } and x.Timeout() is true. 5. The returned response has status code between 500 and 599. 6. The returned response has status code 429.

1, 2, 3 and 4 are known to be produced in the event of transient errors and timeouts by

  • the *http.Client;
  • the http.RoundTripper of the *http.Client when dialing, sending the HTTP request and reading the HTTP response; -and
  • the underlying connnection when reading the HTTP response body.

type CloneProjectInput

type CloneProjectInput struct {
	// The owner ID to create the project under.
	TargetOwnerID ID "json:\"targetOwnerId\""
	// The source project to clone.
	SourceID ID "json:\"sourceId\""
	// Whether or not to clone the source project's workflows.
	IncludeWorkflows bool "json:\"includeWorkflows\""
	// The name of the project.
	Name string "json:\"name\""
	// The description of the project.
	Body *string "json:\"body,omitempty\""
	// The visibility of the project, defaults to false (private).
	Public *bool "json:\"public,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CloneProjectInput is an autogenerated input type of CloneProject.

type CloneTemplateRepositoryInput

type CloneTemplateRepositoryInput struct {
	// The Node ID of the template repository.
	RepositoryID ID "json:\"repositoryId\""
	// The name of the new repository.
	Name string "json:\"name\""
	// The ID of the owner for the new repository.
	OwnerID ID "json:\"ownerId\""
	// A short description of the new repository.
	Description *string "json:\"description,omitempty\""
	// Indicates the repository's visibility level.
	Visibility RepositoryVisibility "json:\"visibility\""
	// Whether to copy all branches from the template to the new repository. Defaults to copying only the default branch of the template.
	IncludeAllBranches *bool "json:\"includeAllBranches,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CloneTemplateRepositoryInput is an autogenerated input type of CloneTemplateRepository.

type CloseDiscussionInput

type CloseDiscussionInput struct {
	// ID of the discussion to be closed.
	DiscussionID ID "json:\"discussionId\""
	// The reason why the discussion is being closed.
	Reason *DiscussionCloseReason "json:\"reason,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CloseDiscussionInput is an autogenerated input type of CloseDiscussion.

type CloseIssueInput

type CloseIssueInput struct {
	// ID of the issue to be closed.
	IssueID ID "json:\"issueId\""
	// The reason the issue is to be closed.
	StateReason *IssueClosedStateReason "json:\"stateReason,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CloseIssueInput is an autogenerated input type of CloseIssue.

type ClosePullRequestInput

type ClosePullRequestInput struct {
	// ID of the pull request to be closed.
	PullRequestID ID "json:\"pullRequestId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ClosePullRequestInput is an autogenerated input type of ClosePullRequest.

type CollaboratorAffiliation

type CollaboratorAffiliation string

CollaboratorAffiliation represents collaborators affiliation level with a subject.

const (
	// CollaboratorAffiliationOutside. All outside collaborators of an organization-owned subject.
	CollaboratorAffiliationOutside CollaboratorAffiliation = "OUTSIDE"
	// CollaboratorAffiliationDirect. All collaborators with permissions to an organization-owned subject, regardless of organization membership status.
	CollaboratorAffiliationDirect CollaboratorAffiliation = "DIRECT"
	// CollaboratorAffiliationAll. All collaborators the authenticated user can see.
	CollaboratorAffiliationAll CollaboratorAffiliation = "ALL"
)

type CommentAuthorAssociation

type CommentAuthorAssociation string

CommentAuthorAssociation represents a comment author association with repository.

const (
	// CommentAuthorAssociationMember. Author is a member of the organization that owns the repository.
	CommentAuthorAssociationMember CommentAuthorAssociation = "MEMBER"
	// CommentAuthorAssociationOwner. Author is the owner of the repository.
	CommentAuthorAssociationOwner CommentAuthorAssociation = "OWNER"
	// CommentAuthorAssociationMannequin. Author is a placeholder for an unclaimed user.
	CommentAuthorAssociationMannequin CommentAuthorAssociation = "MANNEQUIN"
	// CommentAuthorAssociationCollaborator. Author has been invited to collaborate on the repository.
	CommentAuthorAssociationCollaborator CommentAuthorAssociation = "COLLABORATOR"
	// CommentAuthorAssociationContributor. Author has previously committed to the repository.
	CommentAuthorAssociationContributor CommentAuthorAssociation = "CONTRIBUTOR"
	// CommentAuthorAssociationFirstTimeContributor. Author has not previously committed to the repository.
	CommentAuthorAssociationFirstTimeContributor CommentAuthorAssociation = "FIRST_TIME_CONTRIBUTOR"
	// CommentAuthorAssociationFirstTimer. Author has not previously committed to GitHub.
	CommentAuthorAssociationFirstTimer CommentAuthorAssociation = "FIRST_TIMER"
	// CommentAuthorAssociationNone. Author has no association with the repository.
	CommentAuthorAssociationNone CommentAuthorAssociation = "NONE"
)

type CommentCannotUpdateReason

type CommentCannotUpdateReason string

CommentCannotUpdateReason represents the possible errors that will prevent a user from updating a comment.

const (
	// CommentCannotUpdateReasonArchived. Unable to create comment because repository is archived.
	CommentCannotUpdateReasonArchived CommentCannotUpdateReason = "ARCHIVED"
	// CommentCannotUpdateReasonInsufficientAccess. You must be the author or have write access to this repository to update this comment.
	CommentCannotUpdateReasonInsufficientAccess CommentCannotUpdateReason = "INSUFFICIENT_ACCESS"
	// CommentCannotUpdateReasonLocked. Unable to create comment because issue is locked.
	CommentCannotUpdateReasonLocked CommentCannotUpdateReason = "LOCKED"
	// CommentCannotUpdateReasonLoginRequired. You must be logged in to update this comment.
	CommentCannotUpdateReasonLoginRequired CommentCannotUpdateReason = "LOGIN_REQUIRED"
	// CommentCannotUpdateReasonMaintenance. Repository is under maintenance.
	CommentCannotUpdateReasonMaintenance CommentCannotUpdateReason = "MAINTENANCE"
	// CommentCannotUpdateReasonVerifiedEmailRequired. At least one email address must be verified to update this comment.
	CommentCannotUpdateReasonVerifiedEmailRequired CommentCannotUpdateReason = "VERIFIED_EMAIL_REQUIRED"
	// CommentCannotUpdateReasonDenied. You cannot update this comment.
	CommentCannotUpdateReasonDenied CommentCannotUpdateReason = "DENIED"
)

type CommitAuthor

type CommitAuthor struct {
	// ID of a User to filter by. If non-null, only commits authored by this user will be returned. This field takes precedence over emails.
	ID *ID "json:\"id,omitempty\""
	// Email addresses to filter by. Commits authored by any of the specified email addresses will be returned.
	Emails *[]string "json:\"emails,omitempty\""
}

CommitAuthor represents specifies an author for filtering Git commits.

type CommitAuthorEmailPatternParametersInput

type CommitAuthorEmailPatternParametersInput struct {
	// How this rule will appear to users.
	Name *string "json:\"name,omitempty\""
	// If true, the rule will fail if the pattern matches.
	Negate *bool "json:\"negate,omitempty\""
	// The operator to use for matching.
	Operator string "json:\"operator\""
	// The pattern to match with.
	Pattern string "json:\"pattern\""
}

CommitAuthorEmailPatternParametersInput represents parameters to be used for the commit_author_email_pattern rule.

type CommitContributionOrder

type CommitContributionOrder struct {
	// The field by which to order commit contributions.
	Field CommitContributionOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

CommitContributionOrder represents ordering options for commit contribution connections.

type CommitContributionOrderField

type CommitContributionOrderField string

CommitContributionOrderField represents properties by which commit contribution connections can be ordered.

const (
	// CommitContributionOrderFieldOccurredAt. Order commit contributions by when they were made.
	CommitContributionOrderFieldOccurredAt CommitContributionOrderField = "OCCURRED_AT"
	// CommitContributionOrderFieldCommitCount. Order commit contributions by how many commits they represent.
	CommitContributionOrderFieldCommitCount CommitContributionOrderField = "COMMIT_COUNT"
)

type CommitMessage

type CommitMessage struct {
	// The headline of the message.
	Headline string "json:\"headline\""
	// The body of the message.
	Body *string "json:\"body,omitempty\""
}

CommitMessage represents a message to include with a new commit.

type CommitMessagePatternParametersInput

type CommitMessagePatternParametersInput struct {
	// How this rule will appear to users.
	Name *string "json:\"name,omitempty\""
	// If true, the rule will fail if the pattern matches.
	Negate *bool "json:\"negate,omitempty\""
	// The operator to use for matching.
	Operator string "json:\"operator\""
	// The pattern to match with.
	Pattern string "json:\"pattern\""
}

CommitMessagePatternParametersInput represents parameters to be used for the commit_message_pattern rule.

type CommittableBranch

type CommittableBranch struct {
	// The Node ID of the Ref to be updated.
	ID *ID "json:\"id,omitempty\""
	// The nameWithOwner of the repository to commit to.
	RepositoryNameWithOwner *string "json:\"repositoryNameWithOwner,omitempty\""
	// The unqualified name of the branch to append the commit to.
	BranchName *string "json:\"branchName,omitempty\""
}

CommittableBranch represents a git ref for a commit to be appended to.

The ref must be a branch, i.e. its fully qualified name must start with `refs/heads/` (although the input is not required to be fully qualified).

The Ref may be specified by its global node ID or by the `repositoryNameWithOwner` and `branchName`.

### Examples

Specify a branch using a global node ID:

{ "id": "MDM6UmVmMTpyZWZzL2hlYWRzL21haW4=" }

Specify a branch using `repositoryNameWithOwner` and `branchName`:

{
  "repositoryNameWithOwner": "github/graphql-client",
  "branchName": "main"
}.

type CommitterEmailPatternParametersInput

type CommitterEmailPatternParametersInput struct {
	// How this rule will appear to users.
	Name *string "json:\"name,omitempty\""
	// If true, the rule will fail if the pattern matches.
	Negate *bool "json:\"negate,omitempty\""
	// The operator to use for matching.
	Operator string "json:\"operator\""
	// The pattern to match with.
	Pattern string "json:\"pattern\""
}

CommitterEmailPatternParametersInput represents parameters to be used for the committer_email_pattern rule.

type ComparisonStatus

type ComparisonStatus string

ComparisonStatus represents the status of a git comparison between two refs.

const (
	// ComparisonStatusDiverged. The head ref is both ahead and behind of the base ref, indicating git history has diverged.
	ComparisonStatusDiverged ComparisonStatus = "DIVERGED"
	// ComparisonStatusAhead. The head ref is ahead of the base ref.
	ComparisonStatusAhead ComparisonStatus = "AHEAD"
	// ComparisonStatusBehind. The head ref is behind the base ref.
	ComparisonStatusBehind ComparisonStatus = "BEHIND"
	// ComparisonStatusIdentical. The head ref and base ref are identical.
	ComparisonStatusIdentical ComparisonStatus = "IDENTICAL"
)

type ContributionLevel

type ContributionLevel string

ContributionLevel represents varying levels of contributions from none to many.

const (
	// ContributionLevelNone. No contributions occurred.
	ContributionLevelNone ContributionLevel = "NONE"
	// ContributionLevelFirstQuartile. Lowest 25% of days of contributions.
	ContributionLevelFirstQuartile ContributionLevel = "FIRST_QUARTILE"
	// ContributionLevelSecondQuartile. Second lowest 25% of days of contributions. More contributions than the first quartile.
	ContributionLevelSecondQuartile ContributionLevel = "SECOND_QUARTILE"
	// ContributionLevelThirdQuartile. Second highest 25% of days of contributions. More contributions than second quartile, less than the fourth quartile.
	ContributionLevelThirdQuartile ContributionLevel = "THIRD_QUARTILE"
	// ContributionLevelFourthQuartile. Highest 25% of days of contributions. More contributions than the third quartile.
	ContributionLevelFourthQuartile ContributionLevel = "FOURTH_QUARTILE"
)

type ContributionOrder

type ContributionOrder struct {
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

ContributionOrder represents ordering options for contribution connections.

type ConvertProjectCardNoteToIssueInput

type ConvertProjectCardNoteToIssueInput struct {
	// The ProjectCard ID to convert.
	ProjectCardID ID "json:\"projectCardId\""
	// The ID of the repository to create the issue in.
	RepositoryID ID "json:\"repositoryId\""
	// The title of the newly created issue. Defaults to the card's note text.
	Title *string "json:\"title,omitempty\""
	// The body of the newly created issue.
	Body *string "json:\"body,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ConvertProjectCardNoteToIssueInput is an autogenerated input type of ConvertProjectCardNoteToIssue.

type ConvertPullRequestToDraftInput

type ConvertPullRequestToDraftInput struct {
	// ID of the pull request to convert to draft.
	PullRequestID ID "json:\"pullRequestId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ConvertPullRequestToDraftInput is an autogenerated input type of ConvertPullRequestToDraft.

type CopyProjectV2Input

type CopyProjectV2Input struct {
	// The ID of the source Project to copy.
	ProjectID ID "json:\"projectId\""
	// The owner ID of the new project.
	OwnerID ID "json:\"ownerId\""
	// The title of the project.
	Title string "json:\"title\""
	// Include draft issues in the new project.
	IncludeDraftIssues *bool "json:\"includeDraftIssues,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CopyProjectV2Input is an autogenerated input type of CopyProjectV2.

type CreateAttributionInvitationInput

type CreateAttributionInvitationInput struct {
	// The Node ID of the owner scoping the reattributable data.
	OwnerID ID "json:\"ownerId\""
	// The Node ID of the account owning the data to reattribute.
	SourceID ID "json:\"sourceId\""
	// The Node ID of the account which may claim the data.
	TargetID ID "json:\"targetId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateAttributionInvitationInput is an autogenerated input type of CreateAttributionInvitation.

type CreateBranchProtectionRuleInput

type CreateBranchProtectionRuleInput struct {
	// The global relay id of the repository in which a new branch protection rule should be created in.
	RepositoryID ID "json:\"repositoryId\""
	// The glob-like pattern used to determine matching branches.
	Pattern string "json:\"pattern\""
	// Are approving reviews required to update matching branches.
	RequiresApprovingReviews *bool "json:\"requiresApprovingReviews,omitempty\""
	// Number of approving reviews required to update matching branches.
	RequiredApprovingReviewCount *int "json:\"requiredApprovingReviewCount,omitempty\""
	// Are commits required to be signed.
	RequiresCommitSignatures *bool "json:\"requiresCommitSignatures,omitempty\""
	// Are merge commits prohibited from being pushed to this branch.
	RequiresLinearHistory *bool "json:\"requiresLinearHistory,omitempty\""
	// Is branch creation a protected operation.
	BlocksCreations *bool "json:\"blocksCreations,omitempty\""
	// Are force pushes allowed on this branch.
	AllowsForcePushes *bool "json:\"allowsForcePushes,omitempty\""
	// Can this branch be deleted.
	AllowsDeletions *bool "json:\"allowsDeletions,omitempty\""
	// Can admins overwrite branch protection.
	IsAdminEnforced *bool "json:\"isAdminEnforced,omitempty\""
	// Are status checks required to update matching branches.
	RequiresStatusChecks *bool "json:\"requiresStatusChecks,omitempty\""
	// Are branches required to be up to date before merging.
	RequiresStrictStatusChecks *bool "json:\"requiresStrictStatusChecks,omitempty\""
	// Are reviews from code owners required to update matching branches.
	RequiresCodeOwnerReviews *bool "json:\"requiresCodeOwnerReviews,omitempty\""
	// Will new commits pushed to matching branches dismiss pull request review approvals.
	DismissesStaleReviews *bool "json:\"dismissesStaleReviews,omitempty\""
	// Is dismissal of pull request reviews restricted.
	RestrictsReviewDismissals *bool "json:\"restrictsReviewDismissals,omitempty\""
	// A list of User, Team, or App IDs allowed to dismiss reviews on pull requests targeting matching branches.
	ReviewDismissalActorIDs *[]ID "json:\"reviewDismissalActorIds,omitempty\""
	// A list of User, Team, or App IDs allowed to bypass pull requests targeting matching branches.
	BypassPullRequestActorIDs *[]ID "json:\"bypassPullRequestActorIds,omitempty\""
	// A list of User, Team, or App IDs allowed to bypass force push targeting matching branches.
	BypassForcePushActorIDs *[]ID "json:\"bypassForcePushActorIds,omitempty\""
	// Is pushing to matching branches restricted.
	RestrictsPushes *bool "json:\"restrictsPushes,omitempty\""
	// A list of User, Team, or App IDs allowed to push to matching branches.
	PushActorIDs *[]ID "json:\"pushActorIds,omitempty\""
	// List of required status check contexts that must pass for commits to be accepted to matching branches.
	RequiredStatusCheckContexts *[]string "json:\"requiredStatusCheckContexts,omitempty\""
	// The list of required status checks.
	RequiredStatusChecks *[]RequiredStatusCheckInput "json:\"requiredStatusChecks,omitempty\""
	// Are successful deployments required before merging.
	RequiresDeployments *bool "json:\"requiresDeployments,omitempty\""
	// The list of required deployment environments.
	RequiredDeploymentEnvironments *[]string "json:\"requiredDeploymentEnvironments,omitempty\""
	// Are conversations required to be resolved before merging.
	RequiresConversationResolution *bool "json:\"requiresConversationResolution,omitempty\""
	// Whether the most recent push must be approved by someone other than the person who pushed it.
	RequireLastPushApproval *bool "json:\"requireLastPushApproval,omitempty\""
	// Whether to set the branch as read-only. If this is true, users will not be able to push to the branch.
	LockBranch *bool "json:\"lockBranch,omitempty\""
	// Whether users can pull changes from upstream when the branch is locked. Set to `true` to allow fork syncing. Set to `false` to prevent fork syncing.
	LockAllowsFetchAndMerge *bool "json:\"lockAllowsFetchAndMerge,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateBranchProtectionRuleInput is an autogenerated input type of CreateBranchProtectionRule.

type CreateCheckRunInput

type CreateCheckRunInput struct {
	// The node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The name of the check.
	Name string "json:\"name\""
	// The SHA of the head commit.
	HeadSha GitObjectID "json:\"headSha\""
	// The URL of the integrator's site that has the full details of the check.
	DetailsURL *URI "json:\"detailsUrl,omitempty\""
	// A reference for the run on the integrator's system.
	ExternalID *string "json:\"externalId,omitempty\""
	// The current status.
	Status *RequestableCheckStatusState "json:\"status,omitempty\""
	// The time that the check run began.
	StartedAt *DateTime "json:\"startedAt,omitempty\""
	// The final conclusion of the check.
	Conclusion *CheckConclusionState "json:\"conclusion,omitempty\""
	// The time that the check run finished.
	CompletedAt *DateTime "json:\"completedAt,omitempty\""
	// Descriptive details about the run.
	Output *CheckRunOutput "json:\"output,omitempty\""
	// Possible further actions the integrator can perform, which a user may trigger.
	Actions *[]CheckRunAction "json:\"actions,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateCheckRunInput is an autogenerated input type of CreateCheckRun.

type CreateCheckSuiteInput

type CreateCheckSuiteInput struct {
	// The Node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The SHA of the head commit.
	HeadSha GitObjectID "json:\"headSha\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateCheckSuiteInput is an autogenerated input type of CreateCheckSuite.

type CreateCommitOnBranchInput

type CreateCommitOnBranchInput struct {
	// The Ref to be updated.  Must be a branch.
	Branch CommittableBranch "json:\"branch\""
	// A description of changes to files in this commit.
	FileChanges *FileChanges "json:\"fileChanges,omitempty\""
	// The commit message the be included with the commit.
	Message CommitMessage "json:\"message\""
	// The git commit oid expected at the head of the branch prior to the commit.
	ExpectedHeadOid GitObjectID "json:\"expectedHeadOid\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateCommitOnBranchInput is an autogenerated input type of CreateCommitOnBranch.

type CreateDiscussionInput

type CreateDiscussionInput struct {
	// The id of the repository on which to create the discussion.
	RepositoryID ID "json:\"repositoryId\""
	// The title of the discussion.
	Title string "json:\"title\""
	// The body of the discussion.
	Body string "json:\"body\""
	// The id of the discussion category to associate with this discussion.
	CategoryID ID "json:\"categoryId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateDiscussionInput is an autogenerated input type of CreateDiscussion.

type CreateEnterpriseOrganizationInput

type CreateEnterpriseOrganizationInput struct {
	// The ID of the enterprise owning the new organization.
	EnterpriseID ID "json:\"enterpriseId\""
	// The login of the new organization.
	Login string "json:\"login\""
	// The profile name of the new organization.
	ProfileName string "json:\"profileName\""
	// The email used for sending billing receipts.
	BillingEmail string "json:\"billingEmail\""
	// The logins for the administrators of the new organization.
	AdminLogins []string "json:\"adminLogins\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateEnterpriseOrganizationInput is an autogenerated input type of CreateEnterpriseOrganization.

type CreateEnvironmentInput

type CreateEnvironmentInput struct {
	// The node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The name of the environment.
	Name string "json:\"name\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateEnvironmentInput is an autogenerated input type of CreateEnvironment.

type CreateIPAllowListEntryInput

type CreateIPAllowListEntryInput struct {
	// The ID of the owner for which to create the new IP allow list entry.
	OwnerID ID "json:\"ownerId\""
	// An IP address or range of addresses in CIDR notation.
	AllowListValue string "json:\"allowListValue\""
	// An optional name for the IP allow list entry.
	Name *string "json:\"name,omitempty\""
	// Whether the IP allow list entry is active when an IP allow list is enabled.
	IsActive bool "json:\"isActive\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateIPAllowListEntryInput is an autogenerated input type of CreateIpAllowListEntry.

type CreateIssueInput

type CreateIssueInput struct {
	// The Node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The title for the issue.
	Title string "json:\"title\""
	// The body for the issue description.
	Body *string "json:\"body,omitempty\""
	// The Node ID for the user assignee for this issue.
	AssigneeIDs *[]ID "json:\"assigneeIds,omitempty\""
	// The Node ID of the milestone for this issue.
	MilestoneID *ID "json:\"milestoneId,omitempty\""
	// An array of Node IDs of labels for this issue.
	LabelIDs *[]ID "json:\"labelIds,omitempty\""
	// An array of Node IDs for projects associated with this issue.
	ProjectIDs *[]ID "json:\"projectIds,omitempty\""
	// The name of an issue template in the repository, assigns labels and assignees from the template to the issue.
	IssueTemplate *string "json:\"issueTemplate,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateIssueInput is an autogenerated input type of CreateIssue.

type CreateLinkedBranchInput

type CreateLinkedBranchInput struct {
	// ID of the issue to link to.
	IssueID ID "json:\"issueId\""
	// The commit SHA to base the new branch on.
	Oid GitObjectID "json:\"oid\""
	// The name of the new branch. Defaults to issue number and title.
	Name *string "json:\"name,omitempty\""
	// ID of the repository to create the branch in. Defaults to the issue repository.
	RepositoryID *ID "json:\"repositoryId,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateLinkedBranchInput is an autogenerated input type of CreateLinkedBranch.

type CreateMigrationSourceInput

type CreateMigrationSourceInput struct {
	// The migration source name.
	Name string "json:\"name\""
	// The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`.
	URL *string "json:\"url,omitempty\""
	// The migration source access token.
	AccessToken *string "json:\"accessToken,omitempty\""
	// The migration source type.
	Type MigrationSourceType "json:\"type\""
	// The ID of the organization that will own the migration source.
	OwnerID ID "json:\"ownerId\""
	// The GitHub personal access token of the user importing to the target repository.
	GitHubPat *string "json:\"githubPat,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateMigrationSourceInput is an autogenerated input type of CreateMigrationSource.

type CreateProjectInput

type CreateProjectInput struct {
	// The owner ID to create the project under.
	OwnerID ID "json:\"ownerId\""
	// The name of project.
	Name string "json:\"name\""
	// The description of project.
	Body *string "json:\"body,omitempty\""
	// The name of the GitHub-provided template.
	Template *ProjectTemplate "json:\"template,omitempty\""
	// A list of repository IDs to create as linked repositories for the project.
	RepositoryIDs *[]ID "json:\"repositoryIds,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateProjectInput is an autogenerated input type of CreateProject.

type CreateProjectV2FieldInput

type CreateProjectV2FieldInput struct {
	// The ID of the Project to create the field in.
	ProjectID ID "json:\"projectId\""
	// The data type of the field.
	DataType ProjectV2CustomFieldType "json:\"dataType\""
	// The name of the field.
	Name string "json:\"name\""
	// Options for a single select field. At least one value is required if data_type is SINGLE_SELECT.
	SingleSelectOptions *[]ProjectV2SingleSelectFieldOptionInput "json:\"singleSelectOptions,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateProjectV2FieldInput is an autogenerated input type of CreateProjectV2Field.

type CreateProjectV2Input

type CreateProjectV2Input struct {
	// The owner ID to create the project under.
	OwnerID ID "json:\"ownerId\""
	// The title of the project.
	Title string "json:\"title\""
	// The repository to link the project to.
	RepositoryID *ID "json:\"repositoryId,omitempty\""
	// The team to link the project to. The team will be granted read permissions.
	TeamID *ID "json:\"teamId,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateProjectV2Input is an autogenerated input type of CreateProjectV2.

type CreatePullRequestInput

type CreatePullRequestInput struct {
	// The Node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The name of the branch you want your changes pulled into. This should be an existing branch
	// on the current repository. You cannot update the base branch on a pull request to point
	// to another repository.
	BaseRefName string "json:\"baseRefName\""
	// The name of the branch where your changes are implemented. For cross-repository pull requests
	// in the same network, namespace `head_ref_name` with a user like this: `username:branch`.
	HeadRefName string "json:\"headRefName\""
	// The Node ID of the head repository.
	HeadRepositoryID *ID "json:\"headRepositoryId,omitempty\""
	// The title of the pull request.
	Title string "json:\"title\""
	// The contents of the pull request.
	Body *string "json:\"body,omitempty\""
	// Indicates whether maintainers can modify the pull request.
	MaintainerCanModify *bool "json:\"maintainerCanModify,omitempty\""
	// Indicates whether this pull request should be a draft.
	Draft *bool "json:\"draft,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreatePullRequestInput is an autogenerated input type of CreatePullRequest.

type CreateRefInput

type CreateRefInput struct {
	// The Node ID of the Repository to create the Ref in.
	RepositoryID ID "json:\"repositoryId\""
	// The fully qualified name of the new Ref (ie: `refs/heads/my_new_branch`).
	Name string "json:\"name\""
	// The GitObjectID that the new Ref shall target. Must point to a commit.
	Oid GitObjectID "json:\"oid\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateRefInput is an autogenerated input type of CreateRef.

type CreateRepositoryInput

type CreateRepositoryInput struct {
	// The name of the new repository.
	Name string "json:\"name\""
	// The ID of the owner for the new repository.
	OwnerID *ID "json:\"ownerId,omitempty\""
	// A short description of the new repository.
	Description *string "json:\"description,omitempty\""
	// Indicates the repository's visibility level.
	Visibility RepositoryVisibility "json:\"visibility\""
	// Whether this repository should be marked as a template such that anyone who can access it can create new repositories with the same files and directory structure.
	Template *bool "json:\"template,omitempty\""
	// The URL for a web page about this repository.
	HomepageURL *URI "json:\"homepageUrl,omitempty\""
	// Indicates if the repository should have the wiki feature enabled.
	HasWikiEnabled *bool "json:\"hasWikiEnabled,omitempty\""
	// Indicates if the repository should have the issues feature enabled.
	HasIssuesEnabled *bool "json:\"hasIssuesEnabled,omitempty\""
	// When an organization is specified as the owner, this ID identifies the team that should be granted access to the new repository.
	TeamID *ID "json:\"teamId,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateRepositoryInput is an autogenerated input type of CreateRepository.

type CreateRepositoryRulesetInput

type CreateRepositoryRulesetInput struct {
	// The global relay id of the source in which a new ruleset should be created in.
	SourceID ID "json:\"sourceId\""
	// The name of the ruleset.
	Name string "json:\"name\""
	// The target of the ruleset.
	Target *RepositoryRulesetTarget "json:\"target,omitempty\""
	// The list of rules for this ruleset.
	Rules *[]RepositoryRuleInput "json:\"rules,omitempty\""
	// The set of conditions for this ruleset.
	Conditions RepositoryRuleConditionsInput "json:\"conditions\""
	// The enforcement level for this ruleset.
	Enforcement RuleEnforcement "json:\"enforcement\""
	// A list of actors that are allowed to bypass rules in this ruleset.
	BypassActors *[]RepositoryRulesetBypassActorInput "json:\"bypassActors,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateRepositoryRulesetInput is an autogenerated input type of CreateRepositoryRuleset.

type CreateSponsorsListingInput

type CreateSponsorsListingInput struct {
	// The username of the organization to create a GitHub Sponsors profile for, if desired. Defaults to creating a GitHub Sponsors profile for the authenticated user if omitted.
	SponsorableLogin *string "json:\"sponsorableLogin,omitempty\""
	// The username of the supported fiscal host's GitHub organization, if you want to receive sponsorship payouts through a fiscal host rather than directly to a bank account. For example, 'Open-Source-Collective' for Open Source Collective or 'numfocus' for numFOCUS. Case insensitive. See https://docs.github.com/sponsors/receiving-sponsorships-through-github-sponsors/using-a-fiscal-host-to-receive-github-sponsors-payouts for more information.
	FiscalHostLogin *string "json:\"fiscalHostLogin,omitempty\""
	// The URL for your profile page on the fiscal host's website, e.g., https://opencollective.com/babel or https://numfocus.org/project/bokeh. Required if fiscalHostLogin is specified.
	FiscallyHostedProjectProfileURL *string "json:\"fiscallyHostedProjectProfileUrl,omitempty\""
	// The country or region where the sponsorable's bank account is located. Required if fiscalHostLogin is not specified, ignored when fiscalHostLogin is specified.
	BillingCountryOrRegionCode *SponsorsCountryOrRegionCode "json:\"billingCountryOrRegionCode,omitempty\""
	// The country or region where the sponsorable resides. This is for tax purposes. Required if the sponsorable is yourself, ignored when sponsorableLogin specifies an organization.
	ResidenceCountryOrRegionCode *SponsorsCountryOrRegionCode "json:\"residenceCountryOrRegionCode,omitempty\""
	// The email address we should use to contact you about the GitHub Sponsors profile being created. This will not be shared publicly. Must be a verified email address already on your GitHub account. Only relevant when the sponsorable is yourself. Defaults to your primary email address on file if omitted.
	ContactEmail *string "json:\"contactEmail,omitempty\""
	// Provide an introduction to serve as the main focus that appears on your GitHub Sponsors profile. It's a great opportunity to help potential sponsors learn more about you, your work, and why their sponsorship is important to you. GitHub-flavored Markdown is supported.
	FullDescription *string "json:\"fullDescription,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateSponsorsListingInput is an autogenerated input type of CreateSponsorsListing.

type CreateSponsorsTierInput

type CreateSponsorsTierInput struct {
	// The ID of the user or organization who owns the GitHub Sponsors profile. Defaults to the current user if omitted and sponsorableLogin is not given.
	SponsorableID *ID "json:\"sponsorableId,omitempty\""
	// The username of the user or organization who owns the GitHub Sponsors profile. Defaults to the current user if omitted and sponsorableId is not given.
	SponsorableLogin *string "json:\"sponsorableLogin,omitempty\""
	// The value of the new tier in US dollars. Valid values: 1-12000.
	Amount int "json:\"amount\""
	// Whether sponsorships using this tier should happen monthly/yearly or just once.
	IsRecurring *bool "json:\"isRecurring,omitempty\""
	// Optional ID of the private repository that sponsors at this tier should gain read-only access to. Must be owned by an organization.
	RepositoryID *ID "json:\"repositoryId,omitempty\""
	// Optional login of the organization owner of the private repository that sponsors at this tier should gain read-only access to. Necessary if repositoryName is given. Will be ignored if repositoryId is given.
	RepositoryOwnerLogin *string "json:\"repositoryOwnerLogin,omitempty\""
	// Optional name of the private repository that sponsors at this tier should gain read-only access to. Must be owned by an organization. Necessary if repositoryOwnerLogin is given. Will be ignored if repositoryId is given.
	RepositoryName *string "json:\"repositoryName,omitempty\""
	// Optional message new sponsors at this tier will receive.
	WelcomeMessage *string "json:\"welcomeMessage,omitempty\""
	// A description of what this tier is, what perks sponsors might receive, what a sponsorship at this tier means for you, etc.
	Description string "json:\"description\""
	// Whether to make the tier available immediately for sponsors to choose. Defaults to creating a draft tier that will not be publicly visible.
	Publish *bool "json:\"publish,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateSponsorsTierInput is an autogenerated input type of CreateSponsorsTier.

type CreateSponsorshipInput

type CreateSponsorshipInput struct {
	// The ID of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorLogin is not given.
	SponsorID *ID "json:\"sponsorId,omitempty\""
	// The username of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorId is not given.
	SponsorLogin *string "json:\"sponsorLogin,omitempty\""
	// The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given.
	SponsorableID *ID "json:\"sponsorableId,omitempty\""
	// The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given.
	SponsorableLogin *string "json:\"sponsorableLogin,omitempty\""
	// The ID of one of sponsorable's existing tiers to sponsor at. Required if amount is not specified.
	TierID *ID "json:\"tierId,omitempty\""
	// The amount to pay to the sponsorable in US dollars. Required if a tierId is not specified. Valid values: 1-12000.
	Amount *int "json:\"amount,omitempty\""
	// Whether the sponsorship should happen monthly/yearly or just this one time. Required if a tierId is not specified.
	IsRecurring *bool "json:\"isRecurring,omitempty\""
	// Whether the sponsor should receive email updates from the sponsorable.
	ReceiveEmails *bool "json:\"receiveEmails,omitempty\""
	// Specify whether others should be able to see that the sponsor is sponsoring the sponsorable. Public visibility still does not reveal which tier is used.
	PrivacyLevel *SponsorshipPrivacy "json:\"privacyLevel,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateSponsorshipInput is an autogenerated input type of CreateSponsorship.

type CreateSponsorshipsInput

type CreateSponsorshipsInput struct {
	// The username of the user or organization who is acting as the sponsor, paying for the sponsorships.
	SponsorLogin string "json:\"sponsorLogin\""
	// The list of maintainers to sponsor and for how much apiece.
	Sponsorships []BulkSponsorship "json:\"sponsorships\""
	// Whether the sponsor should receive email updates from the sponsorables.
	ReceiveEmails *bool "json:\"receiveEmails,omitempty\""
	// Specify whether others should be able to see that the sponsor is sponsoring the sponsorables. Public visibility still does not reveal the dollar value of the sponsorship.
	PrivacyLevel *SponsorshipPrivacy "json:\"privacyLevel,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateSponsorshipsInput is an autogenerated input type of CreateSponsorships.

type CreateTeamDiscussionCommentInput

type CreateTeamDiscussionCommentInput struct {
	// The ID of the discussion to which the comment belongs. This field is required.
	//
	// **Upcoming Change on 2024-07-01 UTC**
	// **Description:** `discussionId` will be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.
	// **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions.
	DiscussionID *ID "json:\"discussionId,omitempty\""
	// The content of the comment. This field is required.
	//
	// **Upcoming Change on 2024-07-01 UTC**
	// **Description:** `body` will be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.
	// **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions.
	Body *string "json:\"body,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateTeamDiscussionCommentInput is an autogenerated input type of CreateTeamDiscussionComment.

type CreateTeamDiscussionInput

type CreateTeamDiscussionInput struct {
	// The ID of the team to which the discussion belongs. This field is required.
	//
	// **Upcoming Change on 2024-07-01 UTC**
	// **Description:** `teamId` will be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.
	// **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions.
	TeamID *ID "json:\"teamId,omitempty\""
	// The title of the discussion. This field is required.
	//
	// **Upcoming Change on 2024-07-01 UTC**
	// **Description:** `title` will be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.
	// **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions.
	Title *string "json:\"title,omitempty\""
	// The content of the discussion. This field is required.
	//
	// **Upcoming Change on 2024-07-01 UTC**
	// **Description:** `body` will be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.
	// **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions.
	Body *string "json:\"body,omitempty\""
	// If true, restricts the visibility of this discussion to team members and organization admins. If false or not specified, allows any organization member to view this discussion.
	//
	// **Upcoming Change on 2024-07-01 UTC**
	// **Description:** `private` will be removed. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement.
	// **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions.
	Private *bool "json:\"private,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

CreateTeamDiscussionInput is an autogenerated input type of CreateTeamDiscussion.

type Date

type Date struct {
	S string
}

Date represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as Date in GraphQL as expected by the GitHub API.

Date is an ISO-8601 encoded date string.

func (Date) MarshalText

func (d Date) MarshalText() ([]byte, error)

func (*Date) UnmarshalText

func (d *Date) UnmarshalText(b []byte) error

type DateTime

type DateTime struct {
	time.Time
}

DateTime represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as DateTime in GraphQL as expected by the GitHub API.

DateTime is an ISO-8601 encoded UTC date string.

type DeclineTopicSuggestionInput

type DeclineTopicSuggestionInput struct {
	// The Node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The name of the suggested topic.
	Name string "json:\"name\""
	// The reason why the suggested topic is declined.
	Reason TopicSuggestionDeclineReason "json:\"reason\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeclineTopicSuggestionInput is an autogenerated input type of DeclineTopicSuggestion.

type DefaultRepositoryPermissionField

type DefaultRepositoryPermissionField string

DefaultRepositoryPermissionField represents the possible base permissions for repositories.

const (
	// DefaultRepositoryPermissionFieldNone. No access.
	DefaultRepositoryPermissionFieldNone DefaultRepositoryPermissionField = "NONE"
	// DefaultRepositoryPermissionFieldRead. Can read repos by default.
	DefaultRepositoryPermissionFieldRead DefaultRepositoryPermissionField = "READ"
	// DefaultRepositoryPermissionFieldWrite. Can read and write repos by default.
	DefaultRepositoryPermissionFieldWrite DefaultRepositoryPermissionField = "WRITE"
	// DefaultRepositoryPermissionFieldAdmin. Can read, write, and administrate repos by default.
	DefaultRepositoryPermissionFieldAdmin DefaultRepositoryPermissionField = "ADMIN"
)

type DeleteBranchProtectionRuleInput

type DeleteBranchProtectionRuleInput struct {
	// The global relay id of the branch protection rule to be deleted.
	BranchProtectionRuleID ID "json:\"branchProtectionRuleId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteBranchProtectionRuleInput is an autogenerated input type of DeleteBranchProtectionRule.

type DeleteDeploymentInput

type DeleteDeploymentInput struct {
	// The Node ID of the deployment to be deleted.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteDeploymentInput is an autogenerated input type of DeleteDeployment.

type DeleteDiscussionCommentInput

type DeleteDiscussionCommentInput struct {
	// The Node id of the discussion comment to delete.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteDiscussionCommentInput is an autogenerated input type of DeleteDiscussionComment.

type DeleteDiscussionInput

type DeleteDiscussionInput struct {
	// The id of the discussion to delete.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteDiscussionInput is an autogenerated input type of DeleteDiscussion.

type DeleteEnvironmentInput

type DeleteEnvironmentInput struct {
	// The Node ID of the environment to be deleted.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteEnvironmentInput is an autogenerated input type of DeleteEnvironment.

type DeleteIPAllowListEntryInput

type DeleteIPAllowListEntryInput struct {
	// The ID of the IP allow list entry to delete.
	IPAllowListEntryID ID "json:\"ipAllowListEntryId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteIPAllowListEntryInput is an autogenerated input type of DeleteIpAllowListEntry.

type DeleteIssueCommentInput

type DeleteIssueCommentInput struct {
	// The ID of the comment to delete.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteIssueCommentInput is an autogenerated input type of DeleteIssueComment.

type DeleteIssueInput

type DeleteIssueInput struct {
	// The ID of the issue to delete.
	IssueID ID "json:\"issueId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteIssueInput is an autogenerated input type of DeleteIssue.

type DeleteLinkedBranchInput

type DeleteLinkedBranchInput struct {
	// The ID of the linked branch.
	LinkedBranchID ID "json:\"linkedBranchId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteLinkedBranchInput is an autogenerated input type of DeleteLinkedBranch.

type DeleteProjectCardInput

type DeleteProjectCardInput struct {
	// The id of the card to delete.
	CardID ID "json:\"cardId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteProjectCardInput is an autogenerated input type of DeleteProjectCard.

type DeleteProjectColumnInput

type DeleteProjectColumnInput struct {
	// The id of the column to delete.
	ColumnID ID "json:\"columnId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteProjectColumnInput is an autogenerated input type of DeleteProjectColumn.

type DeleteProjectInput

type DeleteProjectInput struct {
	// The Project ID to update.
	ProjectID ID "json:\"projectId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteProjectInput is an autogenerated input type of DeleteProject.

type DeleteProjectV2FieldInput

type DeleteProjectV2FieldInput struct {
	// The ID of the field to delete.
	FieldID ID "json:\"fieldId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteProjectV2FieldInput is an autogenerated input type of DeleteProjectV2Field.

type DeleteProjectV2Input

type DeleteProjectV2Input struct {
	// The ID of the Project to delete.
	ProjectID ID "json:\"projectId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteProjectV2Input is an autogenerated input type of DeleteProjectV2.

type DeleteProjectV2ItemInput

type DeleteProjectV2ItemInput struct {
	// The ID of the Project from which the item should be removed.
	ProjectID ID "json:\"projectId\""
	// The ID of the item to be removed.
	ItemID ID "json:\"itemId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteProjectV2ItemInput is an autogenerated input type of DeleteProjectV2Item.

type DeleteProjectV2WorkflowInput

type DeleteProjectV2WorkflowInput struct {
	// The ID of the workflow to be removed.
	WorkflowID ID "json:\"workflowId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteProjectV2WorkflowInput is an autogenerated input type of DeleteProjectV2Workflow.

type DeletePullRequestReviewCommentInput

type DeletePullRequestReviewCommentInput struct {
	// The ID of the comment to delete.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeletePullRequestReviewCommentInput is an autogenerated input type of DeletePullRequestReviewComment.

type DeletePullRequestReviewInput

type DeletePullRequestReviewInput struct {
	// The Node ID of the pull request review to delete.
	PullRequestReviewID ID "json:\"pullRequestReviewId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeletePullRequestReviewInput is an autogenerated input type of DeletePullRequestReview.

type DeleteRefInput

type DeleteRefInput struct {
	// The Node ID of the Ref to be deleted.
	RefID ID "json:\"refId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteRefInput is an autogenerated input type of DeleteRef.

type DeleteRepositoryRulesetInput

type DeleteRepositoryRulesetInput struct {
	// The global relay id of the repository ruleset to be deleted.
	RepositoryRulesetID ID "json:\"repositoryRulesetId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteRepositoryRulesetInput is an autogenerated input type of DeleteRepositoryRuleset.

type DeleteTeamDiscussionCommentInput

type DeleteTeamDiscussionCommentInput struct {
	// The ID of the comment to delete.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteTeamDiscussionCommentInput is an autogenerated input type of DeleteTeamDiscussionComment.

type DeleteTeamDiscussionInput

type DeleteTeamDiscussionInput struct {
	// The discussion ID to delete.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteTeamDiscussionInput is an autogenerated input type of DeleteTeamDiscussion.

type DeleteVerifiableDomainInput

type DeleteVerifiableDomainInput struct {
	// The ID of the verifiable domain to delete.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DeleteVerifiableDomainInput is an autogenerated input type of DeleteVerifiableDomain.

type DependencyGraphEcosystem

type DependencyGraphEcosystem string

DependencyGraphEcosystem represents the possible ecosystems of a dependency graph package.

const (
	// DependencyGraphEcosystemRubygems. Ruby gems hosted at RubyGems.org.
	DependencyGraphEcosystemRubygems DependencyGraphEcosystem = "RUBYGEMS"
	// DependencyGraphEcosystemNpm. JavaScript packages hosted at npmjs.com.
	DependencyGraphEcosystemNpm DependencyGraphEcosystem = "NPM"
	// DependencyGraphEcosystemPip. Python packages hosted at PyPI.org.
	DependencyGraphEcosystemPip DependencyGraphEcosystem = "PIP"
	// DependencyGraphEcosystemMaven. Java artifacts hosted at the Maven central repository.
	DependencyGraphEcosystemMaven DependencyGraphEcosystem = "MAVEN"
	// DependencyGraphEcosystemNuget. .NET packages hosted at the NuGet Gallery.
	DependencyGraphEcosystemNuget DependencyGraphEcosystem = "NUGET"
	// DependencyGraphEcosystemComposer. PHP packages hosted at packagist.org.
	DependencyGraphEcosystemComposer DependencyGraphEcosystem = "COMPOSER"
	// DependencyGraphEcosystemGo. Go modules.
	DependencyGraphEcosystemGo DependencyGraphEcosystem = "GO"
	// DependencyGraphEcosystemActions. GitHub Actions.
	DependencyGraphEcosystemActions DependencyGraphEcosystem = "ACTIONS"
	// DependencyGraphEcosystemRust. Rust crates.
	DependencyGraphEcosystemRust DependencyGraphEcosystem = "RUST"
	// DependencyGraphEcosystemPub. Dart packages hosted at pub.dev.
	DependencyGraphEcosystemPub DependencyGraphEcosystem = "PUB"
	// DependencyGraphEcosystemSwift. Swift packages.
	DependencyGraphEcosystemSwift DependencyGraphEcosystem = "SWIFT"
)

type DeploymentOrder

type DeploymentOrder struct {
	// The field to order deployments by.
	Field DeploymentOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

DeploymentOrder represents ordering options for deployment connections.

type DeploymentOrderField

type DeploymentOrderField string

DeploymentOrderField represents properties by which deployment connections can be ordered.

const (
	// DeploymentOrderFieldCreatedAt. Order collection by creation time.
	DeploymentOrderFieldCreatedAt DeploymentOrderField = "CREATED_AT"
)

type DeploymentProtectionRuleType

type DeploymentProtectionRuleType string

DeploymentProtectionRuleType represents the possible protection rule types.

const (
	// DeploymentProtectionRuleTypeRequiredReviewers. Required reviewers.
	DeploymentProtectionRuleTypeRequiredReviewers DeploymentProtectionRuleType = "REQUIRED_REVIEWERS"
	// DeploymentProtectionRuleTypeWaitTimer. Wait timer.
	DeploymentProtectionRuleTypeWaitTimer DeploymentProtectionRuleType = "WAIT_TIMER"
)

type DeploymentReviewState

type DeploymentReviewState string

DeploymentReviewState represents the possible states for a deployment review.

const (
	// DeploymentReviewStateApproved. The deployment was approved.
	DeploymentReviewStateApproved DeploymentReviewState = "APPROVED"
	// DeploymentReviewStateRejected. The deployment was rejected.
	DeploymentReviewStateRejected DeploymentReviewState = "REJECTED"
)

type DeploymentState

type DeploymentState string

DeploymentState represents the possible states in which a deployment can be.

const (
	// DeploymentStateAbandoned. The pending deployment was not updated after 30 minutes.
	DeploymentStateAbandoned DeploymentState = "ABANDONED"
	// DeploymentStateActive. The deployment is currently active.
	DeploymentStateActive DeploymentState = "ACTIVE"
	// DeploymentStateDestroyed. An inactive transient deployment.
	DeploymentStateDestroyed DeploymentState = "DESTROYED"
	// DeploymentStateError. The deployment experienced an error.
	DeploymentStateError DeploymentState = "ERROR"
	// DeploymentStateFailure. The deployment has failed.
	DeploymentStateFailure DeploymentState = "FAILURE"
	// DeploymentStateInactive. The deployment is inactive.
	DeploymentStateInactive DeploymentState = "INACTIVE"
	// DeploymentStatePending. The deployment is pending.
	DeploymentStatePending DeploymentState = "PENDING"
	// DeploymentStateSuccess. The deployment was successful.
	DeploymentStateSuccess DeploymentState = "SUCCESS"
	// DeploymentStateQueued. The deployment has queued.
	DeploymentStateQueued DeploymentState = "QUEUED"
	// DeploymentStateInProgress. The deployment is in progress.
	DeploymentStateInProgress DeploymentState = "IN_PROGRESS"
	// DeploymentStateWaiting. The deployment is waiting.
	DeploymentStateWaiting DeploymentState = "WAITING"
)

type DeploymentStatusState

type DeploymentStatusState string

DeploymentStatusState represents the possible states for a deployment status.

const (
	// DeploymentStatusStatePending. The deployment is pending.
	DeploymentStatusStatePending DeploymentStatusState = "PENDING"
	// DeploymentStatusStateSuccess. The deployment was successful.
	DeploymentStatusStateSuccess DeploymentStatusState = "SUCCESS"
	// DeploymentStatusStateFailure. The deployment has failed.
	DeploymentStatusStateFailure DeploymentStatusState = "FAILURE"
	// DeploymentStatusStateInactive. The deployment is inactive.
	DeploymentStatusStateInactive DeploymentStatusState = "INACTIVE"
	// DeploymentStatusStateError. The deployment experienced an error.
	DeploymentStatusStateError DeploymentStatusState = "ERROR"
	// DeploymentStatusStateQueued. The deployment is queued.
	DeploymentStatusStateQueued DeploymentStatusState = "QUEUED"
	// DeploymentStatusStateInProgress. The deployment is in progress.
	DeploymentStatusStateInProgress DeploymentStatusState = "IN_PROGRESS"
	// DeploymentStatusStateWaiting. The deployment is waiting.
	DeploymentStatusStateWaiting DeploymentStatusState = "WAITING"
)

type DequeuePullRequestInput

type DequeuePullRequestInput struct {
	// The ID of the pull request to be dequeued.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DequeuePullRequestInput is an autogenerated input type of DequeuePullRequest.

type DiffSide

type DiffSide string

DiffSide represents the possible sides of a diff.

const (
	// DiffSideLeft. The left side of the diff.
	DiffSideLeft DiffSide = "LEFT"
	// DiffSideRight. The right side of the diff.
	DiffSideRight DiffSide = "RIGHT"
)

type DisablePullRequestAutoMergeInput

type DisablePullRequestAutoMergeInput struct {
	// ID of the pull request to disable auto merge on.
	PullRequestID ID "json:\"pullRequestId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DisablePullRequestAutoMergeInput is an autogenerated input type of DisablePullRequestAutoMerge.

type DiscussionCloseReason

type DiscussionCloseReason string

DiscussionCloseReason represents the possible reasons for closing a discussion.

const (
	// DiscussionCloseReasonResolved. The discussion has been resolved.
	DiscussionCloseReasonResolved DiscussionCloseReason = "RESOLVED"
	// DiscussionCloseReasonOutdated. The discussion is no longer relevant.
	DiscussionCloseReasonOutdated DiscussionCloseReason = "OUTDATED"
	// DiscussionCloseReasonDuplicate. The discussion is a duplicate of another.
	DiscussionCloseReasonDuplicate DiscussionCloseReason = "DUPLICATE"
)

type DiscussionOrder

type DiscussionOrder struct {
	// The field by which to order discussions.
	Field DiscussionOrderField "json:\"field\""
	// The direction in which to order discussions by the specified field.
	Direction OrderDirection "json:\"direction\""
}

DiscussionOrder represents ways in which lists of discussions can be ordered upon return.

type DiscussionOrderField

type DiscussionOrderField string

DiscussionOrderField represents properties by which discussion connections can be ordered.

const (
	// DiscussionOrderFieldCreatedAt. Order discussions by creation time.
	DiscussionOrderFieldCreatedAt DiscussionOrderField = "CREATED_AT"
	// DiscussionOrderFieldUpdatedAt. Order discussions by most recent modification time.
	DiscussionOrderFieldUpdatedAt DiscussionOrderField = "UPDATED_AT"
)

type DiscussionPollOptionOrder

type DiscussionPollOptionOrder struct {
	// The field to order poll options by.
	Field DiscussionPollOptionOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

DiscussionPollOptionOrder represents ordering options for discussion poll option connections.

type DiscussionPollOptionOrderField

type DiscussionPollOptionOrderField string

DiscussionPollOptionOrderField represents properties by which discussion poll option connections can be ordered.

const (
	// DiscussionPollOptionOrderFieldAuthoredOrder. Order poll options by the order that the poll author specified when creating the poll.
	DiscussionPollOptionOrderFieldAuthoredOrder DiscussionPollOptionOrderField = "AUTHORED_ORDER"
	// DiscussionPollOptionOrderFieldVoteCount. Order poll options by the number of votes it has.
	DiscussionPollOptionOrderFieldVoteCount DiscussionPollOptionOrderField = "VOTE_COUNT"
)

type DiscussionState

type DiscussionState string

DiscussionState represents the possible states of a discussion.

const (
	// DiscussionStateOpen. A discussion that is open.
	DiscussionStateOpen DiscussionState = "OPEN"
	// DiscussionStateClosed. A discussion that has been closed.
	DiscussionStateClosed DiscussionState = "CLOSED"
)

type DiscussionStateReason

type DiscussionStateReason string

DiscussionStateReason represents the possible state reasons of a discussion.

const (
	// DiscussionStateReasonResolved. The discussion has been resolved.
	DiscussionStateReasonResolved DiscussionStateReason = "RESOLVED"
	// DiscussionStateReasonOutdated. The discussion is no longer relevant.
	DiscussionStateReasonOutdated DiscussionStateReason = "OUTDATED"
	// DiscussionStateReasonDuplicate. The discussion is a duplicate of another.
	DiscussionStateReasonDuplicate DiscussionStateReason = "DUPLICATE"
	// DiscussionStateReasonReopened. The discussion was reopened.
	DiscussionStateReasonReopened DiscussionStateReason = "REOPENED"
)

type DismissPullRequestReviewInput

type DismissPullRequestReviewInput struct {
	// The Node ID of the pull request review to modify.
	PullRequestReviewID ID "json:\"pullRequestReviewId\""
	// The contents of the pull request review dismissal message.
	Message string "json:\"message\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DismissPullRequestReviewInput is an autogenerated input type of DismissPullRequestReview.

type DismissReason

type DismissReason string

DismissReason represents the possible reasons that a Dependabot alert was dismissed.

const (
	// DismissReasonFixStarted. A fix has already been started.
	DismissReasonFixStarted DismissReason = "FIX_STARTED"
	// DismissReasonNoBandwidth. No bandwidth to fix this.
	DismissReasonNoBandwidth DismissReason = "NO_BANDWIDTH"
	// DismissReasonTolerableRisk. Risk is tolerable to this project.
	DismissReasonTolerableRisk DismissReason = "TOLERABLE_RISK"
	// DismissReasonInaccurate. This alert is inaccurate or incorrect.
	DismissReasonInaccurate DismissReason = "INACCURATE"
	// DismissReasonNotUsed. Vulnerable code is not actually used.
	DismissReasonNotUsed DismissReason = "NOT_USED"
)

type DismissRepositoryVulnerabilityAlertInput

type DismissRepositoryVulnerabilityAlertInput struct {
	// The Dependabot alert ID to dismiss.
	RepositoryVulnerabilityAlertID ID "json:\"repositoryVulnerabilityAlertId\""
	// The reason the Dependabot alert is being dismissed.
	DismissReason DismissReason "json:\"dismissReason\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

DismissRepositoryVulnerabilityAlertInput is an autogenerated input type of DismissRepositoryVulnerabilityAlert.

type DraftPullRequestReviewComment

type DraftPullRequestReviewComment struct {
	// Path to the file being commented on.
	Path string "json:\"path\""
	// Position in the file to leave a comment on.
	Position int "json:\"position\""
	// Body of the comment to leave.
	Body string "json:\"body\""
}

DraftPullRequestReviewComment represents specifies a review comment to be left with a Pull Request Review.

type DraftPullRequestReviewThread

type DraftPullRequestReviewThread struct {
	// Path to the file being commented on.
	Path string "json:\"path\""
	// The line of the blob to which the thread refers. The end of the line range for multi-line comments.
	Line int "json:\"line\""
	// The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range.
	Side *DiffSide "json:\"side,omitempty\""
	// The first line of the range to which the comment refers.
	StartLine *int "json:\"startLine,omitempty\""
	// The side of the diff on which the start line resides.
	StartSide *DiffSide "json:\"startSide,omitempty\""
	// Body of the comment to leave.
	Body string "json:\"body\""
}

DraftPullRequestReviewThread represents specifies a review comment thread to be left with a Pull Request Review.

type EnablePullRequestAutoMergeInput

type EnablePullRequestAutoMergeInput struct {
	// ID of the pull request to enable auto-merge on.
	PullRequestID ID "json:\"pullRequestId\""
	// Commit headline to use for the commit when the PR is mergable; if omitted, a default message will be used. NOTE: when merging with a merge queue any input value for commit headline is ignored.
	CommitHeadline *string "json:\"commitHeadline,omitempty\""
	// Commit body to use for the commit when the PR is mergable; if omitted, a default message will be used. NOTE: when merging with a merge queue any input value for commit message is ignored.
	CommitBody *string "json:\"commitBody,omitempty\""
	// The merge method to use. If omitted, defaults to `MERGE`. NOTE: when merging with a merge queue any input value for merge method is ignored.
	MergeMethod *PullRequestMergeMethod "json:\"mergeMethod,omitempty\""
	// The email address to associate with this merge.
	AuthorEmail *string "json:\"authorEmail,omitempty\""
	// The expected head OID of the pull request.
	ExpectedHeadOid *GitObjectID "json:\"expectedHeadOid,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

EnablePullRequestAutoMergeInput is an autogenerated input type of EnablePullRequestAutoMerge.

type EnqueuePullRequestInput

type EnqueuePullRequestInput struct {
	// The ID of the pull request to enqueue.
	PullRequestID ID "json:\"pullRequestId\""
	// Add the pull request to the front of the queue.
	Jump *bool "json:\"jump,omitempty\""
	// The expected head OID of the pull request.
	ExpectedHeadOid *GitObjectID "json:\"expectedHeadOid,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

EnqueuePullRequestInput is an autogenerated input type of EnqueuePullRequest.

type EnterpriseAdministratorInvitationOrder

type EnterpriseAdministratorInvitationOrder struct {
	// The field to order enterprise administrator invitations by.
	Field EnterpriseAdministratorInvitationOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

EnterpriseAdministratorInvitationOrder represents ordering options for enterprise administrator invitation connections.

type EnterpriseAdministratorInvitationOrderField

type EnterpriseAdministratorInvitationOrderField string

EnterpriseAdministratorInvitationOrderField represents properties by which enterprise administrator invitation connections can be ordered.

const (
	// EnterpriseAdministratorInvitationOrderFieldCreatedAt. Order enterprise administrator member invitations by creation time.
	EnterpriseAdministratorInvitationOrderFieldCreatedAt EnterpriseAdministratorInvitationOrderField = "CREATED_AT"
)

type EnterpriseAdministratorRole

type EnterpriseAdministratorRole string

EnterpriseAdministratorRole represents the possible administrator roles in an enterprise account.

const (
	// EnterpriseAdministratorRoleOwner. Represents an owner of the enterprise account.
	EnterpriseAdministratorRoleOwner EnterpriseAdministratorRole = "OWNER"
	// EnterpriseAdministratorRoleBillingManager. Represents a billing manager of the enterprise account.
	EnterpriseAdministratorRoleBillingManager EnterpriseAdministratorRole = "BILLING_MANAGER"
)

type EnterpriseAllowPrivateRepositoryForkingPolicyValue

type EnterpriseAllowPrivateRepositoryForkingPolicyValue string

EnterpriseAllowPrivateRepositoryForkingPolicyValue represents the possible values for the enterprise allow private repository forking policy value.

const (
	// EnterpriseAllowPrivateRepositoryForkingPolicyValueEnterpriseOrganizations. Members can fork a repository to an organization within this enterprise.
	EnterpriseAllowPrivateRepositoryForkingPolicyValueEnterpriseOrganizations EnterpriseAllowPrivateRepositoryForkingPolicyValue = "ENTERPRISE_ORGANIZATIONS"
	// EnterpriseAllowPrivateRepositoryForkingPolicyValueSameOrganization. Members can fork a repository only within the same organization (intra-org).
	EnterpriseAllowPrivateRepositoryForkingPolicyValueSameOrganization EnterpriseAllowPrivateRepositoryForkingPolicyValue = "SAME_ORGANIZATION"
	// EnterpriseAllowPrivateRepositoryForkingPolicyValueSameOrganizationUserAccounts. Members can fork a repository to their user account or within the same organization.
	EnterpriseAllowPrivateRepositoryForkingPolicyValueSameOrganizationUserAccounts EnterpriseAllowPrivateRepositoryForkingPolicyValue = "SAME_ORGANIZATION_USER_ACCOUNTS"
	// EnterpriseAllowPrivateRepositoryForkingPolicyValueEnterpriseOrganizationsUserAccounts. Members can fork a repository to their enterprise-managed user account or an organization inside this enterprise.
	EnterpriseAllowPrivateRepositoryForkingPolicyValueEnterpriseOrganizationsUserAccounts EnterpriseAllowPrivateRepositoryForkingPolicyValue = "ENTERPRISE_ORGANIZATIONS_USER_ACCOUNTS"
	// EnterpriseAllowPrivateRepositoryForkingPolicyValueUserAccounts. Members can fork a repository to their user account.
	EnterpriseAllowPrivateRepositoryForkingPolicyValueUserAccounts EnterpriseAllowPrivateRepositoryForkingPolicyValue = "USER_ACCOUNTS"
	// EnterpriseAllowPrivateRepositoryForkingPolicyValueEverywhere. Members can fork a repository to their user account or an organization, either inside or outside of this enterprise.
	EnterpriseAllowPrivateRepositoryForkingPolicyValueEverywhere EnterpriseAllowPrivateRepositoryForkingPolicyValue = "EVERYWHERE"
)

type EnterpriseDefaultRepositoryPermissionSettingValue

type EnterpriseDefaultRepositoryPermissionSettingValue string

EnterpriseDefaultRepositoryPermissionSettingValue represents the possible values for the enterprise base repository permission setting.

const (
	// EnterpriseDefaultRepositoryPermissionSettingValueNoPolicy. Organizations in the enterprise choose base repository permissions for their members.
	EnterpriseDefaultRepositoryPermissionSettingValueNoPolicy EnterpriseDefaultRepositoryPermissionSettingValue = "NO_POLICY"
	// EnterpriseDefaultRepositoryPermissionSettingValueAdmin. Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories.
	EnterpriseDefaultRepositoryPermissionSettingValueAdmin EnterpriseDefaultRepositoryPermissionSettingValue = "ADMIN"
	// EnterpriseDefaultRepositoryPermissionSettingValueWrite. Organization members will be able to clone, pull, and push all organization repositories.
	EnterpriseDefaultRepositoryPermissionSettingValueWrite EnterpriseDefaultRepositoryPermissionSettingValue = "WRITE"
	// EnterpriseDefaultRepositoryPermissionSettingValueRead. Organization members will be able to clone and pull all organization repositories.
	EnterpriseDefaultRepositoryPermissionSettingValueRead EnterpriseDefaultRepositoryPermissionSettingValue = "READ"
	// EnterpriseDefaultRepositoryPermissionSettingValueNone. Organization members will only be able to clone and pull public repositories.
	EnterpriseDefaultRepositoryPermissionSettingValueNone EnterpriseDefaultRepositoryPermissionSettingValue = "NONE"
)

type EnterpriseEnabledDisabledSettingValue

type EnterpriseEnabledDisabledSettingValue string

EnterpriseEnabledDisabledSettingValue represents the possible values for an enabled/disabled enterprise setting.

const (
	// EnterpriseEnabledDisabledSettingValueEnabled. The setting is enabled for organizations in the enterprise.
	EnterpriseEnabledDisabledSettingValueEnabled EnterpriseEnabledDisabledSettingValue = "ENABLED"
	// EnterpriseEnabledDisabledSettingValueDisabled. The setting is disabled for organizations in the enterprise.
	EnterpriseEnabledDisabledSettingValueDisabled EnterpriseEnabledDisabledSettingValue = "DISABLED"
	// EnterpriseEnabledDisabledSettingValueNoPolicy. There is no policy set for organizations in the enterprise.
	EnterpriseEnabledDisabledSettingValueNoPolicy EnterpriseEnabledDisabledSettingValue = "NO_POLICY"
)

type EnterpriseEnabledSettingValue

type EnterpriseEnabledSettingValue string

EnterpriseEnabledSettingValue represents the possible values for an enabled/no policy enterprise setting.

const (
	// EnterpriseEnabledSettingValueEnabled. The setting is enabled for organizations in the enterprise.
	EnterpriseEnabledSettingValueEnabled EnterpriseEnabledSettingValue = "ENABLED"
	// EnterpriseEnabledSettingValueNoPolicy. There is no policy set for organizations in the enterprise.
	EnterpriseEnabledSettingValueNoPolicy EnterpriseEnabledSettingValue = "NO_POLICY"
)

type EnterpriseMemberOrder

type EnterpriseMemberOrder struct {
	// The field to order enterprise members by.
	Field EnterpriseMemberOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

EnterpriseMemberOrder represents ordering options for enterprise member connections.

type EnterpriseMemberOrderField

type EnterpriseMemberOrderField string

EnterpriseMemberOrderField represents properties by which enterprise member connections can be ordered.

const (
	// EnterpriseMemberOrderFieldLogin. Order enterprise members by login.
	EnterpriseMemberOrderFieldLogin EnterpriseMemberOrderField = "LOGIN"
	// EnterpriseMemberOrderFieldCreatedAt. Order enterprise members by creation time.
	EnterpriseMemberOrderFieldCreatedAt EnterpriseMemberOrderField = "CREATED_AT"
)

type EnterpriseMembersCanCreateRepositoriesSettingValue

type EnterpriseMembersCanCreateRepositoriesSettingValue string

EnterpriseMembersCanCreateRepositoriesSettingValue represents the possible values for the enterprise members can create repositories setting.

const (
	// EnterpriseMembersCanCreateRepositoriesSettingValueNoPolicy. Organization administrators choose whether to allow members to create repositories.
	EnterpriseMembersCanCreateRepositoriesSettingValueNoPolicy EnterpriseMembersCanCreateRepositoriesSettingValue = "NO_POLICY"
	// EnterpriseMembersCanCreateRepositoriesSettingValueAll. Members will be able to create public and private repositories.
	EnterpriseMembersCanCreateRepositoriesSettingValueAll EnterpriseMembersCanCreateRepositoriesSettingValue = "ALL"
	// EnterpriseMembersCanCreateRepositoriesSettingValuePublic. Members will be able to create only public repositories.
	EnterpriseMembersCanCreateRepositoriesSettingValuePublic EnterpriseMembersCanCreateRepositoriesSettingValue = "PUBLIC"
	// EnterpriseMembersCanCreateRepositoriesSettingValuePrivate. Members will be able to create only private repositories.
	EnterpriseMembersCanCreateRepositoriesSettingValuePrivate EnterpriseMembersCanCreateRepositoriesSettingValue = "PRIVATE"
	// EnterpriseMembersCanCreateRepositoriesSettingValueDisabled. Members will not be able to create public or private repositories.
	EnterpriseMembersCanCreateRepositoriesSettingValueDisabled EnterpriseMembersCanCreateRepositoriesSettingValue = "DISABLED"
)

type EnterpriseMembersCanMakePurchasesSettingValue

type EnterpriseMembersCanMakePurchasesSettingValue string

EnterpriseMembersCanMakePurchasesSettingValue represents the possible values for the members can make purchases setting.

const (
	// EnterpriseMembersCanMakePurchasesSettingValueEnabled. The setting is enabled for organizations in the enterprise.
	EnterpriseMembersCanMakePurchasesSettingValueEnabled EnterpriseMembersCanMakePurchasesSettingValue = "ENABLED"
	// EnterpriseMembersCanMakePurchasesSettingValueDisabled. The setting is disabled for organizations in the enterprise.
	EnterpriseMembersCanMakePurchasesSettingValueDisabled EnterpriseMembersCanMakePurchasesSettingValue = "DISABLED"
)

type EnterpriseMembershipType

type EnterpriseMembershipType string

EnterpriseMembershipType represents the possible values we have for filtering Platform::Objects::User#enterprises.

const (
	// EnterpriseMembershipTypeAll. Returns all enterprises in which the user is a member, admin, or billing manager.
	EnterpriseMembershipTypeAll EnterpriseMembershipType = "ALL"
	// EnterpriseMembershipTypeAdmin. Returns all enterprises in which the user is an admin.
	EnterpriseMembershipTypeAdmin EnterpriseMembershipType = "ADMIN"
	// EnterpriseMembershipTypeBillingManager. Returns all enterprises in which the user is a billing manager.
	EnterpriseMembershipTypeBillingManager EnterpriseMembershipType = "BILLING_MANAGER"
	// EnterpriseMembershipTypeOrgMembership. Returns all enterprises in which the user is a member of an org that is owned by the enterprise.
	EnterpriseMembershipTypeOrgMembership EnterpriseMembershipType = "ORG_MEMBERSHIP"
)

type EnterpriseOrder

type EnterpriseOrder struct {
	// The field to order enterprises by.
	Field EnterpriseOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

EnterpriseOrder represents ordering options for enterprises.

type EnterpriseOrderField

type EnterpriseOrderField string

EnterpriseOrderField represents properties by which enterprise connections can be ordered.

const (
	// EnterpriseOrderFieldName. Order enterprises by name.
	EnterpriseOrderFieldName EnterpriseOrderField = "NAME"
)

type EnterpriseServerInstallationOrder

type EnterpriseServerInstallationOrder struct {
	// The field to order Enterprise Server installations by.
	Field EnterpriseServerInstallationOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

EnterpriseServerInstallationOrder represents ordering options for Enterprise Server installation connections.

type EnterpriseServerInstallationOrderField

type EnterpriseServerInstallationOrderField string

EnterpriseServerInstallationOrderField represents properties by which Enterprise Server installation connections can be ordered.

const (
	// EnterpriseServerInstallationOrderFieldHostName. Order Enterprise Server installations by host name.
	EnterpriseServerInstallationOrderFieldHostName EnterpriseServerInstallationOrderField = "HOST_NAME"
	// EnterpriseServerInstallationOrderFieldCustomerName. Order Enterprise Server installations by customer name.
	EnterpriseServerInstallationOrderFieldCustomerName EnterpriseServerInstallationOrderField = "CUSTOMER_NAME"
	// EnterpriseServerInstallationOrderFieldCreatedAt. Order Enterprise Server installations by creation time.
	EnterpriseServerInstallationOrderFieldCreatedAt EnterpriseServerInstallationOrderField = "CREATED_AT"
)

type EnterpriseServerUserAccountEmailOrder

type EnterpriseServerUserAccountEmailOrder struct {
	// The field to order emails by.
	Field EnterpriseServerUserAccountEmailOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

EnterpriseServerUserAccountEmailOrder represents ordering options for Enterprise Server user account email connections.

type EnterpriseServerUserAccountEmailOrderField

type EnterpriseServerUserAccountEmailOrderField string

EnterpriseServerUserAccountEmailOrderField represents properties by which Enterprise Server user account email connections can be ordered.

const (
	// EnterpriseServerUserAccountEmailOrderFieldEmail. Order emails by email.
	EnterpriseServerUserAccountEmailOrderFieldEmail EnterpriseServerUserAccountEmailOrderField = "EMAIL"
)

type EnterpriseServerUserAccountOrder

type EnterpriseServerUserAccountOrder struct {
	// The field to order user accounts by.
	Field EnterpriseServerUserAccountOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

EnterpriseServerUserAccountOrder represents ordering options for Enterprise Server user account connections.

type EnterpriseServerUserAccountOrderField

type EnterpriseServerUserAccountOrderField string

EnterpriseServerUserAccountOrderField represents properties by which Enterprise Server user account connections can be ordered.

const (
	// EnterpriseServerUserAccountOrderFieldLogin. Order user accounts by login.
	EnterpriseServerUserAccountOrderFieldLogin EnterpriseServerUserAccountOrderField = "LOGIN"
	// EnterpriseServerUserAccountOrderFieldRemoteCreatedAt. Order user accounts by creation time on the Enterprise Server installation.
	EnterpriseServerUserAccountOrderFieldRemoteCreatedAt EnterpriseServerUserAccountOrderField = "REMOTE_CREATED_AT"
)

type EnterpriseServerUserAccountsUploadOrder

type EnterpriseServerUserAccountsUploadOrder struct {
	// The field to order user accounts uploads by.
	Field EnterpriseServerUserAccountsUploadOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

EnterpriseServerUserAccountsUploadOrder represents ordering options for Enterprise Server user accounts upload connections.

type EnterpriseServerUserAccountsUploadOrderField

type EnterpriseServerUserAccountsUploadOrderField string

EnterpriseServerUserAccountsUploadOrderField represents properties by which Enterprise Server user accounts upload connections can be ordered.

const (
	// EnterpriseServerUserAccountsUploadOrderFieldCreatedAt. Order user accounts uploads by creation time.
	EnterpriseServerUserAccountsUploadOrderFieldCreatedAt EnterpriseServerUserAccountsUploadOrderField = "CREATED_AT"
)

type EnterpriseServerUserAccountsUploadSyncState

type EnterpriseServerUserAccountsUploadSyncState string

EnterpriseServerUserAccountsUploadSyncState represents synchronization state of the Enterprise Server user accounts upload.

const (
	// EnterpriseServerUserAccountsUploadSyncStatePending. The synchronization of the upload is pending.
	EnterpriseServerUserAccountsUploadSyncStatePending EnterpriseServerUserAccountsUploadSyncState = "PENDING"
	// EnterpriseServerUserAccountsUploadSyncStateSuccess. The synchronization of the upload succeeded.
	EnterpriseServerUserAccountsUploadSyncStateSuccess EnterpriseServerUserAccountsUploadSyncState = "SUCCESS"
	// EnterpriseServerUserAccountsUploadSyncStateFailure. The synchronization of the upload failed.
	EnterpriseServerUserAccountsUploadSyncStateFailure EnterpriseServerUserAccountsUploadSyncState = "FAILURE"
)

type EnterpriseUserAccountMembershipRole

type EnterpriseUserAccountMembershipRole string

EnterpriseUserAccountMembershipRole represents the possible roles for enterprise membership.

const (
	// EnterpriseUserAccountMembershipRoleMember. The user is a member of an organization in the enterprise.
	EnterpriseUserAccountMembershipRoleMember EnterpriseUserAccountMembershipRole = "MEMBER"
	// EnterpriseUserAccountMembershipRoleOwner. The user is an owner of an organization in the enterprise.
	EnterpriseUserAccountMembershipRoleOwner EnterpriseUserAccountMembershipRole = "OWNER"
	// EnterpriseUserAccountMembershipRoleUnaffiliated. The user is not an owner of the enterprise, and not a member or owner of any organizations in the enterprise; only for EMU-enabled enterprises.
	EnterpriseUserAccountMembershipRoleUnaffiliated EnterpriseUserAccountMembershipRole = "UNAFFILIATED"
)

type EnterpriseUserDeployment

type EnterpriseUserDeployment string

EnterpriseUserDeployment represents the possible GitHub Enterprise deployments where this user can exist.

const (
	// EnterpriseUserDeploymentCloud. The user is part of a GitHub Enterprise Cloud deployment.
	EnterpriseUserDeploymentCloud EnterpriseUserDeployment = "CLOUD"
	// EnterpriseUserDeploymentServer. The user is part of a GitHub Enterprise Server deployment.
	EnterpriseUserDeploymentServer EnterpriseUserDeployment = "SERVER"
)

type EnvironmentOrderField

type EnvironmentOrderField string

EnvironmentOrderField represents properties by which environments connections can be ordered.

const (
	// EnvironmentOrderFieldName. Order environments by name.
	EnvironmentOrderFieldName EnvironmentOrderField = "NAME"
)

type Environments

type Environments struct {
	// The field to order environments by.
	Field EnvironmentOrderField "json:\"field\""
	// The direction in which to order environments by the specified field.
	Direction OrderDirection "json:\"direction\""
}

Environments represents ordering options for environments.

type Error

type Error struct {
	// Err is the wrapped error.
	Err error

	// Errors are the response errors.
	// Errors reflects the "errors" property of JSON objects in HTTP response bodies.
	// See https://spec.graphql.org/.
	Errors []ErrorItem

	Message string

	// Operation is the GraphQL query/mutation/operation for which the error occurred.
	Operation string
}

Error is an error type used by *Client to feed back GraphQL-level errors.

func (*Error) Error

func (e *Error) Error() string

Error implements the error interface.

func (*Error) Unwrap

func (e *Error) Unwrap() error

Unwrap supports Golang 1.13+ error wrapping. See https://go.dev/blog/go1.13-errors

type ErrorItem

type ErrorItem struct {
	// Error message.
	Message string

	// Value of "extensions" entry.
	// See https://spec.graphql.org/.
	Extensions map[string]any

	// Raw entries as per the JSON value returned by the server.
	// Does not include entries that were successfully parsed into
	// their corresponding fields.
	Raw map[string]json.RawMessage

	// Value of "type" entry.
	// Although this entry is unspecified in the GraphQL specification https://spec.graphql.org/,
	// GitHub sets this for some errors.
	// Known values (as seen in the wild): RATE_LIMITED
	Type string
}

ErrorItem is a response error. See https://spec.graphql.org/.

type FileAddition

type FileAddition struct {
	// The path in the repository where the file will be located.
	Path string "json:\"path\""
	// The base64 encoded contents of the file.
	Contents Base64String "json:\"contents\""
}

FileAddition represents a command to add a file at the given path with the given contents as part of a commit. Any existing file at that that path will be replaced.

type FileChanges

type FileChanges struct {
	// Files to delete.
	Deletions *[]FileDeletion "json:\"deletions,omitempty\""
	// File to add or change.
	Additions *[]FileAddition "json:\"additions,omitempty\""
}

FileChanges represents a description of a set of changes to a file tree to be made as part of a git commit, modeled as zero or more file `additions` and zero or more file `deletions`.

Both fields are optional; omitting both will produce a commit with no file changes.

`deletions` and `additions` describe changes to files identified by their path in the git tree using unix-style path separators, i.e. `/`. The root of a git tree is an empty string, so paths are not slash-prefixed.

`path` values must be unique across all `additions` and `deletions` provided. Any duplication will result in a validation error.

### Encoding

File contents must be provided in full for each `FileAddition`.

The `contents` of a `FileAddition` must be encoded using RFC 4648 compliant base64, i.e. correct padding is required and no characters outside the standard alphabet may be used. Invalid base64 encoding will be rejected with a validation error.

The encoded contents may be binary.

For text files, no assumptions are made about the character encoding of the file contents (after base64 decoding). No charset transcoding or line-ending normalization will be performed; it is the client's responsibility to manage the character encoding of files they provide. However, for maximum compatibility we recommend using UTF-8 encoding and ensuring that all files in a repository use a consistent line-ending convention (`\n` or `\r\n`), and that all files end with a newline.

### Modeling file changes

Each of the the five types of conceptual changes that can be made in a git commit can be described using the `FileChanges` type as follows:

1. New file addition: create file `hello world\n` at path `docs/README.txt`:

	{
	  "additions" [
	    {
	      "path": "docs/README.txt",
	      "contents": base64encode("hello world\n")
	    }
	  ]
	}

 2. Existing file modification: change existing `docs/README.txt` to have new
    content `new content here\n`:

    {
    "additions" [
    {
    "path": "docs/README.txt",
    "contents": base64encode("new content here\n")
    }
    ]
    }

 3. Existing file deletion: remove existing file `docs/README.txt`.
    Note that the path is required to exist -- specifying a
    path that does not exist on the given branch will abort the
    commit and return an error.

    {
    "deletions" [
    {
    "path": "docs/README.txt"
    }
    ]
    }

 4. File rename with no changes: rename `docs/README.txt` with
    previous content `hello world\n` to the same content at
    `newdocs/README.txt`:

    {
    "deletions" [
    {
    "path": "docs/README.txt",
    }
    ],
    "additions" [
    {
    "path": "newdocs/README.txt",
    "contents": base64encode("hello world\n")
    }
    ]
    }

 5. File rename with changes: rename `docs/README.txt` with
    previous content `hello world\n` to a file at path
    `newdocs/README.txt` with content `new contents\n`:

    {
    "deletions" [
    {
    "path": "docs/README.txt",
    }
    ],
    "additions" [
    {
    "path": "newdocs/README.txt",
    "contents": base64encode("new contents\n")
    }
    ]
    }.

type FileDeletion

type FileDeletion struct {
	// The path to delete.
	Path string "json:\"path\""
}

FileDeletion represents a command to delete the file at the given path as part of a commit.

type FileViewedState

type FileViewedState string

FileViewedState represents the possible viewed states of a file .

const (
	// FileViewedStateDismissed. The file has new changes since last viewed.
	FileViewedStateDismissed FileViewedState = "DISMISSED"
	// FileViewedStateViewed. The file has been marked as viewed.
	FileViewedStateViewed FileViewedState = "VIEWED"
	// FileViewedStateUnviewed. The file has not been marked as viewed.
	FileViewedStateUnviewed FileViewedState = "UNVIEWED"
)

type FollowOrganizationInput

type FollowOrganizationInput struct {
	// ID of the organization to follow.
	OrganizationID ID "json:\"organizationId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

FollowOrganizationInput is an autogenerated input type of FollowOrganization.

type FollowUserInput

type FollowUserInput struct {
	// ID of the user to follow.
	UserID ID "json:\"userId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

FollowUserInput is an autogenerated input type of FollowUser.

type FundingPlatform

type FundingPlatform string

FundingPlatform represents the possible funding platforms for repository funding links.

const (
	// FundingPlatformGitHub. GitHub funding platform.
	FundingPlatformGitHub FundingPlatform = "GITHUB"
	// FundingPlatformPatreon. Patreon funding platform.
	FundingPlatformPatreon FundingPlatform = "PATREON"
	// FundingPlatformOpenCollective. Open Collective funding platform.
	FundingPlatformOpenCollective FundingPlatform = "OPEN_COLLECTIVE"
	// FundingPlatformKoFi. Ko-fi funding platform.
	FundingPlatformKoFi FundingPlatform = "KO_FI"
	// FundingPlatformTidelift. Tidelift funding platform.
	FundingPlatformTidelift FundingPlatform = "TIDELIFT"
	// FundingPlatformCommunityBridge. Community Bridge funding platform.
	FundingPlatformCommunityBridge FundingPlatform = "COMMUNITY_BRIDGE"
	// FundingPlatformLiberapay. Liberapay funding platform.
	FundingPlatformLiberapay FundingPlatform = "LIBERAPAY"
	// FundingPlatformIssueHunt. IssueHunt funding platform.
	FundingPlatformIssueHunt FundingPlatform = "ISSUEHUNT"
	// FundingPlatformOtechie. Otechie funding platform.
	FundingPlatformOtechie FundingPlatform = "OTECHIE"
	// FundingPlatformLFXCrowdfunding. LFX Crowdfunding funding platform.
	FundingPlatformLFXCrowdfunding FundingPlatform = "LFX_CROWDFUNDING"
	// FundingPlatformCustom. Custom funding platform.
	FundingPlatformCustom FundingPlatform = "CUSTOM"
)

type GistOrder

type GistOrder struct {
	// The field to order repositories by.
	Field GistOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

GistOrder represents ordering options for gist connections.

type GistOrderField

type GistOrderField string

GistOrderField represents properties by which gist connections can be ordered.

const (
	// GistOrderFieldCreatedAt. Order gists by creation time.
	GistOrderFieldCreatedAt GistOrderField = "CREATED_AT"
	// GistOrderFieldUpdatedAt. Order gists by update time.
	GistOrderFieldUpdatedAt GistOrderField = "UPDATED_AT"
	// GistOrderFieldPushedAt. Order gists by push time.
	GistOrderFieldPushedAt GistOrderField = "PUSHED_AT"
)

type GistPrivacy

type GistPrivacy string

GistPrivacy represents the privacy of a Gist.

const (
	// GistPrivacyPublic. Public.
	GistPrivacyPublic GistPrivacy = "PUBLIC"
	// GistPrivacySecret. Secret.
	GistPrivacySecret GistPrivacy = "SECRET"
	// GistPrivacyAll. Gists that are public and secret.
	GistPrivacyAll GistPrivacy = "ALL"
)

type GitObjectID

type GitObjectID struct {
	S string
}

GitObjectID represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as GitObjectID in GraphQL as expected by the GitHub API.

GitObjectID is a Git object ID.

func (GitObjectID) MarshalText

func (g GitObjectID) MarshalText() ([]byte, error)

func (*GitObjectID) UnmarshalText

func (g *GitObjectID) UnmarshalText(b []byte) error

type GitSSHRemote

type GitSSHRemote struct {
	S string
}

GitSSHRemote represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as GitSSHRemote in GraphQL as expected by the GitHub API.

GitSSHRemote is a git SSH string.

func (GitSSHRemote) MarshalText

func (g GitSSHRemote) MarshalText() ([]byte, error)

func (*GitSSHRemote) UnmarshalText

func (g *GitSSHRemote) UnmarshalText(b []byte) error

type GitSignatureState

type GitSignatureState string

GitSignatureState represents the state of a Git signature.

const (
	// GitSignatureStateValid. Valid signature and verified by GitHub.
	GitSignatureStateValid GitSignatureState = "VALID"
	// GitSignatureStateInvalid. Invalid signature.
	GitSignatureStateInvalid GitSignatureState = "INVALID"
	// GitSignatureStateMalformedSig. Malformed signature.
	GitSignatureStateMalformedSig GitSignatureState = "MALFORMED_SIG"
	// GitSignatureStateUnknownKey. Key used for signing not known to GitHub.
	GitSignatureStateUnknownKey GitSignatureState = "UNKNOWN_KEY"
	// GitSignatureStateBadEmail. Invalid email used for signing.
	GitSignatureStateBadEmail GitSignatureState = "BAD_EMAIL"
	// GitSignatureStateUnverifiedEmail. Email used for signing unverified on GitHub.
	GitSignatureStateUnverifiedEmail GitSignatureState = "UNVERIFIED_EMAIL"
	// GitSignatureStateNoUser. Email used for signing not known to GitHub.
	GitSignatureStateNoUser GitSignatureState = "NO_USER"
	// GitSignatureStateUnknownSigType. Unknown signature type.
	GitSignatureStateUnknownSigType GitSignatureState = "UNKNOWN_SIG_TYPE"
	// GitSignatureStateUnsigned. Unsigned.
	GitSignatureStateUnsigned GitSignatureState = "UNSIGNED"
	// GitSignatureStateGpgverifyUnavailable. Internal error - the GPG verification service is unavailable at the moment.
	GitSignatureStateGpgverifyUnavailable GitSignatureState = "GPGVERIFY_UNAVAILABLE"
	// GitSignatureStateGpgverifyError. Internal error - the GPG verification service misbehaved.
	GitSignatureStateGpgverifyError GitSignatureState = "GPGVERIFY_ERROR"
	// GitSignatureStateNotSigningKey. The usage flags for the key that signed this don't allow signing.
	GitSignatureStateNotSigningKey GitSignatureState = "NOT_SIGNING_KEY"
	// GitSignatureStateExpiredKey. Signing key expired.
	GitSignatureStateExpiredKey GitSignatureState = "EXPIRED_KEY"
	// GitSignatureStateOcspPending. Valid signature, pending certificate revocation checking.
	GitSignatureStateOcspPending GitSignatureState = "OCSP_PENDING"
	// GitSignatureStateOcspError. Valid signature, though certificate revocation check failed.
	GitSignatureStateOcspError GitSignatureState = "OCSP_ERROR"
	// GitSignatureStateBadCert. The signing certificate or its chain could not be verified.
	GitSignatureStateBadCert GitSignatureState = "BAD_CERT"
	// GitSignatureStateOcspRevoked. One or more certificates in chain has been revoked.
	GitSignatureStateOcspRevoked GitSignatureState = "OCSP_REVOKED"
)

type GitTimestamp

type GitTimestamp struct {
	S string
}

GitTimestamp represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as GitTimestamp in GraphQL as expected by the GitHub API.

GitTimestamp is an ISO-8601 encoded date string. Unlike the DateTime type, GitTimestamp is not converted in UTC.

func (GitTimestamp) MarshalText

func (g GitTimestamp) MarshalText() ([]byte, error)

func (*GitTimestamp) UnmarshalText

func (g *GitTimestamp) UnmarshalText(b []byte) error

type GrantEnterpriseOrganizationsMigratorRoleInput

type GrantEnterpriseOrganizationsMigratorRoleInput struct {
	// The ID of the enterprise to which all organizations managed by it will be granted the migrator role.
	EnterpriseID ID "json:\"enterpriseId\""
	// The login of the user to grant the migrator role.
	Login string "json:\"login\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

GrantEnterpriseOrganizationsMigratorRoleInput is an autogenerated input type of GrantEnterpriseOrganizationsMigratorRole.

type GrantMigratorRoleInput

type GrantMigratorRoleInput struct {
	// The ID of the organization that the user/team belongs to.
	OrganizationID ID "json:\"organizationId\""
	// The user login or Team slug to grant the migrator role.
	Actor string "json:\"actor\""
	// Specifies the type of the actor, can be either USER or TEAM.
	ActorType ActorType "json:\"actorType\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

GrantMigratorRoleInput is an autogenerated input type of GrantMigratorRole.

type HTML

type HTML struct {
	S string
}

HTML represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as HTML in GraphQL as expected by the GitHub API.

HTML is a string containing HTML code.

func (HTML) MarshalText

func (h HTML) MarshalText() ([]byte, error)

func (*HTML) UnmarshalText

func (h *HTML) UnmarshalText(b []byte) error

type ID

type ID = graphql.ID

ID represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as ID in GraphQL as expected by the GitHub API.

ID represents a unique identifier that is Base64 obfuscated. It is often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "VXNlci0xMA==") or integer (such as 4) input value will be accepted as an ID.

type IPAllowListEnabledSettingValue

type IPAllowListEnabledSettingValue string

IPAllowListEnabledSettingValue represents the possible values for the IP allow list enabled setting.

const (
	// IPAllowListEnabledSettingValueEnabled. The setting is enabled for the owner.
	IPAllowListEnabledSettingValueEnabled IPAllowListEnabledSettingValue = "ENABLED"
	// IPAllowListEnabledSettingValueDisabled. The setting is disabled for the owner.
	IPAllowListEnabledSettingValueDisabled IPAllowListEnabledSettingValue = "DISABLED"
)

type IPAllowListEntryOrder

type IPAllowListEntryOrder struct {
	// The field to order IP allow list entries by.
	Field IPAllowListEntryOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

IPAllowListEntryOrder represents ordering options for IP allow list entry connections.

type IPAllowListEntryOrderField

type IPAllowListEntryOrderField string

IPAllowListEntryOrderField represents properties by which IP allow list entry connections can be ordered.

const (
	// IPAllowListEntryOrderFieldCreatedAt. Order IP allow list entries by creation time.
	IPAllowListEntryOrderFieldCreatedAt IPAllowListEntryOrderField = "CREATED_AT"
	// IPAllowListEntryOrderFieldAllowListValue. Order IP allow list entries by the allow list value.
	IPAllowListEntryOrderFieldAllowListValue IPAllowListEntryOrderField = "ALLOW_LIST_VALUE"
)

type IPAllowListForInstalledAppsEnabledSettingValue

type IPAllowListForInstalledAppsEnabledSettingValue string

IPAllowListForInstalledAppsEnabledSettingValue represents the possible values for the IP allow list configuration for installed GitHub Apps setting.

const (
	// IPAllowListForInstalledAppsEnabledSettingValueEnabled. The setting is enabled for the owner.
	IPAllowListForInstalledAppsEnabledSettingValueEnabled IPAllowListForInstalledAppsEnabledSettingValue = "ENABLED"
	// IPAllowListForInstalledAppsEnabledSettingValueDisabled. The setting is disabled for the owner.
	IPAllowListForInstalledAppsEnabledSettingValueDisabled IPAllowListForInstalledAppsEnabledSettingValue = "DISABLED"
)

type IdentityProviderConfigurationState

type IdentityProviderConfigurationState string

IdentityProviderConfigurationState represents the possible states in which authentication can be configured with an identity provider.

const (
	// IdentityProviderConfigurationStateEnforced. Authentication with an identity provider is configured and enforced.
	IdentityProviderConfigurationStateEnforced IdentityProviderConfigurationState = "ENFORCED"
	// IdentityProviderConfigurationStateConfigured. Authentication with an identity provider is configured but not enforced.
	IdentityProviderConfigurationStateConfigured IdentityProviderConfigurationState = "CONFIGURED"
	// IdentityProviderConfigurationStateUnconfigured. Authentication with an identity provider is not configured.
	IdentityProviderConfigurationStateUnconfigured IdentityProviderConfigurationState = "UNCONFIGURED"
)

type Input

type Input interface {
	// contains filtered or unexported methods
}

type InviteEnterpriseAdminInput

type InviteEnterpriseAdminInput struct {
	// The ID of the enterprise to which you want to invite an administrator.
	EnterpriseID ID "json:\"enterpriseId\""
	// The login of a user to invite as an administrator.
	Invitee *string "json:\"invitee,omitempty\""
	// The email of the person to invite as an administrator.
	Email *string "json:\"email,omitempty\""
	// The role of the administrator.
	Role *EnterpriseAdministratorRole "json:\"role,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

InviteEnterpriseAdminInput is an autogenerated input type of InviteEnterpriseAdmin.

type IssueClosedStateReason

type IssueClosedStateReason string

IssueClosedStateReason represents the possible state reasons of a closed issue.

const (
	// IssueClosedStateReasonCompleted. An issue that has been closed as completed.
	IssueClosedStateReasonCompleted IssueClosedStateReason = "COMPLETED"
	// IssueClosedStateReasonNotPlanned. An issue that has been closed as not planned.
	IssueClosedStateReasonNotPlanned IssueClosedStateReason = "NOT_PLANNED"
)

type IssueCommentOrder

type IssueCommentOrder struct {
	// The field in which to order issue comments by.
	Field IssueCommentOrderField "json:\"field\""
	// The direction in which to order issue comments by the specified field.
	Direction OrderDirection "json:\"direction\""
}

IssueCommentOrder represents ways in which lists of issue comments can be ordered upon return.

type IssueCommentOrderField

type IssueCommentOrderField string

IssueCommentOrderField represents properties by which issue comment connections can be ordered.

const (
	// IssueCommentOrderFieldUpdatedAt. Order issue comments by update time.
	IssueCommentOrderFieldUpdatedAt IssueCommentOrderField = "UPDATED_AT"
)

type IssueFilters

type IssueFilters struct {
	// List issues assigned to given name. Pass in `null` for issues with no assigned user, and `*` for issues assigned to any user.
	Assignee *string "json:\"assignee,omitempty\""
	// List issues created by given name.
	CreatedBy *string "json:\"createdBy,omitempty\""
	// List issues where the list of label names exist on the issue.
	Labels *[]string "json:\"labels,omitempty\""
	// List issues where the given name is mentioned in the issue.
	Mentioned *string "json:\"mentioned,omitempty\""
	// List issues by given milestone argument. If an string representation of an integer is passed, it should refer to a milestone by its database ID. Pass in `null` for issues with no milestone, and `*` for issues that are assigned to any milestone.
	Milestone *string "json:\"milestone,omitempty\""
	// List issues by given milestone argument. If an string representation of an integer is passed, it should refer to a milestone by its number field. Pass in `null` for issues with no milestone, and `*` for issues that are assigned to any milestone.
	MilestoneNumber *string "json:\"milestoneNumber,omitempty\""
	// List issues that have been updated at or after the given date.
	Since *DateTime "json:\"since,omitempty\""
	// List issues filtered by the list of states given.
	States *[]IssueState "json:\"states,omitempty\""
	// List issues subscribed to by viewer.
	ViewerSubscribed *bool "json:\"viewerSubscribed,omitempty\""
}

IssueFilters represents ways in which to filter lists of issues.

type IssueOrder

type IssueOrder struct {
	// The field in which to order issues by.
	Field IssueOrderField "json:\"field\""
	// The direction in which to order issues by the specified field.
	Direction OrderDirection "json:\"direction\""
}

IssueOrder represents ways in which lists of issues can be ordered upon return.

type IssueOrderField

type IssueOrderField string

IssueOrderField represents properties by which issue connections can be ordered.

const (
	// IssueOrderFieldCreatedAt. Order issues by creation time.
	IssueOrderFieldCreatedAt IssueOrderField = "CREATED_AT"
	// IssueOrderFieldUpdatedAt. Order issues by update time.
	IssueOrderFieldUpdatedAt IssueOrderField = "UPDATED_AT"
	// IssueOrderFieldComments. Order issues by comment count.
	IssueOrderFieldComments IssueOrderField = "COMMENTS"
)

type IssueState

type IssueState string

IssueState represents the possible states of an issue.

const (
	// IssueStateOpen. An issue that is still open.
	IssueStateOpen IssueState = "OPEN"
	// IssueStateClosed. An issue that has been closed.
	IssueStateClosed IssueState = "CLOSED"
)

type IssueStateReason

type IssueStateReason string

IssueStateReason represents the possible state reasons of an issue.

const (
	// IssueStateReasonReopened. An issue that has been reopened.
	IssueStateReasonReopened IssueStateReason = "REOPENED"
	// IssueStateReasonNotPlanned. An issue that has been closed as not planned.
	IssueStateReasonNotPlanned IssueStateReason = "NOT_PLANNED"
	// IssueStateReasonCompleted. An issue that has been closed as completed.
	IssueStateReasonCompleted IssueStateReason = "COMPLETED"
)

type IssueTimelineItemsItemType

type IssueTimelineItemsItemType string

IssueTimelineItemsItemType represents the possible item types found in a timeline.

const (
	// IssueTimelineItemsItemTypeIssueComment. Represents a comment on an Issue.
	IssueTimelineItemsItemTypeIssueComment IssueTimelineItemsItemType = "ISSUE_COMMENT"
	// IssueTimelineItemsItemTypeCrossReferencedEvent. Represents a mention made by one issue or pull request to another.
	IssueTimelineItemsItemTypeCrossReferencedEvent IssueTimelineItemsItemType = "CROSS_REFERENCED_EVENT"
	// IssueTimelineItemsItemTypeAddedToProjectEvent. Represents a 'added_to_project' event on a given issue or pull request.
	IssueTimelineItemsItemTypeAddedToProjectEvent IssueTimelineItemsItemType = "ADDED_TO_PROJECT_EVENT"
	// IssueTimelineItemsItemTypeAssignedEvent. Represents an 'assigned' event on any assignable object.
	IssueTimelineItemsItemTypeAssignedEvent IssueTimelineItemsItemType = "ASSIGNED_EVENT"
	// IssueTimelineItemsItemTypeClosedEvent. Represents a 'closed' event on any `Closable`.
	IssueTimelineItemsItemTypeClosedEvent IssueTimelineItemsItemType = "CLOSED_EVENT"
	// IssueTimelineItemsItemTypeCommentDeletedEvent. Represents a 'comment_deleted' event on a given issue or pull request.
	IssueTimelineItemsItemTypeCommentDeletedEvent IssueTimelineItemsItemType = "COMMENT_DELETED_EVENT"
	// IssueTimelineItemsItemTypeConnectedEvent. Represents a 'connected' event on a given issue or pull request.
	IssueTimelineItemsItemTypeConnectedEvent IssueTimelineItemsItemType = "CONNECTED_EVENT"
	// IssueTimelineItemsItemTypeConvertedNoteToIssueEvent. Represents a 'converted_note_to_issue' event on a given issue or pull request.
	IssueTimelineItemsItemTypeConvertedNoteToIssueEvent IssueTimelineItemsItemType = "CONVERTED_NOTE_TO_ISSUE_EVENT"
	// IssueTimelineItemsItemTypeConvertedToDiscussionEvent. Represents a 'converted_to_discussion' event on a given issue.
	IssueTimelineItemsItemTypeConvertedToDiscussionEvent IssueTimelineItemsItemType = "CONVERTED_TO_DISCUSSION_EVENT"
	// IssueTimelineItemsItemTypeDemilestonedEvent. Represents a 'demilestoned' event on a given issue or pull request.
	IssueTimelineItemsItemTypeDemilestonedEvent IssueTimelineItemsItemType = "DEMILESTONED_EVENT"
	// IssueTimelineItemsItemTypeDisconnectedEvent. Represents a 'disconnected' event on a given issue or pull request.
	IssueTimelineItemsItemTypeDisconnectedEvent IssueTimelineItemsItemType = "DISCONNECTED_EVENT"
	// IssueTimelineItemsItemTypeLabeledEvent. Represents a 'labeled' event on a given issue or pull request.
	IssueTimelineItemsItemTypeLabeledEvent IssueTimelineItemsItemType = "LABELED_EVENT"
	// IssueTimelineItemsItemTypeLockedEvent. Represents a 'locked' event on a given issue or pull request.
	IssueTimelineItemsItemTypeLockedEvent IssueTimelineItemsItemType = "LOCKED_EVENT"
	// IssueTimelineItemsItemTypeMarkedAsDuplicateEvent. Represents a 'marked_as_duplicate' event on a given issue or pull request.
	IssueTimelineItemsItemTypeMarkedAsDuplicateEvent IssueTimelineItemsItemType = "MARKED_AS_DUPLICATE_EVENT"
	// IssueTimelineItemsItemTypeMentionedEvent. Represents a 'mentioned' event on a given issue or pull request.
	IssueTimelineItemsItemTypeMentionedEvent IssueTimelineItemsItemType = "MENTIONED_EVENT"
	// IssueTimelineItemsItemTypeMilestonedEvent. Represents a 'milestoned' event on a given issue or pull request.
	IssueTimelineItemsItemTypeMilestonedEvent IssueTimelineItemsItemType = "MILESTONED_EVENT"
	// IssueTimelineItemsItemTypeMovedColumnsInProjectEvent. Represents a 'moved_columns_in_project' event on a given issue or pull request.
	IssueTimelineItemsItemTypeMovedColumnsInProjectEvent IssueTimelineItemsItemType = "MOVED_COLUMNS_IN_PROJECT_EVENT"
	// IssueTimelineItemsItemTypePinnedEvent. Represents a 'pinned' event on a given issue or pull request.
	IssueTimelineItemsItemTypePinnedEvent IssueTimelineItemsItemType = "PINNED_EVENT"
	// IssueTimelineItemsItemTypeReferencedEvent. Represents a 'referenced' event on a given `ReferencedSubject`.
	IssueTimelineItemsItemTypeReferencedEvent IssueTimelineItemsItemType = "REFERENCED_EVENT"
	// IssueTimelineItemsItemTypeRemovedFromProjectEvent. Represents a 'removed_from_project' event on a given issue or pull request.
	IssueTimelineItemsItemTypeRemovedFromProjectEvent IssueTimelineItemsItemType = "REMOVED_FROM_PROJECT_EVENT"
	// IssueTimelineItemsItemTypeRenamedTitleEvent. Represents a 'renamed' event on a given issue or pull request.
	IssueTimelineItemsItemTypeRenamedTitleEvent IssueTimelineItemsItemType = "RENAMED_TITLE_EVENT"
	// IssueTimelineItemsItemTypeReopenedEvent. Represents a 'reopened' event on any `Closable`.
	IssueTimelineItemsItemTypeReopenedEvent IssueTimelineItemsItemType = "REOPENED_EVENT"
	// IssueTimelineItemsItemTypeSubscribedEvent. Represents a 'subscribed' event on a given `Subscribable`.
	IssueTimelineItemsItemTypeSubscribedEvent IssueTimelineItemsItemType = "SUBSCRIBED_EVENT"
	// IssueTimelineItemsItemTypeTransferredEvent. Represents a 'transferred' event on a given issue or pull request.
	IssueTimelineItemsItemTypeTransferredEvent IssueTimelineItemsItemType = "TRANSFERRED_EVENT"
	// IssueTimelineItemsItemTypeUnassignedEvent. Represents an 'unassigned' event on any assignable object.
	IssueTimelineItemsItemTypeUnassignedEvent IssueTimelineItemsItemType = "UNASSIGNED_EVENT"
	// IssueTimelineItemsItemTypeUnlabeledEvent. Represents an 'unlabeled' event on a given issue or pull request.
	IssueTimelineItemsItemTypeUnlabeledEvent IssueTimelineItemsItemType = "UNLABELED_EVENT"
	// IssueTimelineItemsItemTypeUnlockedEvent. Represents an 'unlocked' event on a given issue or pull request.
	IssueTimelineItemsItemTypeUnlockedEvent IssueTimelineItemsItemType = "UNLOCKED_EVENT"
	// IssueTimelineItemsItemTypeUserBlockedEvent. Represents a 'user_blocked' event on a given user.
	IssueTimelineItemsItemTypeUserBlockedEvent IssueTimelineItemsItemType = "USER_BLOCKED_EVENT"
	// IssueTimelineItemsItemTypeUnmarkedAsDuplicateEvent. Represents an 'unmarked_as_duplicate' event on a given issue or pull request.
	IssueTimelineItemsItemTypeUnmarkedAsDuplicateEvent IssueTimelineItemsItemType = "UNMARKED_AS_DUPLICATE_EVENT"
	// IssueTimelineItemsItemTypeUnpinnedEvent. Represents an 'unpinned' event on a given issue or pull request.
	IssueTimelineItemsItemTypeUnpinnedEvent IssueTimelineItemsItemType = "UNPINNED_EVENT"
	// IssueTimelineItemsItemTypeUnsubscribedEvent. Represents an 'unsubscribed' event on a given `Subscribable`.
	IssueTimelineItemsItemTypeUnsubscribedEvent IssueTimelineItemsItemType = "UNSUBSCRIBED_EVENT"
)

type LabelOrder

type LabelOrder struct {
	// The field in which to order labels by.
	Field LabelOrderField "json:\"field\""
	// The direction in which to order labels by the specified field.
	Direction OrderDirection "json:\"direction\""
}

LabelOrder represents ways in which lists of labels can be ordered upon return.

type LabelOrderField

type LabelOrderField string

LabelOrderField represents properties by which label connections can be ordered.

const (
	// LabelOrderFieldName. Order labels by name.
	LabelOrderFieldName LabelOrderField = "NAME"
	// LabelOrderFieldCreatedAt. Order labels by creation time.
	LabelOrderFieldCreatedAt LabelOrderField = "CREATED_AT"
)

type LanguageOrder

type LanguageOrder struct {
	// The field to order languages by.
	Field LanguageOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

LanguageOrder represents ordering options for language connections.

type LanguageOrderField

type LanguageOrderField string

LanguageOrderField represents properties by which language connections can be ordered.

const (
	// LanguageOrderFieldSize. Order languages by the size of all files containing the language.
	LanguageOrderFieldSize LanguageOrderField = "SIZE"
)

type LinkProjectV2ToRepositoryInput

type LinkProjectV2ToRepositoryInput struct {
	// The ID of the project to link to the repository.
	ProjectID ID "json:\"projectId\""
	// The ID of the repository to link to the project.
	RepositoryID ID "json:\"repositoryId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

LinkProjectV2ToRepositoryInput is an autogenerated input type of LinkProjectV2ToRepository.

type LinkProjectV2ToTeamInput

type LinkProjectV2ToTeamInput struct {
	// The ID of the project to link to the team.
	ProjectID ID "json:\"projectId\""
	// The ID of the team to link to the project.
	TeamID ID "json:\"teamId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

LinkProjectV2ToTeamInput is an autogenerated input type of LinkProjectV2ToTeam.

type LinkRepositoryToProjectInput

type LinkRepositoryToProjectInput struct {
	// The ID of the Project to link to a Repository.
	ProjectID ID "json:\"projectId\""
	// The ID of the Repository to link to a Project.
	RepositoryID ID "json:\"repositoryId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

LinkRepositoryToProjectInput is an autogenerated input type of LinkRepositoryToProject.

type LockLockableInput

type LockLockableInput struct {
	// ID of the item to be locked.
	LockableID ID "json:\"lockableId\""
	// A reason for why the item will be locked.
	LockReason *LockReason "json:\"lockReason,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

LockLockableInput is an autogenerated input type of LockLockable.

type LockReason

type LockReason string

LockReason represents the possible reasons that an issue or pull request was locked.

const (
	// LockReasonOffTopic. The issue or pull request was locked because the conversation was off-topic.
	LockReasonOffTopic LockReason = "OFF_TOPIC"
	// LockReasonTooHeated. The issue or pull request was locked because the conversation was too heated.
	LockReasonTooHeated LockReason = "TOO_HEATED"
	// LockReasonResolved. The issue or pull request was locked because the conversation was resolved.
	LockReasonResolved LockReason = "RESOLVED"
	// LockReasonSpam. The issue or pull request was locked because the conversation was spam.
	LockReasonSpam LockReason = "SPAM"
)

type MannequinOrder

type MannequinOrder struct {
	// The field to order mannequins by.
	Field MannequinOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

MannequinOrder represents ordering options for mannequins.

type MannequinOrderField

type MannequinOrderField string

MannequinOrderField represents properties by which mannequins can be ordered.

const (
	// MannequinOrderFieldLogin. Order mannequins alphabetically by their source login.
	MannequinOrderFieldLogin MannequinOrderField = "LOGIN"
	// MannequinOrderFieldCreatedAt. Order mannequins why when they were created.
	MannequinOrderFieldCreatedAt MannequinOrderField = "CREATED_AT"
)

type MarkDiscussionCommentAsAnswerInput

type MarkDiscussionCommentAsAnswerInput struct {
	// The Node ID of the discussion comment to mark as an answer.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

MarkDiscussionCommentAsAnswerInput is an autogenerated input type of MarkDiscussionCommentAsAnswer.

type MarkFileAsViewedInput

type MarkFileAsViewedInput struct {
	// The Node ID of the pull request.
	PullRequestID ID "json:\"pullRequestId\""
	// The path of the file to mark as viewed.
	Path string "json:\"path\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

MarkFileAsViewedInput is an autogenerated input type of MarkFileAsViewed.

type MarkProjectV2AsTemplateInput

type MarkProjectV2AsTemplateInput struct {
	// The ID of the Project to mark as a template.
	ProjectID ID "json:\"projectId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

MarkProjectV2AsTemplateInput is an autogenerated input type of MarkProjectV2AsTemplate.

type MarkPullRequestReadyForReviewInput

type MarkPullRequestReadyForReviewInput struct {
	// ID of the pull request to be marked as ready for review.
	PullRequestID ID "json:\"pullRequestId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

MarkPullRequestReadyForReviewInput is an autogenerated input type of MarkPullRequestReadyForReview.

type MergeBranchInput

type MergeBranchInput struct {
	// The Node ID of the Repository containing the base branch that will be modified.
	RepositoryID ID "json:\"repositoryId\""
	// The name of the base branch that the provided head will be merged into.
	Base string "json:\"base\""
	// The head to merge into the base branch. This can be a branch name or a commit GitObjectID.
	Head string "json:\"head\""
	// Message to use for the merge commit. If omitted, a default will be used.
	CommitMessage *string "json:\"commitMessage,omitempty\""
	// The email address to associate with this commit.
	AuthorEmail *string "json:\"authorEmail,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

MergeBranchInput is an autogenerated input type of MergeBranch.

type MergeCommitMessage

type MergeCommitMessage string

MergeCommitMessage represents the possible default commit messages for merges.

const (
	// MergeCommitMessagePrTitle. Default to the pull request's title.
	MergeCommitMessagePrTitle MergeCommitMessage = "PR_TITLE"
	// MergeCommitMessagePrBody. Default to the pull request's body.
	MergeCommitMessagePrBody MergeCommitMessage = "PR_BODY"
	// MergeCommitMessageBlank. Default to a blank commit message.
	MergeCommitMessageBlank MergeCommitMessage = "BLANK"
)

type MergeCommitTitle

type MergeCommitTitle string

MergeCommitTitle represents the possible default commit titles for merges.

const (
	// MergeCommitTitlePrTitle. Default to the pull request's title.
	MergeCommitTitlePrTitle MergeCommitTitle = "PR_TITLE"
	// MergeCommitTitleMergeMessage. Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name).
	MergeCommitTitleMergeMessage MergeCommitTitle = "MERGE_MESSAGE"
)

type MergePullRequestInput

type MergePullRequestInput struct {
	// ID of the pull request to be merged.
	PullRequestID ID "json:\"pullRequestId\""
	// Commit headline to use for the merge commit; if omitted, a default message will be used.
	CommitHeadline *string "json:\"commitHeadline,omitempty\""
	// Commit body to use for the merge commit; if omitted, a default message will be used.
	CommitBody *string "json:\"commitBody,omitempty\""
	// OID that the pull request head ref must match to allow merge; if omitted, no check is performed.
	ExpectedHeadOid *GitObjectID "json:\"expectedHeadOid,omitempty\""
	// The merge method to use. If omitted, defaults to 'MERGE'.
	MergeMethod *PullRequestMergeMethod "json:\"mergeMethod,omitempty\""
	// The email address to associate with this merge.
	AuthorEmail *string "json:\"authorEmail,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

MergePullRequestInput is an autogenerated input type of MergePullRequest.

type MergeQueueEntryState

type MergeQueueEntryState string

MergeQueueEntryState represents the possible states for a merge queue entry.

const (
	// MergeQueueEntryStateQueued. The entry is currently queued.
	MergeQueueEntryStateQueued MergeQueueEntryState = "QUEUED"
	// MergeQueueEntryStateAwaitingChecks. The entry is currently waiting for checks to pass.
	MergeQueueEntryStateAwaitingChecks MergeQueueEntryState = "AWAITING_CHECKS"
	// MergeQueueEntryStateMergeable. The entry is currently mergeable.
	MergeQueueEntryStateMergeable MergeQueueEntryState = "MERGEABLE"
	// MergeQueueEntryStateUnmergeable. The entry is currently unmergeable.
	MergeQueueEntryStateUnmergeable MergeQueueEntryState = "UNMERGEABLE"
	// MergeQueueEntryStateLocked. The entry is currently locked.
	MergeQueueEntryStateLocked MergeQueueEntryState = "LOCKED"
)

type MergeQueueMergingStrategy

type MergeQueueMergingStrategy string

MergeQueueMergingStrategy represents the possible merging strategies for a merge queue.

const (
	// MergeQueueMergingStrategyAllgreen. Entries only allowed to merge if they are passing.
	MergeQueueMergingStrategyAllgreen MergeQueueMergingStrategy = "ALLGREEN"
	// MergeQueueMergingStrategyHeadgreen. Failing Entires are allowed to merge if they are with a passing entry.
	MergeQueueMergingStrategyHeadgreen MergeQueueMergingStrategy = "HEADGREEN"
)

type MergeableState

type MergeableState string

MergeableState represents whether or not a PullRequest can be merged.

const (
	// MergeableStateMergeable. The pull request can be merged.
	MergeableStateMergeable MergeableState = "MERGEABLE"
	// MergeableStateConflicting. The pull request cannot be merged due to merge conflicts.
	MergeableStateConflicting MergeableState = "CONFLICTING"
	// MergeableStateUnknown. The mergeability of the pull request is still being calculated.
	MergeableStateUnknown MergeableState = "UNKNOWN"
)

type MigrationSourceType

type MigrationSourceType string

MigrationSourceType represents represents the different GitHub Enterprise Importer (GEI) migration sources.

const (
	// MigrationSourceTypeAzureDevOps. An Azure DevOps migration source.
	MigrationSourceTypeAzureDevOps MigrationSourceType = "AZURE_DEVOPS"
	// MigrationSourceTypeBitbucketServer. A Bitbucket Server migration source.
	MigrationSourceTypeBitbucketServer MigrationSourceType = "BITBUCKET_SERVER"
	// MigrationSourceTypeGitHubArchive. A GitHub Migration API source.
	MigrationSourceTypeGitHubArchive MigrationSourceType = "GITHUB_ARCHIVE"
)

type MigrationState

type MigrationState string

MigrationState represents the GitHub Enterprise Importer (GEI) migration state.

const (
	// MigrationStateNotStarted. The migration has not started.
	MigrationStateNotStarted MigrationState = "NOT_STARTED"
	// MigrationStateQueued. The migration has been queued.
	MigrationStateQueued MigrationState = "QUEUED"
	// MigrationStateInProgress. The migration is in progress.
	MigrationStateInProgress MigrationState = "IN_PROGRESS"
	// MigrationStateSucceeded. The migration has succeeded.
	MigrationStateSucceeded MigrationState = "SUCCEEDED"
	// MigrationStateFailed. The migration has failed.
	MigrationStateFailed MigrationState = "FAILED"
	// MigrationStatePendingValidation. The migration needs to have its credentials validated.
	MigrationStatePendingValidation MigrationState = "PENDING_VALIDATION"
	// MigrationStateFailedValidation. The migration has invalid credentials.
	MigrationStateFailedValidation MigrationState = "FAILED_VALIDATION"
)

type MilestoneOrder

type MilestoneOrder struct {
	// The field to order milestones by.
	Field MilestoneOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

MilestoneOrder represents ordering options for milestone connections.

type MilestoneOrderField

type MilestoneOrderField string

MilestoneOrderField represents properties by which milestone connections can be ordered.

const (
	// MilestoneOrderFieldDueDate. Order milestones by when they are due.
	MilestoneOrderFieldDueDate MilestoneOrderField = "DUE_DATE"
	// MilestoneOrderFieldCreatedAt. Order milestones by when they were created.
	MilestoneOrderFieldCreatedAt MilestoneOrderField = "CREATED_AT"
	// MilestoneOrderFieldUpdatedAt. Order milestones by when they were last updated.
	MilestoneOrderFieldUpdatedAt MilestoneOrderField = "UPDATED_AT"
	// MilestoneOrderFieldNumber. Order milestones by their number.
	MilestoneOrderFieldNumber MilestoneOrderField = "NUMBER"
)

type MilestoneState

type MilestoneState string

MilestoneState represents the possible states of a milestone.

const (
	// MilestoneStateOpen. A milestone that is still open.
	MilestoneStateOpen MilestoneState = "OPEN"
	// MilestoneStateClosed. A milestone that has been closed.
	MilestoneStateClosed MilestoneState = "CLOSED"
)

type MinimizeCommentInput

type MinimizeCommentInput struct {
	// The Node ID of the subject to modify.
	SubjectID ID "json:\"subjectId\""
	// The classification of comment.
	Classifier ReportedContentClassifiers "json:\"classifier\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

MinimizeCommentInput is an autogenerated input type of MinimizeComment.

type MoveProjectCardInput

type MoveProjectCardInput struct {
	// The id of the card to move.
	CardID ID "json:\"cardId\""
	// The id of the column to move it into.
	ColumnID ID "json:\"columnId\""
	// Place the new card after the card with this id. Pass null to place it at the top.
	AfterCardID *ID "json:\"afterCardId,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

MoveProjectCardInput is an autogenerated input type of MoveProjectCard.

type MoveProjectColumnInput

type MoveProjectColumnInput struct {
	// The id of the column to move.
	ColumnID ID "json:\"columnId\""
	// Place the new column after the column with this id. Pass null to place it at the front.
	AfterColumnID *ID "json:\"afterColumnId,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

MoveProjectColumnInput is an autogenerated input type of MoveProjectColumn.

type NotificationRestrictionSettingValue

type NotificationRestrictionSettingValue string

NotificationRestrictionSettingValue represents the possible values for the notification restriction setting.

const (
	// NotificationRestrictionSettingValueEnabled. The setting is enabled for the owner.
	NotificationRestrictionSettingValueEnabled NotificationRestrictionSettingValue = "ENABLED"
	// NotificationRestrictionSettingValueDisabled. The setting is disabled for the owner.
	NotificationRestrictionSettingValueDisabled NotificationRestrictionSettingValue = "DISABLED"
)

type OIDCProviderType

type OIDCProviderType string

OIDCProviderType represents the OIDC identity provider type.

const (
	// OIDCProviderTypeAad. Azure Active Directory.
	OIDCProviderTypeAad OIDCProviderType = "AAD"
)

type OauthApplicationCreateAuditEntryState

type OauthApplicationCreateAuditEntryState string

OauthApplicationCreateAuditEntryState represents the state of an OAuth application when it was created.

const (
	// OauthApplicationCreateAuditEntryStateActive. The OAuth application was active and allowed to have OAuth Accesses.
	OauthApplicationCreateAuditEntryStateActive OauthApplicationCreateAuditEntryState = "ACTIVE"
	// OauthApplicationCreateAuditEntryStateSuspended. The OAuth application was suspended from generating OAuth Accesses due to abuse or security concerns.
	OauthApplicationCreateAuditEntryStateSuspended OauthApplicationCreateAuditEntryState = "SUSPENDED"
	// OauthApplicationCreateAuditEntryStatePendingDeletion. The OAuth application was in the process of being deleted.
	OauthApplicationCreateAuditEntryStatePendingDeletion OauthApplicationCreateAuditEntryState = "PENDING_DELETION"
)

type OperationType

type OperationType string

OperationType represents the corresponding operation type for the action.

const (
	// OperationTypeAccess. An existing resource was accessed.
	OperationTypeAccess OperationType = "ACCESS"
	// OperationTypeAuthentication. A resource performed an authentication event.
	OperationTypeAuthentication OperationType = "AUTHENTICATION"
	// OperationTypeCreate. A new resource was created.
	OperationTypeCreate OperationType = "CREATE"
	// OperationTypeModify. An existing resource was modified.
	OperationTypeModify OperationType = "MODIFY"
	// OperationTypeRemove. An existing resource was removed.
	OperationTypeRemove OperationType = "REMOVE"
	// OperationTypeRestore. An existing resource was restored.
	OperationTypeRestore OperationType = "RESTORE"
	// OperationTypeTransfer. An existing resource was transferred between multiple resources.
	OperationTypeTransfer OperationType = "TRANSFER"
)

type OrderDirection

type OrderDirection string

OrderDirection represents possible directions in which to order a list of items when provided an `orderBy` argument.

const (
	// OrderDirectionAsc. Specifies an ascending order for a given `orderBy` argument.
	OrderDirectionAsc OrderDirection = "ASC"
	// OrderDirectionDesc. Specifies a descending order for a given `orderBy` argument.
	OrderDirectionDesc OrderDirection = "DESC"
)

type OrgAddMemberAuditEntryPermission

type OrgAddMemberAuditEntryPermission string

OrgAddMemberAuditEntryPermission represents the permissions available to members on an Organization.

const (
	// OrgAddMemberAuditEntryPermissionRead. Can read and clone repositories.
	OrgAddMemberAuditEntryPermissionRead OrgAddMemberAuditEntryPermission = "READ"
	// OrgAddMemberAuditEntryPermissionAdmin. Can read, clone, push, and add collaborators to repositories.
	OrgAddMemberAuditEntryPermissionAdmin OrgAddMemberAuditEntryPermission = "ADMIN"
)

type OrgCreateAuditEntryBillingPlan

type OrgCreateAuditEntryBillingPlan string

OrgCreateAuditEntryBillingPlan represents the billing plans available for organizations.

const (
	// OrgCreateAuditEntryBillingPlanFree. Free Plan.
	OrgCreateAuditEntryBillingPlanFree OrgCreateAuditEntryBillingPlan = "FREE"
	// OrgCreateAuditEntryBillingPlanBusiness. Team Plan.
	OrgCreateAuditEntryBillingPlanBusiness OrgCreateAuditEntryBillingPlan = "BUSINESS"
	// OrgCreateAuditEntryBillingPlanBusinessPlus. Enterprise Cloud Plan.
	OrgCreateAuditEntryBillingPlanBusinessPlus OrgCreateAuditEntryBillingPlan = "BUSINESS_PLUS"
	// OrgCreateAuditEntryBillingPlanUnlimited. Legacy Unlimited Plan.
	OrgCreateAuditEntryBillingPlanUnlimited OrgCreateAuditEntryBillingPlan = "UNLIMITED"
	// OrgCreateAuditEntryBillingPlanTieredPerSeat. Tiered Per Seat Plan.
	OrgCreateAuditEntryBillingPlanTieredPerSeat OrgCreateAuditEntryBillingPlan = "TIERED_PER_SEAT"
)

type OrgEnterpriseOwnerOrder

type OrgEnterpriseOwnerOrder struct {
	// The field to order enterprise owners by.
	Field OrgEnterpriseOwnerOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

OrgEnterpriseOwnerOrder represents ordering options for an organization's enterprise owner connections.

type OrgEnterpriseOwnerOrderField

type OrgEnterpriseOwnerOrderField string

OrgEnterpriseOwnerOrderField represents properties by which enterprise owners can be ordered.

const (
	// OrgEnterpriseOwnerOrderFieldLogin. Order enterprise owners by login.
	OrgEnterpriseOwnerOrderFieldLogin OrgEnterpriseOwnerOrderField = "LOGIN"
)

type OrgRemoveBillingManagerAuditEntryReason

type OrgRemoveBillingManagerAuditEntryReason string

OrgRemoveBillingManagerAuditEntryReason represents the reason a billing manager was removed from an Organization.

const (
	// OrgRemoveBillingManagerAuditEntryReasonTwoFactorRequirementNonCompliance. The organization required 2FA of its billing managers and this user did not have 2FA enabled.
	OrgRemoveBillingManagerAuditEntryReasonTwoFactorRequirementNonCompliance OrgRemoveBillingManagerAuditEntryReason = "TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE"
	// OrgRemoveBillingManagerAuditEntryReasonSamlExternalIdentityMissing. SAML external identity missing.
	OrgRemoveBillingManagerAuditEntryReasonSamlExternalIdentityMissing OrgRemoveBillingManagerAuditEntryReason = "SAML_EXTERNAL_IDENTITY_MISSING"
	// OrgRemoveBillingManagerAuditEntryReasonSamlSsoEnforcementRequiresExternalIdentity. SAML SSO enforcement requires an external identity.
	OrgRemoveBillingManagerAuditEntryReasonSamlSsoEnforcementRequiresExternalIdentity OrgRemoveBillingManagerAuditEntryReason = "SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY"
)

type OrgRemoveMemberAuditEntryMembershipType

type OrgRemoveMemberAuditEntryMembershipType string

OrgRemoveMemberAuditEntryMembershipType represents the type of membership a user has with an Organization.

const (
	// OrgRemoveMemberAuditEntryMembershipTypeSuspended. A suspended member.
	OrgRemoveMemberAuditEntryMembershipTypeSuspended OrgRemoveMemberAuditEntryMembershipType = "SUSPENDED"
	// OrgRemoveMemberAuditEntryMembershipTypeDirectMember. A direct member is a user that is a member of the Organization.
	OrgRemoveMemberAuditEntryMembershipTypeDirectMember OrgRemoveMemberAuditEntryMembershipType = "DIRECT_MEMBER"
	// OrgRemoveMemberAuditEntryMembershipTypeAdmin. Organization administrators have full access and can change several settings, including the names of repositories that belong to the Organization and Owners team membership. In addition, organization admins can delete the organization and all of its repositories.
	OrgRemoveMemberAuditEntryMembershipTypeAdmin OrgRemoveMemberAuditEntryMembershipType = "ADMIN"
	// OrgRemoveMemberAuditEntryMembershipTypeBillingManager. A billing manager is a user who manages the billing settings for the Organization, such as updating payment information.
	OrgRemoveMemberAuditEntryMembershipTypeBillingManager OrgRemoveMemberAuditEntryMembershipType = "BILLING_MANAGER"
	// OrgRemoveMemberAuditEntryMembershipTypeUnaffiliated. An unaffiliated collaborator is a person who is not a member of the Organization and does not have access to any repositories in the Organization.
	OrgRemoveMemberAuditEntryMembershipTypeUnaffiliated OrgRemoveMemberAuditEntryMembershipType = "UNAFFILIATED"
	// OrgRemoveMemberAuditEntryMembershipTypeOutsideCollaborator. An outside collaborator is a person who isn't explicitly a member of the Organization, but who has Read, Write, or Admin permissions to one or more repositories in the organization.
	OrgRemoveMemberAuditEntryMembershipTypeOutsideCollaborator OrgRemoveMemberAuditEntryMembershipType = "OUTSIDE_COLLABORATOR"
)

type OrgRemoveMemberAuditEntryReason

type OrgRemoveMemberAuditEntryReason string

OrgRemoveMemberAuditEntryReason represents the reason a member was removed from an Organization.

const (
	// OrgRemoveMemberAuditEntryReasonTwoFactorRequirementNonCompliance. The organization required 2FA of its billing managers and this user did not have 2FA enabled.
	OrgRemoveMemberAuditEntryReasonTwoFactorRequirementNonCompliance OrgRemoveMemberAuditEntryReason = "TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE"
	// OrgRemoveMemberAuditEntryReasonSamlExternalIdentityMissing. SAML external identity missing.
	OrgRemoveMemberAuditEntryReasonSamlExternalIdentityMissing OrgRemoveMemberAuditEntryReason = "SAML_EXTERNAL_IDENTITY_MISSING"
	// OrgRemoveMemberAuditEntryReasonSamlSsoEnforcementRequiresExternalIdentity. SAML SSO enforcement requires an external identity.
	OrgRemoveMemberAuditEntryReasonSamlSsoEnforcementRequiresExternalIdentity OrgRemoveMemberAuditEntryReason = "SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY"
	// OrgRemoveMemberAuditEntryReasonUserAccountDeleted. User account has been deleted.
	OrgRemoveMemberAuditEntryReasonUserAccountDeleted OrgRemoveMemberAuditEntryReason = "USER_ACCOUNT_DELETED"
	// OrgRemoveMemberAuditEntryReasonTwoFactorAccountRecovery. User was removed from organization during account recovery.
	OrgRemoveMemberAuditEntryReasonTwoFactorAccountRecovery OrgRemoveMemberAuditEntryReason = "TWO_FACTOR_ACCOUNT_RECOVERY"
)

type OrgRemoveOutsideCollaboratorAuditEntryMembershipType

type OrgRemoveOutsideCollaboratorAuditEntryMembershipType string

OrgRemoveOutsideCollaboratorAuditEntryMembershipType represents the type of membership a user has with an Organization.

const (
	// OrgRemoveOutsideCollaboratorAuditEntryMembershipTypeOutsideCollaborator. An outside collaborator is a person who isn't explicitly a member of the Organization, but who has Read, Write, or Admin permissions to one or more repositories in the organization.
	OrgRemoveOutsideCollaboratorAuditEntryMembershipTypeOutsideCollaborator OrgRemoveOutsideCollaboratorAuditEntryMembershipType = "OUTSIDE_COLLABORATOR"
	// OrgRemoveOutsideCollaboratorAuditEntryMembershipTypeUnaffiliated. An unaffiliated collaborator is a person who is not a member of the Organization and does not have access to any repositories in the organization.
	OrgRemoveOutsideCollaboratorAuditEntryMembershipTypeUnaffiliated OrgRemoveOutsideCollaboratorAuditEntryMembershipType = "UNAFFILIATED"
	// OrgRemoveOutsideCollaboratorAuditEntryMembershipTypeBillingManager. A billing manager is a user who manages the billing settings for the Organization, such as updating payment information.
	OrgRemoveOutsideCollaboratorAuditEntryMembershipTypeBillingManager OrgRemoveOutsideCollaboratorAuditEntryMembershipType = "BILLING_MANAGER"
)

type OrgRemoveOutsideCollaboratorAuditEntryReason

type OrgRemoveOutsideCollaboratorAuditEntryReason string

OrgRemoveOutsideCollaboratorAuditEntryReason represents the reason an outside collaborator was removed from an Organization.

const (
	// OrgRemoveOutsideCollaboratorAuditEntryReasonTwoFactorRequirementNonCompliance. The organization required 2FA of its billing managers and this user did not have 2FA enabled.
	OrgRemoveOutsideCollaboratorAuditEntryReasonTwoFactorRequirementNonCompliance OrgRemoveOutsideCollaboratorAuditEntryReason = "TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE"
	// OrgRemoveOutsideCollaboratorAuditEntryReasonSamlExternalIdentityMissing. SAML external identity missing.
	OrgRemoveOutsideCollaboratorAuditEntryReasonSamlExternalIdentityMissing OrgRemoveOutsideCollaboratorAuditEntryReason = "SAML_EXTERNAL_IDENTITY_MISSING"
)

type OrgUpdateDefaultRepositoryPermissionAuditEntryPermission

type OrgUpdateDefaultRepositoryPermissionAuditEntryPermission string

OrgUpdateDefaultRepositoryPermissionAuditEntryPermission represents the default permission a repository can have in an Organization.

const (
	// OrgUpdateDefaultRepositoryPermissionAuditEntryPermissionRead. Can read and clone repositories.
	OrgUpdateDefaultRepositoryPermissionAuditEntryPermissionRead OrgUpdateDefaultRepositoryPermissionAuditEntryPermission = "READ"
	// OrgUpdateDefaultRepositoryPermissionAuditEntryPermissionWrite. Can read, clone and push to repositories.
	OrgUpdateDefaultRepositoryPermissionAuditEntryPermissionWrite OrgUpdateDefaultRepositoryPermissionAuditEntryPermission = "WRITE"
	// OrgUpdateDefaultRepositoryPermissionAuditEntryPermissionAdmin. Can read, clone, push, and add collaborators to repositories.
	OrgUpdateDefaultRepositoryPermissionAuditEntryPermissionAdmin OrgUpdateDefaultRepositoryPermissionAuditEntryPermission = "ADMIN"
	// OrgUpdateDefaultRepositoryPermissionAuditEntryPermissionNone. No default permission value.
	OrgUpdateDefaultRepositoryPermissionAuditEntryPermissionNone OrgUpdateDefaultRepositoryPermissionAuditEntryPermission = "NONE"
)

type OrgUpdateMemberAuditEntryPermission

type OrgUpdateMemberAuditEntryPermission string

OrgUpdateMemberAuditEntryPermission represents the permissions available to members on an Organization.

const (
	// OrgUpdateMemberAuditEntryPermissionRead. Can read and clone repositories.
	OrgUpdateMemberAuditEntryPermissionRead OrgUpdateMemberAuditEntryPermission = "READ"
	// OrgUpdateMemberAuditEntryPermissionAdmin. Can read, clone, push, and add collaborators to repositories.
	OrgUpdateMemberAuditEntryPermissionAdmin OrgUpdateMemberAuditEntryPermission = "ADMIN"
)

type OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility

type OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility string

OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility represents the permissions available for repository creation on an Organization.

const (
	// OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityAll. All organization members are restricted from creating any repositories.
	OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityAll OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility = "ALL"
	// OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPublic. All organization members are restricted from creating public repositories.
	OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPublic OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility = "PUBLIC"
	// OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityNone. All organization members are allowed to create any repositories.
	OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityNone OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility = "NONE"
	// OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPrivate. All organization members are restricted from creating private repositories.
	OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPrivate OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility = "PRIVATE"
	// OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityInternal. All organization members are restricted from creating internal repositories.
	OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityInternal OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility = "INTERNAL"
	// OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPublicInternal. All organization members are restricted from creating public or internal repositories.
	OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPublicInternal OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility = "PUBLIC_INTERNAL"
	// OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPrivateInternal. All organization members are restricted from creating private or internal repositories.
	OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPrivateInternal OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility = "PRIVATE_INTERNAL"
	// OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPublicPrivate. All organization members are restricted from creating public or private repositories.
	OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibilityPublicPrivate OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility = "PUBLIC_PRIVATE"
)

type OrganizationInvitationRole

type OrganizationInvitationRole string

OrganizationInvitationRole represents the possible organization invitation roles.

const (
	// OrganizationInvitationRoleDirectMember. The user is invited to be a direct member of the organization.
	OrganizationInvitationRoleDirectMember OrganizationInvitationRole = "DIRECT_MEMBER"
	// OrganizationInvitationRoleAdmin. The user is invited to be an admin of the organization.
	OrganizationInvitationRoleAdmin OrganizationInvitationRole = "ADMIN"
	// OrganizationInvitationRoleBillingManager. The user is invited to be a billing manager of the organization.
	OrganizationInvitationRoleBillingManager OrganizationInvitationRole = "BILLING_MANAGER"
	// OrganizationInvitationRoleReinstate. The user's previous role will be reinstated.
	OrganizationInvitationRoleReinstate OrganizationInvitationRole = "REINSTATE"
)

type OrganizationInvitationSource

type OrganizationInvitationSource string

OrganizationInvitationSource represents the possible organization invitation sources.

const (
	// OrganizationInvitationSourceUnknown. The invitation was sent before this feature was added.
	OrganizationInvitationSourceUnknown OrganizationInvitationSource = "UNKNOWN"
	// OrganizationInvitationSourceMember. The invitation was created from the web interface or from API.
	OrganizationInvitationSourceMember OrganizationInvitationSource = "MEMBER"
	// OrganizationInvitationSourceScim. The invitation was created from SCIM.
	OrganizationInvitationSourceScim OrganizationInvitationSource = "SCIM"
)

type OrganizationInvitationType

type OrganizationInvitationType string

OrganizationInvitationType represents the possible organization invitation types.

const (
	// OrganizationInvitationTypeUser. The invitation was to an existing user.
	OrganizationInvitationTypeUser OrganizationInvitationType = "USER"
	// OrganizationInvitationTypeEmail. The invitation was to an email address.
	OrganizationInvitationTypeEmail OrganizationInvitationType = "EMAIL"
)

type OrganizationMemberRole

type OrganizationMemberRole string

OrganizationMemberRole represents the possible roles within an organization for its members.

const (
	// OrganizationMemberRoleMember. The user is a member of the organization.
	OrganizationMemberRoleMember OrganizationMemberRole = "MEMBER"
	// OrganizationMemberRoleAdmin. The user is an administrator of the organization.
	OrganizationMemberRoleAdmin OrganizationMemberRole = "ADMIN"
)

type OrganizationMembersCanCreateRepositoriesSettingValue

type OrganizationMembersCanCreateRepositoriesSettingValue string

OrganizationMembersCanCreateRepositoriesSettingValue represents the possible values for the members can create repositories setting on an organization.

const (
	// OrganizationMembersCanCreateRepositoriesSettingValueAll. Members will be able to create public and private repositories.
	OrganizationMembersCanCreateRepositoriesSettingValueAll OrganizationMembersCanCreateRepositoriesSettingValue = "ALL"
	// OrganizationMembersCanCreateRepositoriesSettingValuePrivate. Members will be able to create only private repositories.
	OrganizationMembersCanCreateRepositoriesSettingValuePrivate OrganizationMembersCanCreateRepositoriesSettingValue = "PRIVATE"
	// OrganizationMembersCanCreateRepositoriesSettingValueInternal. Members will be able to create only internal repositories.
	OrganizationMembersCanCreateRepositoriesSettingValueInternal OrganizationMembersCanCreateRepositoriesSettingValue = "INTERNAL"
	// OrganizationMembersCanCreateRepositoriesSettingValueDisabled. Members will not be able to create public or private repositories.
	OrganizationMembersCanCreateRepositoriesSettingValueDisabled OrganizationMembersCanCreateRepositoriesSettingValue = "DISABLED"
)

type OrganizationMigrationState

type OrganizationMigrationState string

OrganizationMigrationState represents the Octoshift Organization migration state.

const (
	// OrganizationMigrationStateNotStarted. The Octoshift migration has not started.
	OrganizationMigrationStateNotStarted OrganizationMigrationState = "NOT_STARTED"
	// OrganizationMigrationStateQueued. The Octoshift migration has been queued.
	OrganizationMigrationStateQueued OrganizationMigrationState = "QUEUED"
	// OrganizationMigrationStateInProgress. The Octoshift migration is in progress.
	OrganizationMigrationStateInProgress OrganizationMigrationState = "IN_PROGRESS"
	// OrganizationMigrationStatePreRepoMigration. The Octoshift migration is performing pre repository migrations.
	OrganizationMigrationStatePreRepoMigration OrganizationMigrationState = "PRE_REPO_MIGRATION"
	// OrganizationMigrationStateRepoMigration. The Octoshift org migration is performing repository migrations.
	OrganizationMigrationStateRepoMigration OrganizationMigrationState = "REPO_MIGRATION"
	// OrganizationMigrationStatePostRepoMigration. The Octoshift migration is performing post repository migrations.
	OrganizationMigrationStatePostRepoMigration OrganizationMigrationState = "POST_REPO_MIGRATION"
	// OrganizationMigrationStateSucceeded. The Octoshift migration has succeeded.
	OrganizationMigrationStateSucceeded OrganizationMigrationState = "SUCCEEDED"
	// OrganizationMigrationStateFailed. The Octoshift migration has failed.
	OrganizationMigrationStateFailed OrganizationMigrationState = "FAILED"
	// OrganizationMigrationStatePendingValidation. The Octoshift migration needs to have its credentials validated.
	OrganizationMigrationStatePendingValidation OrganizationMigrationState = "PENDING_VALIDATION"
	// OrganizationMigrationStateFailedValidation. The Octoshift migration has invalid credentials.
	OrganizationMigrationStateFailedValidation OrganizationMigrationState = "FAILED_VALIDATION"
)

type OrganizationOrder

type OrganizationOrder struct {
	// The field to order organizations by.
	Field OrganizationOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

OrganizationOrder represents ordering options for organization connections.

type OrganizationOrderField

type OrganizationOrderField string

OrganizationOrderField represents properties by which organization connections can be ordered.

const (
	// OrganizationOrderFieldCreatedAt. Order organizations by creation time.
	OrganizationOrderFieldCreatedAt OrganizationOrderField = "CREATED_AT"
	// OrganizationOrderFieldLogin. Order organizations by login.
	OrganizationOrderFieldLogin OrganizationOrderField = "LOGIN"
)

type PackageFileOrder

type PackageFileOrder struct {
	// The field in which to order package files by.
	Field *PackageFileOrderField "json:\"field,omitempty\""
	// The direction in which to order package files by the specified field.
	Direction *OrderDirection "json:\"direction,omitempty\""
}

PackageFileOrder represents ways in which lists of package files can be ordered upon return.

type PackageFileOrderField

type PackageFileOrderField string

PackageFileOrderField represents properties by which package file connections can be ordered.

const (
	// PackageFileOrderFieldCreatedAt. Order package files by creation time.
	PackageFileOrderFieldCreatedAt PackageFileOrderField = "CREATED_AT"
)

type PackageOrder

type PackageOrder struct {
	// The field in which to order packages by.
	Field *PackageOrderField "json:\"field,omitempty\""
	// The direction in which to order packages by the specified field.
	Direction *OrderDirection "json:\"direction,omitempty\""
}

PackageOrder represents ways in which lists of packages can be ordered upon return.

type PackageOrderField

type PackageOrderField string

PackageOrderField represents properties by which package connections can be ordered.

const (
	// PackageOrderFieldCreatedAt. Order packages by creation time.
	PackageOrderFieldCreatedAt PackageOrderField = "CREATED_AT"
)

type PackageType

type PackageType string

PackageType represents the possible types of a package.

const (
	// PackageTypeNpm. An npm package.
	PackageTypeNpm PackageType = "NPM"
	// PackageTypeRubygems. A rubygems package.
	PackageTypeRubygems PackageType = "RUBYGEMS"
	// PackageTypeMaven. A maven package.
	PackageTypeMaven PackageType = "MAVEN"
	// PackageTypeDocker. A docker image.
	PackageTypeDocker PackageType = "DOCKER"
	// PackageTypeDebian. A debian package.
	PackageTypeDebian PackageType = "DEBIAN"
	// PackageTypeNuget. A nuget package.
	PackageTypeNuget PackageType = "NUGET"
	// PackageTypePypi. A python package.
	PackageTypePypi PackageType = "PYPI"
)

type PackageVersionOrder

type PackageVersionOrder struct {
	// The field in which to order package versions by.
	Field *PackageVersionOrderField "json:\"field,omitempty\""
	// The direction in which to order package versions by the specified field.
	Direction *OrderDirection "json:\"direction,omitempty\""
}

PackageVersionOrder represents ways in which lists of package versions can be ordered upon return.

type PackageVersionOrderField

type PackageVersionOrderField string

PackageVersionOrderField represents properties by which package version connections can be ordered.

const (
	// PackageVersionOrderFieldCreatedAt. Order package versions by creation time.
	PackageVersionOrderFieldCreatedAt PackageVersionOrderField = "CREATED_AT"
)

type PatchStatus

type PatchStatus string

PatchStatus represents the possible types of patch statuses.

const (
	// PatchStatusAdded. The file was added. Git status 'A'.
	PatchStatusAdded PatchStatus = "ADDED"
	// PatchStatusDeleted. The file was deleted. Git status 'D'.
	PatchStatusDeleted PatchStatus = "DELETED"
	// PatchStatusRenamed. The file was renamed. Git status 'R'.
	PatchStatusRenamed PatchStatus = "RENAMED"
	// PatchStatusCopied. The file was copied. Git status 'C'.
	PatchStatusCopied PatchStatus = "COPIED"
	// PatchStatusModified. The file's contents were changed. Git status 'M'.
	PatchStatusModified PatchStatus = "MODIFIED"
	// PatchStatusChanged. The file's type was changed. Git status 'T'.
	PatchStatusChanged PatchStatus = "CHANGED"
)

type PinIssueInput

type PinIssueInput struct {
	// The ID of the issue to be pinned.
	IssueID ID "json:\"issueId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

PinIssueInput is an autogenerated input type of PinIssue.

type PinnableItemType

type PinnableItemType string

PinnableItemType represents represents items that can be pinned to a profile page or dashboard.

const (
	// PinnableItemTypeRepository. A repository.
	PinnableItemTypeRepository PinnableItemType = "REPOSITORY"
	// PinnableItemTypeGist. A gist.
	PinnableItemTypeGist PinnableItemType = "GIST"
	// PinnableItemTypeIssue. An issue.
	PinnableItemTypeIssue PinnableItemType = "ISSUE"
	// PinnableItemTypeProject. A project.
	PinnableItemTypeProject PinnableItemType = "PROJECT"
	// PinnableItemTypePullRequest. A pull request.
	PinnableItemTypePullRequest PinnableItemType = "PULL_REQUEST"
	// PinnableItemTypeUser. A user.
	PinnableItemTypeUser PinnableItemType = "USER"
	// PinnableItemTypeOrganization. An organization.
	PinnableItemTypeOrganization PinnableItemType = "ORGANIZATION"
	// PinnableItemTypeTeam. A team.
	PinnableItemTypeTeam PinnableItemType = "TEAM"
)

type PinnedDiscussionGradient

type PinnedDiscussionGradient string

PinnedDiscussionGradient represents preconfigured gradients that may be used to style discussions pinned within a repository.

const (
	// PinnedDiscussionGradientRedOrange. A gradient of red to orange.
	PinnedDiscussionGradientRedOrange PinnedDiscussionGradient = "RED_ORANGE"
	// PinnedDiscussionGradientBlueMint. A gradient of blue to mint.
	PinnedDiscussionGradientBlueMint PinnedDiscussionGradient = "BLUE_MINT"
	// PinnedDiscussionGradientBluePurple. A gradient of blue to purple.
	PinnedDiscussionGradientBluePurple PinnedDiscussionGradient = "BLUE_PURPLE"
	// PinnedDiscussionGradientPinkBlue. A gradient of pink to blue.
	PinnedDiscussionGradientPinkBlue PinnedDiscussionGradient = "PINK_BLUE"
	// PinnedDiscussionGradientPurpleCoral. A gradient of purple to coral.
	PinnedDiscussionGradientPurpleCoral PinnedDiscussionGradient = "PURPLE_CORAL"
)

type PinnedDiscussionPattern

type PinnedDiscussionPattern string

PinnedDiscussionPattern represents preconfigured background patterns that may be used to style discussions pinned within a repository.

const (
	// PinnedDiscussionPatternDotFill. A solid dot pattern.
	PinnedDiscussionPatternDotFill PinnedDiscussionPattern = "DOT_FILL"
	// PinnedDiscussionPatternPlus. A plus sign pattern.
	PinnedDiscussionPatternPlus PinnedDiscussionPattern = "PLUS"
	// PinnedDiscussionPatternZap. A lightning bolt pattern.
	PinnedDiscussionPatternZap PinnedDiscussionPattern = "ZAP"
	// PinnedDiscussionPatternChevronUp. An upward-facing chevron pattern.
	PinnedDiscussionPatternChevronUp PinnedDiscussionPattern = "CHEVRON_UP"
	// PinnedDiscussionPatternDot. A hollow dot pattern.
	PinnedDiscussionPatternDot PinnedDiscussionPattern = "DOT"
	// PinnedDiscussionPatternHeartFill. A heart pattern.
	PinnedDiscussionPatternHeartFill PinnedDiscussionPattern = "HEART_FILL"
)

type PreciseDateTime

type PreciseDateTime struct {
	time.Time
}

PreciseDateTime represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as PreciseDateTime in GraphQL as expected by the GitHub API.

An ISO-8601 encoded UTC date string with millisecond precision.

type ProjectCardArchivedState

type ProjectCardArchivedState string

ProjectCardArchivedState represents the possible archived states of a project card.

const (
	// ProjectCardArchivedStateArchived. A project card that is archived.
	ProjectCardArchivedStateArchived ProjectCardArchivedState = "ARCHIVED"
	// ProjectCardArchivedStateNotArchived. A project card that is not archived.
	ProjectCardArchivedStateNotArchived ProjectCardArchivedState = "NOT_ARCHIVED"
)

type ProjectCardState

type ProjectCardState string

ProjectCardState represents various content states of a ProjectCard.

const (
	// ProjectCardStateContentOnly. The card has content only.
	ProjectCardStateContentOnly ProjectCardState = "CONTENT_ONLY"
	// ProjectCardStateNoteOnly. The card has a note only.
	ProjectCardStateNoteOnly ProjectCardState = "NOTE_ONLY"
	// ProjectCardStateRedacted. The card is redacted.
	ProjectCardStateRedacted ProjectCardState = "REDACTED"
)

type ProjectColumnPurpose

type ProjectColumnPurpose string

ProjectColumnPurpose represents the semantic purpose of the column - todo, in progress, or done.

const (
	// ProjectColumnPurposeTodo. The column contains cards still to be worked on.
	ProjectColumnPurposeTodo ProjectColumnPurpose = "TODO"
	// ProjectColumnPurposeInProgress. The column contains cards which are currently being worked on.
	ProjectColumnPurposeInProgress ProjectColumnPurpose = "IN_PROGRESS"
	// ProjectColumnPurposeDone. The column contains cards which are complete.
	ProjectColumnPurposeDone ProjectColumnPurpose = "DONE"
)

type ProjectOrder

type ProjectOrder struct {
	// The field in which to order projects by.
	Field ProjectOrderField "json:\"field\""
	// The direction in which to order projects by the specified field.
	Direction OrderDirection "json:\"direction\""
}

ProjectOrder represents ways in which lists of projects can be ordered upon return.

type ProjectOrderField

type ProjectOrderField string

ProjectOrderField represents properties by which project connections can be ordered.

const (
	// ProjectOrderFieldCreatedAt. Order projects by creation time.
	ProjectOrderFieldCreatedAt ProjectOrderField = "CREATED_AT"
	// ProjectOrderFieldUpdatedAt. Order projects by update time.
	ProjectOrderFieldUpdatedAt ProjectOrderField = "UPDATED_AT"
	// ProjectOrderFieldName. Order projects by name.
	ProjectOrderFieldName ProjectOrderField = "NAME"
)

type ProjectState

type ProjectState string

ProjectState represents state of the project; either 'open' or 'closed'.

const (
	// ProjectStateOpen. The project is open.
	ProjectStateOpen ProjectState = "OPEN"
	// ProjectStateClosed. The project is closed.
	ProjectStateClosed ProjectState = "CLOSED"
)

type ProjectTemplate

type ProjectTemplate string

ProjectTemplate represents gitHub-provided templates for Projects.

const (
	// ProjectTemplateBasicKanban. Create a board with columns for To do, In progress and Done.
	ProjectTemplateBasicKanban ProjectTemplate = "BASIC_KANBAN"
	// ProjectTemplateAutomatedKanbanV2. Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns.
	ProjectTemplateAutomatedKanbanV2 ProjectTemplate = "AUTOMATED_KANBAN_V2"
	// ProjectTemplateAutomatedReviewsKanban. Create a board with triggers to automatically move cards across columns with review automation.
	ProjectTemplateAutomatedReviewsKanban ProjectTemplate = "AUTOMATED_REVIEWS_KANBAN"
	// ProjectTemplateBugTriage. Create a board to triage and prioritize bugs with To do, priority, and Done columns.
	ProjectTemplateBugTriage ProjectTemplate = "BUG_TRIAGE"
)

type ProjectV2Collaborator

type ProjectV2Collaborator struct {
	// The ID of the user as a collaborator.
	UserID *ID "json:\"userId,omitempty\""
	// The ID of the team as a collaborator.
	TeamID *ID "json:\"teamId,omitempty\""
	// The role to grant the collaborator.
	Role ProjectV2Roles "json:\"role\""
}

ProjectV2Collaborator represents a collaborator to update on a project. Only one of the userId or teamId should be provided.

type ProjectV2CustomFieldType

type ProjectV2CustomFieldType string

ProjectV2CustomFieldType represents the type of a project field.

const (
	// ProjectV2CustomFieldTypeText. Text.
	ProjectV2CustomFieldTypeText ProjectV2CustomFieldType = "TEXT"
	// ProjectV2CustomFieldTypeSingleSelect. Single Select.
	ProjectV2CustomFieldTypeSingleSelect ProjectV2CustomFieldType = "SINGLE_SELECT"
	// ProjectV2CustomFieldTypeNumber. Number.
	ProjectV2CustomFieldTypeNumber ProjectV2CustomFieldType = "NUMBER"
	// ProjectV2CustomFieldTypeDate. Date.
	ProjectV2CustomFieldTypeDate ProjectV2CustomFieldType = "DATE"
)

type ProjectV2FieldOrder

type ProjectV2FieldOrder struct {
	// The field to order the project v2 fields by.
	Field ProjectV2FieldOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

ProjectV2FieldOrder represents ordering options for project v2 field connections.

type ProjectV2FieldOrderField

type ProjectV2FieldOrderField string

ProjectV2FieldOrderField represents properties by which project v2 field connections can be ordered.

const (
	// ProjectV2FieldOrderFieldPosition. Order project v2 fields by position.
	ProjectV2FieldOrderFieldPosition ProjectV2FieldOrderField = "POSITION"
	// ProjectV2FieldOrderFieldCreatedAt. Order project v2 fields by creation time.
	ProjectV2FieldOrderFieldCreatedAt ProjectV2FieldOrderField = "CREATED_AT"
	// ProjectV2FieldOrderFieldName. Order project v2 fields by name.
	ProjectV2FieldOrderFieldName ProjectV2FieldOrderField = "NAME"
)

type ProjectV2FieldType

type ProjectV2FieldType string

ProjectV2FieldType represents the type of a project field.

const (
	// ProjectV2FieldTypeAssignees. Assignees.
	ProjectV2FieldTypeAssignees ProjectV2FieldType = "ASSIGNEES"
	// ProjectV2FieldTypeLinkedPullRequests. Linked Pull Requests.
	ProjectV2FieldTypeLinkedPullRequests ProjectV2FieldType = "LINKED_PULL_REQUESTS"
	// ProjectV2FieldTypeReviewers. Reviewers.
	ProjectV2FieldTypeReviewers ProjectV2FieldType = "REVIEWERS"
	// ProjectV2FieldTypeLabels. Labels.
	ProjectV2FieldTypeLabels ProjectV2FieldType = "LABELS"
	// ProjectV2FieldTypeMilestone. Milestone.
	ProjectV2FieldTypeMilestone ProjectV2FieldType = "MILESTONE"
	// ProjectV2FieldTypeRepository. Repository.
	ProjectV2FieldTypeRepository ProjectV2FieldType = "REPOSITORY"
	// ProjectV2FieldTypeTitle. Title.
	ProjectV2FieldTypeTitle ProjectV2FieldType = "TITLE"
	// ProjectV2FieldTypeText. Text.
	ProjectV2FieldTypeText ProjectV2FieldType = "TEXT"
	// ProjectV2FieldTypeSingleSelect. Single Select.
	ProjectV2FieldTypeSingleSelect ProjectV2FieldType = "SINGLE_SELECT"
	// ProjectV2FieldTypeNumber. Number.
	ProjectV2FieldTypeNumber ProjectV2FieldType = "NUMBER"
	// ProjectV2FieldTypeDate. Date.
	ProjectV2FieldTypeDate ProjectV2FieldType = "DATE"
	// ProjectV2FieldTypeIteration. Iteration.
	ProjectV2FieldTypeIteration ProjectV2FieldType = "ITERATION"
	// ProjectV2FieldTypeTracks. Tracks.
	ProjectV2FieldTypeTracks ProjectV2FieldType = "TRACKS"
	// ProjectV2FieldTypeTrackedBy. Tracked by.
	ProjectV2FieldTypeTrackedBy ProjectV2FieldType = "TRACKED_BY"
)

type ProjectV2FieldValue

type ProjectV2FieldValue struct {
	// The text to set on the field.
	Text *string "json:\"text,omitempty\""
	// The number to set on the field.
	Number *float64 "json:\"number,omitempty\""
	// The ISO 8601 date to set on the field.
	Date *Date "json:\"date,omitempty\""
	// The id of the single select option to set on the field.
	SingleSelectOptionID *string "json:\"singleSelectOptionId,omitempty\""
	// The id of the iteration to set on the field.
	IterationID *string "json:\"iterationId,omitempty\""
}

ProjectV2FieldValue represents the values that can be used to update a field of an item inside a Project. Only 1 value can be updated at a time.

type ProjectV2Filters

type ProjectV2Filters struct {
	// List project v2 filtered by the state given.
	State *ProjectV2State "json:\"state,omitempty\""
}

ProjectV2Filters represents ways in which to filter lists of projects.

type ProjectV2ItemFieldValueOrder

type ProjectV2ItemFieldValueOrder struct {
	// The field to order the project v2 item field values by.
	Field ProjectV2ItemFieldValueOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

ProjectV2ItemFieldValueOrder represents ordering options for project v2 item field value connections.

type ProjectV2ItemFieldValueOrderField

type ProjectV2ItemFieldValueOrderField string

ProjectV2ItemFieldValueOrderField represents properties by which project v2 item field value connections can be ordered.

const (
	// ProjectV2ItemFieldValueOrderFieldPosition. Order project v2 item field values by the their position in the project.
	ProjectV2ItemFieldValueOrderFieldPosition ProjectV2ItemFieldValueOrderField = "POSITION"
)

type ProjectV2ItemOrder

type ProjectV2ItemOrder struct {
	// The field to order the project v2 items by.
	Field ProjectV2ItemOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

ProjectV2ItemOrder represents ordering options for project v2 item connections.

type ProjectV2ItemOrderField

type ProjectV2ItemOrderField string

ProjectV2ItemOrderField represents properties by which project v2 item connections can be ordered.

const (
	// ProjectV2ItemOrderFieldPosition. Order project v2 items by the their position in the project.
	ProjectV2ItemOrderFieldPosition ProjectV2ItemOrderField = "POSITION"
)

type ProjectV2ItemType

type ProjectV2ItemType string

ProjectV2ItemType represents the type of a project item.

const (
	// ProjectV2ItemTypeIssue. Issue.
	ProjectV2ItemTypeIssue ProjectV2ItemType = "ISSUE"
	// ProjectV2ItemTypePullRequest. Pull Request.
	ProjectV2ItemTypePullRequest ProjectV2ItemType = "PULL_REQUEST"
	// ProjectV2ItemTypeDraftIssue. Draft Issue.
	ProjectV2ItemTypeDraftIssue ProjectV2ItemType = "DRAFT_ISSUE"
	// ProjectV2ItemTypeRedacted. Redacted Item.
	ProjectV2ItemTypeRedacted ProjectV2ItemType = "REDACTED"
)

type ProjectV2Order

type ProjectV2Order struct {
	// The field in which to order projects by.
	Field ProjectV2OrderField "json:\"field\""
	// The direction in which to order projects by the specified field.
	Direction OrderDirection "json:\"direction\""
}

ProjectV2Order represents ways in which lists of projects can be ordered upon return.

type ProjectV2OrderField

type ProjectV2OrderField string

ProjectV2OrderField represents properties by which projects can be ordered.

const (
	// ProjectV2OrderFieldTitle. The project's title.
	ProjectV2OrderFieldTitle ProjectV2OrderField = "TITLE"
	// ProjectV2OrderFieldNumber. The project's number.
	ProjectV2OrderFieldNumber ProjectV2OrderField = "NUMBER"
	// ProjectV2OrderFieldUpdatedAt. The project's date and time of update.
	ProjectV2OrderFieldUpdatedAt ProjectV2OrderField = "UPDATED_AT"
	// ProjectV2OrderFieldCreatedAt. The project's date and time of creation.
	ProjectV2OrderFieldCreatedAt ProjectV2OrderField = "CREATED_AT"
)

type ProjectV2Roles

type ProjectV2Roles string

ProjectV2Roles represents the possible roles of a collaborator on a project.

const (
	// ProjectV2RolesNone. The collaborator has no direct access to the project.
	ProjectV2RolesNone ProjectV2Roles = "NONE"
	// ProjectV2RolesReader. The collaborator can view the project.
	ProjectV2RolesReader ProjectV2Roles = "READER"
	// ProjectV2RolesWriter. The collaborator can view and edit the project.
	ProjectV2RolesWriter ProjectV2Roles = "WRITER"
	// ProjectV2RolesAdmin. The collaborator can view, edit, and maange the settings of the project.
	ProjectV2RolesAdmin ProjectV2Roles = "ADMIN"
)

type ProjectV2SingleSelectFieldOptionColor

type ProjectV2SingleSelectFieldOptionColor string

ProjectV2SingleSelectFieldOptionColor represents the display color of a single-select field option.

const (
	// ProjectV2SingleSelectFieldOptionColorGray. GRAY.
	ProjectV2SingleSelectFieldOptionColorGray ProjectV2SingleSelectFieldOptionColor = "GRAY"
	// ProjectV2SingleSelectFieldOptionColorBlue. BLUE.
	ProjectV2SingleSelectFieldOptionColorBlue ProjectV2SingleSelectFieldOptionColor = "BLUE"
	// ProjectV2SingleSelectFieldOptionColorGreen. GREEN.
	ProjectV2SingleSelectFieldOptionColorGreen ProjectV2SingleSelectFieldOptionColor = "GREEN"
	// ProjectV2SingleSelectFieldOptionColorYellow. YELLOW.
	ProjectV2SingleSelectFieldOptionColorYellow ProjectV2SingleSelectFieldOptionColor = "YELLOW"
	// ProjectV2SingleSelectFieldOptionColorOrange. ORANGE.
	ProjectV2SingleSelectFieldOptionColorOrange ProjectV2SingleSelectFieldOptionColor = "ORANGE"
	// ProjectV2SingleSelectFieldOptionColorRed. RED.
	ProjectV2SingleSelectFieldOptionColorRed ProjectV2SingleSelectFieldOptionColor = "RED"
	// ProjectV2SingleSelectFieldOptionColorPink. PINK.
	ProjectV2SingleSelectFieldOptionColorPink ProjectV2SingleSelectFieldOptionColor = "PINK"
	// ProjectV2SingleSelectFieldOptionColorPurple. PURPLE.
	ProjectV2SingleSelectFieldOptionColorPurple ProjectV2SingleSelectFieldOptionColor = "PURPLE"
)

type ProjectV2SingleSelectFieldOptionInput

type ProjectV2SingleSelectFieldOptionInput struct {
	// The name of the option.
	Name string "json:\"name\""
	// The display color of the option.
	Color ProjectV2SingleSelectFieldOptionColor "json:\"color\""
	// The description text of the option.
	Description string "json:\"description\""
}

ProjectV2SingleSelectFieldOptionInput represents represents a single select field option.

type ProjectV2State

type ProjectV2State string

ProjectV2State represents the possible states of a project v2.

const (
	// ProjectV2StateOpen. A project v2 that is still open.
	ProjectV2StateOpen ProjectV2State = "OPEN"
	// ProjectV2StateClosed. A project v2 that has been closed.
	ProjectV2StateClosed ProjectV2State = "CLOSED"
)

type ProjectV2ViewLayout

type ProjectV2ViewLayout string

ProjectV2ViewLayout represents the layout of a project v2 view.

const (
	// ProjectV2ViewLayoutBoardLayout. Board layout.
	ProjectV2ViewLayoutBoardLayout ProjectV2ViewLayout = "BOARD_LAYOUT"
	// ProjectV2ViewLayoutTableLayout. Table layout.
	ProjectV2ViewLayoutTableLayout ProjectV2ViewLayout = "TABLE_LAYOUT"
	// ProjectV2ViewLayoutRoadmapLayout. Roadmap layout.
	ProjectV2ViewLayoutRoadmapLayout ProjectV2ViewLayout = "ROADMAP_LAYOUT"
)

type ProjectV2ViewOrder

type ProjectV2ViewOrder struct {
	// The field to order the project v2 views by.
	Field ProjectV2ViewOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

ProjectV2ViewOrder represents ordering options for project v2 view connections.

type ProjectV2ViewOrderField

type ProjectV2ViewOrderField string

ProjectV2ViewOrderField represents properties by which project v2 view connections can be ordered.

const (
	// ProjectV2ViewOrderFieldPosition. Order project v2 views by position.
	ProjectV2ViewOrderFieldPosition ProjectV2ViewOrderField = "POSITION"
	// ProjectV2ViewOrderFieldCreatedAt. Order project v2 views by creation time.
	ProjectV2ViewOrderFieldCreatedAt ProjectV2ViewOrderField = "CREATED_AT"
	// ProjectV2ViewOrderFieldName. Order project v2 views by name.
	ProjectV2ViewOrderFieldName ProjectV2ViewOrderField = "NAME"
)

type ProjectV2WorkflowOrder

type ProjectV2WorkflowOrder struct {
	// The field to order the project v2 workflows by.
	Field ProjectV2WorkflowsOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

ProjectV2WorkflowOrder represents ordering options for project v2 workflows connections.

type ProjectV2WorkflowsOrderField

type ProjectV2WorkflowsOrderField string

ProjectV2WorkflowsOrderField represents properties by which project workflows can be ordered.

const (
	// ProjectV2WorkflowsOrderFieldName. The workflows' name.
	ProjectV2WorkflowsOrderFieldName ProjectV2WorkflowsOrderField = "NAME"
	// ProjectV2WorkflowsOrderFieldNumber. The workflows' number.
	ProjectV2WorkflowsOrderFieldNumber ProjectV2WorkflowsOrderField = "NUMBER"
	// ProjectV2WorkflowsOrderFieldUpdatedAt. The workflows' date and time of update.
	ProjectV2WorkflowsOrderFieldUpdatedAt ProjectV2WorkflowsOrderField = "UPDATED_AT"
	// ProjectV2WorkflowsOrderFieldCreatedAt. The workflows' date and time of creation.
	ProjectV2WorkflowsOrderFieldCreatedAt ProjectV2WorkflowsOrderField = "CREATED_AT"
)

type PublishSponsorsTierInput

type PublishSponsorsTierInput struct {
	// The ID of the draft tier to publish.
	TierID ID "json:\"tierId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

PublishSponsorsTierInput is an autogenerated input type of PublishSponsorsTier.

type PullRequestBranchUpdateMethod

type PullRequestBranchUpdateMethod string

PullRequestBranchUpdateMethod represents the possible methods for updating a pull request's head branch with the base branch.

const (
	// PullRequestBranchUpdateMethodMerge. Update branch via merge.
	PullRequestBranchUpdateMethodMerge PullRequestBranchUpdateMethod = "MERGE"
	// PullRequestBranchUpdateMethodRebase. Update branch via rebase.
	PullRequestBranchUpdateMethodRebase PullRequestBranchUpdateMethod = "REBASE"
)

type PullRequestMergeMethod

type PullRequestMergeMethod string

PullRequestMergeMethod represents represents available types of methods to use when merging a pull request.

const (
	// PullRequestMergeMethodMerge. Add all commits from the head branch to the base branch with a merge commit.
	PullRequestMergeMethodMerge PullRequestMergeMethod = "MERGE"
	// PullRequestMergeMethodSquash. Combine all commits from the head branch into a single commit in the base branch.
	PullRequestMergeMethodSquash PullRequestMergeMethod = "SQUASH"
	// PullRequestMergeMethodRebase. Add all commits from the head branch onto the base branch individually.
	PullRequestMergeMethodRebase PullRequestMergeMethod = "REBASE"
)

type PullRequestOrder

type PullRequestOrder struct {
	// The field in which to order pull requests by.
	Field PullRequestOrderField "json:\"field\""
	// The direction in which to order pull requests by the specified field.
	Direction OrderDirection "json:\"direction\""
}

PullRequestOrder represents ways in which lists of issues can be ordered upon return.

type PullRequestOrderField

type PullRequestOrderField string

PullRequestOrderField represents properties by which pull_requests connections can be ordered.

const (
	// PullRequestOrderFieldCreatedAt. Order pull_requests by creation time.
	PullRequestOrderFieldCreatedAt PullRequestOrderField = "CREATED_AT"
	// PullRequestOrderFieldUpdatedAt. Order pull_requests by update time.
	PullRequestOrderFieldUpdatedAt PullRequestOrderField = "UPDATED_AT"
)

type PullRequestParametersInput

type PullRequestParametersInput struct {
	// New, reviewable commits pushed will dismiss previous pull request review approvals.
	DismissStaleReviewsOnPush bool "json:\"dismissStaleReviewsOnPush\""
	// Require an approving review in pull requests that modify files that have a designated code owner.
	RequireCodeOwnerReview bool "json:\"requireCodeOwnerReview\""
	// Whether the most recent reviewable push must be approved by someone other than the person who pushed it.
	RequireLastPushApproval bool "json:\"requireLastPushApproval\""
	// The number of approving reviews that are required before a pull request can be merged.
	RequiredApprovingReviewCount int "json:\"requiredApprovingReviewCount\""
	// All conversations on code must be resolved before a pull request can be merged.
	RequiredReviewThreadResolution bool "json:\"requiredReviewThreadResolution\""
}

PullRequestParametersInput represents require all commits be made to a non-target branch and submitted via a pull request before they can be merged.

type PullRequestReviewCommentState

type PullRequestReviewCommentState string

PullRequestReviewCommentState represents the possible states of a pull request review comment.

const (
	// PullRequestReviewCommentStatePending. A comment that is part of a pending review.
	PullRequestReviewCommentStatePending PullRequestReviewCommentState = "PENDING"
	// PullRequestReviewCommentStateSubmitted. A comment that is part of a submitted review.
	PullRequestReviewCommentStateSubmitted PullRequestReviewCommentState = "SUBMITTED"
)

type PullRequestReviewDecision

type PullRequestReviewDecision string

PullRequestReviewDecision represents the review status of a pull request.

const (
	// PullRequestReviewDecisionChangesRequested. Changes have been requested on the pull request.
	PullRequestReviewDecisionChangesRequested PullRequestReviewDecision = "CHANGES_REQUESTED"
	// PullRequestReviewDecisionApproved. The pull request has received an approving review.
	PullRequestReviewDecisionApproved PullRequestReviewDecision = "APPROVED"
	// PullRequestReviewDecisionReviewRequired. A review is required before the pull request can be merged.
	PullRequestReviewDecisionReviewRequired PullRequestReviewDecision = "REVIEW_REQUIRED"
)

type PullRequestReviewEvent

type PullRequestReviewEvent string

PullRequestReviewEvent represents the possible events to perform on a pull request review.

const (
	// PullRequestReviewEventComment. Submit general feedback without explicit approval.
	PullRequestReviewEventComment PullRequestReviewEvent = "COMMENT"
	// PullRequestReviewEventApprove. Submit feedback and approve merging these changes.
	PullRequestReviewEventApprove PullRequestReviewEvent = "APPROVE"
	// PullRequestReviewEventRequestChanges. Submit feedback that must be addressed before merging.
	PullRequestReviewEventRequestChanges PullRequestReviewEvent = "REQUEST_CHANGES"
	// PullRequestReviewEventDismiss. Dismiss review so it now longer effects merging.
	PullRequestReviewEventDismiss PullRequestReviewEvent = "DISMISS"
)

type PullRequestReviewState

type PullRequestReviewState string

PullRequestReviewState represents the possible states of a pull request review.

const (
	// PullRequestReviewStatePending. A review that has not yet been submitted.
	PullRequestReviewStatePending PullRequestReviewState = "PENDING"
	// PullRequestReviewStateCommented. An informational review.
	PullRequestReviewStateCommented PullRequestReviewState = "COMMENTED"
	// PullRequestReviewStateApproved. A review allowing the pull request to merge.
	PullRequestReviewStateApproved PullRequestReviewState = "APPROVED"
	// PullRequestReviewStateChangesRequested. A review blocking the pull request from merging.
	PullRequestReviewStateChangesRequested PullRequestReviewState = "CHANGES_REQUESTED"
	// PullRequestReviewStateDismissed. A review that has been dismissed.
	PullRequestReviewStateDismissed PullRequestReviewState = "DISMISSED"
)

type PullRequestReviewThreadSubjectType

type PullRequestReviewThreadSubjectType string

PullRequestReviewThreadSubjectType represents the possible subject types of a pull request review comment.

const (
	// PullRequestReviewThreadSubjectTypeLine. A comment that has been made against the line of a pull request.
	PullRequestReviewThreadSubjectTypeLine PullRequestReviewThreadSubjectType = "LINE"
	// PullRequestReviewThreadSubjectTypeFile. A comment that has been made against the file of a pull request.
	PullRequestReviewThreadSubjectTypeFile PullRequestReviewThreadSubjectType = "FILE"
)

type PullRequestState

type PullRequestState string

PullRequestState represents the possible states of a pull request.

const (
	// PullRequestStateOpen. A pull request that is still open.
	PullRequestStateOpen PullRequestState = "OPEN"
	// PullRequestStateClosed. A pull request that has been closed without being merged.
	PullRequestStateClosed PullRequestState = "CLOSED"
	// PullRequestStateMerged. A pull request that has been closed by being merged.
	PullRequestStateMerged PullRequestState = "MERGED"
)

type PullRequestTimelineItemsItemType

type PullRequestTimelineItemsItemType string

PullRequestTimelineItemsItemType represents the possible item types found in a timeline.

const (
	// PullRequestTimelineItemsItemTypePullRequestCommit. Represents a Git commit part of a pull request.
	PullRequestTimelineItemsItemTypePullRequestCommit PullRequestTimelineItemsItemType = "PULL_REQUEST_COMMIT"
	// PullRequestTimelineItemsItemTypePullRequestCommitCommentThread. Represents a commit comment thread part of a pull request.
	PullRequestTimelineItemsItemTypePullRequestCommitCommentThread PullRequestTimelineItemsItemType = "PULL_REQUEST_COMMIT_COMMENT_THREAD"
	// PullRequestTimelineItemsItemTypePullRequestReview. A review object for a given pull request.
	PullRequestTimelineItemsItemTypePullRequestReview PullRequestTimelineItemsItemType = "PULL_REQUEST_REVIEW"
	// PullRequestTimelineItemsItemTypePullRequestReviewThread. A threaded list of comments for a given pull request.
	PullRequestTimelineItemsItemTypePullRequestReviewThread PullRequestTimelineItemsItemType = "PULL_REQUEST_REVIEW_THREAD"
	// PullRequestTimelineItemsItemTypePullRequestRevisionMarker. Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits.
	PullRequestTimelineItemsItemTypePullRequestRevisionMarker PullRequestTimelineItemsItemType = "PULL_REQUEST_REVISION_MARKER"
	// PullRequestTimelineItemsItemTypeAutomaticBaseChangeFailedEvent. Represents a 'automatic_base_change_failed' event on a given pull request.
	PullRequestTimelineItemsItemTypeAutomaticBaseChangeFailedEvent PullRequestTimelineItemsItemType = "AUTOMATIC_BASE_CHANGE_FAILED_EVENT"
	// PullRequestTimelineItemsItemTypeAutomaticBaseChangeSucceededEvent. Represents a 'automatic_base_change_succeeded' event on a given pull request.
	PullRequestTimelineItemsItemTypeAutomaticBaseChangeSucceededEvent PullRequestTimelineItemsItemType = "AUTOMATIC_BASE_CHANGE_SUCCEEDED_EVENT"
	// PullRequestTimelineItemsItemTypeAutoMergeDisabledEvent. Represents a 'auto_merge_disabled' event on a given pull request.
	PullRequestTimelineItemsItemTypeAutoMergeDisabledEvent PullRequestTimelineItemsItemType = "AUTO_MERGE_DISABLED_EVENT"
	// PullRequestTimelineItemsItemTypeAutoMergeEnabledEvent. Represents a 'auto_merge_enabled' event on a given pull request.
	PullRequestTimelineItemsItemTypeAutoMergeEnabledEvent PullRequestTimelineItemsItemType = "AUTO_MERGE_ENABLED_EVENT"
	// PullRequestTimelineItemsItemTypeAutoRebaseEnabledEvent. Represents a 'auto_rebase_enabled' event on a given pull request.
	PullRequestTimelineItemsItemTypeAutoRebaseEnabledEvent PullRequestTimelineItemsItemType = "AUTO_REBASE_ENABLED_EVENT"
	// PullRequestTimelineItemsItemTypeAutoSquashEnabledEvent. Represents a 'auto_squash_enabled' event on a given pull request.
	PullRequestTimelineItemsItemTypeAutoSquashEnabledEvent PullRequestTimelineItemsItemType = "AUTO_SQUASH_ENABLED_EVENT"
	// PullRequestTimelineItemsItemTypeBaseRefChangedEvent. Represents a 'base_ref_changed' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeBaseRefChangedEvent PullRequestTimelineItemsItemType = "BASE_REF_CHANGED_EVENT"
	// PullRequestTimelineItemsItemTypeBaseRefForcePushedEvent. Represents a 'base_ref_force_pushed' event on a given pull request.
	PullRequestTimelineItemsItemTypeBaseRefForcePushedEvent PullRequestTimelineItemsItemType = "BASE_REF_FORCE_PUSHED_EVENT"
	// PullRequestTimelineItemsItemTypeBaseRefDeletedEvent. Represents a 'base_ref_deleted' event on a given pull request.
	PullRequestTimelineItemsItemTypeBaseRefDeletedEvent PullRequestTimelineItemsItemType = "BASE_REF_DELETED_EVENT"
	// PullRequestTimelineItemsItemTypeDeployedEvent. Represents a 'deployed' event on a given pull request.
	PullRequestTimelineItemsItemTypeDeployedEvent PullRequestTimelineItemsItemType = "DEPLOYED_EVENT"
	// PullRequestTimelineItemsItemTypeDeploymentEnvironmentChangedEvent. Represents a 'deployment_environment_changed' event on a given pull request.
	PullRequestTimelineItemsItemTypeDeploymentEnvironmentChangedEvent PullRequestTimelineItemsItemType = "DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT"
	// PullRequestTimelineItemsItemTypeHeadRefDeletedEvent. Represents a 'head_ref_deleted' event on a given pull request.
	PullRequestTimelineItemsItemTypeHeadRefDeletedEvent PullRequestTimelineItemsItemType = "HEAD_REF_DELETED_EVENT"
	// PullRequestTimelineItemsItemTypeHeadRefForcePushedEvent. Represents a 'head_ref_force_pushed' event on a given pull request.
	PullRequestTimelineItemsItemTypeHeadRefForcePushedEvent PullRequestTimelineItemsItemType = "HEAD_REF_FORCE_PUSHED_EVENT"
	// PullRequestTimelineItemsItemTypeHeadRefRestoredEvent. Represents a 'head_ref_restored' event on a given pull request.
	PullRequestTimelineItemsItemTypeHeadRefRestoredEvent PullRequestTimelineItemsItemType = "HEAD_REF_RESTORED_EVENT"
	// PullRequestTimelineItemsItemTypeMergedEvent. Represents a 'merged' event on a given pull request.
	PullRequestTimelineItemsItemTypeMergedEvent PullRequestTimelineItemsItemType = "MERGED_EVENT"
	// PullRequestTimelineItemsItemTypeReviewDismissedEvent. Represents a 'review_dismissed' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeReviewDismissedEvent PullRequestTimelineItemsItemType = "REVIEW_DISMISSED_EVENT"
	// PullRequestTimelineItemsItemTypeReviewRequestedEvent. Represents an 'review_requested' event on a given pull request.
	PullRequestTimelineItemsItemTypeReviewRequestedEvent PullRequestTimelineItemsItemType = "REVIEW_REQUESTED_EVENT"
	// PullRequestTimelineItemsItemTypeReviewRequestRemovedEvent. Represents an 'review_request_removed' event on a given pull request.
	PullRequestTimelineItemsItemTypeReviewRequestRemovedEvent PullRequestTimelineItemsItemType = "REVIEW_REQUEST_REMOVED_EVENT"
	// PullRequestTimelineItemsItemTypeReadyForReviewEvent. Represents a 'ready_for_review' event on a given pull request.
	PullRequestTimelineItemsItemTypeReadyForReviewEvent PullRequestTimelineItemsItemType = "READY_FOR_REVIEW_EVENT"
	// PullRequestTimelineItemsItemTypeConvertToDraftEvent. Represents a 'convert_to_draft' event on a given pull request.
	PullRequestTimelineItemsItemTypeConvertToDraftEvent PullRequestTimelineItemsItemType = "CONVERT_TO_DRAFT_EVENT"
	// PullRequestTimelineItemsItemTypeAddedToMergeQueueEvent. Represents an 'added_to_merge_queue' event on a given pull request.
	PullRequestTimelineItemsItemTypeAddedToMergeQueueEvent PullRequestTimelineItemsItemType = "ADDED_TO_MERGE_QUEUE_EVENT"
	// PullRequestTimelineItemsItemTypeRemovedFromMergeQueueEvent. Represents a 'removed_from_merge_queue' event on a given pull request.
	PullRequestTimelineItemsItemTypeRemovedFromMergeQueueEvent PullRequestTimelineItemsItemType = "REMOVED_FROM_MERGE_QUEUE_EVENT"
	// PullRequestTimelineItemsItemTypeIssueComment. Represents a comment on an Issue.
	PullRequestTimelineItemsItemTypeIssueComment PullRequestTimelineItemsItemType = "ISSUE_COMMENT"
	// PullRequestTimelineItemsItemTypeCrossReferencedEvent. Represents a mention made by one issue or pull request to another.
	PullRequestTimelineItemsItemTypeCrossReferencedEvent PullRequestTimelineItemsItemType = "CROSS_REFERENCED_EVENT"
	// PullRequestTimelineItemsItemTypeAddedToProjectEvent. Represents a 'added_to_project' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeAddedToProjectEvent PullRequestTimelineItemsItemType = "ADDED_TO_PROJECT_EVENT"
	// PullRequestTimelineItemsItemTypeAssignedEvent. Represents an 'assigned' event on any assignable object.
	PullRequestTimelineItemsItemTypeAssignedEvent PullRequestTimelineItemsItemType = "ASSIGNED_EVENT"
	// PullRequestTimelineItemsItemTypeClosedEvent. Represents a 'closed' event on any `Closable`.
	PullRequestTimelineItemsItemTypeClosedEvent PullRequestTimelineItemsItemType = "CLOSED_EVENT"
	// PullRequestTimelineItemsItemTypeCommentDeletedEvent. Represents a 'comment_deleted' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeCommentDeletedEvent PullRequestTimelineItemsItemType = "COMMENT_DELETED_EVENT"
	// PullRequestTimelineItemsItemTypeConnectedEvent. Represents a 'connected' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeConnectedEvent PullRequestTimelineItemsItemType = "CONNECTED_EVENT"
	// PullRequestTimelineItemsItemTypeConvertedNoteToIssueEvent. Represents a 'converted_note_to_issue' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeConvertedNoteToIssueEvent PullRequestTimelineItemsItemType = "CONVERTED_NOTE_TO_ISSUE_EVENT"
	// PullRequestTimelineItemsItemTypeConvertedToDiscussionEvent. Represents a 'converted_to_discussion' event on a given issue.
	PullRequestTimelineItemsItemTypeConvertedToDiscussionEvent PullRequestTimelineItemsItemType = "CONVERTED_TO_DISCUSSION_EVENT"
	// PullRequestTimelineItemsItemTypeDemilestonedEvent. Represents a 'demilestoned' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeDemilestonedEvent PullRequestTimelineItemsItemType = "DEMILESTONED_EVENT"
	// PullRequestTimelineItemsItemTypeDisconnectedEvent. Represents a 'disconnected' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeDisconnectedEvent PullRequestTimelineItemsItemType = "DISCONNECTED_EVENT"
	// PullRequestTimelineItemsItemTypeLabeledEvent. Represents a 'labeled' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeLabeledEvent PullRequestTimelineItemsItemType = "LABELED_EVENT"
	// PullRequestTimelineItemsItemTypeLockedEvent. Represents a 'locked' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeLockedEvent PullRequestTimelineItemsItemType = "LOCKED_EVENT"
	// PullRequestTimelineItemsItemTypeMarkedAsDuplicateEvent. Represents a 'marked_as_duplicate' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeMarkedAsDuplicateEvent PullRequestTimelineItemsItemType = "MARKED_AS_DUPLICATE_EVENT"
	// PullRequestTimelineItemsItemTypeMentionedEvent. Represents a 'mentioned' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeMentionedEvent PullRequestTimelineItemsItemType = "MENTIONED_EVENT"
	// PullRequestTimelineItemsItemTypeMilestonedEvent. Represents a 'milestoned' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeMilestonedEvent PullRequestTimelineItemsItemType = "MILESTONED_EVENT"
	// PullRequestTimelineItemsItemTypeMovedColumnsInProjectEvent. Represents a 'moved_columns_in_project' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeMovedColumnsInProjectEvent PullRequestTimelineItemsItemType = "MOVED_COLUMNS_IN_PROJECT_EVENT"
	// PullRequestTimelineItemsItemTypePinnedEvent. Represents a 'pinned' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypePinnedEvent PullRequestTimelineItemsItemType = "PINNED_EVENT"
	// PullRequestTimelineItemsItemTypeReferencedEvent. Represents a 'referenced' event on a given `ReferencedSubject`.
	PullRequestTimelineItemsItemTypeReferencedEvent PullRequestTimelineItemsItemType = "REFERENCED_EVENT"
	// PullRequestTimelineItemsItemTypeRemovedFromProjectEvent. Represents a 'removed_from_project' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeRemovedFromProjectEvent PullRequestTimelineItemsItemType = "REMOVED_FROM_PROJECT_EVENT"
	// PullRequestTimelineItemsItemTypeRenamedTitleEvent. Represents a 'renamed' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeRenamedTitleEvent PullRequestTimelineItemsItemType = "RENAMED_TITLE_EVENT"
	// PullRequestTimelineItemsItemTypeReopenedEvent. Represents a 'reopened' event on any `Closable`.
	PullRequestTimelineItemsItemTypeReopenedEvent PullRequestTimelineItemsItemType = "REOPENED_EVENT"
	// PullRequestTimelineItemsItemTypeSubscribedEvent. Represents a 'subscribed' event on a given `Subscribable`.
	PullRequestTimelineItemsItemTypeSubscribedEvent PullRequestTimelineItemsItemType = "SUBSCRIBED_EVENT"
	// PullRequestTimelineItemsItemTypeTransferredEvent. Represents a 'transferred' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeTransferredEvent PullRequestTimelineItemsItemType = "TRANSFERRED_EVENT"
	// PullRequestTimelineItemsItemTypeUnassignedEvent. Represents an 'unassigned' event on any assignable object.
	PullRequestTimelineItemsItemTypeUnassignedEvent PullRequestTimelineItemsItemType = "UNASSIGNED_EVENT"
	// PullRequestTimelineItemsItemTypeUnlabeledEvent. Represents an 'unlabeled' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeUnlabeledEvent PullRequestTimelineItemsItemType = "UNLABELED_EVENT"
	// PullRequestTimelineItemsItemTypeUnlockedEvent. Represents an 'unlocked' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeUnlockedEvent PullRequestTimelineItemsItemType = "UNLOCKED_EVENT"
	// PullRequestTimelineItemsItemTypeUserBlockedEvent. Represents a 'user_blocked' event on a given user.
	PullRequestTimelineItemsItemTypeUserBlockedEvent PullRequestTimelineItemsItemType = "USER_BLOCKED_EVENT"
	// PullRequestTimelineItemsItemTypeUnmarkedAsDuplicateEvent. Represents an 'unmarked_as_duplicate' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeUnmarkedAsDuplicateEvent PullRequestTimelineItemsItemType = "UNMARKED_AS_DUPLICATE_EVENT"
	// PullRequestTimelineItemsItemTypeUnpinnedEvent. Represents an 'unpinned' event on a given issue or pull request.
	PullRequestTimelineItemsItemTypeUnpinnedEvent PullRequestTimelineItemsItemType = "UNPINNED_EVENT"
	// PullRequestTimelineItemsItemTypeUnsubscribedEvent. Represents an 'unsubscribed' event on a given `Subscribable`.
	PullRequestTimelineItemsItemTypeUnsubscribedEvent PullRequestTimelineItemsItemType = "UNSUBSCRIBED_EVENT"
)

type PullRequestUpdateState

type PullRequestUpdateState string

PullRequestUpdateState represents the possible target states when updating a pull request.

const (
	// PullRequestUpdateStateOpen. A pull request that is still open.
	PullRequestUpdateStateOpen PullRequestUpdateState = "OPEN"
	// PullRequestUpdateStateClosed. A pull request that has been closed without being merged.
	PullRequestUpdateStateClosed PullRequestUpdateState = "CLOSED"
)

type ReactionContent

type ReactionContent string

ReactionContent represents emojis that can be attached to Issues, Pull Requests and Comments.

const (
	// ReactionContentThumbsUp. Represents the `:+1:` emoji.
	ReactionContentThumbsUp ReactionContent = "THUMBS_UP"
	// ReactionContentThumbsDown. Represents the `:-1:` emoji.
	ReactionContentThumbsDown ReactionContent = "THUMBS_DOWN"
	// ReactionContentLaugh. Represents the `:laugh:` emoji.
	ReactionContentLaugh ReactionContent = "LAUGH"
	// ReactionContentHooray. Represents the `:hooray:` emoji.
	ReactionContentHooray ReactionContent = "HOORAY"
	// ReactionContentConfused. Represents the `:confused:` emoji.
	ReactionContentConfused ReactionContent = "CONFUSED"
	// ReactionContentHeart. Represents the `:heart:` emoji.
	ReactionContentHeart ReactionContent = "HEART"
	// ReactionContentRocket. Represents the `:rocket:` emoji.
	ReactionContentRocket ReactionContent = "ROCKET"
	// ReactionContentEyes. Represents the `:eyes:` emoji.
	ReactionContentEyes ReactionContent = "EYES"
)

type ReactionOrder

type ReactionOrder struct {
	// The field in which to order reactions by.
	Field ReactionOrderField "json:\"field\""
	// The direction in which to order reactions by the specified field.
	Direction OrderDirection "json:\"direction\""
}

ReactionOrder represents ways in which lists of reactions can be ordered upon return.

type ReactionOrderField

type ReactionOrderField string

ReactionOrderField represents a list of fields that reactions can be ordered by.

const (
	// ReactionOrderFieldCreatedAt. Allows ordering a list of reactions by when they were created.
	ReactionOrderFieldCreatedAt ReactionOrderField = "CREATED_AT"
)

type RefNameConditionTargetInput

type RefNameConditionTargetInput struct {
	// Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match.
	Exclude []string "json:\"exclude\""
	// Array of ref names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~DEFAULT_BRANCH` to include the default branch or `~ALL` to include all branches.
	Include []string "json:\"include\""
}

RefNameConditionTargetInput represents parameters to be used for the ref_name condition.

type RefOrder

type RefOrder struct {
	// The field in which to order refs by.
	Field RefOrderField "json:\"field\""
	// The direction in which to order refs by the specified field.
	Direction OrderDirection "json:\"direction\""
}

RefOrder represents ways in which lists of git refs can be ordered upon return.

type RefOrderField

type RefOrderField string

RefOrderField represents properties by which ref connections can be ordered.

const (
	// RefOrderFieldTagCommitDate. Order refs by underlying commit date if the ref prefix is refs/tags/.
	RefOrderFieldTagCommitDate RefOrderField = "TAG_COMMIT_DATE"
	// RefOrderFieldAlphabetical. Order refs by their alphanumeric name.
	RefOrderFieldAlphabetical RefOrderField = "ALPHABETICAL"
)

type RegenerateEnterpriseIdentityProviderRecoveryCodesInput

type RegenerateEnterpriseIdentityProviderRecoveryCodesInput struct {
	// The ID of the enterprise on which to set an identity provider.
	EnterpriseID ID "json:\"enterpriseId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RegenerateEnterpriseIdentityProviderRecoveryCodesInput is an autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes.

type RegenerateVerifiableDomainTokenInput

type RegenerateVerifiableDomainTokenInput struct {
	// The ID of the verifiable domain to regenerate the verification token of.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RegenerateVerifiableDomainTokenInput is an autogenerated input type of RegenerateVerifiableDomainToken.

type RejectDeploymentsInput

type RejectDeploymentsInput struct {
	// The node ID of the workflow run containing the pending deployments.
	WorkflowRunID ID "json:\"workflowRunId\""
	// The ids of environments to reject deployments.
	EnvironmentIDs []ID "json:\"environmentIds\""
	// Optional comment for rejecting deployments.
	Comment *string "json:\"comment,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RejectDeploymentsInput is an autogenerated input type of RejectDeployments.

type ReleaseOrder

type ReleaseOrder struct {
	// The field in which to order releases by.
	Field ReleaseOrderField "json:\"field\""
	// The direction in which to order releases by the specified field.
	Direction OrderDirection "json:\"direction\""
}

ReleaseOrder represents ways in which lists of releases can be ordered upon return.

type ReleaseOrderField

type ReleaseOrderField string

ReleaseOrderField represents properties by which release connections can be ordered.

const (
	// ReleaseOrderFieldCreatedAt. Order releases by creation time.
	ReleaseOrderFieldCreatedAt ReleaseOrderField = "CREATED_AT"
	// ReleaseOrderFieldName. Order releases alphabetically by name.
	ReleaseOrderFieldName ReleaseOrderField = "NAME"
)

type RemoveAssigneesFromAssignableInput

type RemoveAssigneesFromAssignableInput struct {
	// The id of the assignable object to remove assignees from.
	AssignableID ID "json:\"assignableId\""
	// The id of users to remove as assignees.
	AssigneeIDs []ID "json:\"assigneeIds\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveAssigneesFromAssignableInput is an autogenerated input type of RemoveAssigneesFromAssignable.

type RemoveEnterpriseAdminInput

type RemoveEnterpriseAdminInput struct {
	// The Enterprise ID from which to remove the administrator.
	EnterpriseID ID "json:\"enterpriseId\""
	// The login of the user to remove as an administrator.
	Login string "json:\"login\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveEnterpriseAdminInput is an autogenerated input type of RemoveEnterpriseAdmin.

type RemoveEnterpriseIdentityProviderInput

type RemoveEnterpriseIdentityProviderInput struct {
	// The ID of the enterprise from which to remove the identity provider.
	EnterpriseID ID "json:\"enterpriseId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveEnterpriseIdentityProviderInput is an autogenerated input type of RemoveEnterpriseIdentityProvider.

type RemoveEnterpriseMemberInput

type RemoveEnterpriseMemberInput struct {
	// The ID of the enterprise from which the user should be removed.
	EnterpriseID ID "json:\"enterpriseId\""
	// The ID of the user to remove from the enterprise.
	UserID ID "json:\"userId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveEnterpriseMemberInput is an autogenerated input type of RemoveEnterpriseMember.

type RemoveEnterpriseOrganizationInput

type RemoveEnterpriseOrganizationInput struct {
	// The ID of the enterprise from which the organization should be removed.
	EnterpriseID ID "json:\"enterpriseId\""
	// The ID of the organization to remove from the enterprise.
	OrganizationID ID "json:\"organizationId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveEnterpriseOrganizationInput is an autogenerated input type of RemoveEnterpriseOrganization.

type RemoveEnterpriseSupportEntitlementInput

type RemoveEnterpriseSupportEntitlementInput struct {
	// The ID of the Enterprise which the admin belongs to.
	EnterpriseID ID "json:\"enterpriseId\""
	// The login of a member who will lose the support entitlement.
	Login string "json:\"login\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveEnterpriseSupportEntitlementInput is an autogenerated input type of RemoveEnterpriseSupportEntitlement.

type RemoveLabelsFromLabelableInput

type RemoveLabelsFromLabelableInput struct {
	// The id of the Labelable to remove labels from.
	LabelableID ID "json:\"labelableId\""
	// The ids of labels to remove.
	LabelIDs []ID "json:\"labelIds\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveLabelsFromLabelableInput is an autogenerated input type of RemoveLabelsFromLabelable.

type RemoveOutsideCollaboratorInput

type RemoveOutsideCollaboratorInput struct {
	// The ID of the outside collaborator to remove.
	UserID ID "json:\"userId\""
	// The ID of the organization to remove the outside collaborator from.
	OrganizationID ID "json:\"organizationId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveOutsideCollaboratorInput is an autogenerated input type of RemoveOutsideCollaborator.

type RemoveReactionInput

type RemoveReactionInput struct {
	// The Node ID of the subject to modify.
	SubjectID ID "json:\"subjectId\""
	// The name of the emoji reaction to remove.
	Content ReactionContent "json:\"content\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveReactionInput is an autogenerated input type of RemoveReaction.

type RemoveStarInput

type RemoveStarInput struct {
	// The Starrable ID to unstar.
	StarrableID ID "json:\"starrableId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveStarInput is an autogenerated input type of RemoveStar.

type RemoveUpvoteInput

type RemoveUpvoteInput struct {
	// The Node ID of the discussion or comment to remove upvote.
	SubjectID ID "json:\"subjectId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RemoveUpvoteInput is an autogenerated input type of RemoveUpvote.

type ReopenDiscussionInput

type ReopenDiscussionInput struct {
	// ID of the discussion to be reopened.
	DiscussionID ID "json:\"discussionId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ReopenDiscussionInput is an autogenerated input type of ReopenDiscussion.

type ReopenIssueInput

type ReopenIssueInput struct {
	// ID of the issue to be opened.
	IssueID ID "json:\"issueId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ReopenIssueInput is an autogenerated input type of ReopenIssue.

type ReopenPullRequestInput

type ReopenPullRequestInput struct {
	// ID of the pull request to be reopened.
	PullRequestID ID "json:\"pullRequestId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ReopenPullRequestInput is an autogenerated input type of ReopenPullRequest.

type RepoAccessAuditEntryVisibility

type RepoAccessAuditEntryVisibility string

RepoAccessAuditEntryVisibility represents the privacy of a repository.

const (
	// RepoAccessAuditEntryVisibilityInternal. The repository is visible only to users in the same business.
	RepoAccessAuditEntryVisibilityInternal RepoAccessAuditEntryVisibility = "INTERNAL"
	// RepoAccessAuditEntryVisibilityPrivate. The repository is visible only to those with explicit access.
	RepoAccessAuditEntryVisibilityPrivate RepoAccessAuditEntryVisibility = "PRIVATE"
	// RepoAccessAuditEntryVisibilityPublic. The repository is visible to everyone.
	RepoAccessAuditEntryVisibilityPublic RepoAccessAuditEntryVisibility = "PUBLIC"
)

type RepoAddMemberAuditEntryVisibility

type RepoAddMemberAuditEntryVisibility string

RepoAddMemberAuditEntryVisibility represents the privacy of a repository.

const (
	// RepoAddMemberAuditEntryVisibilityInternal. The repository is visible only to users in the same business.
	RepoAddMemberAuditEntryVisibilityInternal RepoAddMemberAuditEntryVisibility = "INTERNAL"
	// RepoAddMemberAuditEntryVisibilityPrivate. The repository is visible only to those with explicit access.
	RepoAddMemberAuditEntryVisibilityPrivate RepoAddMemberAuditEntryVisibility = "PRIVATE"
	// RepoAddMemberAuditEntryVisibilityPublic. The repository is visible to everyone.
	RepoAddMemberAuditEntryVisibilityPublic RepoAddMemberAuditEntryVisibility = "PUBLIC"
)

type RepoArchivedAuditEntryVisibility

type RepoArchivedAuditEntryVisibility string

RepoArchivedAuditEntryVisibility represents the privacy of a repository.

const (
	// RepoArchivedAuditEntryVisibilityInternal. The repository is visible only to users in the same business.
	RepoArchivedAuditEntryVisibilityInternal RepoArchivedAuditEntryVisibility = "INTERNAL"
	// RepoArchivedAuditEntryVisibilityPrivate. The repository is visible only to those with explicit access.
	RepoArchivedAuditEntryVisibilityPrivate RepoArchivedAuditEntryVisibility = "PRIVATE"
	// RepoArchivedAuditEntryVisibilityPublic. The repository is visible to everyone.
	RepoArchivedAuditEntryVisibilityPublic RepoArchivedAuditEntryVisibility = "PUBLIC"
)

type RepoChangeMergeSettingAuditEntryMergeType

type RepoChangeMergeSettingAuditEntryMergeType string

RepoChangeMergeSettingAuditEntryMergeType represents the merge options available for pull requests to this repository.

const (
	// RepoChangeMergeSettingAuditEntryMergeTypeMerge. The pull request is added to the base branch in a merge commit.
	RepoChangeMergeSettingAuditEntryMergeTypeMerge RepoChangeMergeSettingAuditEntryMergeType = "MERGE"
	// RepoChangeMergeSettingAuditEntryMergeTypeRebase. Commits from the pull request are added onto the base branch individually without a merge commit.
	RepoChangeMergeSettingAuditEntryMergeTypeRebase RepoChangeMergeSettingAuditEntryMergeType = "REBASE"
	// RepoChangeMergeSettingAuditEntryMergeTypeSquash. The pull request's commits are squashed into a single commit before they are merged to the base branch.
	RepoChangeMergeSettingAuditEntryMergeTypeSquash RepoChangeMergeSettingAuditEntryMergeType = "SQUASH"
)

type RepoCreateAuditEntryVisibility

type RepoCreateAuditEntryVisibility string

RepoCreateAuditEntryVisibility represents the privacy of a repository.

const (
	// RepoCreateAuditEntryVisibilityInternal. The repository is visible only to users in the same business.
	RepoCreateAuditEntryVisibilityInternal RepoCreateAuditEntryVisibility = "INTERNAL"
	// RepoCreateAuditEntryVisibilityPrivate. The repository is visible only to those with explicit access.
	RepoCreateAuditEntryVisibilityPrivate RepoCreateAuditEntryVisibility = "PRIVATE"
	// RepoCreateAuditEntryVisibilityPublic. The repository is visible to everyone.
	RepoCreateAuditEntryVisibilityPublic RepoCreateAuditEntryVisibility = "PUBLIC"
)

type RepoDestroyAuditEntryVisibility

type RepoDestroyAuditEntryVisibility string

RepoDestroyAuditEntryVisibility represents the privacy of a repository.

const (
	// RepoDestroyAuditEntryVisibilityInternal. The repository is visible only to users in the same business.
	RepoDestroyAuditEntryVisibilityInternal RepoDestroyAuditEntryVisibility = "INTERNAL"
	// RepoDestroyAuditEntryVisibilityPrivate. The repository is visible only to those with explicit access.
	RepoDestroyAuditEntryVisibilityPrivate RepoDestroyAuditEntryVisibility = "PRIVATE"
	// RepoDestroyAuditEntryVisibilityPublic. The repository is visible to everyone.
	RepoDestroyAuditEntryVisibilityPublic RepoDestroyAuditEntryVisibility = "PUBLIC"
)

type RepoRemoveMemberAuditEntryVisibility

type RepoRemoveMemberAuditEntryVisibility string

RepoRemoveMemberAuditEntryVisibility represents the privacy of a repository.

const (
	// RepoRemoveMemberAuditEntryVisibilityInternal. The repository is visible only to users in the same business.
	RepoRemoveMemberAuditEntryVisibilityInternal RepoRemoveMemberAuditEntryVisibility = "INTERNAL"
	// RepoRemoveMemberAuditEntryVisibilityPrivate. The repository is visible only to those with explicit access.
	RepoRemoveMemberAuditEntryVisibilityPrivate RepoRemoveMemberAuditEntryVisibility = "PRIVATE"
	// RepoRemoveMemberAuditEntryVisibilityPublic. The repository is visible to everyone.
	RepoRemoveMemberAuditEntryVisibilityPublic RepoRemoveMemberAuditEntryVisibility = "PUBLIC"
)

type ReportedContentClassifiers

type ReportedContentClassifiers string

ReportedContentClassifiers represents the reasons a piece of content can be reported or minimized.

const (
	// ReportedContentClassifiersSpam. A spammy piece of content.
	ReportedContentClassifiersSpam ReportedContentClassifiers = "SPAM"
	// ReportedContentClassifiersAbuse. An abusive or harassing piece of content.
	ReportedContentClassifiersAbuse ReportedContentClassifiers = "ABUSE"
	// ReportedContentClassifiersOffTopic. An irrelevant piece of content.
	ReportedContentClassifiersOffTopic ReportedContentClassifiers = "OFF_TOPIC"
	// ReportedContentClassifiersOutdated. An outdated piece of content.
	ReportedContentClassifiersOutdated ReportedContentClassifiers = "OUTDATED"
	// ReportedContentClassifiersDuplicate. A duplicated piece of content.
	ReportedContentClassifiersDuplicate ReportedContentClassifiers = "DUPLICATE"
	// ReportedContentClassifiersResolved. The content has been resolved.
	ReportedContentClassifiersResolved ReportedContentClassifiers = "RESOLVED"
)

type RepositoryAffiliation

type RepositoryAffiliation string

RepositoryAffiliation represents the affiliation of a user to a repository.

const (
	// RepositoryAffiliationOwner. Repositories that are owned by the authenticated user.
	RepositoryAffiliationOwner RepositoryAffiliation = "OWNER"
	// RepositoryAffiliationCollaborator. Repositories that the user has been added to as a collaborator.
	RepositoryAffiliationCollaborator RepositoryAffiliation = "COLLABORATOR"
	// RepositoryAffiliationOrganizationMember. Repositories that the user has access to through being a member of an organization. This includes every repository on every team that the user is on.
	RepositoryAffiliationOrganizationMember RepositoryAffiliation = "ORGANIZATION_MEMBER"
)

type RepositoryContributionType

type RepositoryContributionType string

RepositoryContributionType represents the reason a repository is listed as 'contributed'.

const (
	// RepositoryContributionTypeCommit. Created a commit.
	RepositoryContributionTypeCommit RepositoryContributionType = "COMMIT"
	// RepositoryContributionTypeIssue. Created an issue.
	RepositoryContributionTypeIssue RepositoryContributionType = "ISSUE"
	// RepositoryContributionTypePullRequest. Created a pull request.
	RepositoryContributionTypePullRequest RepositoryContributionType = "PULL_REQUEST"
	// RepositoryContributionTypeRepository. Created the repository.
	RepositoryContributionTypeRepository RepositoryContributionType = "REPOSITORY"
	// RepositoryContributionTypePullRequestReview. Reviewed a pull request.
	RepositoryContributionTypePullRequestReview RepositoryContributionType = "PULL_REQUEST_REVIEW"
)

type RepositoryIDConditionTargetInput

type RepositoryIDConditionTargetInput struct {
	// One of these repo IDs must match the repo.
	RepositoryIDs []ID "json:\"repositoryIds\""
}

RepositoryIDConditionTargetInput represents parameters to be used for the repository_id condition.

type RepositoryInteractionLimit

type RepositoryInteractionLimit string

RepositoryInteractionLimit represents a repository interaction limit.

const (
	// RepositoryInteractionLimitExistingUsers. Users that have recently created their account will be unable to interact with the repository.
	RepositoryInteractionLimitExistingUsers RepositoryInteractionLimit = "EXISTING_USERS"
	// RepositoryInteractionLimitContributorsOnly. Users that have not previously committed to a repository’s default branch will be unable to interact with the repository.
	RepositoryInteractionLimitContributorsOnly RepositoryInteractionLimit = "CONTRIBUTORS_ONLY"
	// RepositoryInteractionLimitCollaboratorsOnly. Users that are not collaborators will not be able to interact with the repository.
	RepositoryInteractionLimitCollaboratorsOnly RepositoryInteractionLimit = "COLLABORATORS_ONLY"
	// RepositoryInteractionLimitNoLimit. No interaction limits are enabled.
	RepositoryInteractionLimitNoLimit RepositoryInteractionLimit = "NO_LIMIT"
)

type RepositoryInteractionLimitExpiry

type RepositoryInteractionLimitExpiry string

RepositoryInteractionLimitExpiry represents the length for a repository interaction limit to be enabled for.

const (
	// RepositoryInteractionLimitExpiryOneDay. The interaction limit will expire after 1 day.
	RepositoryInteractionLimitExpiryOneDay RepositoryInteractionLimitExpiry = "ONE_DAY"
	// RepositoryInteractionLimitExpiryThreeDays. The interaction limit will expire after 3 days.
	RepositoryInteractionLimitExpiryThreeDays RepositoryInteractionLimitExpiry = "THREE_DAYS"
	// RepositoryInteractionLimitExpiryOneWeek. The interaction limit will expire after 1 week.
	RepositoryInteractionLimitExpiryOneWeek RepositoryInteractionLimitExpiry = "ONE_WEEK"
	// RepositoryInteractionLimitExpiryOneMonth. The interaction limit will expire after 1 month.
	RepositoryInteractionLimitExpiryOneMonth RepositoryInteractionLimitExpiry = "ONE_MONTH"
	// RepositoryInteractionLimitExpirySixMonths. The interaction limit will expire after 6 months.
	RepositoryInteractionLimitExpirySixMonths RepositoryInteractionLimitExpiry = "SIX_MONTHS"
)

type RepositoryInteractionLimitOrigin

type RepositoryInteractionLimitOrigin string

RepositoryInteractionLimitOrigin represents indicates where an interaction limit is configured.

const (
	// RepositoryInteractionLimitOriginRepository. A limit that is configured at the repository level.
	RepositoryInteractionLimitOriginRepository RepositoryInteractionLimitOrigin = "REPOSITORY"
	// RepositoryInteractionLimitOriginOrganization. A limit that is configured at the organization level.
	RepositoryInteractionLimitOriginOrganization RepositoryInteractionLimitOrigin = "ORGANIZATION"
	// RepositoryInteractionLimitOriginUser. A limit that is configured at the user-wide level.
	RepositoryInteractionLimitOriginUser RepositoryInteractionLimitOrigin = "USER"
)

type RepositoryInvitationOrder

type RepositoryInvitationOrder struct {
	// The field to order repository invitations by.
	Field RepositoryInvitationOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

RepositoryInvitationOrder represents ordering options for repository invitation connections.

type RepositoryInvitationOrderField

type RepositoryInvitationOrderField string

RepositoryInvitationOrderField represents properties by which repository invitation connections can be ordered.

const (
	// RepositoryInvitationOrderFieldCreatedAt. Order repository invitations by creation time.
	RepositoryInvitationOrderFieldCreatedAt RepositoryInvitationOrderField = "CREATED_AT"
)

type RepositoryLockReason

type RepositoryLockReason string

RepositoryLockReason represents the possible reasons a given repository could be in a locked state.

const (
	// RepositoryLockReasonMoving. The repository is locked due to a move.
	RepositoryLockReasonMoving RepositoryLockReason = "MOVING"
	// RepositoryLockReasonBilling. The repository is locked due to a billing related reason.
	RepositoryLockReasonBilling RepositoryLockReason = "BILLING"
	// RepositoryLockReasonRename. The repository is locked due to a rename.
	RepositoryLockReasonRename RepositoryLockReason = "RENAME"
	// RepositoryLockReasonMigrating. The repository is locked due to a migration.
	RepositoryLockReasonMigrating RepositoryLockReason = "MIGRATING"
	// RepositoryLockReasonTradeRestriction. The repository is locked due to a trade controls related reason.
	RepositoryLockReasonTradeRestriction RepositoryLockReason = "TRADE_RESTRICTION"
)

type RepositoryMigrationOrder

type RepositoryMigrationOrder struct {
	// The field to order repository migrations by.
	Field RepositoryMigrationOrderField "json:\"field\""
	// The ordering direction.
	Direction RepositoryMigrationOrderDirection "json:\"direction\""
}

RepositoryMigrationOrder represents ordering options for repository migrations.

type RepositoryMigrationOrderDirection

type RepositoryMigrationOrderDirection string

RepositoryMigrationOrderDirection represents possible directions in which to order a list of repository migrations when provided an `orderBy` argument.

const (
	// RepositoryMigrationOrderDirectionAsc. Specifies an ascending order for a given `orderBy` argument.
	RepositoryMigrationOrderDirectionAsc RepositoryMigrationOrderDirection = "ASC"
	// RepositoryMigrationOrderDirectionDesc. Specifies a descending order for a given `orderBy` argument.
	RepositoryMigrationOrderDirectionDesc RepositoryMigrationOrderDirection = "DESC"
)

type RepositoryMigrationOrderField

type RepositoryMigrationOrderField string

RepositoryMigrationOrderField represents properties by which repository migrations can be ordered.

const (
	// RepositoryMigrationOrderFieldCreatedAt. Order mannequins why when they were created.
	RepositoryMigrationOrderFieldCreatedAt RepositoryMigrationOrderField = "CREATED_AT"
)

type RepositoryNameConditionTargetInput

type RepositoryNameConditionTargetInput struct {
	// Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match.
	Exclude []string "json:\"exclude\""
	// Array of repository names or patterns to include. One of these patterns must match for the condition to pass. Also accepts `~ALL` to include all repositories.
	Include []string "json:\"include\""
	// Target changes that match these patterns will be prevented except by those with bypass permissions.
	Protected *bool "json:\"protected,omitempty\""
}

RepositoryNameConditionTargetInput represents parameters to be used for the repository_name condition.

type RepositoryOrder

type RepositoryOrder struct {
	// The field to order repositories by.
	Field RepositoryOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

RepositoryOrder represents ordering options for repository connections.

type RepositoryOrderField

type RepositoryOrderField string

RepositoryOrderField represents properties by which repository connections can be ordered.

const (
	// RepositoryOrderFieldCreatedAt. Order repositories by creation time.
	RepositoryOrderFieldCreatedAt RepositoryOrderField = "CREATED_AT"
	// RepositoryOrderFieldUpdatedAt. Order repositories by update time.
	RepositoryOrderFieldUpdatedAt RepositoryOrderField = "UPDATED_AT"
	// RepositoryOrderFieldPushedAt. Order repositories by push time.
	RepositoryOrderFieldPushedAt RepositoryOrderField = "PUSHED_AT"
	// RepositoryOrderFieldName. Order repositories by name.
	RepositoryOrderFieldName RepositoryOrderField = "NAME"
	// RepositoryOrderFieldStargazers. Order repositories by number of stargazers.
	RepositoryOrderFieldStargazers RepositoryOrderField = "STARGAZERS"
)

type RepositoryPermission

type RepositoryPermission string

RepositoryPermission represents the access level to a repository.

const (
	// RepositoryPermissionAdmin. Can read, clone, and push to this repository. Can also manage issues, pull requests, and repository settings, including adding collaborators.
	RepositoryPermissionAdmin RepositoryPermission = "ADMIN"
	// RepositoryPermissionMaintain. Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings.
	RepositoryPermissionMaintain RepositoryPermission = "MAINTAIN"
	// RepositoryPermissionWrite. Can read, clone, and push to this repository. Can also manage issues and pull requests.
	RepositoryPermissionWrite RepositoryPermission = "WRITE"
	// RepositoryPermissionTriage. Can read and clone this repository. Can also manage issues and pull requests.
	RepositoryPermissionTriage RepositoryPermission = "TRIAGE"
	// RepositoryPermissionRead. Can read and clone this repository. Can also open and comment on issues and pull requests.
	RepositoryPermissionRead RepositoryPermission = "READ"
)

type RepositoryPrivacy

type RepositoryPrivacy string

RepositoryPrivacy represents the privacy of a repository.

const (
	// RepositoryPrivacyPublic. Public.
	RepositoryPrivacyPublic RepositoryPrivacy = "PUBLIC"
	// RepositoryPrivacyPrivate. Private.
	RepositoryPrivacyPrivate RepositoryPrivacy = "PRIVATE"
)

type RepositoryRuleConditionsInput

type RepositoryRuleConditionsInput struct {
	// Configuration for the ref_name condition.
	RefName *RefNameConditionTargetInput "json:\"refName,omitempty\""
	// Configuration for the repository_name condition.
	RepositoryName *RepositoryNameConditionTargetInput "json:\"repositoryName,omitempty\""
	// Configuration for the repository_id condition.
	RepositoryID *RepositoryIDConditionTargetInput "json:\"repositoryId,omitempty\""
}

RepositoryRuleConditionsInput represents specifies the conditions required for a ruleset to evaluate.

type RepositoryRuleInput

type RepositoryRuleInput struct {
	// Optional ID of this rule when updating.
	ID *ID "json:\"id,omitempty\""
	// The type of rule to create.
	Type RepositoryRuleType "json:\"type\""
	// The parameters for the rule.
	Parameters *RuleParametersInput "json:\"parameters,omitempty\""
}

RepositoryRuleInput represents specifies the attributes for a new or updated rule.

type RepositoryRuleType

type RepositoryRuleType string

RepositoryRuleType represents the rule types supported in rulesets.

const (
	// RepositoryRuleTypeCreation. Only allow users with bypass permission to create matching refs.
	RepositoryRuleTypeCreation RepositoryRuleType = "CREATION"
	// RepositoryRuleTypeUpdate. Only allow users with bypass permission to update matching refs.
	RepositoryRuleTypeUpdate RepositoryRuleType = "UPDATE"
	// RepositoryRuleTypeDeletion. Only allow users with bypass permissions to delete matching refs.
	RepositoryRuleTypeDeletion RepositoryRuleType = "DELETION"
	// RepositoryRuleTypeRequiredLinearHistory. Prevent merge commits from being pushed to matching refs.
	RepositoryRuleTypeRequiredLinearHistory RepositoryRuleType = "REQUIRED_LINEAR_HISTORY"
	// RepositoryRuleTypeRequiredDeployments. Choose which environments must be successfully deployed to before refs can be merged into a branch that matches this rule.
	RepositoryRuleTypeRequiredDeployments RepositoryRuleType = "REQUIRED_DEPLOYMENTS"
	// RepositoryRuleTypeRequiredSignatures. Commits pushed to matching refs must have verified signatures.
	RepositoryRuleTypeRequiredSignatures RepositoryRuleType = "REQUIRED_SIGNATURES"
	// RepositoryRuleTypePullRequest. Require all commits be made to a non-target branch and submitted via a pull request before they can be merged.
	RepositoryRuleTypePullRequest RepositoryRuleType = "PULL_REQUEST"
	// RepositoryRuleTypeRequiredStatusChecks. Choose which status checks must pass before branches can be merged into a branch that matches this rule. When enabled, commits must first be pushed to another branch, then merged or pushed directly to a ref that matches this rule after status checks have passed.
	RepositoryRuleTypeRequiredStatusChecks RepositoryRuleType = "REQUIRED_STATUS_CHECKS"
	// RepositoryRuleTypeNonFastForward. Prevent users with push access from force pushing to refs.
	RepositoryRuleTypeNonFastForward RepositoryRuleType = "NON_FAST_FORWARD"
	// RepositoryRuleTypeCommitMessagePattern. Commit message pattern.
	RepositoryRuleTypeCommitMessagePattern RepositoryRuleType = "COMMIT_MESSAGE_PATTERN"
	// RepositoryRuleTypeCommitAuthorEmailPattern. Commit author email pattern.
	RepositoryRuleTypeCommitAuthorEmailPattern RepositoryRuleType = "COMMIT_AUTHOR_EMAIL_PATTERN"
	// RepositoryRuleTypeCommitterEmailPattern. Committer email pattern.
	RepositoryRuleTypeCommitterEmailPattern RepositoryRuleType = "COMMITTER_EMAIL_PATTERN"
	// RepositoryRuleTypeBranchNamePattern. Branch name pattern.
	RepositoryRuleTypeBranchNamePattern RepositoryRuleType = "BRANCH_NAME_PATTERN"
	// RepositoryRuleTypeTagNamePattern. Tag name pattern.
	RepositoryRuleTypeTagNamePattern RepositoryRuleType = "TAG_NAME_PATTERN"
)

type RepositoryRulesetBypassActorBypassMode

type RepositoryRulesetBypassActorBypassMode string

RepositoryRulesetBypassActorBypassMode represents the bypass mode for a specific actor on a ruleset.

const (
	// RepositoryRulesetBypassActorBypassModeAlways. The actor can always bypass rules.
	RepositoryRulesetBypassActorBypassModeAlways RepositoryRulesetBypassActorBypassMode = "ALWAYS"
	// RepositoryRulesetBypassActorBypassModePullRequest. The actor can only bypass rules via a pull request.
	RepositoryRulesetBypassActorBypassModePullRequest RepositoryRulesetBypassActorBypassMode = "PULL_REQUEST"
)

type RepositoryRulesetBypassActorInput

type RepositoryRulesetBypassActorInput struct {
	// For Team and Integration bypasses, the Team or Integration ID.
	ActorID *ID "json:\"actorId,omitempty\""
	// For role bypasses, the role database ID.
	RepositoryRoleDatabaseID *int "json:\"repositoryRoleDatabaseId,omitempty\""
	// For org admin bupasses, true.
	OrganizationAdmin *bool "json:\"organizationAdmin,omitempty\""
	// The bypass mode for this actor.
	BypassMode RepositoryRulesetBypassActorBypassMode "json:\"bypassMode\""
}

RepositoryRulesetBypassActorInput represents specifies the attributes for a new or updated ruleset bypass actor. Only one of `actor_id`, `repository_role_database_id`, or `organization_admin` should be specified.

type RepositoryRulesetTarget

type RepositoryRulesetTarget string

RepositoryRulesetTarget represents the targets supported for rulesets.

const (
	// RepositoryRulesetTargetBranch. Branch.
	RepositoryRulesetTargetBranch RepositoryRulesetTarget = "BRANCH"
	// RepositoryRulesetTargetTag. Tag.
	RepositoryRulesetTargetTag RepositoryRulesetTarget = "TAG"
)

type RepositoryVisibility

type RepositoryVisibility string

RepositoryVisibility represents the repository's visibility level.

const (
	// RepositoryVisibilityPrivate. The repository is visible only to those with explicit access.
	RepositoryVisibilityPrivate RepositoryVisibility = "PRIVATE"
	// RepositoryVisibilityPublic. The repository is visible to everyone.
	RepositoryVisibilityPublic RepositoryVisibility = "PUBLIC"
	// RepositoryVisibilityInternal. The repository is visible only to users in the same business.
	RepositoryVisibilityInternal RepositoryVisibility = "INTERNAL"
)

type RepositoryVulnerabilityAlertDependencyScope

type RepositoryVulnerabilityAlertDependencyScope string

RepositoryVulnerabilityAlertDependencyScope represents the possible scopes of an alert's dependency.

const (
	// RepositoryVulnerabilityAlertDependencyScopeRuntime. A dependency that is leveraged during application runtime.
	RepositoryVulnerabilityAlertDependencyScopeRuntime RepositoryVulnerabilityAlertDependencyScope = "RUNTIME"
	// RepositoryVulnerabilityAlertDependencyScopeDevelopment. A dependency that is only used in development.
	RepositoryVulnerabilityAlertDependencyScopeDevelopment RepositoryVulnerabilityAlertDependencyScope = "DEVELOPMENT"
)

type RepositoryVulnerabilityAlertState

type RepositoryVulnerabilityAlertState string

RepositoryVulnerabilityAlertState represents the possible states of an alert.

const (
	// RepositoryVulnerabilityAlertStateOpen. An alert that is still open.
	RepositoryVulnerabilityAlertStateOpen RepositoryVulnerabilityAlertState = "OPEN"
	// RepositoryVulnerabilityAlertStateFixed. An alert that has been resolved by a code change.
	RepositoryVulnerabilityAlertStateFixed RepositoryVulnerabilityAlertState = "FIXED"
	// RepositoryVulnerabilityAlertStateDismissed. An alert that has been manually closed by a user.
	RepositoryVulnerabilityAlertStateDismissed RepositoryVulnerabilityAlertState = "DISMISSED"
	// RepositoryVulnerabilityAlertStateAutoDismissed. An alert that has been automatically closed by Dependabot.
	RepositoryVulnerabilityAlertStateAutoDismissed RepositoryVulnerabilityAlertState = "AUTO_DISMISSED"
)

type RequestReviewsInput

type RequestReviewsInput struct {
	// The Node ID of the pull request to modify.
	PullRequestID ID "json:\"pullRequestId\""
	// The Node IDs of the user to request.
	UserIDs *[]ID "json:\"userIds,omitempty\""
	// The Node IDs of the team to request.
	TeamIDs *[]ID "json:\"teamIds,omitempty\""
	// Add users to the set rather than replace.
	Union *bool "json:\"union,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RequestReviewsInput is an autogenerated input type of RequestReviews.

type RequestableCheckStatusState

type RequestableCheckStatusState string

RequestableCheckStatusState represents the possible states that can be requested when creating a check run.

const (
	// RequestableCheckStatusStateQueued. The check suite or run has been queued.
	RequestableCheckStatusStateQueued RequestableCheckStatusState = "QUEUED"
	// RequestableCheckStatusStateInProgress. The check suite or run is in progress.
	RequestableCheckStatusStateInProgress RequestableCheckStatusState = "IN_PROGRESS"
	// RequestableCheckStatusStateCompleted. The check suite or run has been completed.
	RequestableCheckStatusStateCompleted RequestableCheckStatusState = "COMPLETED"
	// RequestableCheckStatusStateWaiting. The check suite or run is in waiting state.
	RequestableCheckStatusStateWaiting RequestableCheckStatusState = "WAITING"
	// RequestableCheckStatusStatePending. The check suite or run is in pending state.
	RequestableCheckStatusStatePending RequestableCheckStatusState = "PENDING"
)

type RequiredDeploymentsParametersInput

type RequiredDeploymentsParametersInput struct {
	// The environments that must be successfully deployed to before branches can be merged.
	RequiredDeploymentEnvironments []string "json:\"requiredDeploymentEnvironments\""
}

RequiredDeploymentsParametersInput represents choose which environments must be successfully deployed to before refs can be merged into a branch that matches this rule.

type RequiredStatusCheckInput

type RequiredStatusCheckInput struct {
	// Status check context that must pass for commits to be accepted to the matching branch.
	Context string "json:\"context\""
	// The ID of the App that must set the status in order for it to be accepted. Omit this value to use whichever app has recently been setting this status, or use "any" to allow any app to set the status.
	AppID *ID "json:\"appId,omitempty\""
}

RequiredStatusCheckInput represents specifies the attributes for a new or updated required status check.

type RequiredStatusChecksParametersInput

type RequiredStatusChecksParametersInput struct {
	// Status checks that are required.
	RequiredStatusChecks []StatusCheckConfigurationInput "json:\"requiredStatusChecks\""
	// Whether pull requests targeting a matching branch must be tested with the latest code. This setting will not take effect unless at least one status check is enabled.
	StrictRequiredStatusChecksPolicy bool "json:\"strictRequiredStatusChecksPolicy\""
}

RequiredStatusChecksParametersInput represents choose which status checks must pass before branches can be merged into a branch that matches this rule. When enabled, commits must first be pushed to another branch, then merged or pushed directly to a ref that matches this rule after status checks have passed.

type RerequestCheckSuiteInput

type RerequestCheckSuiteInput struct {
	// The Node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The Node ID of the check suite.
	CheckSuiteID ID "json:\"checkSuiteId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RerequestCheckSuiteInput is an autogenerated input type of RerequestCheckSuite.

type ResolveReviewThreadInput

type ResolveReviewThreadInput struct {
	// The ID of the thread to resolve.
	ThreadID ID "json:\"threadId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

ResolveReviewThreadInput is an autogenerated input type of ResolveReviewThread.

type RetireSponsorsTierInput

type RetireSponsorsTierInput struct {
	// The ID of the published tier to retire.
	TierID ID "json:\"tierId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RetireSponsorsTierInput is an autogenerated input type of RetireSponsorsTier.

type RevertPullRequestInput

type RevertPullRequestInput struct {
	// The ID of the pull request to revert.
	PullRequestID ID "json:\"pullRequestId\""
	// The title of the revert pull request.
	Title *string "json:\"title,omitempty\""
	// The description of the revert pull request.
	Body *string "json:\"body,omitempty\""
	// Indicates whether the revert pull request should be a draft.
	Draft *bool "json:\"draft,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RevertPullRequestInput is an autogenerated input type of RevertPullRequest.

type RevokeEnterpriseOrganizationsMigratorRoleInput

type RevokeEnterpriseOrganizationsMigratorRoleInput struct {
	// The ID of the enterprise to which all organizations managed by it will be granted the migrator role.
	EnterpriseID ID "json:\"enterpriseId\""
	// The login of the user to revoke the migrator role.
	Login string "json:\"login\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RevokeEnterpriseOrganizationsMigratorRoleInput is an autogenerated input type of RevokeEnterpriseOrganizationsMigratorRole.

type RevokeMigratorRoleInput

type RevokeMigratorRoleInput struct {
	// The ID of the organization that the user/team belongs to.
	OrganizationID ID "json:\"organizationId\""
	// The user login or Team slug to revoke the migrator role from.
	Actor string "json:\"actor\""
	// Specifies the type of the actor, can be either USER or TEAM.
	ActorType ActorType "json:\"actorType\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

RevokeMigratorRoleInput is an autogenerated input type of RevokeMigratorRole.

type RoleInOrganization

type RoleInOrganization string

RoleInOrganization represents possible roles a user may have in relation to an organization.

const (
	// RoleInOrganizationOwner. A user with full administrative access to the organization.
	RoleInOrganizationOwner RoleInOrganization = "OWNER"
	// RoleInOrganizationDirectMember. A user who is a direct member of the organization.
	RoleInOrganizationDirectMember RoleInOrganization = "DIRECT_MEMBER"
	// RoleInOrganizationUnaffiliated. A user who is unaffiliated with the organization.
	RoleInOrganizationUnaffiliated RoleInOrganization = "UNAFFILIATED"
)

type RuleEnforcement

type RuleEnforcement string

RuleEnforcement represents the level of enforcement for a rule or ruleset.

const (
	// RuleEnforcementDisabled. Do not evaluate or enforce rules.
	RuleEnforcementDisabled RuleEnforcement = "DISABLED"
	// RuleEnforcementActive. Rules will be enforced.
	RuleEnforcementActive RuleEnforcement = "ACTIVE"
	// RuleEnforcementEvaluate. Allow admins to test rules before enforcing them. Admins can view insights on the Rule Insights page (`evaluate` is only available with GitHub Enterprise).
	RuleEnforcementEvaluate RuleEnforcement = "EVALUATE"
)

type RuleParametersInput

type RuleParametersInput struct {
	// Parameters used for the `update` rule type.
	Update *UpdateParametersInput "json:\"update,omitempty\""
	// Parameters used for the `required_deployments` rule type.
	RequiredDeployments *RequiredDeploymentsParametersInput "json:\"requiredDeployments,omitempty\""
	// Parameters used for the `pull_request` rule type.
	PullRequest *PullRequestParametersInput "json:\"pullRequest,omitempty\""
	// Parameters used for the `required_status_checks` rule type.
	RequiredStatusChecks *RequiredStatusChecksParametersInput "json:\"requiredStatusChecks,omitempty\""
	// Parameters used for the `commit_message_pattern` rule type.
	CommitMessagePattern *CommitMessagePatternParametersInput "json:\"commitMessagePattern,omitempty\""
	// Parameters used for the `commit_author_email_pattern` rule type.
	CommitAuthorEmailPattern *CommitAuthorEmailPatternParametersInput "json:\"commitAuthorEmailPattern,omitempty\""
	// Parameters used for the `committer_email_pattern` rule type.
	CommitterEmailPattern *CommitterEmailPatternParametersInput "json:\"committerEmailPattern,omitempty\""
	// Parameters used for the `branch_name_pattern` rule type.
	BranchNamePattern *BranchNamePatternParametersInput "json:\"branchNamePattern,omitempty\""
	// Parameters used for the `tag_name_pattern` rule type.
	TagNamePattern *TagNamePatternParametersInput "json:\"tagNamePattern,omitempty\""
}

RuleParametersInput represents specifies the parameters for a `RepositoryRule` object. Only one of the fields should be specified.

type SamlDigestAlgorithm

type SamlDigestAlgorithm string

SamlDigestAlgorithm represents the possible digest algorithms used to sign SAML requests for an identity provider.

const (
	// SamlDigestAlgorithmSha1. SHA1.
	SamlDigestAlgorithmSha1 SamlDigestAlgorithm = "SHA1"
	// SamlDigestAlgorithmSha256. SHA256.
	SamlDigestAlgorithmSha256 SamlDigestAlgorithm = "SHA256"
	// SamlDigestAlgorithmSha384. SHA384.
	SamlDigestAlgorithmSha384 SamlDigestAlgorithm = "SHA384"
	// SamlDigestAlgorithmSha512. SHA512.
	SamlDigestAlgorithmSha512 SamlDigestAlgorithm = "SHA512"
)

type SamlSignatureAlgorithm

type SamlSignatureAlgorithm string

SamlSignatureAlgorithm represents the possible signature algorithms used to sign SAML requests for a Identity Provider.

const (
	// SamlSignatureAlgorithmRsaSha1. RSA-SHA1.
	SamlSignatureAlgorithmRsaSha1 SamlSignatureAlgorithm = "RSA_SHA1"
	// SamlSignatureAlgorithmRsaSha256. RSA-SHA256.
	SamlSignatureAlgorithmRsaSha256 SamlSignatureAlgorithm = "RSA_SHA256"
	// SamlSignatureAlgorithmRsaSha384. RSA-SHA384.
	SamlSignatureAlgorithmRsaSha384 SamlSignatureAlgorithm = "RSA_SHA384"
	// SamlSignatureAlgorithmRsaSha512. RSA-SHA512.
	SamlSignatureAlgorithmRsaSha512 SamlSignatureAlgorithm = "RSA_SHA512"
)

type SavedReplyOrder

type SavedReplyOrder struct {
	// The field to order saved replies by.
	Field SavedReplyOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

SavedReplyOrder represents ordering options for saved reply connections.

type SavedReplyOrderField

type SavedReplyOrderField string

SavedReplyOrderField represents properties by which saved reply connections can be ordered.

const (
	// SavedReplyOrderFieldUpdatedAt. Order saved reply by when they were updated.
	SavedReplyOrderFieldUpdatedAt SavedReplyOrderField = "UPDATED_AT"
)

type SearchType

type SearchType string

SearchType represents represents the individual results of a search.

const (
	// SearchTypeIssue. Returns results matching issues in repositories.
	SearchTypeIssue SearchType = "ISSUE"
	// SearchTypeRepository. Returns results matching repositories.
	SearchTypeRepository SearchType = "REPOSITORY"
	// SearchTypeUser. Returns results matching users and organizations on GitHub.
	SearchTypeUser SearchType = "USER"
	// SearchTypeDiscussion. Returns matching discussions in repositories.
	SearchTypeDiscussion SearchType = "DISCUSSION"
)

type SecurityAdvisoryClassification

type SecurityAdvisoryClassification string

SecurityAdvisoryClassification represents classification of the advisory.

const (
	// SecurityAdvisoryClassificationGeneral. Classification of general advisories.
	SecurityAdvisoryClassificationGeneral SecurityAdvisoryClassification = "GENERAL"
	// SecurityAdvisoryClassificationMalware. Classification of malware advisories.
	SecurityAdvisoryClassificationMalware SecurityAdvisoryClassification = "MALWARE"
)

type SecurityAdvisoryEcosystem

type SecurityAdvisoryEcosystem string

SecurityAdvisoryEcosystem represents the possible ecosystems of a security vulnerability's package.

const (
	// SecurityAdvisoryEcosystemComposer. PHP packages hosted at packagist.org.
	SecurityAdvisoryEcosystemComposer SecurityAdvisoryEcosystem = "COMPOSER"
	// SecurityAdvisoryEcosystemErlang. Erlang/Elixir packages hosted at hex.pm.
	SecurityAdvisoryEcosystemErlang SecurityAdvisoryEcosystem = "ERLANG"
	// SecurityAdvisoryEcosystemActions. GitHub Actions.
	SecurityAdvisoryEcosystemActions SecurityAdvisoryEcosystem = "ACTIONS"
	// SecurityAdvisoryEcosystemGo. Go modules.
	SecurityAdvisoryEcosystemGo SecurityAdvisoryEcosystem = "GO"
	// SecurityAdvisoryEcosystemMaven. Java artifacts hosted at the Maven central repository.
	SecurityAdvisoryEcosystemMaven SecurityAdvisoryEcosystem = "MAVEN"
	// SecurityAdvisoryEcosystemNpm. JavaScript packages hosted at npmjs.com.
	SecurityAdvisoryEcosystemNpm SecurityAdvisoryEcosystem = "NPM"
	// SecurityAdvisoryEcosystemNuget. .NET packages hosted at the NuGet Gallery.
	SecurityAdvisoryEcosystemNuget SecurityAdvisoryEcosystem = "NUGET"
	// SecurityAdvisoryEcosystemPip. Python packages hosted at PyPI.org.
	SecurityAdvisoryEcosystemPip SecurityAdvisoryEcosystem = "PIP"
	// SecurityAdvisoryEcosystemPub. Dart packages hosted at pub.dev.
	SecurityAdvisoryEcosystemPub SecurityAdvisoryEcosystem = "PUB"
	// SecurityAdvisoryEcosystemRubygems. Ruby gems hosted at RubyGems.org.
	SecurityAdvisoryEcosystemRubygems SecurityAdvisoryEcosystem = "RUBYGEMS"
	// SecurityAdvisoryEcosystemRust. Rust crates.
	SecurityAdvisoryEcosystemRust SecurityAdvisoryEcosystem = "RUST"
	// SecurityAdvisoryEcosystemSwift. Swift packages.
	SecurityAdvisoryEcosystemSwift SecurityAdvisoryEcosystem = "SWIFT"
)

type SecurityAdvisoryIdentifierFilter

type SecurityAdvisoryIdentifierFilter struct {
	// The identifier type.
	Type SecurityAdvisoryIdentifierType "json:\"type\""
	// The identifier string. Supports exact or partial matching.
	Value string "json:\"value\""
}

SecurityAdvisoryIdentifierFilter represents an advisory identifier to filter results on.

type SecurityAdvisoryIdentifierType

type SecurityAdvisoryIdentifierType string

SecurityAdvisoryIdentifierType represents identifier formats available for advisories.

const (
	// SecurityAdvisoryIdentifierTypeCve. Common Vulnerabilities and Exposures Identifier.
	SecurityAdvisoryIdentifierTypeCve SecurityAdvisoryIdentifierType = "CVE"
	// SecurityAdvisoryIdentifierTypeGhsa. GitHub Security Advisory ID.
	SecurityAdvisoryIdentifierTypeGhsa SecurityAdvisoryIdentifierType = "GHSA"
)

type SecurityAdvisoryOrder

type SecurityAdvisoryOrder struct {
	// The field to order security advisories by.
	Field SecurityAdvisoryOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

SecurityAdvisoryOrder represents ordering options for security advisory connections.

type SecurityAdvisoryOrderField

type SecurityAdvisoryOrderField string

SecurityAdvisoryOrderField represents properties by which security advisory connections can be ordered.

const (
	// SecurityAdvisoryOrderFieldPublishedAt. Order advisories by publication time.
	SecurityAdvisoryOrderFieldPublishedAt SecurityAdvisoryOrderField = "PUBLISHED_AT"
	// SecurityAdvisoryOrderFieldUpdatedAt. Order advisories by update time.
	SecurityAdvisoryOrderFieldUpdatedAt SecurityAdvisoryOrderField = "UPDATED_AT"
)

type SecurityAdvisorySeverity

type SecurityAdvisorySeverity string

SecurityAdvisorySeverity represents severity of the vulnerability.

const (
	// SecurityAdvisorySeverityLow. Low.
	SecurityAdvisorySeverityLow SecurityAdvisorySeverity = "LOW"
	// SecurityAdvisorySeverityModerate. Moderate.
	SecurityAdvisorySeverityModerate SecurityAdvisorySeverity = "MODERATE"
	// SecurityAdvisorySeverityHigh. High.
	SecurityAdvisorySeverityHigh SecurityAdvisorySeverity = "HIGH"
	// SecurityAdvisorySeverityCritical. Critical.
	SecurityAdvisorySeverityCritical SecurityAdvisorySeverity = "CRITICAL"
)

type SecurityVulnerabilityOrder

type SecurityVulnerabilityOrder struct {
	// The field to order security vulnerabilities by.
	Field SecurityVulnerabilityOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

SecurityVulnerabilityOrder represents ordering options for security vulnerability connections.

type SecurityVulnerabilityOrderField

type SecurityVulnerabilityOrderField string

SecurityVulnerabilityOrderField represents properties by which security vulnerability connections can be ordered.

const (
	// SecurityVulnerabilityOrderFieldUpdatedAt. Order vulnerability by update time.
	SecurityVulnerabilityOrderFieldUpdatedAt SecurityVulnerabilityOrderField = "UPDATED_AT"
)

type SetEnterpriseIdentityProviderInput

type SetEnterpriseIdentityProviderInput struct {
	// The ID of the enterprise on which to set an identity provider.
	EnterpriseID ID "json:\"enterpriseId\""
	// The URL endpoint for the identity provider's SAML SSO.
	SsoURL URI "json:\"ssoUrl\""
	// The Issuer Entity ID for the SAML identity provider.
	Issuer *string "json:\"issuer,omitempty\""
	// The x509 certificate used by the identity provider to sign assertions and responses.
	IdpCertificate string "json:\"idpCertificate\""
	// The signature algorithm used to sign SAML requests for the identity provider.
	SignatureMethod SamlSignatureAlgorithm "json:\"signatureMethod\""
	// The digest algorithm used to sign SAML requests for the identity provider.
	DigestMethod SamlDigestAlgorithm "json:\"digestMethod\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

SetEnterpriseIdentityProviderInput is an autogenerated input type of SetEnterpriseIdentityProvider.

type SetOrganizationInteractionLimitInput

type SetOrganizationInteractionLimitInput struct {
	// The ID of the organization to set a limit for.
	OrganizationID ID "json:\"organizationId\""
	// The limit to set.
	Limit RepositoryInteractionLimit "json:\"limit\""
	// When this limit should expire.
	Expiry *RepositoryInteractionLimitExpiry "json:\"expiry,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

SetOrganizationInteractionLimitInput is an autogenerated input type of SetOrganizationInteractionLimit.

type SetRepositoryInteractionLimitInput

type SetRepositoryInteractionLimitInput struct {
	// The ID of the repository to set a limit for.
	RepositoryID ID "json:\"repositoryId\""
	// The limit to set.
	Limit RepositoryInteractionLimit "json:\"limit\""
	// When this limit should expire.
	Expiry *RepositoryInteractionLimitExpiry "json:\"expiry,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

SetRepositoryInteractionLimitInput is an autogenerated input type of SetRepositoryInteractionLimit.

type SetUserInteractionLimitInput

type SetUserInteractionLimitInput struct {
	// The ID of the user to set a limit for.
	UserID ID "json:\"userId\""
	// The limit to set.
	Limit RepositoryInteractionLimit "json:\"limit\""
	// When this limit should expire.
	Expiry *RepositoryInteractionLimitExpiry "json:\"expiry,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

SetUserInteractionLimitInput is an autogenerated input type of SetUserInteractionLimit.

type SocialAccountProvider

type SocialAccountProvider string

SocialAccountProvider represents software or company that hosts social media accounts.

const (
	// SocialAccountProviderGeneric. Catch-all for social media providers that do not yet have specific handling.
	SocialAccountProviderGeneric SocialAccountProvider = "GENERIC"
	// SocialAccountProviderFacebook. Social media and networking website.
	SocialAccountProviderFacebook SocialAccountProvider = "FACEBOOK"
	// SocialAccountProviderHometown. Fork of Mastodon with a greater focus on local posting.
	SocialAccountProviderHometown SocialAccountProvider = "HOMETOWN"
	// SocialAccountProviderInstagram. Social media website with a focus on photo and video sharing.
	SocialAccountProviderInstagram SocialAccountProvider = "INSTAGRAM"
	// SocialAccountProviderLinkedin. Professional networking website.
	SocialAccountProviderLinkedin SocialAccountProvider = "LINKEDIN"
	// SocialAccountProviderMastodon. Open-source federated microblogging service.
	SocialAccountProviderMastodon SocialAccountProvider = "MASTODON"
	// SocialAccountProviderReddit. Social news aggregation and discussion website.
	SocialAccountProviderReddit SocialAccountProvider = "REDDIT"
	// SocialAccountProviderTwitch. Live-streaming service.
	SocialAccountProviderTwitch SocialAccountProvider = "TWITCH"
	// SocialAccountProviderTwitter. Microblogging website.
	SocialAccountProviderTwitter SocialAccountProvider = "TWITTER"
	// SocialAccountProviderYoutube. Online video platform.
	SocialAccountProviderYoutube SocialAccountProvider = "YOUTUBE"
)

type SponsorOrder

type SponsorOrder struct {
	// The field to order sponsor entities by.
	Field SponsorOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

SponsorOrder represents ordering options for connections to get sponsor entities for GitHub Sponsors.

type SponsorOrderField

type SponsorOrderField string

SponsorOrderField represents properties by which sponsor connections can be ordered.

const (
	// SponsorOrderFieldLogin. Order sponsorable entities by login (username).
	SponsorOrderFieldLogin SponsorOrderField = "LOGIN"
	// SponsorOrderFieldRelevance. Order sponsors by their relevance to the viewer.
	SponsorOrderFieldRelevance SponsorOrderField = "RELEVANCE"
)

type SponsorableOrder

type SponsorableOrder struct {
	// The field to order sponsorable entities by.
	Field SponsorableOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

SponsorableOrder represents ordering options for connections to get sponsorable entities for GitHub Sponsors.

type SponsorableOrderField

type SponsorableOrderField string

SponsorableOrderField represents properties by which sponsorable connections can be ordered.

const (
	// SponsorableOrderFieldLogin. Order sponsorable entities by login (username).
	SponsorableOrderFieldLogin SponsorableOrderField = "LOGIN"
)

type SponsorsActivityAction

type SponsorsActivityAction string

SponsorsActivityAction represents the possible actions that GitHub Sponsors activities can represent.

const (
	// SponsorsActivityActionNewSponsorship. The activity was starting a sponsorship.
	SponsorsActivityActionNewSponsorship SponsorsActivityAction = "NEW_SPONSORSHIP"
	// SponsorsActivityActionCancelledSponsorship. The activity was cancelling a sponsorship.
	SponsorsActivityActionCancelledSponsorship SponsorsActivityAction = "CANCELLED_SPONSORSHIP"
	// SponsorsActivityActionTierChange. The activity was changing the sponsorship tier, either directly by the sponsor or by a scheduled/pending change.
	SponsorsActivityActionTierChange SponsorsActivityAction = "TIER_CHANGE"
	// SponsorsActivityActionRefund. The activity was funds being refunded to the sponsor or GitHub.
	SponsorsActivityActionRefund SponsorsActivityAction = "REFUND"
	// SponsorsActivityActionPendingChange. The activity was scheduling a downgrade or cancellation.
	SponsorsActivityActionPendingChange SponsorsActivityAction = "PENDING_CHANGE"
	// SponsorsActivityActionSponsorMatchDisabled. The activity was disabling matching for a previously matched sponsorship.
	SponsorsActivityActionSponsorMatchDisabled SponsorsActivityAction = "SPONSOR_MATCH_DISABLED"
)

type SponsorsActivityOrder

type SponsorsActivityOrder struct {
	// The field to order activity by.
	Field SponsorsActivityOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

SponsorsActivityOrder represents ordering options for GitHub Sponsors activity connections.

type SponsorsActivityOrderField

type SponsorsActivityOrderField string

SponsorsActivityOrderField represents properties by which GitHub Sponsors activity connections can be ordered.

const (
	// SponsorsActivityOrderFieldTimestamp. Order activities by when they happened.
	SponsorsActivityOrderFieldTimestamp SponsorsActivityOrderField = "TIMESTAMP"
)

type SponsorsActivityPeriod

type SponsorsActivityPeriod string

SponsorsActivityPeriod represents the possible time periods for which Sponsors activities can be requested.

const (
	// SponsorsActivityPeriodDay. The previous calendar day.
	SponsorsActivityPeriodDay SponsorsActivityPeriod = "DAY"
	// SponsorsActivityPeriodWeek. The previous seven days.
	SponsorsActivityPeriodWeek SponsorsActivityPeriod = "WEEK"
	// SponsorsActivityPeriodMonth. The previous thirty days.
	SponsorsActivityPeriodMonth SponsorsActivityPeriod = "MONTH"
	// SponsorsActivityPeriodAll. Don't restrict the activity to any date range, include all activity.
	SponsorsActivityPeriodAll SponsorsActivityPeriod = "ALL"
)

type SponsorsCountryOrRegionCode

type SponsorsCountryOrRegionCode string

SponsorsCountryOrRegionCode represents represents countries or regions for billing and residence for a GitHub Sponsors profile.

const (
	// SponsorsCountryOrRegionCodeAf. Afghanistan.
	SponsorsCountryOrRegionCodeAf SponsorsCountryOrRegionCode = "AF"
	// SponsorsCountryOrRegionCodeAx. Åland.
	SponsorsCountryOrRegionCodeAx SponsorsCountryOrRegionCode = "AX"
	// SponsorsCountryOrRegionCodeAl. Albania.
	SponsorsCountryOrRegionCodeAl SponsorsCountryOrRegionCode = "AL"
	// SponsorsCountryOrRegionCodeDz. Algeria.
	SponsorsCountryOrRegionCodeDz SponsorsCountryOrRegionCode = "DZ"
	// SponsorsCountryOrRegionCodeAs. American Samoa.
	SponsorsCountryOrRegionCodeAs SponsorsCountryOrRegionCode = "AS"
	// SponsorsCountryOrRegionCodeAd. Andorra.
	SponsorsCountryOrRegionCodeAd SponsorsCountryOrRegionCode = "AD"
	// SponsorsCountryOrRegionCodeAo. Angola.
	SponsorsCountryOrRegionCodeAo SponsorsCountryOrRegionCode = "AO"
	// SponsorsCountryOrRegionCodeAi. Anguilla.
	SponsorsCountryOrRegionCodeAi SponsorsCountryOrRegionCode = "AI"
	// SponsorsCountryOrRegionCodeAq. Antarctica.
	SponsorsCountryOrRegionCodeAq SponsorsCountryOrRegionCode = "AQ"
	// SponsorsCountryOrRegionCodeAg. Antigua and Barbuda.
	SponsorsCountryOrRegionCodeAg SponsorsCountryOrRegionCode = "AG"
	// SponsorsCountryOrRegionCodeAr. Argentina.
	SponsorsCountryOrRegionCodeAr SponsorsCountryOrRegionCode = "AR"
	// SponsorsCountryOrRegionCodeAm. Armenia.
	SponsorsCountryOrRegionCodeAm SponsorsCountryOrRegionCode = "AM"
	// SponsorsCountryOrRegionCodeAw. Aruba.
	SponsorsCountryOrRegionCodeAw SponsorsCountryOrRegionCode = "AW"
	// SponsorsCountryOrRegionCodeAu. Australia.
	SponsorsCountryOrRegionCodeAu SponsorsCountryOrRegionCode = "AU"
	// SponsorsCountryOrRegionCodeAt. Austria.
	SponsorsCountryOrRegionCodeAt SponsorsCountryOrRegionCode = "AT"
	// SponsorsCountryOrRegionCodeAz. Azerbaijan.
	SponsorsCountryOrRegionCodeAz SponsorsCountryOrRegionCode = "AZ"
	// SponsorsCountryOrRegionCodeBs. Bahamas.
	SponsorsCountryOrRegionCodeBs SponsorsCountryOrRegionCode = "BS"
	// SponsorsCountryOrRegionCodeBh. Bahrain.
	SponsorsCountryOrRegionCodeBh SponsorsCountryOrRegionCode = "BH"
	// SponsorsCountryOrRegionCodeBd. Bangladesh.
	SponsorsCountryOrRegionCodeBd SponsorsCountryOrRegionCode = "BD"
	// SponsorsCountryOrRegionCodeBb. Barbados.
	SponsorsCountryOrRegionCodeBb SponsorsCountryOrRegionCode = "BB"
	// SponsorsCountryOrRegionCodeBy. Belarus.
	SponsorsCountryOrRegionCodeBy SponsorsCountryOrRegionCode = "BY"
	// SponsorsCountryOrRegionCodeBe. Belgium.
	SponsorsCountryOrRegionCodeBe SponsorsCountryOrRegionCode = "BE"
	// SponsorsCountryOrRegionCodeBz. Belize.
	SponsorsCountryOrRegionCodeBz SponsorsCountryOrRegionCode = "BZ"
	// SponsorsCountryOrRegionCodeBj. Benin.
	SponsorsCountryOrRegionCodeBj SponsorsCountryOrRegionCode = "BJ"
	// SponsorsCountryOrRegionCodeBm. Bermuda.
	SponsorsCountryOrRegionCodeBm SponsorsCountryOrRegionCode = "BM"
	// SponsorsCountryOrRegionCodeBt. Bhutan.
	SponsorsCountryOrRegionCodeBt SponsorsCountryOrRegionCode = "BT"
	// SponsorsCountryOrRegionCodeBo. Bolivia.
	SponsorsCountryOrRegionCodeBo SponsorsCountryOrRegionCode = "BO"
	// SponsorsCountryOrRegionCodeBq. Bonaire, Sint Eustatius and Saba.
	SponsorsCountryOrRegionCodeBq SponsorsCountryOrRegionCode = "BQ"
	// SponsorsCountryOrRegionCodeBa. Bosnia and Herzegovina.
	SponsorsCountryOrRegionCodeBa SponsorsCountryOrRegionCode = "BA"
	// SponsorsCountryOrRegionCodeBw. Botswana.
	SponsorsCountryOrRegionCodeBw SponsorsCountryOrRegionCode = "BW"
	// SponsorsCountryOrRegionCodeBv. Bouvet Island.
	SponsorsCountryOrRegionCodeBv SponsorsCountryOrRegionCode = "BV"
	// SponsorsCountryOrRegionCodeBr. Brazil.
	SponsorsCountryOrRegionCodeBr SponsorsCountryOrRegionCode = "BR"
	// SponsorsCountryOrRegionCodeIo. British Indian Ocean Territory.
	SponsorsCountryOrRegionCodeIo SponsorsCountryOrRegionCode = "IO"
	// SponsorsCountryOrRegionCodeBn. Brunei Darussalam.
	SponsorsCountryOrRegionCodeBn SponsorsCountryOrRegionCode = "BN"
	// SponsorsCountryOrRegionCodeBg. Bulgaria.
	SponsorsCountryOrRegionCodeBg SponsorsCountryOrRegionCode = "BG"
	// SponsorsCountryOrRegionCodeBf. Burkina Faso.
	SponsorsCountryOrRegionCodeBf SponsorsCountryOrRegionCode = "BF"
	// SponsorsCountryOrRegionCodeBi. Burundi.
	SponsorsCountryOrRegionCodeBi SponsorsCountryOrRegionCode = "BI"
	// SponsorsCountryOrRegionCodeKh. Cambodia.
	SponsorsCountryOrRegionCodeKh SponsorsCountryOrRegionCode = "KH"
	// SponsorsCountryOrRegionCodeCm. Cameroon.
	SponsorsCountryOrRegionCodeCm SponsorsCountryOrRegionCode = "CM"
	// SponsorsCountryOrRegionCodeCa. Canada.
	SponsorsCountryOrRegionCodeCa SponsorsCountryOrRegionCode = "CA"
	// SponsorsCountryOrRegionCodeCv. Cape Verde.
	SponsorsCountryOrRegionCodeCv SponsorsCountryOrRegionCode = "CV"
	// SponsorsCountryOrRegionCodeKy. Cayman Islands.
	SponsorsCountryOrRegionCodeKy SponsorsCountryOrRegionCode = "KY"
	// SponsorsCountryOrRegionCodeCf. Central African Republic.
	SponsorsCountryOrRegionCodeCf SponsorsCountryOrRegionCode = "CF"
	// SponsorsCountryOrRegionCodeTd. Chad.
	SponsorsCountryOrRegionCodeTd SponsorsCountryOrRegionCode = "TD"
	// SponsorsCountryOrRegionCodeCl. Chile.
	SponsorsCountryOrRegionCodeCl SponsorsCountryOrRegionCode = "CL"
	// SponsorsCountryOrRegionCodeCn. China.
	SponsorsCountryOrRegionCodeCn SponsorsCountryOrRegionCode = "CN"
	// SponsorsCountryOrRegionCodeCx. Christmas Island.
	SponsorsCountryOrRegionCodeCx SponsorsCountryOrRegionCode = "CX"
	// SponsorsCountryOrRegionCodeCc. Cocos (Keeling) Islands.
	SponsorsCountryOrRegionCodeCc SponsorsCountryOrRegionCode = "CC"
	// SponsorsCountryOrRegionCodeCo. Colombia.
	SponsorsCountryOrRegionCodeCo SponsorsCountryOrRegionCode = "CO"
	// SponsorsCountryOrRegionCodeKm. Comoros.
	SponsorsCountryOrRegionCodeKm SponsorsCountryOrRegionCode = "KM"
	// SponsorsCountryOrRegionCodeCg. Congo (Brazzaville).
	SponsorsCountryOrRegionCodeCg SponsorsCountryOrRegionCode = "CG"
	// SponsorsCountryOrRegionCodeCd. Congo (Kinshasa).
	SponsorsCountryOrRegionCodeCd SponsorsCountryOrRegionCode = "CD"
	// SponsorsCountryOrRegionCodeCk. Cook Islands.
	SponsorsCountryOrRegionCodeCk SponsorsCountryOrRegionCode = "CK"
	// SponsorsCountryOrRegionCodeCr. Costa Rica.
	SponsorsCountryOrRegionCodeCr SponsorsCountryOrRegionCode = "CR"
	// SponsorsCountryOrRegionCodeCi. Côte d'Ivoire.
	SponsorsCountryOrRegionCodeCi SponsorsCountryOrRegionCode = "CI"
	// SponsorsCountryOrRegionCodeHr. Croatia.
	SponsorsCountryOrRegionCodeHr SponsorsCountryOrRegionCode = "HR"
	// SponsorsCountryOrRegionCodeCw. Curaçao.
	SponsorsCountryOrRegionCodeCw SponsorsCountryOrRegionCode = "CW"
	// SponsorsCountryOrRegionCodeCy. Cyprus.
	SponsorsCountryOrRegionCodeCy SponsorsCountryOrRegionCode = "CY"
	// SponsorsCountryOrRegionCodeCz. Czech Republic.
	SponsorsCountryOrRegionCodeCz SponsorsCountryOrRegionCode = "CZ"
	// SponsorsCountryOrRegionCodeDk. Denmark.
	SponsorsCountryOrRegionCodeDk SponsorsCountryOrRegionCode = "DK"
	// SponsorsCountryOrRegionCodeDj. Djibouti.
	SponsorsCountryOrRegionCodeDj SponsorsCountryOrRegionCode = "DJ"
	// SponsorsCountryOrRegionCodeDm. Dominica.
	SponsorsCountryOrRegionCodeDm SponsorsCountryOrRegionCode = "DM"
	// SponsorsCountryOrRegionCodeDo. Dominican Republic.
	SponsorsCountryOrRegionCodeDo SponsorsCountryOrRegionCode = "DO"
	// SponsorsCountryOrRegionCodeEc. Ecuador.
	SponsorsCountryOrRegionCodeEc SponsorsCountryOrRegionCode = "EC"
	// SponsorsCountryOrRegionCodeEg. Egypt.
	SponsorsCountryOrRegionCodeEg SponsorsCountryOrRegionCode = "EG"
	// SponsorsCountryOrRegionCodeSv. El Salvador.
	SponsorsCountryOrRegionCodeSv SponsorsCountryOrRegionCode = "SV"
	// SponsorsCountryOrRegionCodeGq. Equatorial Guinea.
	SponsorsCountryOrRegionCodeGq SponsorsCountryOrRegionCode = "GQ"
	// SponsorsCountryOrRegionCodeEr. Eritrea.
	SponsorsCountryOrRegionCodeEr SponsorsCountryOrRegionCode = "ER"
	// SponsorsCountryOrRegionCodeEe. Estonia.
	SponsorsCountryOrRegionCodeEe SponsorsCountryOrRegionCode = "EE"
	// SponsorsCountryOrRegionCodeEt. Ethiopia.
	SponsorsCountryOrRegionCodeEt SponsorsCountryOrRegionCode = "ET"
	// SponsorsCountryOrRegionCodeFk. Falkland Islands.
	SponsorsCountryOrRegionCodeFk SponsorsCountryOrRegionCode = "FK"
	// SponsorsCountryOrRegionCodeFo. Faroe Islands.
	SponsorsCountryOrRegionCodeFo SponsorsCountryOrRegionCode = "FO"
	// SponsorsCountryOrRegionCodeFj. Fiji.
	SponsorsCountryOrRegionCodeFj SponsorsCountryOrRegionCode = "FJ"
	// SponsorsCountryOrRegionCodeFi. Finland.
	SponsorsCountryOrRegionCodeFi SponsorsCountryOrRegionCode = "FI"
	// SponsorsCountryOrRegionCodeFr. France.
	SponsorsCountryOrRegionCodeFr SponsorsCountryOrRegionCode = "FR"
	// SponsorsCountryOrRegionCodeGf. French Guiana.
	SponsorsCountryOrRegionCodeGf SponsorsCountryOrRegionCode = "GF"
	// SponsorsCountryOrRegionCodePf. French Polynesia.
	SponsorsCountryOrRegionCodePf SponsorsCountryOrRegionCode = "PF"
	// SponsorsCountryOrRegionCodeTf. French Southern Lands.
	SponsorsCountryOrRegionCodeTf SponsorsCountryOrRegionCode = "TF"
	// SponsorsCountryOrRegionCodeGa. Gabon.
	SponsorsCountryOrRegionCodeGa SponsorsCountryOrRegionCode = "GA"
	// SponsorsCountryOrRegionCodeGm. Gambia.
	SponsorsCountryOrRegionCodeGm SponsorsCountryOrRegionCode = "GM"
	// SponsorsCountryOrRegionCodeGe. Georgia.
	SponsorsCountryOrRegionCodeGe SponsorsCountryOrRegionCode = "GE"
	// SponsorsCountryOrRegionCodeDe. Germany.
	SponsorsCountryOrRegionCodeDe SponsorsCountryOrRegionCode = "DE"
	// SponsorsCountryOrRegionCodeGh. Ghana.
	SponsorsCountryOrRegionCodeGh SponsorsCountryOrRegionCode = "GH"
	// SponsorsCountryOrRegionCodeGi. Gibraltar.
	SponsorsCountryOrRegionCodeGi SponsorsCountryOrRegionCode = "GI"
	// SponsorsCountryOrRegionCodeGr. Greece.
	SponsorsCountryOrRegionCodeGr SponsorsCountryOrRegionCode = "GR"
	// SponsorsCountryOrRegionCodeGl. Greenland.
	SponsorsCountryOrRegionCodeGl SponsorsCountryOrRegionCode = "GL"
	// SponsorsCountryOrRegionCodeGd. Grenada.
	SponsorsCountryOrRegionCodeGd SponsorsCountryOrRegionCode = "GD"
	// SponsorsCountryOrRegionCodeGp. Guadeloupe.
	SponsorsCountryOrRegionCodeGp SponsorsCountryOrRegionCode = "GP"
	// SponsorsCountryOrRegionCodeGu. Guam.
	SponsorsCountryOrRegionCodeGu SponsorsCountryOrRegionCode = "GU"
	// SponsorsCountryOrRegionCodeGt. Guatemala.
	SponsorsCountryOrRegionCodeGt SponsorsCountryOrRegionCode = "GT"
	// SponsorsCountryOrRegionCodeGg. Guernsey.
	SponsorsCountryOrRegionCodeGg SponsorsCountryOrRegionCode = "GG"
	// SponsorsCountryOrRegionCodeGn. Guinea.
	SponsorsCountryOrRegionCodeGn SponsorsCountryOrRegionCode = "GN"
	// SponsorsCountryOrRegionCodeGw. Guinea-Bissau.
	SponsorsCountryOrRegionCodeGw SponsorsCountryOrRegionCode = "GW"
	// SponsorsCountryOrRegionCodeGy. Guyana.
	SponsorsCountryOrRegionCodeGy SponsorsCountryOrRegionCode = "GY"
	// SponsorsCountryOrRegionCodeHt. Haiti.
	SponsorsCountryOrRegionCodeHt SponsorsCountryOrRegionCode = "HT"
	// SponsorsCountryOrRegionCodeHm. Heard and McDonald Islands.
	SponsorsCountryOrRegionCodeHm SponsorsCountryOrRegionCode = "HM"
	// SponsorsCountryOrRegionCodeHn. Honduras.
	SponsorsCountryOrRegionCodeHn SponsorsCountryOrRegionCode = "HN"
	// SponsorsCountryOrRegionCodeHk. Hong Kong.
	SponsorsCountryOrRegionCodeHk SponsorsCountryOrRegionCode = "HK"
	// SponsorsCountryOrRegionCodeHu. Hungary.
	SponsorsCountryOrRegionCodeHu SponsorsCountryOrRegionCode = "HU"
	// SponsorsCountryOrRegionCodeIs. Iceland.
	SponsorsCountryOrRegionCodeIs SponsorsCountryOrRegionCode = "IS"
	// SponsorsCountryOrRegionCodeIn. India.
	SponsorsCountryOrRegionCodeIn SponsorsCountryOrRegionCode = "IN"
	// SponsorsCountryOrRegionCodeID. Indonesia.
	SponsorsCountryOrRegionCodeID SponsorsCountryOrRegionCode = "ID"
	// SponsorsCountryOrRegionCodeIr. Iran.
	SponsorsCountryOrRegionCodeIr SponsorsCountryOrRegionCode = "IR"
	// SponsorsCountryOrRegionCodeIq. Iraq.
	SponsorsCountryOrRegionCodeIq SponsorsCountryOrRegionCode = "IQ"
	// SponsorsCountryOrRegionCodeIe. Ireland.
	SponsorsCountryOrRegionCodeIe SponsorsCountryOrRegionCode = "IE"
	// SponsorsCountryOrRegionCodeIm. Isle of Man.
	SponsorsCountryOrRegionCodeIm SponsorsCountryOrRegionCode = "IM"
	// SponsorsCountryOrRegionCodeIl. Israel.
	SponsorsCountryOrRegionCodeIl SponsorsCountryOrRegionCode = "IL"
	// SponsorsCountryOrRegionCodeIt. Italy.
	SponsorsCountryOrRegionCodeIt SponsorsCountryOrRegionCode = "IT"
	// SponsorsCountryOrRegionCodeJm. Jamaica.
	SponsorsCountryOrRegionCodeJm SponsorsCountryOrRegionCode = "JM"
	// SponsorsCountryOrRegionCodeJp. Japan.
	SponsorsCountryOrRegionCodeJp SponsorsCountryOrRegionCode = "JP"
	// SponsorsCountryOrRegionCodeJe. Jersey.
	SponsorsCountryOrRegionCodeJe SponsorsCountryOrRegionCode = "JE"
	// SponsorsCountryOrRegionCodeJo. Jordan.
	SponsorsCountryOrRegionCodeJo SponsorsCountryOrRegionCode = "JO"
	// SponsorsCountryOrRegionCodeKz. Kazakhstan.
	SponsorsCountryOrRegionCodeKz SponsorsCountryOrRegionCode = "KZ"
	// SponsorsCountryOrRegionCodeKe. Kenya.
	SponsorsCountryOrRegionCodeKe SponsorsCountryOrRegionCode = "KE"
	// SponsorsCountryOrRegionCodeKi. Kiribati.
	SponsorsCountryOrRegionCodeKi SponsorsCountryOrRegionCode = "KI"
	// SponsorsCountryOrRegionCodeKr. Korea, South.
	SponsorsCountryOrRegionCodeKr SponsorsCountryOrRegionCode = "KR"
	// SponsorsCountryOrRegionCodeKw. Kuwait.
	SponsorsCountryOrRegionCodeKw SponsorsCountryOrRegionCode = "KW"
	// SponsorsCountryOrRegionCodeKg. Kyrgyzstan.
	SponsorsCountryOrRegionCodeKg SponsorsCountryOrRegionCode = "KG"
	// SponsorsCountryOrRegionCodeLa. Laos.
	SponsorsCountryOrRegionCodeLa SponsorsCountryOrRegionCode = "LA"
	// SponsorsCountryOrRegionCodeLv. Latvia.
	SponsorsCountryOrRegionCodeLv SponsorsCountryOrRegionCode = "LV"
	// SponsorsCountryOrRegionCodeLb. Lebanon.
	SponsorsCountryOrRegionCodeLb SponsorsCountryOrRegionCode = "LB"
	// SponsorsCountryOrRegionCodeLs. Lesotho.
	SponsorsCountryOrRegionCodeLs SponsorsCountryOrRegionCode = "LS"
	// SponsorsCountryOrRegionCodeLr. Liberia.
	SponsorsCountryOrRegionCodeLr SponsorsCountryOrRegionCode = "LR"
	// SponsorsCountryOrRegionCodeLy. Libya.
	SponsorsCountryOrRegionCodeLy SponsorsCountryOrRegionCode = "LY"
	// SponsorsCountryOrRegionCodeLi. Liechtenstein.
	SponsorsCountryOrRegionCodeLi SponsorsCountryOrRegionCode = "LI"
	// SponsorsCountryOrRegionCodeLt. Lithuania.
	SponsorsCountryOrRegionCodeLt SponsorsCountryOrRegionCode = "LT"
	// SponsorsCountryOrRegionCodeLu. Luxembourg.
	SponsorsCountryOrRegionCodeLu SponsorsCountryOrRegionCode = "LU"
	// SponsorsCountryOrRegionCodeMo. Macau.
	SponsorsCountryOrRegionCodeMo SponsorsCountryOrRegionCode = "MO"
	// SponsorsCountryOrRegionCodeMk. Macedonia.
	SponsorsCountryOrRegionCodeMk SponsorsCountryOrRegionCode = "MK"
	// SponsorsCountryOrRegionCodeMg. Madagascar.
	SponsorsCountryOrRegionCodeMg SponsorsCountryOrRegionCode = "MG"
	// SponsorsCountryOrRegionCodeMw. Malawi.
	SponsorsCountryOrRegionCodeMw SponsorsCountryOrRegionCode = "MW"
	// SponsorsCountryOrRegionCodeMy. Malaysia.
	SponsorsCountryOrRegionCodeMy SponsorsCountryOrRegionCode = "MY"
	// SponsorsCountryOrRegionCodeMv. Maldives.
	SponsorsCountryOrRegionCodeMv SponsorsCountryOrRegionCode = "MV"
	// SponsorsCountryOrRegionCodeMl. Mali.
	SponsorsCountryOrRegionCodeMl SponsorsCountryOrRegionCode = "ML"
	// SponsorsCountryOrRegionCodeMt. Malta.
	SponsorsCountryOrRegionCodeMt SponsorsCountryOrRegionCode = "MT"
	// SponsorsCountryOrRegionCodeMh. Marshall Islands.
	SponsorsCountryOrRegionCodeMh SponsorsCountryOrRegionCode = "MH"
	// SponsorsCountryOrRegionCodeMq. Martinique.
	SponsorsCountryOrRegionCodeMq SponsorsCountryOrRegionCode = "MQ"
	// SponsorsCountryOrRegionCodeMr. Mauritania.
	SponsorsCountryOrRegionCodeMr SponsorsCountryOrRegionCode = "MR"
	// SponsorsCountryOrRegionCodeMu. Mauritius.
	SponsorsCountryOrRegionCodeMu SponsorsCountryOrRegionCode = "MU"
	// SponsorsCountryOrRegionCodeYt. Mayotte.
	SponsorsCountryOrRegionCodeYt SponsorsCountryOrRegionCode = "YT"
	// SponsorsCountryOrRegionCodeMx. Mexico.
	SponsorsCountryOrRegionCodeMx SponsorsCountryOrRegionCode = "MX"
	// SponsorsCountryOrRegionCodeFm. Micronesia.
	SponsorsCountryOrRegionCodeFm SponsorsCountryOrRegionCode = "FM"
	// SponsorsCountryOrRegionCodeMd. Moldova.
	SponsorsCountryOrRegionCodeMd SponsorsCountryOrRegionCode = "MD"
	// SponsorsCountryOrRegionCodeMc. Monaco.
	SponsorsCountryOrRegionCodeMc SponsorsCountryOrRegionCode = "MC"
	// SponsorsCountryOrRegionCodeMn. Mongolia.
	SponsorsCountryOrRegionCodeMn SponsorsCountryOrRegionCode = "MN"
	// SponsorsCountryOrRegionCodeMe. Montenegro.
	SponsorsCountryOrRegionCodeMe SponsorsCountryOrRegionCode = "ME"
	// SponsorsCountryOrRegionCodeMs. Montserrat.
	SponsorsCountryOrRegionCodeMs SponsorsCountryOrRegionCode = "MS"
	// SponsorsCountryOrRegionCodeMa. Morocco.
	SponsorsCountryOrRegionCodeMa SponsorsCountryOrRegionCode = "MA"
	// SponsorsCountryOrRegionCodeMz. Mozambique.
	SponsorsCountryOrRegionCodeMz SponsorsCountryOrRegionCode = "MZ"
	// SponsorsCountryOrRegionCodeMm. Myanmar.
	SponsorsCountryOrRegionCodeMm SponsorsCountryOrRegionCode = "MM"
	// SponsorsCountryOrRegionCodeNa. Namibia.
	SponsorsCountryOrRegionCodeNa SponsorsCountryOrRegionCode = "NA"
	// SponsorsCountryOrRegionCodeNr. Nauru.
	SponsorsCountryOrRegionCodeNr SponsorsCountryOrRegionCode = "NR"
	// SponsorsCountryOrRegionCodeNp. Nepal.
	SponsorsCountryOrRegionCodeNp SponsorsCountryOrRegionCode = "NP"
	// SponsorsCountryOrRegionCodeNl. Netherlands.
	SponsorsCountryOrRegionCodeNl SponsorsCountryOrRegionCode = "NL"
	// SponsorsCountryOrRegionCodeNc. New Caledonia.
	SponsorsCountryOrRegionCodeNc SponsorsCountryOrRegionCode = "NC"
	// SponsorsCountryOrRegionCodeNz. New Zealand.
	SponsorsCountryOrRegionCodeNz SponsorsCountryOrRegionCode = "NZ"
	// SponsorsCountryOrRegionCodeNi. Nicaragua.
	SponsorsCountryOrRegionCodeNi SponsorsCountryOrRegionCode = "NI"
	// SponsorsCountryOrRegionCodeNe. Niger.
	SponsorsCountryOrRegionCodeNe SponsorsCountryOrRegionCode = "NE"
	// SponsorsCountryOrRegionCodeNg. Nigeria.
	SponsorsCountryOrRegionCodeNg SponsorsCountryOrRegionCode = "NG"
	// SponsorsCountryOrRegionCodeNu. Niue.
	SponsorsCountryOrRegionCodeNu SponsorsCountryOrRegionCode = "NU"
	// SponsorsCountryOrRegionCodeNf. Norfolk Island.
	SponsorsCountryOrRegionCodeNf SponsorsCountryOrRegionCode = "NF"
	// SponsorsCountryOrRegionCodeMp. Northern Mariana Islands.
	SponsorsCountryOrRegionCodeMp SponsorsCountryOrRegionCode = "MP"
	// SponsorsCountryOrRegionCodeNo. Norway.
	SponsorsCountryOrRegionCodeNo SponsorsCountryOrRegionCode = "NO"
	// SponsorsCountryOrRegionCodeOm. Oman.
	SponsorsCountryOrRegionCodeOm SponsorsCountryOrRegionCode = "OM"
	// SponsorsCountryOrRegionCodePk. Pakistan.
	SponsorsCountryOrRegionCodePk SponsorsCountryOrRegionCode = "PK"
	// SponsorsCountryOrRegionCodePw. Palau.
	SponsorsCountryOrRegionCodePw SponsorsCountryOrRegionCode = "PW"
	// SponsorsCountryOrRegionCodePs. Palestine.
	SponsorsCountryOrRegionCodePs SponsorsCountryOrRegionCode = "PS"
	// SponsorsCountryOrRegionCodePa. Panama.
	SponsorsCountryOrRegionCodePa SponsorsCountryOrRegionCode = "PA"
	// SponsorsCountryOrRegionCodePg. Papua New Guinea.
	SponsorsCountryOrRegionCodePg SponsorsCountryOrRegionCode = "PG"
	// SponsorsCountryOrRegionCodePy. Paraguay.
	SponsorsCountryOrRegionCodePy SponsorsCountryOrRegionCode = "PY"
	// SponsorsCountryOrRegionCodePe. Peru.
	SponsorsCountryOrRegionCodePe SponsorsCountryOrRegionCode = "PE"
	// SponsorsCountryOrRegionCodePh. Philippines.
	SponsorsCountryOrRegionCodePh SponsorsCountryOrRegionCode = "PH"
	// SponsorsCountryOrRegionCodePn. Pitcairn.
	SponsorsCountryOrRegionCodePn SponsorsCountryOrRegionCode = "PN"
	// SponsorsCountryOrRegionCodePl. Poland.
	SponsorsCountryOrRegionCodePl SponsorsCountryOrRegionCode = "PL"
	// SponsorsCountryOrRegionCodePt. Portugal.
	SponsorsCountryOrRegionCodePt SponsorsCountryOrRegionCode = "PT"
	// SponsorsCountryOrRegionCodePr. Puerto Rico.
	SponsorsCountryOrRegionCodePr SponsorsCountryOrRegionCode = "PR"
	// SponsorsCountryOrRegionCodeQa. Qatar.
	SponsorsCountryOrRegionCodeQa SponsorsCountryOrRegionCode = "QA"
	// SponsorsCountryOrRegionCodeRe. Reunion.
	SponsorsCountryOrRegionCodeRe SponsorsCountryOrRegionCode = "RE"
	// SponsorsCountryOrRegionCodeRo. Romania.
	SponsorsCountryOrRegionCodeRo SponsorsCountryOrRegionCode = "RO"
	// SponsorsCountryOrRegionCodeRu. Russian Federation.
	SponsorsCountryOrRegionCodeRu SponsorsCountryOrRegionCode = "RU"
	// SponsorsCountryOrRegionCodeRw. Rwanda.
	SponsorsCountryOrRegionCodeRw SponsorsCountryOrRegionCode = "RW"
	// SponsorsCountryOrRegionCodeBl. Saint Barthélemy.
	SponsorsCountryOrRegionCodeBl SponsorsCountryOrRegionCode = "BL"
	// SponsorsCountryOrRegionCodeSh. Saint Helena.
	SponsorsCountryOrRegionCodeSh SponsorsCountryOrRegionCode = "SH"
	// SponsorsCountryOrRegionCodeKn. Saint Kitts and Nevis.
	SponsorsCountryOrRegionCodeKn SponsorsCountryOrRegionCode = "KN"
	// SponsorsCountryOrRegionCodeLc. Saint Lucia.
	SponsorsCountryOrRegionCodeLc SponsorsCountryOrRegionCode = "LC"
	// SponsorsCountryOrRegionCodeMf. Saint Martin (French part).
	SponsorsCountryOrRegionCodeMf SponsorsCountryOrRegionCode = "MF"
	// SponsorsCountryOrRegionCodePm. Saint Pierre and Miquelon.
	SponsorsCountryOrRegionCodePm SponsorsCountryOrRegionCode = "PM"
	// SponsorsCountryOrRegionCodeVc. Saint Vincent and the Grenadines.
	SponsorsCountryOrRegionCodeVc SponsorsCountryOrRegionCode = "VC"
	// SponsorsCountryOrRegionCodeWs. Samoa.
	SponsorsCountryOrRegionCodeWs SponsorsCountryOrRegionCode = "WS"
	// SponsorsCountryOrRegionCodeSm. San Marino.
	SponsorsCountryOrRegionCodeSm SponsorsCountryOrRegionCode = "SM"
	// SponsorsCountryOrRegionCodeSt. Sao Tome and Principe.
	SponsorsCountryOrRegionCodeSt SponsorsCountryOrRegionCode = "ST"
	// SponsorsCountryOrRegionCodeSa. Saudi Arabia.
	SponsorsCountryOrRegionCodeSa SponsorsCountryOrRegionCode = "SA"
	// SponsorsCountryOrRegionCodeSn. Senegal.
	SponsorsCountryOrRegionCodeSn SponsorsCountryOrRegionCode = "SN"
	// SponsorsCountryOrRegionCodeRs. Serbia.
	SponsorsCountryOrRegionCodeRs SponsorsCountryOrRegionCode = "RS"
	// SponsorsCountryOrRegionCodeSc. Seychelles.
	SponsorsCountryOrRegionCodeSc SponsorsCountryOrRegionCode = "SC"
	// SponsorsCountryOrRegionCodeSl. Sierra Leone.
	SponsorsCountryOrRegionCodeSl SponsorsCountryOrRegionCode = "SL"
	// SponsorsCountryOrRegionCodeSg. Singapore.
	SponsorsCountryOrRegionCodeSg SponsorsCountryOrRegionCode = "SG"
	// SponsorsCountryOrRegionCodeSx. Sint Maarten (Dutch part).
	SponsorsCountryOrRegionCodeSx SponsorsCountryOrRegionCode = "SX"
	// SponsorsCountryOrRegionCodeSk. Slovakia.
	SponsorsCountryOrRegionCodeSk SponsorsCountryOrRegionCode = "SK"
	// SponsorsCountryOrRegionCodeSi. Slovenia.
	SponsorsCountryOrRegionCodeSi SponsorsCountryOrRegionCode = "SI"
	// SponsorsCountryOrRegionCodeSb. Solomon Islands.
	SponsorsCountryOrRegionCodeSb SponsorsCountryOrRegionCode = "SB"
	// SponsorsCountryOrRegionCodeSo. Somalia.
	SponsorsCountryOrRegionCodeSo SponsorsCountryOrRegionCode = "SO"
	// SponsorsCountryOrRegionCodeZa. South Africa.
	SponsorsCountryOrRegionCodeZa SponsorsCountryOrRegionCode = "ZA"
	// SponsorsCountryOrRegionCodeGs. South Georgia and South Sandwich Islands.
	SponsorsCountryOrRegionCodeGs SponsorsCountryOrRegionCode = "GS"
	// SponsorsCountryOrRegionCodeSs. South Sudan.
	SponsorsCountryOrRegionCodeSs SponsorsCountryOrRegionCode = "SS"
	// SponsorsCountryOrRegionCodeEs. Spain.
	SponsorsCountryOrRegionCodeEs SponsorsCountryOrRegionCode = "ES"
	// SponsorsCountryOrRegionCodeLk. Sri Lanka.
	SponsorsCountryOrRegionCodeLk SponsorsCountryOrRegionCode = "LK"
	// SponsorsCountryOrRegionCodeSd. Sudan.
	SponsorsCountryOrRegionCodeSd SponsorsCountryOrRegionCode = "SD"
	// SponsorsCountryOrRegionCodeSr. Suriname.
	SponsorsCountryOrRegionCodeSr SponsorsCountryOrRegionCode = "SR"
	// SponsorsCountryOrRegionCodeSj. Svalbard and Jan Mayen Islands.
	SponsorsCountryOrRegionCodeSj SponsorsCountryOrRegionCode = "SJ"
	// SponsorsCountryOrRegionCodeSz. Swaziland.
	SponsorsCountryOrRegionCodeSz SponsorsCountryOrRegionCode = "SZ"
	// SponsorsCountryOrRegionCodeSe. Sweden.
	SponsorsCountryOrRegionCodeSe SponsorsCountryOrRegionCode = "SE"
	// SponsorsCountryOrRegionCodeCh. Switzerland.
	SponsorsCountryOrRegionCodeCh SponsorsCountryOrRegionCode = "CH"
	// SponsorsCountryOrRegionCodeTw. Taiwan.
	SponsorsCountryOrRegionCodeTw SponsorsCountryOrRegionCode = "TW"
	// SponsorsCountryOrRegionCodeTj. Tajikistan.
	SponsorsCountryOrRegionCodeTj SponsorsCountryOrRegionCode = "TJ"
	// SponsorsCountryOrRegionCodeTz. Tanzania.
	SponsorsCountryOrRegionCodeTz SponsorsCountryOrRegionCode = "TZ"
	// SponsorsCountryOrRegionCodeTh. Thailand.
	SponsorsCountryOrRegionCodeTh SponsorsCountryOrRegionCode = "TH"
	// SponsorsCountryOrRegionCodeTl. Timor-Leste.
	SponsorsCountryOrRegionCodeTl SponsorsCountryOrRegionCode = "TL"
	// SponsorsCountryOrRegionCodeTg. Togo.
	SponsorsCountryOrRegionCodeTg SponsorsCountryOrRegionCode = "TG"
	// SponsorsCountryOrRegionCodeTk. Tokelau.
	SponsorsCountryOrRegionCodeTk SponsorsCountryOrRegionCode = "TK"
	// SponsorsCountryOrRegionCodeTo. Tonga.
	SponsorsCountryOrRegionCodeTo SponsorsCountryOrRegionCode = "TO"
	// SponsorsCountryOrRegionCodeTt. Trinidad and Tobago.
	SponsorsCountryOrRegionCodeTt SponsorsCountryOrRegionCode = "TT"
	// SponsorsCountryOrRegionCodeTn. Tunisia.
	SponsorsCountryOrRegionCodeTn SponsorsCountryOrRegionCode = "TN"
	// SponsorsCountryOrRegionCodeTr. Türkiye.
	SponsorsCountryOrRegionCodeTr SponsorsCountryOrRegionCode = "TR"
	// SponsorsCountryOrRegionCodeTm. Turkmenistan.
	SponsorsCountryOrRegionCodeTm SponsorsCountryOrRegionCode = "TM"
	// SponsorsCountryOrRegionCodeTc. Turks and Caicos Islands.
	SponsorsCountryOrRegionCodeTc SponsorsCountryOrRegionCode = "TC"
	// SponsorsCountryOrRegionCodeTv. Tuvalu.
	SponsorsCountryOrRegionCodeTv SponsorsCountryOrRegionCode = "TV"
	// SponsorsCountryOrRegionCodeUg. Uganda.
	SponsorsCountryOrRegionCodeUg SponsorsCountryOrRegionCode = "UG"
	// SponsorsCountryOrRegionCodeUa. Ukraine.
	SponsorsCountryOrRegionCodeUa SponsorsCountryOrRegionCode = "UA"
	// SponsorsCountryOrRegionCodeAe. United Arab Emirates.
	SponsorsCountryOrRegionCodeAe SponsorsCountryOrRegionCode = "AE"
	// SponsorsCountryOrRegionCodeGb. United Kingdom.
	SponsorsCountryOrRegionCodeGb SponsorsCountryOrRegionCode = "GB"
	// SponsorsCountryOrRegionCodeUm. United States Minor Outlying Islands.
	SponsorsCountryOrRegionCodeUm SponsorsCountryOrRegionCode = "UM"
	// SponsorsCountryOrRegionCodeUs. United States of America.
	SponsorsCountryOrRegionCodeUs SponsorsCountryOrRegionCode = "US"
	// SponsorsCountryOrRegionCodeUy. Uruguay.
	SponsorsCountryOrRegionCodeUy SponsorsCountryOrRegionCode = "UY"
	// SponsorsCountryOrRegionCodeUz. Uzbekistan.
	SponsorsCountryOrRegionCodeUz SponsorsCountryOrRegionCode = "UZ"
	// SponsorsCountryOrRegionCodeVu. Vanuatu.
	SponsorsCountryOrRegionCodeVu SponsorsCountryOrRegionCode = "VU"
	// SponsorsCountryOrRegionCodeVa. Vatican City.
	SponsorsCountryOrRegionCodeVa SponsorsCountryOrRegionCode = "VA"
	// SponsorsCountryOrRegionCodeVe. Venezuela.
	SponsorsCountryOrRegionCodeVe SponsorsCountryOrRegionCode = "VE"
	// SponsorsCountryOrRegionCodeVn. Vietnam.
	SponsorsCountryOrRegionCodeVn SponsorsCountryOrRegionCode = "VN"
	// SponsorsCountryOrRegionCodeVg. Virgin Islands, British.
	SponsorsCountryOrRegionCodeVg SponsorsCountryOrRegionCode = "VG"
	// SponsorsCountryOrRegionCodeVi. Virgin Islands, U.S.
	SponsorsCountryOrRegionCodeVi SponsorsCountryOrRegionCode = "VI"
	// SponsorsCountryOrRegionCodeWf. Wallis and Futuna Islands.
	SponsorsCountryOrRegionCodeWf SponsorsCountryOrRegionCode = "WF"
	// SponsorsCountryOrRegionCodeEh. Western Sahara.
	SponsorsCountryOrRegionCodeEh SponsorsCountryOrRegionCode = "EH"
	// SponsorsCountryOrRegionCodeYe. Yemen.
	SponsorsCountryOrRegionCodeYe SponsorsCountryOrRegionCode = "YE"
	// SponsorsCountryOrRegionCodeZm. Zambia.
	SponsorsCountryOrRegionCodeZm SponsorsCountryOrRegionCode = "ZM"
	// SponsorsCountryOrRegionCodeZw. Zimbabwe.
	SponsorsCountryOrRegionCodeZw SponsorsCountryOrRegionCode = "ZW"
)

type SponsorsGoalKind

type SponsorsGoalKind string

SponsorsGoalKind represents the different kinds of goals a GitHub Sponsors member can have.

const (
	// SponsorsGoalKindTotalSponsorsCount. The goal is about reaching a certain number of sponsors.
	SponsorsGoalKindTotalSponsorsCount SponsorsGoalKind = "TOTAL_SPONSORS_COUNT"
	// SponsorsGoalKindMonthlySponsorshipAmount. The goal is about getting a certain amount in USD from sponsorships each month.
	SponsorsGoalKindMonthlySponsorshipAmount SponsorsGoalKind = "MONTHLY_SPONSORSHIP_AMOUNT"
)

type SponsorsListingFeaturedItemFeatureableType

type SponsorsListingFeaturedItemFeatureableType string

SponsorsListingFeaturedItemFeatureableType represents the different kinds of records that can be featured on a GitHub Sponsors profile page.

const (
	// SponsorsListingFeaturedItemFeatureableTypeRepository. A repository owned by the user or organization with the GitHub Sponsors profile.
	SponsorsListingFeaturedItemFeatureableTypeRepository SponsorsListingFeaturedItemFeatureableType = "REPOSITORY"
	// SponsorsListingFeaturedItemFeatureableTypeUser. A user who belongs to the organization with the GitHub Sponsors profile.
	SponsorsListingFeaturedItemFeatureableTypeUser SponsorsListingFeaturedItemFeatureableType = "USER"
)

type SponsorsTierOrder

type SponsorsTierOrder struct {
	// The field to order tiers by.
	Field SponsorsTierOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

SponsorsTierOrder represents ordering options for Sponsors tiers connections.

type SponsorsTierOrderField

type SponsorsTierOrderField string

SponsorsTierOrderField represents properties by which Sponsors tiers connections can be ordered.

const (
	// SponsorsTierOrderFieldCreatedAt. Order tiers by creation time.
	SponsorsTierOrderFieldCreatedAt SponsorsTierOrderField = "CREATED_AT"
	// SponsorsTierOrderFieldMonthlyPriceInCents. Order tiers by their monthly price in cents.
	SponsorsTierOrderFieldMonthlyPriceInCents SponsorsTierOrderField = "MONTHLY_PRICE_IN_CENTS"
)

type SponsorshipNewsletterOrder

type SponsorshipNewsletterOrder struct {
	// The field to order sponsorship newsletters by.
	Field SponsorshipNewsletterOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

SponsorshipNewsletterOrder represents ordering options for sponsorship newsletter connections.

type SponsorshipNewsletterOrderField

type SponsorshipNewsletterOrderField string

SponsorshipNewsletterOrderField represents properties by which sponsorship update connections can be ordered.

const (
	// SponsorshipNewsletterOrderFieldCreatedAt. Order sponsorship newsletters by when they were created.
	SponsorshipNewsletterOrderFieldCreatedAt SponsorshipNewsletterOrderField = "CREATED_AT"
)

type SponsorshipOrder

type SponsorshipOrder struct {
	// The field to order sponsorship by.
	Field SponsorshipOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

SponsorshipOrder represents ordering options for sponsorship connections.

type SponsorshipOrderField

type SponsorshipOrderField string

SponsorshipOrderField represents properties by which sponsorship connections can be ordered.

const (
	// SponsorshipOrderFieldCreatedAt. Order sponsorship by creation time.
	SponsorshipOrderFieldCreatedAt SponsorshipOrderField = "CREATED_AT"
)

type SponsorshipPrivacy

type SponsorshipPrivacy string

SponsorshipPrivacy represents the privacy of a sponsorship.

const (
	// SponsorshipPrivacyPublic. Public.
	SponsorshipPrivacyPublic SponsorshipPrivacy = "PUBLIC"
	// SponsorshipPrivacyPrivate. Private.
	SponsorshipPrivacyPrivate SponsorshipPrivacy = "PRIVATE"
)

type SquashMergeCommitMessage

type SquashMergeCommitMessage string

SquashMergeCommitMessage represents the possible default commit messages for squash merges.

const (
	// SquashMergeCommitMessagePrBody. Default to the pull request's body.
	SquashMergeCommitMessagePrBody SquashMergeCommitMessage = "PR_BODY"
	// SquashMergeCommitMessageCommitMessages. Default to the branch's commit messages.
	SquashMergeCommitMessageCommitMessages SquashMergeCommitMessage = "COMMIT_MESSAGES"
	// SquashMergeCommitMessageBlank. Default to a blank commit message.
	SquashMergeCommitMessageBlank SquashMergeCommitMessage = "BLANK"
)

type SquashMergeCommitTitle

type SquashMergeCommitTitle string

SquashMergeCommitTitle represents the possible default commit titles for squash merges.

const (
	// SquashMergeCommitTitlePrTitle. Default to the pull request's title.
	SquashMergeCommitTitlePrTitle SquashMergeCommitTitle = "PR_TITLE"
	// SquashMergeCommitTitleCommitOrPrTitle. Default to the commit's title (if only one commit) or the pull request's title (when more than one commit).
	SquashMergeCommitTitleCommitOrPrTitle SquashMergeCommitTitle = "COMMIT_OR_PR_TITLE"
)

type StarOrder

type StarOrder struct {
	// The field in which to order nodes by.
	Field StarOrderField "json:\"field\""
	// The direction in which to order nodes.
	Direction OrderDirection "json:\"direction\""
}

StarOrder represents ways in which star connections can be ordered.

type StarOrderField

type StarOrderField string

StarOrderField represents properties by which star connections can be ordered.

const (
	// StarOrderFieldStarredAt. Allows ordering a list of stars by when they were created.
	StarOrderFieldStarredAt StarOrderField = "STARRED_AT"
)

type StartOrganizationMigrationInput

type StartOrganizationMigrationInput struct {
	// The URL of the organization to migrate.
	SourceOrgURL URI "json:\"sourceOrgUrl\""
	// The name of the target organization.
	TargetOrgName string "json:\"targetOrgName\""
	// The ID of the enterprise the target organization belongs to.
	TargetEnterpriseID ID "json:\"targetEnterpriseId\""
	// The migration source access token.
	SourceAccessToken string "json:\"sourceAccessToken\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

StartOrganizationMigrationInput is an autogenerated input type of StartOrganizationMigration.

type StartRepositoryMigrationInput

type StartRepositoryMigrationInput struct {
	// The ID of the migration source.
	SourceID ID "json:\"sourceId\""
	// The ID of the organization that will own the imported repository.
	OwnerID ID "json:\"ownerId\""
	// The URL of the source repository.
	SourceRepositoryURL *URI "json:\"sourceRepositoryUrl,omitempty\""
	// The name of the imported repository.
	RepositoryName string "json:\"repositoryName\""
	// Whether to continue the migration on error. Defaults to `true`.
	ContinueOnError *bool "json:\"continueOnError,omitempty\""
	// The signed URL to access the user-uploaded git archive.
	GitArchiveURL *string "json:\"gitArchiveUrl,omitempty\""
	// The signed URL to access the user-uploaded metadata archive.
	MetadataArchiveURL *string "json:\"metadataArchiveUrl,omitempty\""
	// The migration source access token.
	AccessToken *string "json:\"accessToken,omitempty\""
	// The GitHub personal access token of the user importing to the target repository.
	GitHubPat *string "json:\"githubPat,omitempty\""
	// Whether to skip migrating releases for the repository.
	SkipReleases *bool "json:\"skipReleases,omitempty\""
	// The visibility of the imported repository.
	TargetRepoVisibility *string "json:\"targetRepoVisibility,omitempty\""
	// Whether to lock the source repository.
	LockSource *bool "json:\"lockSource,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

StartRepositoryMigrationInput is an autogenerated input type of StartRepositoryMigration.

type StatusCheckConfigurationInput

type StatusCheckConfigurationInput struct {
	// The status check context name that must be present on the commit.
	Context string "json:\"context\""
	// The optional integration ID that this status check must originate from.
	IntegrationID *int "json:\"integrationId,omitempty\""
}

StatusCheckConfigurationInput represents required status check.

type StatusState

type StatusState string

StatusState represents the possible commit status states.

const (
	// StatusStateExpected. Status is expected.
	StatusStateExpected StatusState = "EXPECTED"
	// StatusStateError. Status is errored.
	StatusStateError StatusState = "ERROR"
	// StatusStateFailure. Status is failing.
	StatusStateFailure StatusState = "FAILURE"
	// StatusStatePending. Status is pending.
	StatusStatePending StatusState = "PENDING"
	// StatusStateSuccess. Status is successful.
	StatusStateSuccess StatusState = "SUCCESS"
)

type SubmitPullRequestReviewInput

type SubmitPullRequestReviewInput struct {
	// The Pull Request ID to submit any pending reviews.
	PullRequestID *ID "json:\"pullRequestId,omitempty\""
	// The Pull Request Review ID to submit.
	PullRequestReviewID *ID "json:\"pullRequestReviewId,omitempty\""
	// The event to send to the Pull Request Review.
	Event PullRequestReviewEvent "json:\"event\""
	// The text field to set on the Pull Request Review.
	Body *string "json:\"body,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

SubmitPullRequestReviewInput is an autogenerated input type of SubmitPullRequestReview.

type SubscriptionState

type SubscriptionState string

SubscriptionState represents the possible states of a subscription.

const (
	// SubscriptionStateUnsubscribed. The User is only notified when participating or @mentioned.
	SubscriptionStateUnsubscribed SubscriptionState = "UNSUBSCRIBED"
	// SubscriptionStateSubscribed. The User is notified of all conversations.
	SubscriptionStateSubscribed SubscriptionState = "SUBSCRIBED"
	// SubscriptionStateIgnored. The User is never notified.
	SubscriptionStateIgnored SubscriptionState = "IGNORED"
)

type TagNamePatternParametersInput

type TagNamePatternParametersInput struct {
	// How this rule will appear to users.
	Name *string "json:\"name,omitempty\""
	// If true, the rule will fail if the pattern matches.
	Negate *bool "json:\"negate,omitempty\""
	// The operator to use for matching.
	Operator string "json:\"operator\""
	// The pattern to match with.
	Pattern string "json:\"pattern\""
}

TagNamePatternParametersInput represents parameters to be used for the tag_name_pattern rule.

type TeamDiscussionCommentOrder

type TeamDiscussionCommentOrder struct {
	// The field by which to order nodes.
	Field TeamDiscussionCommentOrderField "json:\"field\""
	// The direction in which to order nodes.
	Direction OrderDirection "json:\"direction\""
}

TeamDiscussionCommentOrder represents ways in which team discussion comment connections can be ordered.

type TeamDiscussionCommentOrderField

type TeamDiscussionCommentOrderField string

TeamDiscussionCommentOrderField represents properties by which team discussion comment connections can be ordered.

const (
	// TeamDiscussionCommentOrderFieldNumber. Allows sequential ordering of team discussion comments (which is equivalent to chronological ordering).
	TeamDiscussionCommentOrderFieldNumber TeamDiscussionCommentOrderField = "NUMBER"
)

type TeamDiscussionOrder

type TeamDiscussionOrder struct {
	// The field by which to order nodes.
	Field TeamDiscussionOrderField "json:\"field\""
	// The direction in which to order nodes.
	Direction OrderDirection "json:\"direction\""
}

TeamDiscussionOrder represents ways in which team discussion connections can be ordered.

type TeamDiscussionOrderField

type TeamDiscussionOrderField string

TeamDiscussionOrderField represents properties by which team discussion connections can be ordered.

const (
	// TeamDiscussionOrderFieldCreatedAt. Allows chronological ordering of team discussions.
	TeamDiscussionOrderFieldCreatedAt TeamDiscussionOrderField = "CREATED_AT"
)

type TeamMemberOrder

type TeamMemberOrder struct {
	// The field to order team members by.
	Field TeamMemberOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

TeamMemberOrder represents ordering options for team member connections.

type TeamMemberOrderField

type TeamMemberOrderField string

TeamMemberOrderField represents properties by which team member connections can be ordered.

const (
	// TeamMemberOrderFieldLogin. Order team members by login.
	TeamMemberOrderFieldLogin TeamMemberOrderField = "LOGIN"
	// TeamMemberOrderFieldCreatedAt. Order team members by creation time.
	TeamMemberOrderFieldCreatedAt TeamMemberOrderField = "CREATED_AT"
)

type TeamMemberRole

type TeamMemberRole string

TeamMemberRole represents the possible team member roles; either 'maintainer' or 'member'.

const (
	// TeamMemberRoleMaintainer. A team maintainer has permission to add and remove team members.
	TeamMemberRoleMaintainer TeamMemberRole = "MAINTAINER"
	// TeamMemberRoleMember. A team member has no administrative permissions on the team.
	TeamMemberRoleMember TeamMemberRole = "MEMBER"
)

type TeamMembershipType

type TeamMembershipType string

TeamMembershipType represents defines which types of team members are included in the returned list. Can be one of IMMEDIATE, CHILD_TEAM or ALL.

const (
	// TeamMembershipTypeImmediate. Includes only immediate members of the team.
	TeamMembershipTypeImmediate TeamMembershipType = "IMMEDIATE"
	// TeamMembershipTypeChildTeam. Includes only child team members for the team.
	TeamMembershipTypeChildTeam TeamMembershipType = "CHILD_TEAM"
	// TeamMembershipTypeAll. Includes immediate and child team members for the team.
	TeamMembershipTypeAll TeamMembershipType = "ALL"
)

type TeamNotificationSetting

type TeamNotificationSetting string

TeamNotificationSetting represents the possible team notification values.

const (
	// TeamNotificationSettingNotificationsEnabled. Everyone will receive notifications when the team is @mentioned.
	TeamNotificationSettingNotificationsEnabled TeamNotificationSetting = "NOTIFICATIONS_ENABLED"
	// TeamNotificationSettingNotificationsDisabled. No one will receive notifications.
	TeamNotificationSettingNotificationsDisabled TeamNotificationSetting = "NOTIFICATIONS_DISABLED"
)

type TeamOrder

type TeamOrder struct {
	// The field in which to order nodes by.
	Field TeamOrderField "json:\"field\""
	// The direction in which to order nodes.
	Direction OrderDirection "json:\"direction\""
}

TeamOrder represents ways in which team connections can be ordered.

type TeamOrderField

type TeamOrderField string

TeamOrderField represents properties by which team connections can be ordered.

const (
	// TeamOrderFieldName. Allows ordering a list of teams by name.
	TeamOrderFieldName TeamOrderField = "NAME"
)

type TeamPrivacy

type TeamPrivacy string

TeamPrivacy represents the possible team privacy values.

const (
	// TeamPrivacySecret. A secret team can only be seen by its members.
	TeamPrivacySecret TeamPrivacy = "SECRET"
	// TeamPrivacyVisible. A visible team can be seen and @mentioned by every member of the organization.
	TeamPrivacyVisible TeamPrivacy = "VISIBLE"
)

type TeamRepositoryOrder

type TeamRepositoryOrder struct {
	// The field to order repositories by.
	Field TeamRepositoryOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

TeamRepositoryOrder represents ordering options for team repository connections.

type TeamRepositoryOrderField

type TeamRepositoryOrderField string

TeamRepositoryOrderField represents properties by which team repository connections can be ordered.

const (
	// TeamRepositoryOrderFieldCreatedAt. Order repositories by creation time.
	TeamRepositoryOrderFieldCreatedAt TeamRepositoryOrderField = "CREATED_AT"
	// TeamRepositoryOrderFieldUpdatedAt. Order repositories by update time.
	TeamRepositoryOrderFieldUpdatedAt TeamRepositoryOrderField = "UPDATED_AT"
	// TeamRepositoryOrderFieldPushedAt. Order repositories by push time.
	TeamRepositoryOrderFieldPushedAt TeamRepositoryOrderField = "PUSHED_AT"
	// TeamRepositoryOrderFieldName. Order repositories by name.
	TeamRepositoryOrderFieldName TeamRepositoryOrderField = "NAME"
	// TeamRepositoryOrderFieldPermission. Order repositories by permission.
	TeamRepositoryOrderFieldPermission TeamRepositoryOrderField = "PERMISSION"
	// TeamRepositoryOrderFieldStargazers. Order repositories by number of stargazers.
	TeamRepositoryOrderFieldStargazers TeamRepositoryOrderField = "STARGAZERS"
)

type TeamRole

type TeamRole string

TeamRole represents the role of a user on a team.

const (
	// TeamRoleAdmin. User has admin rights on the team.
	TeamRoleAdmin TeamRole = "ADMIN"
	// TeamRoleMember. User is a member of the team.
	TeamRoleMember TeamRole = "MEMBER"
)

type ThreadSubscriptionFormAction

type ThreadSubscriptionFormAction string

ThreadSubscriptionFormAction represents the possible states of a thread subscription form action.

const (
	// ThreadSubscriptionFormActionNone. The User cannot subscribe or unsubscribe to the thread.
	ThreadSubscriptionFormActionNone ThreadSubscriptionFormAction = "NONE"
	// ThreadSubscriptionFormActionSubscribe. The User can subscribe to the thread.
	ThreadSubscriptionFormActionSubscribe ThreadSubscriptionFormAction = "SUBSCRIBE"
	// ThreadSubscriptionFormActionUnsubscribe. The User can unsubscribe to the thread.
	ThreadSubscriptionFormActionUnsubscribe ThreadSubscriptionFormAction = "UNSUBSCRIBE"
)

type ThreadSubscriptionState

type ThreadSubscriptionState string

ThreadSubscriptionState represents the possible states of a subscription.

const (
	// ThreadSubscriptionStateUnavailable. The subscription status is currently unavailable.
	ThreadSubscriptionStateUnavailable ThreadSubscriptionState = "UNAVAILABLE"
	// ThreadSubscriptionStateDisabled. The subscription status is currently disabled.
	ThreadSubscriptionStateDisabled ThreadSubscriptionState = "DISABLED"
	// ThreadSubscriptionStateIgnoringList. The User is never notified because they are ignoring the list.
	ThreadSubscriptionStateIgnoringList ThreadSubscriptionState = "IGNORING_LIST"
	// ThreadSubscriptionStateSubscribedToThreadEvents. The User is notified because they chose custom settings for this thread.
	ThreadSubscriptionStateSubscribedToThreadEvents ThreadSubscriptionState = "SUBSCRIBED_TO_THREAD_EVENTS"
	// ThreadSubscriptionStateIgnoringThread. The User is never notified because they are ignoring the thread.
	ThreadSubscriptionStateIgnoringThread ThreadSubscriptionState = "IGNORING_THREAD"
	// ThreadSubscriptionStateSubscribedToList. The User is notified becuase they are watching the list.
	ThreadSubscriptionStateSubscribedToList ThreadSubscriptionState = "SUBSCRIBED_TO_LIST"
	// ThreadSubscriptionStateSubscribedToThreadType. The User is notified because they chose custom settings for this thread.
	ThreadSubscriptionStateSubscribedToThreadType ThreadSubscriptionState = "SUBSCRIBED_TO_THREAD_TYPE"
	// ThreadSubscriptionStateSubscribedToThread. The User is notified because they are subscribed to the thread.
	ThreadSubscriptionStateSubscribedToThread ThreadSubscriptionState = "SUBSCRIBED_TO_THREAD"
	// ThreadSubscriptionStateNone. The User is not recieving notifications from this thread.
	ThreadSubscriptionStateNone ThreadSubscriptionState = "NONE"
)

type TopicSuggestionDeclineReason

type TopicSuggestionDeclineReason string

TopicSuggestionDeclineReason represents reason that the suggested topic is declined.

const (
	// TopicSuggestionDeclineReasonNotRelevant. The suggested topic is not relevant to the repository.
	TopicSuggestionDeclineReasonNotRelevant TopicSuggestionDeclineReason = "NOT_RELEVANT"
	// TopicSuggestionDeclineReasonTooSpecific. The suggested topic is too specific for the repository (e.g. #ruby-on-rails-version-4-2-1).
	TopicSuggestionDeclineReasonTooSpecific TopicSuggestionDeclineReason = "TOO_SPECIFIC"
	// TopicSuggestionDeclineReasonPersonalPreference. The viewer does not like the suggested topic.
	TopicSuggestionDeclineReasonPersonalPreference TopicSuggestionDeclineReason = "PERSONAL_PREFERENCE"
	// TopicSuggestionDeclineReasonTooGeneral. The suggested topic is too general for the repository.
	TopicSuggestionDeclineReasonTooGeneral TopicSuggestionDeclineReason = "TOO_GENERAL"
)

type TrackedIssueStates

type TrackedIssueStates string

TrackedIssueStates represents the possible states of a tracked issue.

const (
	// TrackedIssueStatesOpen. The tracked issue is open.
	TrackedIssueStatesOpen TrackedIssueStates = "OPEN"
	// TrackedIssueStatesClosed. The tracked issue is closed.
	TrackedIssueStatesClosed TrackedIssueStates = "CLOSED"
)

type TransferEnterpriseOrganizationInput

type TransferEnterpriseOrganizationInput struct {
	// The ID of the organization to transfer.
	OrganizationID ID "json:\"organizationId\""
	// The ID of the enterprise where the organization should be transferred.
	DestinationEnterpriseID ID "json:\"destinationEnterpriseId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

TransferEnterpriseOrganizationInput is an autogenerated input type of TransferEnterpriseOrganization.

type TransferIssueInput

type TransferIssueInput struct {
	// The Node ID of the issue to be transferred.
	IssueID ID "json:\"issueId\""
	// The Node ID of the repository the issue should be transferred to.
	RepositoryID ID "json:\"repositoryId\""
	// Whether to create labels if they don't exist in the target repository (matched by name).
	CreateLabelsIfMissing *bool "json:\"createLabelsIfMissing,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

TransferIssueInput is an autogenerated input type of TransferIssue.

type URI

type URI struct {
	S string
}

URI represents a GraphQL scalar. Use as the type for variables values in queries/mutations to ensure the variable is declared as URI in GraphQL as expected by the GitHub API.

URI is an RFC 3986, RFC 3987, and RFC 6570 (level 4) compliant URI string.

func (URI) MarshalText

func (u URI) MarshalText() ([]byte, error)

func (*URI) UnmarshalText

func (u *URI) UnmarshalText(b []byte) error

type UnarchiveProjectV2ItemInput

type UnarchiveProjectV2ItemInput struct {
	// The ID of the Project to archive the item from.
	ProjectID ID "json:\"projectId\""
	// The ID of the ProjectV2Item to unarchive.
	ItemID ID "json:\"itemId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnarchiveProjectV2ItemInput is an autogenerated input type of UnarchiveProjectV2Item.

type UnarchiveRepositoryInput

type UnarchiveRepositoryInput struct {
	// The ID of the repository to unarchive.
	RepositoryID ID "json:\"repositoryId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnarchiveRepositoryInput is an autogenerated input type of UnarchiveRepository.

type UnfollowOrganizationInput

type UnfollowOrganizationInput struct {
	// ID of the organization to unfollow.
	OrganizationID ID "json:\"organizationId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnfollowOrganizationInput is an autogenerated input type of UnfollowOrganization.

type UnfollowUserInput

type UnfollowUserInput struct {
	// ID of the user to unfollow.
	UserID ID "json:\"userId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnfollowUserInput is an autogenerated input type of UnfollowUser.

type UnlinkProjectV2FromRepositoryInput

type UnlinkProjectV2FromRepositoryInput struct {
	// The ID of the project to unlink from the repository.
	ProjectID ID "json:\"projectId\""
	// The ID of the repository to unlink from the project.
	RepositoryID ID "json:\"repositoryId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnlinkProjectV2FromRepositoryInput is an autogenerated input type of UnlinkProjectV2FromRepository.

type UnlinkProjectV2FromTeamInput

type UnlinkProjectV2FromTeamInput struct {
	// The ID of the project to unlink from the team.
	ProjectID ID "json:\"projectId\""
	// The ID of the team to unlink from the project.
	TeamID ID "json:\"teamId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnlinkProjectV2FromTeamInput is an autogenerated input type of UnlinkProjectV2FromTeam.

type UnlinkRepositoryFromProjectInput

type UnlinkRepositoryFromProjectInput struct {
	// The ID of the Project linked to the Repository.
	ProjectID ID "json:\"projectId\""
	// The ID of the Repository linked to the Project.
	RepositoryID ID "json:\"repositoryId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnlinkRepositoryFromProjectInput is an autogenerated input type of UnlinkRepositoryFromProject.

type UnlockLockableInput

type UnlockLockableInput struct {
	// ID of the item to be unlocked.
	LockableID ID "json:\"lockableId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnlockLockableInput is an autogenerated input type of UnlockLockable.

type UnmarkDiscussionCommentAsAnswerInput

type UnmarkDiscussionCommentAsAnswerInput struct {
	// The Node ID of the discussion comment to unmark as an answer.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnmarkDiscussionCommentAsAnswerInput is an autogenerated input type of UnmarkDiscussionCommentAsAnswer.

type UnmarkFileAsViewedInput

type UnmarkFileAsViewedInput struct {
	// The Node ID of the pull request.
	PullRequestID ID "json:\"pullRequestId\""
	// The path of the file to mark as unviewed.
	Path string "json:\"path\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnmarkFileAsViewedInput is an autogenerated input type of UnmarkFileAsViewed.

type UnmarkIssueAsDuplicateInput

type UnmarkIssueAsDuplicateInput struct {
	// ID of the issue or pull request currently marked as a duplicate.
	DuplicateID ID "json:\"duplicateId\""
	// ID of the issue or pull request currently considered canonical/authoritative/original.
	CanonicalID ID "json:\"canonicalId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnmarkIssueAsDuplicateInput is an autogenerated input type of UnmarkIssueAsDuplicate.

type UnmarkProjectV2AsTemplateInput

type UnmarkProjectV2AsTemplateInput struct {
	// The ID of the Project to unmark as a template.
	ProjectID ID "json:\"projectId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnmarkProjectV2AsTemplateInput is an autogenerated input type of UnmarkProjectV2AsTemplate.

type UnminimizeCommentInput

type UnminimizeCommentInput struct {
	// The Node ID of the subject to modify.
	SubjectID ID "json:\"subjectId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnminimizeCommentInput is an autogenerated input type of UnminimizeComment.

type UnpinIssueInput

type UnpinIssueInput struct {
	// The ID of the issue to be unpinned.
	IssueID ID "json:\"issueId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnpinIssueInput is an autogenerated input type of UnpinIssue.

type UnresolveReviewThreadInput

type UnresolveReviewThreadInput struct {
	// The ID of the thread to unresolve.
	ThreadID ID "json:\"threadId\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UnresolveReviewThreadInput is an autogenerated input type of UnresolveReviewThread.

type UpdateBranchProtectionRuleInput

type UpdateBranchProtectionRuleInput struct {
	// The global relay id of the branch protection rule to be updated.
	BranchProtectionRuleID ID "json:\"branchProtectionRuleId\""
	// The glob-like pattern used to determine matching branches.
	Pattern *string "json:\"pattern,omitempty\""
	// Are approving reviews required to update matching branches.
	RequiresApprovingReviews *bool "json:\"requiresApprovingReviews,omitempty\""
	// Number of approving reviews required to update matching branches.
	RequiredApprovingReviewCount *int "json:\"requiredApprovingReviewCount,omitempty\""
	// Are commits required to be signed.
	RequiresCommitSignatures *bool "json:\"requiresCommitSignatures,omitempty\""
	// Are merge commits prohibited from being pushed to this branch.
	RequiresLinearHistory *bool "json:\"requiresLinearHistory,omitempty\""
	// Is branch creation a protected operation.
	BlocksCreations *bool "json:\"blocksCreations,omitempty\""
	// Are force pushes allowed on this branch.
	AllowsForcePushes *bool "json:\"allowsForcePushes,omitempty\""
	// Can this branch be deleted.
	AllowsDeletions *bool "json:\"allowsDeletions,omitempty\""
	// Can admins overwrite branch protection.
	IsAdminEnforced *bool "json:\"isAdminEnforced,omitempty\""
	// Are status checks required to update matching branches.
	RequiresStatusChecks *bool "json:\"requiresStatusChecks,omitempty\""
	// Are branches required to be up to date before merging.
	RequiresStrictStatusChecks *bool "json:\"requiresStrictStatusChecks,omitempty\""
	// Are reviews from code owners required to update matching branches.
	RequiresCodeOwnerReviews *bool "json:\"requiresCodeOwnerReviews,omitempty\""
	// Will new commits pushed to matching branches dismiss pull request review approvals.
	DismissesStaleReviews *bool "json:\"dismissesStaleReviews,omitempty\""
	// Is dismissal of pull request reviews restricted.
	RestrictsReviewDismissals *bool "json:\"restrictsReviewDismissals,omitempty\""
	// A list of User, Team, or App IDs allowed to dismiss reviews on pull requests targeting matching branches.
	ReviewDismissalActorIDs *[]ID "json:\"reviewDismissalActorIds,omitempty\""
	// A list of User, Team, or App IDs allowed to bypass pull requests targeting matching branches.
	BypassPullRequestActorIDs *[]ID "json:\"bypassPullRequestActorIds,omitempty\""
	// A list of User, Team, or App IDs allowed to bypass force push targeting matching branches.
	BypassForcePushActorIDs *[]ID "json:\"bypassForcePushActorIds,omitempty\""
	// Is pushing to matching branches restricted.
	RestrictsPushes *bool "json:\"restrictsPushes,omitempty\""
	// A list of User, Team, or App IDs allowed to push to matching branches.
	PushActorIDs *[]ID "json:\"pushActorIds,omitempty\""
	// List of required status check contexts that must pass for commits to be accepted to matching branches.
	RequiredStatusCheckContexts *[]string "json:\"requiredStatusCheckContexts,omitempty\""
	// The list of required status checks.
	RequiredStatusChecks *[]RequiredStatusCheckInput "json:\"requiredStatusChecks,omitempty\""
	// Are successful deployments required before merging.
	RequiresDeployments *bool "json:\"requiresDeployments,omitempty\""
	// The list of required deployment environments.
	RequiredDeploymentEnvironments *[]string "json:\"requiredDeploymentEnvironments,omitempty\""
	// Are conversations required to be resolved before merging.
	RequiresConversationResolution *bool "json:\"requiresConversationResolution,omitempty\""
	// Whether the most recent push must be approved by someone other than the person who pushed it.
	RequireLastPushApproval *bool "json:\"requireLastPushApproval,omitempty\""
	// Whether to set the branch as read-only. If this is true, users will not be able to push to the branch.
	LockBranch *bool "json:\"lockBranch,omitempty\""
	// Whether users can pull changes from upstream when the branch is locked. Set to `true` to allow fork syncing. Set to `false` to prevent fork syncing.
	LockAllowsFetchAndMerge *bool "json:\"lockAllowsFetchAndMerge,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateBranchProtectionRuleInput is an autogenerated input type of UpdateBranchProtectionRule.

type UpdateCheckRunInput

type UpdateCheckRunInput struct {
	// The node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The node of the check.
	CheckRunID ID "json:\"checkRunId\""
	// The name of the check.
	Name *string "json:\"name,omitempty\""
	// The URL of the integrator's site that has the full details of the check.
	DetailsURL *URI "json:\"detailsUrl,omitempty\""
	// A reference for the run on the integrator's system.
	ExternalID *string "json:\"externalId,omitempty\""
	// The current status.
	Status *RequestableCheckStatusState "json:\"status,omitempty\""
	// The time that the check run began.
	StartedAt *DateTime "json:\"startedAt,omitempty\""
	// The final conclusion of the check.
	Conclusion *CheckConclusionState "json:\"conclusion,omitempty\""
	// The time that the check run finished.
	CompletedAt *DateTime "json:\"completedAt,omitempty\""
	// Descriptive details about the run.
	Output *CheckRunOutput "json:\"output,omitempty\""
	// Possible further actions the integrator can perform, which a user may trigger.
	Actions *[]CheckRunAction "json:\"actions,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateCheckRunInput is an autogenerated input type of UpdateCheckRun.

type UpdateCheckSuitePreferencesInput

type UpdateCheckSuitePreferencesInput struct {
	// The Node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// The check suite preferences to modify.
	AutoTriggerPreferences []CheckSuiteAutoTriggerPreference "json:\"autoTriggerPreferences\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateCheckSuitePreferencesInput is an autogenerated input type of UpdateCheckSuitePreferences.

type UpdateDiscussionCommentInput

type UpdateDiscussionCommentInput struct {
	// The Node ID of the discussion comment to update.
	CommentID ID "json:\"commentId\""
	// The new contents of the comment body.
	Body string "json:\"body\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateDiscussionCommentInput is an autogenerated input type of UpdateDiscussionComment.

type UpdateDiscussionInput

type UpdateDiscussionInput struct {
	// The Node ID of the discussion to update.
	DiscussionID ID "json:\"discussionId\""
	// The new discussion title.
	Title *string "json:\"title,omitempty\""
	// The new contents of the discussion body.
	Body *string "json:\"body,omitempty\""
	// The Node ID of a discussion category within the same repository to change this discussion to.
	CategoryID *ID "json:\"categoryId,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateDiscussionInput is an autogenerated input type of UpdateDiscussion.

type UpdateEnterpriseAdministratorRoleInput

type UpdateEnterpriseAdministratorRoleInput struct {
	// The ID of the Enterprise which the admin belongs to.
	EnterpriseID ID "json:\"enterpriseId\""
	// The login of a administrator whose role is being changed.
	Login string "json:\"login\""
	// The new role for the Enterprise administrator.
	Role EnterpriseAdministratorRole "json:\"role\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseAdministratorRoleInput is an autogenerated input type of UpdateEnterpriseAdministratorRole.

type UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput

type UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput struct {
	// The ID of the enterprise on which to set the allow private repository forking setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the allow private repository forking setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// The value for the allow private repository forking policy on the enterprise.
	PolicyValue *EnterpriseAllowPrivateRepositoryForkingPolicyValue "json:\"policyValue,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput is an autogenerated input type of UpdateEnterpriseAllowPrivateRepositoryForkingSetting.

type UpdateEnterpriseDefaultRepositoryPermissionSettingInput

type UpdateEnterpriseDefaultRepositoryPermissionSettingInput struct {
	// The ID of the enterprise on which to set the base repository permission setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the base repository permission setting on the enterprise.
	SettingValue EnterpriseDefaultRepositoryPermissionSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseDefaultRepositoryPermissionSettingInput is an autogenerated input type of UpdateEnterpriseDefaultRepositoryPermissionSetting.

type UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput

type UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput struct {
	// The ID of the enterprise on which to set the members can change repository visibility setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the members can change repository visibility setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput is an autogenerated input type of UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting.

type UpdateEnterpriseMembersCanCreateRepositoriesSettingInput

type UpdateEnterpriseMembersCanCreateRepositoriesSettingInput struct {
	// The ID of the enterprise on which to set the members can create repositories setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// Value for the members can create repositories setting on the enterprise. This or the granular public/private/internal allowed fields (but not both) must be provided.
	SettingValue *EnterpriseMembersCanCreateRepositoriesSettingValue "json:\"settingValue,omitempty\""
	// When false, allow member organizations to set their own repository creation member privileges.
	MembersCanCreateRepositoriesPolicyEnabled *bool "json:\"membersCanCreateRepositoriesPolicyEnabled,omitempty\""
	// Allow members to create public repositories. Defaults to current value.
	MembersCanCreatePublicRepositories *bool "json:\"membersCanCreatePublicRepositories,omitempty\""
	// Allow members to create private repositories. Defaults to current value.
	MembersCanCreatePrivateRepositories *bool "json:\"membersCanCreatePrivateRepositories,omitempty\""
	// Allow members to create internal repositories. Defaults to current value.
	MembersCanCreateInternalRepositories *bool "json:\"membersCanCreateInternalRepositories,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseMembersCanCreateRepositoriesSettingInput is an autogenerated input type of UpdateEnterpriseMembersCanCreateRepositoriesSetting.

type UpdateEnterpriseMembersCanDeleteIssuesSettingInput

type UpdateEnterpriseMembersCanDeleteIssuesSettingInput struct {
	// The ID of the enterprise on which to set the members can delete issues setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the members can delete issues setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseMembersCanDeleteIssuesSettingInput is an autogenerated input type of UpdateEnterpriseMembersCanDeleteIssuesSetting.

type UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput

type UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput struct {
	// The ID of the enterprise on which to set the members can delete repositories setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the members can delete repositories setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput is an autogenerated input type of UpdateEnterpriseMembersCanDeleteRepositoriesSetting.

type UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput

type UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput struct {
	// The ID of the enterprise on which to set the members can invite collaborators setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the members can invite collaborators setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput is an autogenerated input type of UpdateEnterpriseMembersCanInviteCollaboratorsSetting.

type UpdateEnterpriseMembersCanMakePurchasesSettingInput

type UpdateEnterpriseMembersCanMakePurchasesSettingInput struct {
	// The ID of the enterprise on which to set the members can make purchases setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the members can make purchases setting on the enterprise.
	SettingValue EnterpriseMembersCanMakePurchasesSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseMembersCanMakePurchasesSettingInput is an autogenerated input type of UpdateEnterpriseMembersCanMakePurchasesSetting.

type UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput

type UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput struct {
	// The ID of the enterprise on which to set the members can update protected branches setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the members can update protected branches setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput is an autogenerated input type of UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting.

type UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput

type UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput struct {
	// The ID of the enterprise on which to set the members can view dependency insights setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the members can view dependency insights setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput is an autogenerated input type of UpdateEnterpriseMembersCanViewDependencyInsightsSetting.

type UpdateEnterpriseOrganizationProjectsSettingInput

type UpdateEnterpriseOrganizationProjectsSettingInput struct {
	// The ID of the enterprise on which to set the organization projects setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the organization projects setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseOrganizationProjectsSettingInput is an autogenerated input type of UpdateEnterpriseOrganizationProjectsSetting.

type UpdateEnterpriseOwnerOrganizationRoleInput

type UpdateEnterpriseOwnerOrganizationRoleInput struct {
	// The ID of the Enterprise which the owner belongs to.
	EnterpriseID ID "json:\"enterpriseId\""
	// The ID of the organization for membership change.
	OrganizationID ID "json:\"organizationId\""
	// The role to assume in the organization.
	OrganizationRole RoleInOrganization "json:\"organizationRole\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseOwnerOrganizationRoleInput is an autogenerated input type of UpdateEnterpriseOwnerOrganizationRole.

type UpdateEnterpriseProfileInput

type UpdateEnterpriseProfileInput struct {
	// The Enterprise ID to update.
	EnterpriseID ID "json:\"enterpriseId\""
	// The name of the enterprise.
	Name *string "json:\"name,omitempty\""
	// The description of the enterprise.
	Description *string "json:\"description,omitempty\""
	// The URL of the enterprise's website.
	WebsiteURL *string "json:\"websiteUrl,omitempty\""
	// The location of the enterprise.
	Location *string "json:\"location,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseProfileInput is an autogenerated input type of UpdateEnterpriseProfile.

type UpdateEnterpriseRepositoryProjectsSettingInput

type UpdateEnterpriseRepositoryProjectsSettingInput struct {
	// The ID of the enterprise on which to set the repository projects setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the repository projects setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseRepositoryProjectsSettingInput is an autogenerated input type of UpdateEnterpriseRepositoryProjectsSetting.

type UpdateEnterpriseTeamDiscussionsSettingInput

type UpdateEnterpriseTeamDiscussionsSettingInput struct {
	// The ID of the enterprise on which to set the team discussions setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the team discussions setting on the enterprise.
	SettingValue EnterpriseEnabledDisabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseTeamDiscussionsSettingInput is an autogenerated input type of UpdateEnterpriseTeamDiscussionsSetting.

type UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput

type UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput struct {
	// The ID of the enterprise on which to set the two factor authentication required setting.
	EnterpriseID ID "json:\"enterpriseId\""
	// The value for the two factor authentication required setting on the enterprise.
	SettingValue EnterpriseEnabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput is an autogenerated input type of UpdateEnterpriseTwoFactorAuthenticationRequiredSetting.

type UpdateEnvironmentInput

type UpdateEnvironmentInput struct {
	// The node ID of the environment.
	EnvironmentID ID "json:\"environmentId\""
	// The wait timer in minutes.
	WaitTimer *int "json:\"waitTimer,omitempty\""
	// The ids of users or teams that can approve deployments to this environment.
	Reviewers *[]ID "json:\"reviewers,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateEnvironmentInput is an autogenerated input type of UpdateEnvironment.

type UpdateIPAllowListEnabledSettingInput

type UpdateIPAllowListEnabledSettingInput struct {
	// The ID of the owner on which to set the IP allow list enabled setting.
	OwnerID ID "json:\"ownerId\""
	// The value for the IP allow list enabled setting.
	SettingValue IPAllowListEnabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateIPAllowListEnabledSettingInput is an autogenerated input type of UpdateIpAllowListEnabledSetting.

type UpdateIPAllowListEntryInput

type UpdateIPAllowListEntryInput struct {
	// The ID of the IP allow list entry to update.
	IPAllowListEntryID ID "json:\"ipAllowListEntryId\""
	// An IP address or range of addresses in CIDR notation.
	AllowListValue string "json:\"allowListValue\""
	// An optional name for the IP allow list entry.
	Name *string "json:\"name,omitempty\""
	// Whether the IP allow list entry is active when an IP allow list is enabled.
	IsActive bool "json:\"isActive\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateIPAllowListEntryInput is an autogenerated input type of UpdateIpAllowListEntry.

type UpdateIPAllowListForInstalledAppsEnabledSettingInput

type UpdateIPAllowListForInstalledAppsEnabledSettingInput struct {
	// The ID of the owner.
	OwnerID ID "json:\"ownerId\""
	// The value for the IP allow list configuration for installed GitHub Apps setting.
	SettingValue IPAllowListForInstalledAppsEnabledSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateIPAllowListForInstalledAppsEnabledSettingInput is an autogenerated input type of UpdateIpAllowListForInstalledAppsEnabledSetting.

type UpdateIssueCommentInput

type UpdateIssueCommentInput struct {
	// The ID of the IssueComment to modify.
	ID ID "json:\"id\""
	// The updated text of the comment.
	Body string "json:\"body\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateIssueCommentInput is an autogenerated input type of UpdateIssueComment.

type UpdateIssueInput

type UpdateIssueInput struct {
	// The ID of the Issue to modify.
	ID ID "json:\"id\""
	// The title for the issue.
	Title *string "json:\"title,omitempty\""
	// The body for the issue description.
	Body *string "json:\"body,omitempty\""
	// An array of Node IDs of users for this issue.
	AssigneeIDs *[]ID "json:\"assigneeIds,omitempty\""
	// The Node ID of the milestone for this issue.
	MilestoneID *ID "json:\"milestoneId,omitempty\""
	// An array of Node IDs of labels for this issue.
	LabelIDs *[]ID "json:\"labelIds,omitempty\""
	// The desired issue state.
	State *IssueState "json:\"state,omitempty\""
	// An array of Node IDs for projects associated with this issue.
	ProjectIDs *[]ID "json:\"projectIds,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateIssueInput is an autogenerated input type of UpdateIssue.

type UpdateNotificationRestrictionSettingInput

type UpdateNotificationRestrictionSettingInput struct {
	// The ID of the owner on which to set the restrict notifications setting.
	OwnerID ID "json:\"ownerId\""
	// The value for the restrict notifications setting.
	SettingValue NotificationRestrictionSettingValue "json:\"settingValue\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateNotificationRestrictionSettingInput is an autogenerated input type of UpdateNotificationRestrictionSetting.

type UpdateOrganizationAllowPrivateRepositoryForkingSettingInput

type UpdateOrganizationAllowPrivateRepositoryForkingSettingInput struct {
	// The ID of the organization on which to set the allow private repository forking setting.
	OrganizationID ID "json:\"organizationId\""
	// Enable forking of private repositories in the organization?.
	ForkingEnabled bool "json:\"forkingEnabled\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateOrganizationAllowPrivateRepositoryForkingSettingInput is an autogenerated input type of UpdateOrganizationAllowPrivateRepositoryForkingSetting.

type UpdateOrganizationWebCommitSignoffSettingInput

type UpdateOrganizationWebCommitSignoffSettingInput struct {
	// The ID of the organization on which to set the web commit signoff setting.
	OrganizationID ID "json:\"organizationId\""
	// Enable signoff on web-based commits for repositories in the organization?.
	WebCommitSignoffRequired bool "json:\"webCommitSignoffRequired\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateOrganizationWebCommitSignoffSettingInput is an autogenerated input type of UpdateOrganizationWebCommitSignoffSetting.

type UpdateParametersInput

type UpdateParametersInput struct {
	// Branch can pull changes from its upstream repository.
	UpdateAllowsFetchAndMerge bool "json:\"updateAllowsFetchAndMerge\""
}

UpdateParametersInput represents only allow users with bypass permission to update matching refs.

type UpdateProjectCardInput

type UpdateProjectCardInput struct {
	// The ProjectCard ID to update.
	ProjectCardID ID "json:\"projectCardId\""
	// Whether or not the ProjectCard should be archived.
	IsArchived *bool "json:\"isArchived,omitempty\""
	// The note of ProjectCard.
	Note *string "json:\"note,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateProjectCardInput is an autogenerated input type of UpdateProjectCard.

type UpdateProjectColumnInput

type UpdateProjectColumnInput struct {
	// The ProjectColumn ID to update.
	ProjectColumnID ID "json:\"projectColumnId\""
	// The name of project column.
	Name string "json:\"name\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateProjectColumnInput is an autogenerated input type of UpdateProjectColumn.

type UpdateProjectInput

type UpdateProjectInput struct {
	// The Project ID to update.
	ProjectID ID "json:\"projectId\""
	// The name of project.
	Name *string "json:\"name,omitempty\""
	// The description of project.
	Body *string "json:\"body,omitempty\""
	// Whether the project is open or closed.
	State *ProjectState "json:\"state,omitempty\""
	// Whether the project is public or not.
	Public *bool "json:\"public,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateProjectInput is an autogenerated input type of UpdateProject.

type UpdateProjectV2CollaboratorsInput

type UpdateProjectV2CollaboratorsInput struct {
	// The ID of the project to update the collaborators for.
	ProjectID ID "json:\"projectId\""
	// The collaborators to update.
	Collaborators []ProjectV2Collaborator "json:\"collaborators\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateProjectV2CollaboratorsInput is an autogenerated input type of UpdateProjectV2Collaborators.

type UpdateProjectV2DraftIssueInput

type UpdateProjectV2DraftIssueInput struct {
	// The ID of the draft issue to update.
	DraftIssueID ID "json:\"draftIssueId\""
	// The title of the draft issue.
	Title *string "json:\"title,omitempty\""
	// The body of the draft issue.
	Body *string "json:\"body,omitempty\""
	// The IDs of the assignees of the draft issue.
	AssigneeIDs *[]ID "json:\"assigneeIds,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateProjectV2DraftIssueInput is an autogenerated input type of UpdateProjectV2DraftIssue.

type UpdateProjectV2Input

type UpdateProjectV2Input struct {
	// The ID of the Project to update.
	ProjectID ID "json:\"projectId\""
	// Set the title of the project.
	Title *string "json:\"title,omitempty\""
	// Set the short description of the project.
	ShortDescription *string "json:\"shortDescription,omitempty\""
	// Set the readme description of the project.
	Readme *string "json:\"readme,omitempty\""
	// Set the project to closed or open.
	Closed *bool "json:\"closed,omitempty\""
	// Set the project to public or private.
	Public *bool "json:\"public,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateProjectV2Input is an autogenerated input type of UpdateProjectV2.

type UpdateProjectV2ItemFieldValueInput

type UpdateProjectV2ItemFieldValueInput struct {
	// The ID of the Project.
	ProjectID ID "json:\"projectId\""
	// The ID of the item to be updated.
	ItemID ID "json:\"itemId\""
	// The ID of the field to be updated.
	FieldID ID "json:\"fieldId\""
	// The value which will be set on the field.
	Value ProjectV2FieldValue "json:\"value\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateProjectV2ItemFieldValueInput is an autogenerated input type of UpdateProjectV2ItemFieldValue.

type UpdateProjectV2ItemPositionInput

type UpdateProjectV2ItemPositionInput struct {
	// The ID of the Project.
	ProjectID ID "json:\"projectId\""
	// The ID of the item to be moved.
	ItemID ID "json:\"itemId\""
	// The ID of the item to position this item after. If omitted or set to null the item will be moved to top.
	AfterID *ID "json:\"afterId,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateProjectV2ItemPositionInput is an autogenerated input type of UpdateProjectV2ItemPosition.

type UpdatePullRequestBranchInput

type UpdatePullRequestBranchInput struct {
	// The Node ID of the pull request.
	PullRequestID ID "json:\"pullRequestId\""
	// The head ref oid for the upstream branch.
	ExpectedHeadOid *GitObjectID "json:\"expectedHeadOid,omitempty\""
	// The update branch method to use. If omitted, defaults to 'MERGE'.
	UpdateMethod *PullRequestBranchUpdateMethod "json:\"updateMethod,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdatePullRequestBranchInput is an autogenerated input type of UpdatePullRequestBranch.

type UpdatePullRequestInput

type UpdatePullRequestInput struct {
	// The Node ID of the pull request.
	PullRequestID ID "json:\"pullRequestId\""
	// The name of the branch you want your changes pulled into. This should be an existing branch
	// on the current repository.
	BaseRefName *string "json:\"baseRefName,omitempty\""
	// The title of the pull request.
	Title *string "json:\"title,omitempty\""
	// The contents of the pull request.
	Body *string "json:\"body,omitempty\""
	// The target state of the pull request.
	State *PullRequestUpdateState "json:\"state,omitempty\""
	// Indicates whether maintainers can modify the pull request.
	MaintainerCanModify *bool "json:\"maintainerCanModify,omitempty\""
	// An array of Node IDs of users for this pull request.
	AssigneeIDs *[]ID "json:\"assigneeIds,omitempty\""
	// The Node ID of the milestone for this pull request.
	MilestoneID *ID "json:\"milestoneId,omitempty\""
	// An array of Node IDs of labels for this pull request.
	LabelIDs *[]ID "json:\"labelIds,omitempty\""
	// An array of Node IDs for projects associated with this pull request.
	ProjectIDs *[]ID "json:\"projectIds,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdatePullRequestInput is an autogenerated input type of UpdatePullRequest.

type UpdatePullRequestReviewCommentInput

type UpdatePullRequestReviewCommentInput struct {
	// The Node ID of the comment to modify.
	PullRequestReviewCommentID ID "json:\"pullRequestReviewCommentId\""
	// The text of the comment.
	Body string "json:\"body\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdatePullRequestReviewCommentInput is an autogenerated input type of UpdatePullRequestReviewComment.

type UpdatePullRequestReviewInput

type UpdatePullRequestReviewInput struct {
	// The Node ID of the pull request review to modify.
	PullRequestReviewID ID "json:\"pullRequestReviewId\""
	// The contents of the pull request review body.
	Body string "json:\"body\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdatePullRequestReviewInput is an autogenerated input type of UpdatePullRequestReview.

type UpdateRefInput

type UpdateRefInput struct {
	// The Node ID of the Ref to be updated.
	RefID ID "json:\"refId\""
	// The GitObjectID that the Ref shall be updated to target.
	Oid GitObjectID "json:\"oid\""
	// Permit updates of branch Refs that are not fast-forwards?.
	Force *bool "json:\"force,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateRefInput is an autogenerated input type of UpdateRef.

type UpdateRepositoryInput

type UpdateRepositoryInput struct {
	// The ID of the repository to update.
	RepositoryID ID "json:\"repositoryId\""
	// The new name of the repository.
	Name *string "json:\"name,omitempty\""
	// A new description for the repository. Pass an empty string to erase the existing description.
	Description *string "json:\"description,omitempty\""
	// Whether this repository should be marked as a template such that anyone who can access it can create new repositories with the same files and directory structure.
	Template *bool "json:\"template,omitempty\""
	// The URL for a web page about this repository. Pass an empty string to erase the existing URL.
	HomepageURL *URI "json:\"homepageUrl,omitempty\""
	// Indicates if the repository should have the wiki feature enabled.
	HasWikiEnabled *bool "json:\"hasWikiEnabled,omitempty\""
	// Indicates if the repository should have the issues feature enabled.
	HasIssuesEnabled *bool "json:\"hasIssuesEnabled,omitempty\""
	// Indicates if the repository should have the project boards feature enabled.
	HasProjectsEnabled *bool "json:\"hasProjectsEnabled,omitempty\""
	// Indicates if the repository should have the discussions feature enabled.
	HasDiscussionsEnabled *bool "json:\"hasDiscussionsEnabled,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateRepositoryInput is an autogenerated input type of UpdateRepository.

type UpdateRepositoryRulesetInput

type UpdateRepositoryRulesetInput struct {
	// The global relay id of the repository ruleset to be updated.
	RepositoryRulesetID ID "json:\"repositoryRulesetId\""
	// The name of the ruleset.
	Name *string "json:\"name,omitempty\""
	// The target of the ruleset.
	Target *RepositoryRulesetTarget "json:\"target,omitempty\""
	// The list of rules for this ruleset.
	Rules *[]RepositoryRuleInput "json:\"rules,omitempty\""
	// The list of conditions for this ruleset.
	Conditions *RepositoryRuleConditionsInput "json:\"conditions,omitempty\""
	// The enforcement level for this ruleset.
	Enforcement *RuleEnforcement "json:\"enforcement,omitempty\""
	// A list of actors that are allowed to bypass rules in this ruleset.
	BypassActors *[]RepositoryRulesetBypassActorInput "json:\"bypassActors,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateRepositoryRulesetInput is an autogenerated input type of UpdateRepositoryRuleset.

type UpdateRepositoryWebCommitSignoffSettingInput

type UpdateRepositoryWebCommitSignoffSettingInput struct {
	// The ID of the repository to update.
	RepositoryID ID "json:\"repositoryId\""
	// Indicates if the repository should require signoff on web-based commits.
	WebCommitSignoffRequired bool "json:\"webCommitSignoffRequired\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateRepositoryWebCommitSignoffSettingInput is an autogenerated input type of UpdateRepositoryWebCommitSignoffSetting.

type UpdateSponsorshipPreferencesInput

type UpdateSponsorshipPreferencesInput struct {
	// The ID of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorLogin is not given.
	SponsorID *ID "json:\"sponsorId,omitempty\""
	// The username of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorId is not given.
	SponsorLogin *string "json:\"sponsorLogin,omitempty\""
	// The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given.
	SponsorableID *ID "json:\"sponsorableId,omitempty\""
	// The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given.
	SponsorableLogin *string "json:\"sponsorableLogin,omitempty\""
	// Whether the sponsor should receive email updates from the sponsorable.
	ReceiveEmails *bool "json:\"receiveEmails,omitempty\""
	// Specify whether others should be able to see that the sponsor is sponsoring the sponsorable. Public visibility still does not reveal which tier is used.
	PrivacyLevel *SponsorshipPrivacy "json:\"privacyLevel,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateSponsorshipPreferencesInput is an autogenerated input type of UpdateSponsorshipPreferences.

type UpdateSubscriptionInput

type UpdateSubscriptionInput struct {
	// The Node ID of the subscribable object to modify.
	SubscribableID ID "json:\"subscribableId\""
	// The new state of the subscription.
	State SubscriptionState "json:\"state\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateSubscriptionInput is an autogenerated input type of UpdateSubscription.

type UpdateTeamDiscussionCommentInput

type UpdateTeamDiscussionCommentInput struct {
	// The ID of the comment to modify.
	ID ID "json:\"id\""
	// The updated text of the comment.
	Body string "json:\"body\""
	// The current version of the body content.
	BodyVersion *string "json:\"bodyVersion,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateTeamDiscussionCommentInput is an autogenerated input type of UpdateTeamDiscussionComment.

type UpdateTeamDiscussionInput

type UpdateTeamDiscussionInput struct {
	// The Node ID of the discussion to modify.
	ID ID "json:\"id\""
	// The updated title of the discussion.
	Title *string "json:\"title,omitempty\""
	// The updated text of the discussion.
	Body *string "json:\"body,omitempty\""
	// The current version of the body content. If provided, this update operation will be rejected if the given version does not match the latest version on the server.
	BodyVersion *string "json:\"bodyVersion,omitempty\""
	// If provided, sets the pinned state of the updated discussion.
	Pinned *bool "json:\"pinned,omitempty\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateTeamDiscussionInput is an autogenerated input type of UpdateTeamDiscussion.

type UpdateTeamsRepositoryInput

type UpdateTeamsRepositoryInput struct {
	// Repository ID being granted access to.
	RepositoryID ID "json:\"repositoryId\""
	// A list of teams being granted access. Limit: 10.
	TeamIDs []ID "json:\"teamIds\""
	// Permission that should be granted to the teams.
	Permission RepositoryPermission "json:\"permission\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateTeamsRepositoryInput is an autogenerated input type of UpdateTeamsRepository.

type UpdateTopicsInput

type UpdateTopicsInput struct {
	// The Node ID of the repository.
	RepositoryID ID "json:\"repositoryId\""
	// An array of topic names.
	TopicNames []string "json:\"topicNames\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

UpdateTopicsInput is an autogenerated input type of UpdateTopics.

type UserBlockDuration

type UserBlockDuration string

UserBlockDuration represents the possible durations that a user can be blocked for.

const (
	// UserBlockDurationOneDay. The user was blocked for 1 day.
	UserBlockDurationOneDay UserBlockDuration = "ONE_DAY"
	// UserBlockDurationThreeDays. The user was blocked for 3 days.
	UserBlockDurationThreeDays UserBlockDuration = "THREE_DAYS"
	// UserBlockDurationOneWeek. The user was blocked for 7 days.
	UserBlockDurationOneWeek UserBlockDuration = "ONE_WEEK"
	// UserBlockDurationOneMonth. The user was blocked for 30 days.
	UserBlockDurationOneMonth UserBlockDuration = "ONE_MONTH"
	// UserBlockDurationPermanent. The user was blocked permanently.
	UserBlockDurationPermanent UserBlockDuration = "PERMANENT"
)

type UserStatusOrder

type UserStatusOrder struct {
	// The field to order user statuses by.
	Field UserStatusOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

UserStatusOrder represents ordering options for user status connections.

type UserStatusOrderField

type UserStatusOrderField string

UserStatusOrderField represents properties by which user status connections can be ordered.

const (
	// UserStatusOrderFieldUpdatedAt. Order user statuses by when they were updated.
	UserStatusOrderFieldUpdatedAt UserStatusOrderField = "UPDATED_AT"
)

type VerifiableDomainOrder

type VerifiableDomainOrder struct {
	// The field to order verifiable domains by.
	Field VerifiableDomainOrderField "json:\"field\""
	// The ordering direction.
	Direction OrderDirection "json:\"direction\""
}

VerifiableDomainOrder represents ordering options for verifiable domain connections.

type VerifiableDomainOrderField

type VerifiableDomainOrderField string

VerifiableDomainOrderField represents properties by which verifiable domain connections can be ordered.

const (
	// VerifiableDomainOrderFieldDomain. Order verifiable domains by the domain name.
	VerifiableDomainOrderFieldDomain VerifiableDomainOrderField = "DOMAIN"
	// VerifiableDomainOrderFieldCreatedAt. Order verifiable domains by their creation date.
	VerifiableDomainOrderFieldCreatedAt VerifiableDomainOrderField = "CREATED_AT"
)

type VerifyVerifiableDomainInput

type VerifyVerifiableDomainInput struct {
	// The ID of the verifiable domain to verify.
	ID ID "json:\"id\""
	// A unique identifier for the client performing the mutation.
	ClientMutationID *string "json:\"clientMutationId,omitempty\""
}

VerifyVerifiableDomainInput is an autogenerated input type of VerifyVerifiableDomain.

type WorkflowRunOrder

type WorkflowRunOrder struct {
	// The field by which to order workflows.
	Field WorkflowRunOrderField "json:\"field\""
	// The direction in which to order workflow runs by the specified field.
	Direction OrderDirection "json:\"direction\""
}

WorkflowRunOrder represents ways in which lists of workflow runs can be ordered upon return.

type WorkflowRunOrderField

type WorkflowRunOrderField string

WorkflowRunOrderField represents properties by which workflow run connections can be ordered.

const (
	// WorkflowRunOrderFieldCreatedAt. Order workflow runs by most recently created.
	WorkflowRunOrderFieldCreatedAt WorkflowRunOrderField = "CREATED_AT"
)

type WorkflowState

type WorkflowState string

WorkflowState represents the possible states for a workflow.

const (
	// WorkflowStateActive. The workflow is active.
	WorkflowStateActive WorkflowState = "ACTIVE"
	// WorkflowStateDeleted. The workflow was deleted from the git repository.
	WorkflowStateDeleted WorkflowState = "DELETED"
	// WorkflowStateDisabledFork. The workflow was disabled by default on a fork.
	WorkflowStateDisabledFork WorkflowState = "DISABLED_FORK"
	// WorkflowStateDisabledInactivity. The workflow was disabled for inactivity in the repository.
	WorkflowStateDisabledInactivity WorkflowState = "DISABLED_INACTIVITY"
	// WorkflowStateDisabledManually. The workflow was disabled manually.
	WorkflowStateDisabledManually WorkflowState = "DISABLED_MANUALLY"
)

Directories

Path Synopsis
gen module

Jump to

Keyboard shortcuts

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