-- Do not manually edit this file, it was auto-generated by dillonkearns/elm-graphql -- https://github.com/dillonkearns/elm-graphql module Github.Mutation exposing (AcceptTopicSuggestionRequiredArguments, AddCommentRequiredArguments, AddProjectCardRequiredArguments, AddProjectColumnRequiredArguments, AddPullRequestReviewCommentRequiredArguments, AddPullRequestReviewRequiredArguments, AddReactionRequiredArguments, AddStarRequiredArguments, CreateProjectRequiredArguments, DeclineTopicSuggestionRequiredArguments, DeleteProjectCardRequiredArguments, DeleteProjectColumnRequiredArguments, DeleteProjectRequiredArguments, DeletePullRequestReviewRequiredArguments, DismissPullRequestReviewRequiredArguments, LockLockableRequiredArguments, MoveProjectCardRequiredArguments, MoveProjectColumnRequiredArguments, RemoveOutsideCollaboratorRequiredArguments, RemoveReactionRequiredArguments, RemoveStarRequiredArguments, RequestReviewsRequiredArguments, SubmitPullRequestReviewRequiredArguments, UpdateProjectCardRequiredArguments, UpdateProjectColumnRequiredArguments, UpdateProjectRequiredArguments, UpdatePullRequestReviewCommentRequiredArguments, UpdatePullRequestReviewRequiredArguments, UpdateSubscriptionRequiredArguments, UpdateTopicsRequiredArguments, acceptTopicSuggestion, addComment, addProjectCard, addProjectColumn, addPullRequestReview, addPullRequestReviewComment, addReaction, addStar, createProject, declineTopicSuggestion, deleteProject, deleteProjectCard, deleteProjectColumn, deletePullRequestReview, dismissPullRequestReview, lockLockable, moveProjectCard, moveProjectColumn, removeOutsideCollaborator, removeReaction, removeStar, requestReviews, selection, submitPullRequestReview, updateProject, updateProjectCard, updateProjectColumn, updatePullRequestReview, updatePullRequestReviewComment, updateSubscription, updateTopics) import Github.InputObject import Github.Interface import Github.Object import Github.Scalar import Github.Union import Graphql.Field as Field exposing (Field) import Graphql.Internal.Builder.Argument as Argument exposing (Argument) import Graphql.Internal.Builder.Object as Object import Graphql.Internal.Encode as Encode exposing (Value) import Graphql.Operation exposing (RootMutation, RootQuery, RootSubscription) import Graphql.OptionalArgument exposing (OptionalArgument(..)) import Graphql.SelectionSet exposing (SelectionSet) import Json.Decode as Decode exposing (Decoder) {-| Select fields to build up a top-level mutation. The request can be sent with functions from `Graphql.Http`. -} selection : (a -> constructor) -> SelectionSet (a -> constructor) RootMutation selection constructor = Object.selection constructor type alias AcceptTopicSuggestionRequiredArguments = { input : Github.InputObject.AcceptTopicSuggestionInput } {-| Applies a suggested topic to the repository. -} acceptTopicSuggestion : AcceptTopicSuggestionRequiredArguments -> SelectionSet decodesTo Github.Object.AcceptTopicSuggestionPayload -> Field (Maybe decodesTo) RootMutation acceptTopicSuggestion requiredArgs object_ = Object.selectionField "acceptTopicSuggestion" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeAcceptTopicSuggestionInput ] object_ (identity >> Decode.nullable) type alias AddCommentRequiredArguments = { input : Github.InputObject.AddCommentInput } {-| Adds a comment to an Issue or Pull Request. -} addComment : AddCommentRequiredArguments -> SelectionSet decodesTo Github.Object.AddCommentPayload -> Field (Maybe decodesTo) RootMutation addComment requiredArgs object_ = Object.selectionField "addComment" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeAddCommentInput ] object_ (identity >> Decode.nullable) type alias AddProjectCardRequiredArguments = { input : Github.InputObject.AddProjectCardInput } {-| Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both. -} addProjectCard : AddProjectCardRequiredArguments -> SelectionSet decodesTo Github.Object.AddProjectCardPayload -> Field (Maybe decodesTo) RootMutation addProjectCard requiredArgs object_ = Object.selectionField "addProjectCard" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeAddProjectCardInput ] object_ (identity >> Decode.nullable) type alias AddProjectColumnRequiredArguments = { input : Github.InputObject.AddProjectColumnInput } {-| Adds a column to a Project. -} addProjectColumn : AddProjectColumnRequiredArguments -> SelectionSet decodesTo Github.Object.AddProjectColumnPayload -> Field (Maybe decodesTo) RootMutation addProjectColumn requiredArgs object_ = Object.selectionField "addProjectColumn" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeAddProjectColumnInput ] object_ (identity >> Decode.nullable) type alias AddPullRequestReviewRequiredArguments = { input : Github.InputObject.AddPullRequestReviewInput } {-| Adds a review to a Pull Request. -} addPullRequestReview : AddPullRequestReviewRequiredArguments -> SelectionSet decodesTo Github.Object.AddPullRequestReviewPayload -> Field (Maybe decodesTo) RootMutation addPullRequestReview requiredArgs object_ = Object.selectionField "addPullRequestReview" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeAddPullRequestReviewInput ] object_ (identity >> Decode.nullable) type alias AddPullRequestReviewCommentRequiredArguments = { input : Github.InputObject.AddPullRequestReviewCommentInput } {-| Adds a comment to a review. -} addPullRequestReviewComment : AddPullRequestReviewCommentRequiredArguments -> SelectionSet decodesTo Github.Object.AddPullRequestReviewCommentPayload -> Field (Maybe decodesTo) RootMutation addPullRequestReviewComment requiredArgs object_ = Object.selectionField "addPullRequestReviewComment" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeAddPullRequestReviewCommentInput ] object_ (identity >> Decode.nullable) type alias AddReactionRequiredArguments = { input : Github.InputObject.AddReactionInput } {-| Adds a reaction to a subject. -} addReaction : AddReactionRequiredArguments -> SelectionSet decodesTo Github.Object.AddReactionPayload -> Field (Maybe decodesTo) RootMutation addReaction requiredArgs object_ = Object.selectionField "addReaction" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeAddReactionInput ] object_ (identity >> Decode.nullable) type alias AddStarRequiredArguments = { input : Github.InputObject.AddStarInput } {-| Adds a star to a Starrable. -} addStar : AddStarRequiredArguments -> SelectionSet decodesTo Github.Object.AddStarPayload -> Field (Maybe decodesTo) RootMutation addStar requiredArgs object_ = Object.selectionField "addStar" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeAddStarInput ] object_ (identity >> Decode.nullable) type alias CreateProjectRequiredArguments = { input : Github.InputObject.CreateProjectInput } {-| Creates a new project. -} createProject : CreateProjectRequiredArguments -> SelectionSet decodesTo Github.Object.CreateProjectPayload -> Field (Maybe decodesTo) RootMutation createProject requiredArgs object_ = Object.selectionField "createProject" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeCreateProjectInput ] object_ (identity >> Decode.nullable) type alias DeclineTopicSuggestionRequiredArguments = { input : Github.InputObject.DeclineTopicSuggestionInput } {-| Rejects a suggested topic for the repository. -} declineTopicSuggestion : DeclineTopicSuggestionRequiredArguments -> SelectionSet decodesTo Github.Object.DeclineTopicSuggestionPayload -> Field (Maybe decodesTo) RootMutation declineTopicSuggestion requiredArgs object_ = Object.selectionField "declineTopicSuggestion" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeDeclineTopicSuggestionInput ] object_ (identity >> Decode.nullable) type alias DeleteProjectRequiredArguments = { input : Github.InputObject.DeleteProjectInput } {-| Deletes a project. -} deleteProject : DeleteProjectRequiredArguments -> SelectionSet decodesTo Github.Object.DeleteProjectPayload -> Field (Maybe decodesTo) RootMutation deleteProject requiredArgs object_ = Object.selectionField "deleteProject" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeDeleteProjectInput ] object_ (identity >> Decode.nullable) type alias DeleteProjectCardRequiredArguments = { input : Github.InputObject.DeleteProjectCardInput } {-| Deletes a project card. -} deleteProjectCard : DeleteProjectCardRequiredArguments -> SelectionSet decodesTo Github.Object.DeleteProjectCardPayload -> Field (Maybe decodesTo) RootMutation deleteProjectCard requiredArgs object_ = Object.selectionField "deleteProjectCard" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeDeleteProjectCardInput ] object_ (identity >> Decode.nullable) type alias DeleteProjectColumnRequiredArguments = { input : Github.InputObject.DeleteProjectColumnInput } {-| Deletes a project column. -} deleteProjectColumn : DeleteProjectColumnRequiredArguments -> SelectionSet decodesTo Github.Object.DeleteProjectColumnPayload -> Field (Maybe decodesTo) RootMutation deleteProjectColumn requiredArgs object_ = Object.selectionField "deleteProjectColumn" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeDeleteProjectColumnInput ] object_ (identity >> Decode.nullable) type alias DeletePullRequestReviewRequiredArguments = { input : Github.InputObject.DeletePullRequestReviewInput } {-| Deletes a pull request review. -} deletePullRequestReview : DeletePullRequestReviewRequiredArguments -> SelectionSet decodesTo Github.Object.DeletePullRequestReviewPayload -> Field (Maybe decodesTo) RootMutation deletePullRequestReview requiredArgs object_ = Object.selectionField "deletePullRequestReview" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeDeletePullRequestReviewInput ] object_ (identity >> Decode.nullable) type alias DismissPullRequestReviewRequiredArguments = { input : Github.InputObject.DismissPullRequestReviewInput } {-| Dismisses an approved or rejected pull request review. -} dismissPullRequestReview : DismissPullRequestReviewRequiredArguments -> SelectionSet decodesTo Github.Object.DismissPullRequestReviewPayload -> Field (Maybe decodesTo) RootMutation dismissPullRequestReview requiredArgs object_ = Object.selectionField "dismissPullRequestReview" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeDismissPullRequestReviewInput ] object_ (identity >> Decode.nullable) type alias LockLockableRequiredArguments = { input : Github.InputObject.LockLockableInput } {-| Lock a lockable object -} lockLockable : LockLockableRequiredArguments -> SelectionSet decodesTo Github.Object.LockLockablePayload -> Field (Maybe decodesTo) RootMutation lockLockable requiredArgs object_ = Object.selectionField "lockLockable" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeLockLockableInput ] object_ (identity >> Decode.nullable) type alias MoveProjectCardRequiredArguments = { input : Github.InputObject.MoveProjectCardInput } {-| Moves a project card to another place. -} moveProjectCard : MoveProjectCardRequiredArguments -> SelectionSet decodesTo Github.Object.MoveProjectCardPayload -> Field (Maybe decodesTo) RootMutation moveProjectCard requiredArgs object_ = Object.selectionField "moveProjectCard" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeMoveProjectCardInput ] object_ (identity >> Decode.nullable) type alias MoveProjectColumnRequiredArguments = { input : Github.InputObject.MoveProjectColumnInput } {-| Moves a project column to another place. -} moveProjectColumn : MoveProjectColumnRequiredArguments -> SelectionSet decodesTo Github.Object.MoveProjectColumnPayload -> Field (Maybe decodesTo) RootMutation moveProjectColumn requiredArgs object_ = Object.selectionField "moveProjectColumn" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeMoveProjectColumnInput ] object_ (identity >> Decode.nullable) type alias RemoveOutsideCollaboratorRequiredArguments = { input : Github.InputObject.RemoveOutsideCollaboratorInput } {-| Removes outside collaborator from all repositories in an organization. -} removeOutsideCollaborator : RemoveOutsideCollaboratorRequiredArguments -> SelectionSet decodesTo Github.Object.RemoveOutsideCollaboratorPayload -> Field (Maybe decodesTo) RootMutation removeOutsideCollaborator requiredArgs object_ = Object.selectionField "removeOutsideCollaborator" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeRemoveOutsideCollaboratorInput ] object_ (identity >> Decode.nullable) type alias RemoveReactionRequiredArguments = { input : Github.InputObject.RemoveReactionInput } {-| Removes a reaction from a subject. -} removeReaction : RemoveReactionRequiredArguments -> SelectionSet decodesTo Github.Object.RemoveReactionPayload -> Field (Maybe decodesTo) RootMutation removeReaction requiredArgs object_ = Object.selectionField "removeReaction" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeRemoveReactionInput ] object_ (identity >> Decode.nullable) type alias RemoveStarRequiredArguments = { input : Github.InputObject.RemoveStarInput } {-| Removes a star from a Starrable. -} removeStar : RemoveStarRequiredArguments -> SelectionSet decodesTo Github.Object.RemoveStarPayload -> Field (Maybe decodesTo) RootMutation removeStar requiredArgs object_ = Object.selectionField "removeStar" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeRemoveStarInput ] object_ (identity >> Decode.nullable) type alias RequestReviewsRequiredArguments = { input : Github.InputObject.RequestReviewsInput } {-| Set review requests on a pull request. -} requestReviews : RequestReviewsRequiredArguments -> SelectionSet decodesTo Github.Object.RequestReviewsPayload -> Field (Maybe decodesTo) RootMutation requestReviews requiredArgs object_ = Object.selectionField "requestReviews" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeRequestReviewsInput ] object_ (identity >> Decode.nullable) type alias SubmitPullRequestReviewRequiredArguments = { input : Github.InputObject.SubmitPullRequestReviewInput } {-| Submits a pending pull request review. -} submitPullRequestReview : SubmitPullRequestReviewRequiredArguments -> SelectionSet decodesTo Github.Object.SubmitPullRequestReviewPayload -> Field (Maybe decodesTo) RootMutation submitPullRequestReview requiredArgs object_ = Object.selectionField "submitPullRequestReview" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeSubmitPullRequestReviewInput ] object_ (identity >> Decode.nullable) type alias UpdateProjectRequiredArguments = { input : Github.InputObject.UpdateProjectInput } {-| Updates an existing project. -} updateProject : UpdateProjectRequiredArguments -> SelectionSet decodesTo Github.Object.UpdateProjectPayload -> Field (Maybe decodesTo) RootMutation updateProject requiredArgs object_ = Object.selectionField "updateProject" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeUpdateProjectInput ] object_ (identity >> Decode.nullable) type alias UpdateProjectCardRequiredArguments = { input : Github.InputObject.UpdateProjectCardInput } {-| Updates an existing project card. -} updateProjectCard : UpdateProjectCardRequiredArguments -> SelectionSet decodesTo Github.Object.UpdateProjectCardPayload -> Field (Maybe decodesTo) RootMutation updateProjectCard requiredArgs object_ = Object.selectionField "updateProjectCard" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeUpdateProjectCardInput ] object_ (identity >> Decode.nullable) type alias UpdateProjectColumnRequiredArguments = { input : Github.InputObject.UpdateProjectColumnInput } {-| Updates an existing project column. -} updateProjectColumn : UpdateProjectColumnRequiredArguments -> SelectionSet decodesTo Github.Object.UpdateProjectColumnPayload -> Field (Maybe decodesTo) RootMutation updateProjectColumn requiredArgs object_ = Object.selectionField "updateProjectColumn" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeUpdateProjectColumnInput ] object_ (identity >> Decode.nullable) type alias UpdatePullRequestReviewRequiredArguments = { input : Github.InputObject.UpdatePullRequestReviewInput } {-| Updates the body of a pull request review. -} updatePullRequestReview : UpdatePullRequestReviewRequiredArguments -> SelectionSet decodesTo Github.Object.UpdatePullRequestReviewPayload -> Field (Maybe decodesTo) RootMutation updatePullRequestReview requiredArgs object_ = Object.selectionField "updatePullRequestReview" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeUpdatePullRequestReviewInput ] object_ (identity >> Decode.nullable) type alias UpdatePullRequestReviewCommentRequiredArguments = { input : Github.InputObject.UpdatePullRequestReviewCommentInput } {-| Updates a pull request review comment. -} updatePullRequestReviewComment : UpdatePullRequestReviewCommentRequiredArguments -> SelectionSet decodesTo Github.Object.UpdatePullRequestReviewCommentPayload -> Field (Maybe decodesTo) RootMutation updatePullRequestReviewComment requiredArgs object_ = Object.selectionField "updatePullRequestReviewComment" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeUpdatePullRequestReviewCommentInput ] object_ (identity >> Decode.nullable) type alias UpdateSubscriptionRequiredArguments = { input : Github.InputObject.UpdateSubscriptionInput } {-| Updates viewers repository subscription state. -} updateSubscription : UpdateSubscriptionRequiredArguments -> SelectionSet decodesTo Github.Object.UpdateSubscriptionPayload -> Field (Maybe decodesTo) RootMutation updateSubscription requiredArgs object_ = Object.selectionField "updateSubscription" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeUpdateSubscriptionInput ] object_ (identity >> Decode.nullable) type alias UpdateTopicsRequiredArguments = { input : Github.InputObject.UpdateTopicsInput } {-| Replaces the repository's topics with the given topics. -} updateTopics : UpdateTopicsRequiredArguments -> SelectionSet decodesTo Github.Object.UpdateTopicsPayload -> Field (Maybe decodesTo) RootMutation updateTopics requiredArgs object_ = Object.selectionField "updateTopics" [ Argument.required "input" requiredArgs.input Github.InputObject.encodeUpdateTopicsInput ] object_ (identity >> Decode.nullable)