morpheus-graphql-client 0.15.1 → 0.16.0
raw patch · 34 files changed
+39883/−125 lines, 34 filesdep +reludedep ~morpheus-graphql-corePVP ok
version bump matches the API change (PVP)
Dependencies added: relude
Dependency ranges changed: morpheus-graphql-core
API changes (from Hackage documentation)
Files
- changelog.md +8/−0
- morpheus-graphql-client.cabal +21/−4
- src/Data/Morpheus/Client.hs +2/−2
- src/Data/Morpheus/Client/Build.hs +2/−1
- src/Data/Morpheus/Client/Declare/Aeson.hs +29/−22
- src/Data/Morpheus/Client/Declare/Client.hs +14/−18
- src/Data/Morpheus/Client/Declare/Type.hs +2/−4
- src/Data/Morpheus/Client/Fetch.hs +2/−4
- src/Data/Morpheus/Client/Internal/TH.hs +120/−0
- src/Data/Morpheus/Client/Internal/Types.hs +3/−0
- src/Data/Morpheus/Client/JSONSchema/Parse.hs +46/−19
- src/Data/Morpheus/Client/JSONSchema/TypeKind.hs +1/−1
- src/Data/Morpheus/Client/JSONSchema/TypeRef.hs +17/−0
- src/Data/Morpheus/Client/JSONSchema/Types.hs +11/−4
- src/Data/Morpheus/Client/Transform/Core.hs +10/−8
- src/Data/Morpheus/Client/Transform/Inputs.hs +11/−14
- src/Data/Morpheus/Client/Transform/Selection.hs +15/−15
- test/Case/Enum/Test.hs +72/−0
- test/Case/Enum/response.json +6/−0
- test/Case/Enum/schema.gql +12/−0
- test/Case/Github/Test.hs +141/−0
- test/Case/Github/response.json +52/−0
- test/Case/Github/schema.gql +38947/−0
- test/Case/Interface/Test.hs +5/−1
- test/Case/Interface/response.json +4/−0
- test/Case/JSON/Custom/Mutation.hs +69/−0
- test/Case/JSON/Custom/Mutation/response.json +5/−0
- test/Case/JSON/Custom/Query.hs +84/−0
- test/Case/JSON/Custom/Query/response.json +5/−0
- test/Case/JSON/Custom/Subscription.hs +70/−0
- test/Case/JSON/Custom/Subscription/response.json +5/−0
- test/Case/JSON/Custom/schema.json +70/−0
- test/Spec.hs +9/−1
- test/Spec/Utils.hs +13/−7
changelog.md view
@@ -1,5 +1,13 @@ # Changelog +## 0.16.0 - 05.11.2020++### Minor Changes++- parser performance optimization+- fixed #514: json parser selects interface type as fallback+- fixed #546: `defineByIntrospectionFile` support custom (Query,Mutation,Subscription)+ ## 0.15.1 - 12.09.2020 ## 0.15.0 - 12.09.2020
morpheus-graphql-client.cabal view
@@ -4,10 +4,10 @@ -- -- see: https://github.com/sol/hpack ----- hash: 13a17d08fbc7ae3bac2e3d68edd67acdbbcf781e391153b2670753ca9a9a8e83+-- hash: 429de07c8ee5d1c020878cf8ab48c03e9911bd2b7657e44273b73cbc0defddd5 name: morpheus-graphql-client-version: 0.15.1+version: 0.16.0 synopsis: Morpheus GraphQL Client description: Build GraphQL APIs with your favourite functional language! category: web, graphql, client@@ -23,9 +23,17 @@ changelog.md README.md data-files:+ test/Case/Enum/schema.gql+ test/Case/Github/schema.gql test/Case/Interface/schema.gql test/Case/LowercaseTypeName/schema.gql+ test/Case/Enum/response.json+ test/Case/Github/response.json test/Case/Interface/response.json+ test/Case/JSON/Custom/Mutation/response.json+ test/Case/JSON/Custom/Query/response.json+ test/Case/JSON/Custom/schema.json+ test/Case/JSON/Custom/Subscription/response.json test/Case/LowercaseTypeName/response.json source-repository head@@ -41,9 +49,11 @@ Data.Morpheus.Client.Declare.Client Data.Morpheus.Client.Declare.Type Data.Morpheus.Client.Fetch+ Data.Morpheus.Client.Internal.TH Data.Morpheus.Client.Internal.Types Data.Morpheus.Client.JSONSchema.Parse Data.Morpheus.Client.JSONSchema.TypeKind+ Data.Morpheus.Client.JSONSchema.TypeRef Data.Morpheus.Client.JSONSchema.Types Data.Morpheus.Client.Transform.Core Data.Morpheus.Client.Transform.Inputs@@ -56,8 +66,9 @@ aeson >=1.4.4.0 && <=1.6 , base >=4.7 && <5 , bytestring >=0.10.4 && <0.11- , morpheus-graphql-core >=0.15.0 && <0.16.0+ , morpheus-graphql-core >=0.16.0 && <0.17.0 , mtl >=2.0 && <=3.0+ , relude >=0.3.0 , template-haskell >=2.0 && <=3.0 , text >=1.2.3.0 && <1.3 , transformers >=0.3.0.0 && <1.0@@ -68,7 +79,12 @@ type: exitcode-stdio-1.0 main-is: Spec.hs other-modules:+ Case.Enum.Test+ Case.Github.Test Case.Interface.Test+ Case.JSON.Custom.Mutation+ Case.JSON.Custom.Query+ Case.JSON.Custom.Subscription Case.LowercaseTypeName.Test Spec.Utils Paths_morpheus_graphql_client@@ -81,8 +97,9 @@ , bytestring >=0.10.4 && <0.11 , directory >=1.0 , morpheus-graphql-client- , morpheus-graphql-core >=0.15.0 && <0.16.0+ , morpheus-graphql-core >=0.16.0 && <0.17.0 , mtl >=2.0 && <=3.0+ , relude >=0.3.0 , tasty , tasty-hunit , template-haskell >=2.0 && <=3.0
src/Data/Morpheus/Client.hs view
@@ -1,4 +1,5 @@ {-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client ( gql,@@ -18,8 +19,6 @@ import qualified Data.ByteString.Lazy as L ( readFile, )--- MORPHEUS- import Data.Morpheus.Client.Build ( defineQuery, )@@ -45,6 +44,7 @@ ( Eventless, ) import Language.Haskell.TH+import Relude hiding (ByteString) defineByDocumentFile :: FilePath -> (GQLQuery, String) -> Q [Dec] defineByDocumentFile = defineByDocument . L.readFile
src/Data/Morpheus/Client/Build.hs view
@@ -1,6 +1,7 @@ {-# LANGUAGE DataKinds #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client.Build ( defineQuery,@@ -9,7 +10,6 @@ -- -- MORPHEUS- import Data.Morpheus.Client.Declare.Client ( declareClient, )@@ -39,6 +39,7 @@ Result (..), ) import Language.Haskell.TH+import Relude defineQuery :: IO (Eventless (Schema VALID)) -> (GQLQuery, String) -> Q [Dec] defineQuery ioSchema (query, src) = do
src/Data/Morpheus/Client/Declare/Aeson.hs view
@@ -5,21 +5,28 @@ {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE TupleSections #-} {-# LANGUAGE TypeApplications #-} {-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client.Declare.Aeson ( aesonDeclarations, ) where ------ MORPHEUS import Data.Aeson import Data.Aeson.Types import qualified Data.HashMap.Lazy as H ( lookup, )+import Data.Morpheus.Client.Internal.TH+ ( decodeObjectE,+ destructRecord,+ failExp,+ matchWith,+ mkFieldsE,+ ) import Data.Morpheus.Client.Internal.Types ( ClientTypeDefinition (..), TypeNameTH (..),@@ -27,11 +34,7 @@ import Data.Morpheus.Internal.TH ( _', applyCons,- decodeObjectE,- destructRecord, funDSimple,- matchWith,- mkFieldsE, toConE, toName, toString,@@ -56,10 +59,7 @@ msg, toFieldName, )-import Data.Semigroup ((<>))-import Data.Text- ( unpack,- )+import qualified Data.Text as T import Language.Haskell.TH ( DecQ, Exp (..),@@ -74,6 +74,7 @@ tupP, varE, )+import Relude hiding (toString) aesonDeclarations :: TypeKind -> [ClientTypeDefinition -> DecQ] aesonDeclarations KindEnum = [deriveFromJSON, deriveToJSON]@@ -124,13 +125,14 @@ aesonUnionObject typeD aesonObject :: [FieldName] -> ConsD cat VALID -> ExpQ-aesonObject tNamespace con@ConsD {cName} = do- body <- aesonObjectBody tNamespace con- pure $- AppE- (AppE (VarE 'withObject) name)- (LamE [v'] body)+aesonObject tNamespace con@ConsD {cName} =+ withBody+ <$> aesonObjectBody tNamespace con where+ withBody body =+ AppE+ (AppE (VarE 'withObject) name)+ (LamE [v'] body) name :: Exp name = toString (nameSpaceType tNamespace cName) @@ -150,11 +152,16 @@ aesonUnionObject ClientTypeDefinition { clientCons,- clientTypeName = TypeNameTH {namespace}+ clientTypeName = TypeNameTH {namespace, typename} } = appE (varE 'takeValueType) $- matchWith False f clientCons+ matchWith elseCond f clientCons where+ elseCond =+ (tupP [_', v'],)+ . aesonObjectBody+ namespace+ <$> find ((typename ==) . cName) clientCons f cons@ConsD {cName, cFields} = ( tupP [toString cName, if null cFields then _' else v'], aesonObjectBody namespace cons@@ -163,7 +170,7 @@ takeValueType :: ((String, Object) -> Parser a) -> Value -> Parser a takeValueType f (Object hMap) = case H.lookup "__typename" hMap of Nothing -> fail "key \"__typename\" not found on object"- Just (String x) -> pure (unpack x, hMap) >>= f+ Just (String x) -> pure (T.unpack x, hMap) >>= f Just val -> fail $ "key \"__typename\" should be string but found: " <> show val takeValueType _ _ = fail "expected Object"@@ -179,7 +186,7 @@ body = [funDSimple 'parseJSON [] expr] aesonFromJSONEnumBody :: TypeNameTH -> [ConsD cat VALID] -> ExpQ-aesonFromJSONEnumBody TypeNameTH {typename} = matchWith False f+aesonFromJSONEnumBody TypeNameTH {typename} = matchWith (Just (v', failExp)) f where f :: ConsD cat VALID -> (PatQ, ExpQ) f ConsD {cName} =@@ -188,7 +195,7 @@ ) aesonToJSONEnumBody :: TypeNameTH -> [ConsD cat VALID] -> ExpQ-aesonToJSONEnumBody TypeNameTH {typename} = matchWith True f+aesonToJSONEnumBody TypeNameTH {typename} = matchWith Nothing f where f :: ConsD cat VALID -> (PatQ, ExpQ) f ConsD {cName} =@@ -220,7 +227,7 @@ pure $ AppE (VarE 'object)- (mkFieldsE '(.=) cFields)+ (mkFieldsE typename '(.=) cFields) deriveToJSON ClientTypeDefinition { clientTypeName = clientTypeName@TypeNameTH {typename},
src/Data/Morpheus/Client/Declare/Client.hs view
@@ -2,6 +2,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client.Declare.Client ( declareClient,@@ -11,7 +12,9 @@ import Data.Morpheus.Client.Declare.Aeson ( aesonDeclarations, )-import Data.Morpheus.Client.Declare.Type (typeDeclarations)+import Data.Morpheus.Client.Declare.Type+ ( typeDeclarations,+ ) import Data.Morpheus.Client.Fetch ( deriveFetch, )@@ -20,26 +23,19 @@ ClientTypeDefinition (..), TypeNameTH (..), )-import Data.Morpheus.Internal.TH- ( toCon,- )-import Data.Morpheus.Types.Internal.AST- ( FieldName,- )-import Data.Semigroup ((<>))+import Data.Morpheus.Internal.TH (toCon) import Language.Haskell.TH+import Relude hiding (Type) declareClient :: String -> ClientDefinition -> Q [Dec]-declareClient _ ClientDefinition {clientTypes = []} = return []+declareClient _ ClientDefinition {clientTypes = []} = pure [] declareClient src ClientDefinition {clientArguments, clientTypes = rootType : subTypes} =- do- root <-- defineOperationType- (queryArgumentType clientArguments)- src- rootType- types <- concat <$> traverse declareType subTypes- pure (root <> types)+ (<>)+ <$> defineOperationType+ (queryArgumentType clientArguments)+ src+ rootType+ <*> (concat <$> traverse declareType subTypes) declareType :: ClientTypeDefinition -> Q [Dec] declareType clientType@ClientTypeDefinition {clientKind} =@@ -49,7 +45,7 @@ apply a = traverse (\f -> f a) queryArgumentType :: Maybe ClientTypeDefinition -> (Type, Q [Dec])-queryArgumentType Nothing = (toCon ("()" :: FieldName), pure [])+queryArgumentType Nothing = (toCon ("()" :: String), pure []) queryArgumentType (Just client@ClientTypeDefinition {clientTypeName}) = (toCon (typename clientTypeName), declareType client)
src/Data/Morpheus/Client/Declare/Type.hs view
@@ -3,14 +3,13 @@ {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client.Declare.Type ( typeDeclarations, ) where ------ MORPHEUS import Data.Morpheus.Client.Internal.Types ( ClientTypeDefinition (..), TypeNameTH (..),@@ -30,9 +29,8 @@ TypeName, VALID, )-import Data.Semigroup ((<>))-import GHC.Generics (Generic) import Language.Haskell.TH+import Relude hiding (Type) typeDeclarations :: TypeKind -> [ClientTypeDefinition -> Q Dec] typeDeclarations KindScalar = []
src/Data/Morpheus/Client/Fetch.hs view
@@ -4,6 +4,7 @@ {-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client.Fetch ( Fetch (..),@@ -11,7 +12,6 @@ ) where -import Control.Monad ((>=>)) import Data.Aeson ( FromJSON, ToJSON (..),@@ -21,9 +21,6 @@ import qualified Data.Aeson as A import qualified Data.Aeson.Types as A import Data.ByteString.Lazy (ByteString)------ MORPHEUS- import Data.Morpheus.Internal.TH ( applyCons, toCon,@@ -41,6 +38,7 @@ ( pack, ) import Language.Haskell.TH+import Relude hiding (ByteString, Type) fixVars :: A.Value -> Maybe A.Value fixVars x
+ src/Data/Morpheus/Client/Internal/TH.hs view
@@ -0,0 +1,120 @@+{-# LANGUAGE CPP #-}+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE GADTs #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE NoImplicitPrelude #-}++module Data.Morpheus.Client.Internal.TH+ ( matchWith,+ decodeObjectE,+ mkFieldsE,+ destructRecord,+ failExp,+ )+where++import Data.Foldable (foldr1)+import Data.Morpheus.Internal.TH+ ( toCon,+ toName,+ toString,+ toVar,+ toVarE,+ v',+ vars,+ )+import Data.Morpheus.Internal.Utils (nameSpaceField)+import Data.Morpheus.Types.Internal.AST+ ( FieldDefinition (..),+ TypeName (..),+ isNullable,+ )+import Language.Haskell.TH+import Relude hiding (toString)++matchWith ::+ Maybe (PatQ, ExpQ) ->+ (t -> (PatQ, ExpQ)) ->+ [t] ->+ ExpQ+matchWith fbexp f xs = lamCaseE (map buildMatch xs <> fallback fbexp)+ where+ fallback (Just (pat, fb)) = [match pat (normalB fb) []]+ fallback _ = []+ buildMatch x = match pat (normalB body) []+ where+ (pat, body) = f x++failExp :: ExpQ+failExp =+ appE+ (toVarE 'fail)+ ( uInfixE+ (appE (varE 'show) v')+ (varE '(<>))+ (stringE " is Not Valid Union Constructor")+ )++decodeObjectE :: (Bool -> Name) -> TypeName -> [FieldDefinition cat s] -> ExpQ+decodeObjectE _ conName [] = appE (varE 'pure) (toCon conName)+decodeObjectE funName conName fields =+ uInfixE+ (toCon conName)+ (varE '(<$>))+ (foldr1 withApplicative $ map (defField funName) fields)++withApplicative :: ExpQ -> ExpQ -> ExpQ+withApplicative x = uInfixE x (varE '(<*>))++defField :: (Bool -> Name) -> FieldDefinition cat s -> ExpQ+defField f field@FieldDefinition {fieldName} = uInfixE v' (varE $ f (isNullable field)) (toString fieldName)++-- | 'mkFieldsE'+--+-- input :+-- >>>+-- mkFieldsE 'mkValue [FieldDefinition { fieldName = \"field1" ,..} ,..]+-- >>>+--+-- expression :+-- >>>+-- [ mkValue \"field1\" field1,+-- ..+-- ]+-- >>>+mkFieldsE :: TypeName -> Name -> [FieldDefinition cat s] -> Exp+mkFieldsE conName name = ListE . map (mkEntryWith conName name)++-- input : mkFieldWith 'mkValue (FieldDefinition { fieldName = "field1", ..})+-- expression: mkValue "field1" field1+mkEntryWith ::+ TypeName ->+ Name ->+ FieldDefinition cat s ->+ Exp+mkEntryWith conName f FieldDefinition {fieldName} =+ AppE+ (AppE (VarE f) (toString fieldName))+ (toVar $ nameSpaceField conName fieldName)++-- |+-- input:+-- >>>+-- destructRecord "User" ["name","id"]+-- >>>+--+-- expression:+-- >>>+-- (User name id)+-- >>>+destructRecord :: TypeName -> [FieldDefinition cat s] -> PatQ+destructRecord conName fields = conP (toName conName) (vars names)+ where+ names = map (nameSpaceField conName . fieldName) fields
src/Data/Morpheus/Client/Internal/Types.hs view
@@ -1,3 +1,5 @@+{-# LANGUAGE NoImplicitPrelude #-}+ module Data.Morpheus.Client.Internal.Types ( ClientTypeDefinition (..), TypeNameTH (..),@@ -12,6 +14,7 @@ TypeNameTH (..), VALID, )+import Relude data ClientTypeDefinition = ClientTypeDefinition { clientTypeName :: TypeNameTH,
src/Data/Morpheus/Client/JSONSchema/Parse.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE NamedFieldPuns #-}@@ -10,15 +11,10 @@ ) where -import Control.Applicative (pure)-import Control.Monad ((>>=)) import Data.Aeson import Data.ByteString.Lazy (ByteString)-import Data.Either (Either (..))-import Data.Functor ((<$>), fmap)-import Data.List (concat)-import Data.Maybe (Maybe (..)) import Data.Morpheus.Client.JSONSchema.TypeKind (TypeKind (..))+import qualified Data.Morpheus.Client.JSONSchema.TypeRef as Ref import Data.Morpheus.Client.JSONSchema.Types ( EnumValue (..), Field (..),@@ -33,7 +29,8 @@ ) import Data.Morpheus.Error (globalErrorMessage) import Data.Morpheus.Internal.Utils- ( fromElems,+ ( Failure (..),+ fromElems, ) import Data.Morpheus.Types.IO (JSONResponse (..)) import qualified Data.Morpheus.Types.Internal.AST as AST@@ -48,11 +45,16 @@ IN, Message, OUT,+ OperationType (..),+ RootOperationTypeDefinition (..),+ SchemaDefinition (..), TypeContent (..), TypeDefinition (..), TypeName, TypeWrapper, VALID,+ ValidationErrors,+ buildSchema, createScalarType, mkEnumContent, mkInputValue,@@ -65,18 +67,14 @@ ) import Data.Morpheus.Types.Internal.Resolving ( Eventless,- failure, )-import Data.Semigroup ((<>))-import Data.String (String)-import Data.Traversable (traverse)-import Prelude- ( ($),- (.),- Bool (..),- Show (..),- uncurry,+import Relude hiding+ ( ByteString,+ Type,+ fromList,+ show, )+import Prelude (show) decoderError :: Message -> Eventless a decoderError = failure . globalErrorMessage@@ -84,14 +82,43 @@ decodeIntrospection :: ByteString -> Eventless (AST.Schema VALID) decodeIntrospection jsonDoc = case jsonSchema of Left errors -> decoderError $ msg errors- Right JSONResponse {responseData = Just Introspection {__schema = Schema {types}}} ->- traverse parse types >>= fromElems . concat >>= validate+ Right+ JSONResponse+ { responseData =+ Just+ Introspection+ { __schema =+ schema@Schema {types}+ }+ } -> do+ schemaDef <- mkSchemaDef schema+ gqlTypes <- concat <$> traverse parse types+ buildSchema (Just schemaDef, gqlTypes, empty) >>= validate Right res -> decoderError (msg $ show res) where validate :: AST.Schema CONST -> Eventless (AST.Schema VALID) validate = validateSchema False defaultConfig jsonSchema :: Either String (JSONResponse Introspection) jsonSchema = eitherDecode jsonDoc++mkSchemaDef ::+ (Monad m, Failure ValidationErrors m) =>+ Schema ->+ m SchemaDefinition+mkSchemaDef+ Schema+ { queryType,+ mutationType,+ subscriptionType+ } =+ SchemaDefinition empty+ <$> fromElems+ ( catMaybes+ [ Just (RootOperationTypeDefinition Query $ Ref.name queryType),+ RootOperationTypeDefinition Mutation . Ref.name <$> mutationType,+ RootOperationTypeDefinition Subscription . Ref.name <$> subscriptionType+ ]+ ) class ParseJSONSchema a b where parse :: a -> Eventless b
src/Data/Morpheus/Client/JSONSchema/TypeKind.hs view
@@ -10,7 +10,7 @@ import Data.Aeson (FromJSON (..)) import GHC.Generics-import Prelude (Eq, Show)+import Relude data TypeKind = SCALAR
+ src/Data/Morpheus/Client/JSONSchema/TypeRef.hs view
@@ -0,0 +1,17 @@+{-# LANGUAGE DeriveAnyClass #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE NoImplicitPrelude #-}++module Data.Morpheus.Client.JSONSchema.TypeRef+ ( TypeRef (..),+ )+where++import Data.Aeson (FromJSON)+import Data.Morpheus.Types.Internal.AST+ ( TypeName,+ )+import Relude++newtype TypeRef = TypeRef {name :: TypeName}+ deriving (Generic, Show, FromJSON)
src/Data/Morpheus/Client/JSONSchema/Types.hs view
@@ -1,7 +1,9 @@ {-# LANGUAGE DeriveAnyClass #-} {-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client.JSONSchema.Types ( Introspection (..),@@ -17,11 +19,12 @@ -- -- MORPHEUS import Data.Morpheus.Client.JSONSchema.TypeKind (TypeKind)+import Data.Morpheus.Client.JSONSchema.TypeRef (TypeRef) import Data.Morpheus.Types.Internal.AST ( FieldName, TypeName, )-import GHC.Generics (Generic)+import Relude hiding (Type) -- TYPES FOR DECODING JSON INTROSPECTION --@@ -30,12 +33,16 @@ } deriving (Generic, Show, FromJSON) -newtype Schema = Schema- { types :: [Type]+data Schema = Schema+ { types :: [Type],+ queryType :: TypeRef,+ mutationType :: Maybe TypeRef,+ subscriptionType :: Maybe TypeRef+ -- TODO: directives+ --directives: [__Directive] } deriving (Generic, Show, FromJSON) --- TYPE data Type = Type { kind :: TypeKind, name :: Maybe TypeName,
src/Data/Morpheus/Client/Transform/Core.hs view
@@ -5,6 +5,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client.Transform.Core ( Converter (..),@@ -14,16 +15,12 @@ typeFrom, deprecationWarning, customScalarTypes,+ UpdateT (..),+ resolveUpdates, ) where ------ MORPHEUS-import Control.Monad.Reader (MonadReader, asks)-import Control.Monad.Trans.Class (lift)-import Control.Monad.Trans.Reader- ( ReaderT (..),- )+import Control.Monad (foldM) import Data.Morpheus.Client.Internal.Types ( ClientTypeDefinition (..), )@@ -63,7 +60,7 @@ ( Eventless, Result (..), )-import Data.Semigroup ((<>))+import Relude type Env = (Schema VALID, VariableDefinitions RAW) @@ -84,6 +81,11 @@ instance Failure ValidationError Converter where failure err = failure [toGQLError err]++newtype UpdateT m a = UpdateT {updateTState :: a -> m a}++resolveUpdates :: Monad m => a -> [UpdateT m a] -> m a+resolveUpdates a = foldM (&) a . fmap updateTState compileError :: Message -> GQLErrors compileError x =
src/Data/Morpheus/Client/Transform/Inputs.hs view
@@ -4,6 +4,7 @@ {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client.Transform.Inputs ( renderNonOutputTypes,@@ -11,24 +12,21 @@ ) where ------ MORPHEUS-import Control.Monad.Reader (asks) import Data.Morpheus.Client.Internal.Types ( ClientTypeDefinition (..), TypeNameTH (..), ) import Data.Morpheus.Client.Transform.Core ( Converter (..),+ UpdateT (..), customScalarTypes, getType,+ resolveUpdates, typeFrom, ) import Data.Morpheus.Internal.Utils- ( UpdateT (..),- elems,+ ( elems, empty,- resolveUpdates, ) import Data.Morpheus.Types.Internal.AST ( ANY,@@ -51,7 +49,7 @@ removeDuplicates, toAny, )-import Data.Semigroup ((<>))+import Relude hiding (empty) renderArguments :: VariableDefinitions RAW ->@@ -69,7 +67,7 @@ clientCons = [ ConsD { cName,- cFields = map fieldD (elems variables)+ cFields = fieldD <$> elems variables } ] }@@ -87,9 +85,8 @@ renderOperationArguments :: Operation VALID -> Converter (Maybe ClientTypeDefinition)-renderOperationArguments Operation {operationName} = do- variables <- asks snd- pure $ renderArguments variables (getOperationName operationName <> "Args")+renderOperationArguments Operation {operationName} =+ asks ((`renderArguments` (getOperationName operationName <> "Args")) . snd) -- INPUTS renderNonOutputTypes ::@@ -97,7 +94,7 @@ Converter [ClientTypeDefinition] renderNonOutputTypes leafTypes = do variables <- asks (elems . snd)- inputTypeRequests <- resolveUpdates [] $ map (UpdateT . exploreInputTypeNames . typeConName . variableType) variables+ inputTypeRequests <- resolveUpdates [] $ fmap (UpdateT . exploreInputTypeNames . typeConName . variableType) variables concat <$> traverse buildInputType (removeDuplicates $ inputTypeRequests <> leafTypes) exploreInputTypeNames :: TypeName -> [TypeName] -> Converter [TypeName]@@ -110,7 +107,7 @@ scanType (DataInputObject fields) = resolveUpdates (name : collected)- (map toInputTypeD $ elems fields)+ (toInputTypeD <$> elems fields) where toInputTypeD :: FieldDefinition IN VALID -> UpdateT Converter [TypeName] toInputTypeD FieldDefinition {fieldType = TypeRef {typeConName}} =@@ -144,7 +141,7 @@ [ mkInputType typeName KindEnum- (map mkConsEnum enumTags)+ (fmap mkConsEnum enumTags) ] subTypes DataScalar {} = pure
src/Data/Morpheus/Client/Transform/Selection.hs view
@@ -4,6 +4,7 @@ {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-}+{-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Client.Transform.Selection ( toClientDefinition,@@ -11,9 +12,6 @@ ) where ------ MORPHEUS-import Control.Monad.Reader (asks, runReaderT) import Data.Morpheus.Client.Internal.Types ( ClientDefinition (..), ClientTypeDefinition (..),@@ -50,15 +48,16 @@ VariableDefinitions, getOperationDataType, getOperationName,+ mkTypeRef, msg, toAny, toFieldName,- mkTypeRef ) import Data.Morpheus.Types.Internal.Resolving ( Eventless, )-import Data.Semigroup ((<>))+import Relude hiding (empty, show)+import Prelude (show) toClientDefinition :: Schema VALID ->@@ -194,15 +193,16 @@ Selection { selectionName, selectionPosition- } - | selectionName == "__typename" - = processDeprecation FieldDefinition {- fieldName = "__typename",- fieldDescription = Nothing,- fieldType = mkTypeRef "String",- fieldDirectives = [],- fieldContent = Nothing- }+ }+ | selectionName == "__typename" =+ processDeprecation+ FieldDefinition+ { fieldName = "__typename",+ fieldDescription = Nothing,+ fieldType = mkTypeRef "String",+ fieldDirectives = [],+ fieldContent = Nothing+ } | otherwise = withTypeContent typeContent where withTypeContent DataObject {objectFields} =@@ -217,7 +217,7 @@ { fieldType = alias@TypeRef {typeConName}, fieldDirectives } =- checkDeprecated >> (trans <$> getType typeConName)+ checkDeprecated *> (trans <$> getType typeConName) where trans x = (x, alias {typeConName = typeFrom path x, typeArgs = Nothing})
+ test/Case/Enum/Test.hs view
@@ -0,0 +1,72 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}++module Case.Enum.Test+ ( test,+ )+where++import Data.ByteString.Lazy.Char8+ ( ByteString,+ )+import Data.Morpheus.Client+ ( Fetch (..),+ gql,+ )+import Spec.Utils+ ( defineClientWith,+ mockApi,+ )+import Test.Tasty+ ( TestTree,+ )+import Test.Tasty.HUnit+ ( assertEqual,+ testCase,+ )+import Prelude+ ( ($),+ Either (..),+ IO,+ String,+ )++defineClientWith+ "Enum"+ [gql|+ query MyQuery( $inputCity: City!) {+ city(city:$inputCity)+ cities+ }+ |]++resolver :: ByteString -> IO ByteString+resolver = mockApi "Enum"++client :: IO (Either String MyQuery)+client = fetch resolver MyQueryArgs {inputCity = CityAthens}++test :: TestTree+test = testCase "test Enum" $ do+ value <- client+ assertEqual+ "test Enum"+ ( Right+ ( MyQuery+ { city = CityAthens,+ cities =+ [ CityAthens,+ CitySparta,+ CityCorinth,+ CityDelphi,+ CityArgos+ ]+ }+ )+ )+ value
+ test/Case/Enum/response.json view
@@ -0,0 +1,6 @@+{+ "data": {+ "city": "Athens",+ "cities": ["Athens", "Sparta", "Corinth", "Delphi", "Argos"]+ }+}
+ test/Case/Enum/schema.gql view
@@ -0,0 +1,12 @@+enum City {+ Athens+ Sparta+ Corinth+ Delphi+ Argos+}++type Query {+ city(city: City!): City!+ cities: [City!]!+}
+ test/Case/Github/Test.hs view
@@ -0,0 +1,141 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}++module Case.Github.Test+ ( testInterface,+ )+where++import Data.ByteString.Lazy.Char8+ ( ByteString,+ )+import Data.Morpheus.Client+ ( Fetch (..),+ GQLScalar (..),+ ScalarValue (..),+ gql,+ )+import Data.Text (Text)+import Spec.Utils+ ( defineClientWith,+ mockApi,+ )+import Test.Tasty+ ( TestTree,+ )+import Test.Tasty.HUnit+ ( assertEqual,+ testCase,+ )+import Prelude+ ( ($),+ Applicative (..),+ Bool (..),+ Either (..),+ Eq (..),+ IO,+ Maybe (..),+ Show,+ String,+ )++newtype GitTimestamp = GitTimestamp+ { unGitTimestamp :: Text+ }+ deriving (Eq, Show)++instance GQLScalar GitTimestamp where+ parseValue (String x) = pure (GitTimestamp x)+ parseValue _ = Left ""+ serialize (GitTimestamp x) = String x++defineClientWith+ "Github"+ [gql|+ query GetTags ($user: String!, $repo: String!)+ {+ repository(owner: $user, name: $repo) {+ refs(refPrefix: "refs/tags/", first: 100) {+ pageInfo {+ endCursor+ hasNextPage+ }+ edges {+ cursor+ node {+ name+ target {+ __typename+ ... on Tag {+ tagger {+ date+ }+ }+ }+ }+ }+ }+ }+ }+ |]++resolver :: ByteString -> IO ByteString+resolver = mockApi "Interface"++client :: IO (Either String GetTags)+client =+ fetch+ resolver+ GetTagsArgs+ { user = "UserName",+ repo = "repoName"+ }++testInterface :: TestTree+testInterface = testCase "test Github interfaces" $ do+ value <- client+ assertEqual+ "test Github interface"+ ( Right+ ( GetTags+ { repository =+ Just+ RepositoryRepository+ { refs =+ Just+ RepositoryRefsRefConnection+ { pageInfo =+ RepositoryRefsPageInfoPageInfo+ { endCursor = Just "",+ hasNextPage = False+ },+ edges =+ Just+ [ Just+ RepositoryRefsEdgesRefEdge+ { cursor = "",+ node =+ Just+ RepositoryRefsEdgesNodeRef+ { name = "",+ target =+ Just+ RepositoryRefsEdgesNodeTargetGitObject+ { __typename = ""+ }+ }+ }+ ]+ }+ }+ }+ )+ )+ value
+ test/Case/Github/response.json view
@@ -0,0 +1,52 @@+{+ "data": {+ "character": [+ {+ "__typename": "Deity",+ "name": "Deity Name",+ "power": "Deity Power"+ },+ {+ "__typename": "Character",+ "name": "Character Name"+ },+ {+ "__typename": "Hero",+ "name": "Hero Name",+ "hobby": "Deity Power"+ }+ ],+ "character2": [+ {+ "name1": "test name",+ "name": "test name"+ }+ ],+ "character3": [+ {+ "__typename": "Hero",+ "hobby": "Hero Hobby",+ "name2": "Hero name2"+ },+ {+ "__typename": "Deity",+ "name2": "Hero name2"+ },+ {+ "__typename": "Character",+ "name2": "Character name2"+ }+ ],+ "character4": [+ {+ "__typename": "Character",+ "name2": "Character name2"+ },+ {+ "__typename": "Hero",+ "hobby": "Hero Hobby",+ "name2": "Hero name2"+ }+ ]+ }+}
+ test/Case/Github/schema.gql view
@@ -0,0 +1,38947 @@+"""+Defines what type of global IDs are accepted for a mutation argument of type ID.+"""+directive @possibleTypes(+ """+ Abstract type of accepted global ID+ """+ abstractType: String++ """+ Accepted types of global IDs.+ """+ concreteTypes: [String!]!+) on INPUT_FIELD_DEFINITION++"""+Marks an element of a GraphQL schema as only available via a preview header+"""+directive @preview(+ """+ The identifier of the API preview that toggles this field.+ """+ toggledBy: String!+) on SCALAR | OBJECT | FIELD_DEFINITION | ARGUMENT_DEFINITION | INTERFACE | UNION | ENUM | ENUM_VALUE | INPUT_OBJECT | INPUT_FIELD_DEFINITION++"""+Autogenerated input type of AcceptEnterpriseAdministratorInvitation+"""+input AcceptEnterpriseAdministratorInvitationInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The id of the invitation being accepted+ """+ invitationId: ID!+ @possibleTypes(concreteTypes: ["EnterpriseAdministratorInvitation"])+}++"""+Autogenerated return type of AcceptEnterpriseAdministratorInvitation+"""+type AcceptEnterpriseAdministratorInvitationPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The invitation that was accepted.+ """+ invitation: EnterpriseAdministratorInvitation++ """+ A message confirming the result of accepting an administrator invitation.+ """+ message: String+}++"""+Autogenerated input type of AcceptTopicSuggestion+"""+input AcceptTopicSuggestionInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The name of the suggested topic.+ """+ name: String!++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of AcceptTopicSuggestion+"""+type AcceptTopicSuggestionPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The accepted topic.+ """+ topic: Topic+}++"""+The possible capabilities for action executions setting.+"""+enum ActionExecutionCapabilitySetting {+ """+ All action executions are enabled.+ """+ ALL_ACTIONS++ """+ All action executions are disabled.+ """+ DISABLED++ """+ Only actions defined within the repo are allowed.+ """+ LOCAL_ACTIONS_ONLY++ """+ Organization administrators action execution capabilities.+ """+ NO_POLICY+}++"""+Represents an object which can take actions on GitHub. Typically a User or Bot.+"""+interface Actor {+ """+ A URL pointing to the actor's public avatar.+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int+ ): URI!++ """+ The username of the actor.+ """+ login: String!++ """+ The HTTP path for this actor.+ """+ resourcePath: URI!++ """+ The HTTP URL for this actor.+ """+ url: URI!+}++"""+Location information for an actor+"""+type ActorLocation {+ """+ City+ """+ city: String++ """+ Country name+ """+ country: String++ """+ Country code+ """+ countryCode: String++ """+ Region name+ """+ region: String++ """+ Region or state code+ """+ regionCode: String+}++"""+Autogenerated input type of AddAssigneesToAssignable+"""+input AddAssigneesToAssignableInput {+ """+ The id of the assignable object to add assignees to.+ """+ assignableId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "Assignable"+ )++ """+ The id of users to add as assignees.+ """+ assigneeIds: [ID!]! @possibleTypes(concreteTypes: ["User"])++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated return type of AddAssigneesToAssignable+"""+type AddAssigneesToAssignablePayload {+ """+ The item that was assigned.+ """+ assignable: Assignable++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of AddComment+"""+input AddCommentInput {+ """+ The contents of the comment.+ """+ body: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the subject to modify.+ """+ subjectId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "IssueOrPullRequest"+ )+}++"""+Autogenerated return type of AddComment+"""+type AddCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The edge from the subject's comment connection.+ """+ commentEdge: IssueCommentEdge++ """+ The subject+ """+ subject: Node++ """+ The edge from the subject's timeline connection.+ """+ timelineEdge: IssueTimelineItemEdge+}++"""+Autogenerated input type of AddLabelsToLabelable+"""+input AddLabelsToLabelableInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ids of the labels to add.+ """+ labelIds: [ID!]! @possibleTypes(concreteTypes: ["Label"])++ """+ The id of the labelable object to add labels to.+ """+ labelableId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "Labelable"+ )+}++"""+Autogenerated return type of AddLabelsToLabelable+"""+type AddLabelsToLabelablePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The item that was labeled.+ """+ labelable: Labelable+}++"""+Autogenerated input type of AddProjectCard+"""+input AddProjectCardInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The content of the card. Must be a member of the ProjectCardItem union+ """+ contentId: ID+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "ProjectCardItem"+ )++ """+ The note on the card.+ """+ note: String++ """+ The Node ID of the ProjectColumn.+ """+ projectColumnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"])+}++"""+Autogenerated return type of AddProjectCard+"""+type AddProjectCardPayload {+ """+ The edge from the ProjectColumn's card connection.+ """+ cardEdge: ProjectCardEdge++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ProjectColumn+ """+ projectColumn: ProjectColumn+}++"""+Autogenerated input type of AddProjectColumn+"""+input AddProjectColumnInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The name of the column.+ """+ name: String!++ """+ The Node ID of the project.+ """+ projectId: ID! @possibleTypes(concreteTypes: ["Project"])+}++"""+Autogenerated return type of AddProjectColumn+"""+type AddProjectColumnPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The edge from the project's column connection.+ """+ columnEdge: ProjectColumnEdge++ """+ The project+ """+ project: Project+}++"""+Autogenerated input type of AddPullRequestReviewComment+"""+input AddPullRequestReviewCommentInput {+ """+ The text of the comment.+ """+ body: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The SHA of the commit to comment on.+ """+ commitOID: GitObjectID++ """+ The comment id to reply to.+ """+ inReplyTo: ID @possibleTypes(concreteTypes: ["PullRequestReviewComment"])++ """+ The relative path of the file to comment on.+ """+ path: String++ """+ The line index in the diff to comment on.+ """+ position: Int++ """+ The node ID of the pull request reviewing+ """+ pullRequestId: ID @possibleTypes(concreteTypes: ["PullRequest"])++ """+ The Node ID of the review to modify.+ """+ pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"])+}++"""+Autogenerated return type of AddPullRequestReviewComment+"""+type AddPullRequestReviewCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The newly created comment.+ """+ comment: PullRequestReviewComment++ """+ The edge from the review's comment connection.+ """+ commentEdge: PullRequestReviewCommentEdge+}++"""+Autogenerated input type of AddPullRequestReview+"""+input AddPullRequestReviewInput {+ """+ The contents of the review body comment.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The review line comments.+ """+ comments: [DraftPullRequestReviewComment]++ """+ The commit OID the review pertains to.+ """+ commitOID: GitObjectID++ """+ The event to perform on the pull request review.+ """+ event: PullRequestReviewEvent++ """+ The Node ID of the pull request to modify.+ """+ pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"])++ """+ The review line comment threads.+ """+ threads: [DraftPullRequestReviewThread]+}++"""+Autogenerated return type of AddPullRequestReview+"""+type AddPullRequestReviewPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The newly created pull request review.+ """+ pullRequestReview: PullRequestReview++ """+ The edge from the pull request's review connection.+ """+ reviewEdge: PullRequestReviewEdge+}++"""+Autogenerated input type of AddPullRequestReviewThread+"""+input AddPullRequestReviewThreadInput {+ """+ Body of the thread's first comment.+ """+ body: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The line of the blob to which the thread refers. The end of the line range for multi-line comments.+ """+ line: Int!++ """+ Path to the file being commented on.+ """+ path: String!++ """+ The node ID of the pull request reviewing+ """+ pullRequestId: ID @possibleTypes(concreteTypes: ["PullRequest"])++ """+ The Node ID of the review to modify.+ """+ pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"])++ """+ 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 = RIGHT++ """+ The first line of the range to which the comment refers.+ """+ startLine: Int++ """+ The side of the diff on which the start line resides.+ """+ startSide: DiffSide = RIGHT+}++"""+Autogenerated return type of AddPullRequestReviewThread+"""+type AddPullRequestReviewThreadPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The newly created thread.+ """+ thread: PullRequestReviewThread+}++"""+Autogenerated input type of AddReaction+"""+input AddReactionInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The name of the emoji to react with.+ """+ content: ReactionContent!++ """+ The Node ID of the subject to modify.+ """+ subjectId: ID!+ @possibleTypes(+ concreteTypes: [+ "CommitComment"+ "Issue"+ "IssueComment"+ "PullRequest"+ "PullRequestReview"+ "PullRequestReviewComment"+ "TeamDiscussion"+ "TeamDiscussionComment"+ ]+ abstractType: "Reactable"+ )+}++"""+Autogenerated return type of AddReaction+"""+type AddReactionPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The reaction object.+ """+ reaction: Reaction++ """+ The reactable subject.+ """+ subject: Reactable+}++"""+Autogenerated input type of AddStar+"""+input AddStarInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Starrable ID to star.+ """+ starrableId: ID!+ @possibleTypes(+ concreteTypes: ["Gist", "Repository", "Topic"]+ abstractType: "Starrable"+ )+}++"""+Autogenerated return type of AddStar+"""+type AddStarPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The starrable.+ """+ starrable: Starrable+}++"""+Represents a 'added_to_project' event on a given issue or pull request.+"""+type AddedToProjectEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ Project referenced by event.+ """+ project: Project @preview(toggledBy: "starfox-preview")++ """+ Project card referenced by this project event.+ """+ projectCard: ProjectCard @preview(toggledBy: "starfox-preview")++ """+ Column name referenced by this project event.+ """+ projectColumnName: String! @preview(toggledBy: "starfox-preview")+}++"""+A GitHub App.+"""+type App implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The description of the app.+ """+ description: String+ id: ID!++ """+ The hex color code, without the leading '#', for the logo background.+ """+ logoBackgroundColor: String!++ """+ A URL pointing to the app's logo.+ """+ logoUrl(+ """+ The size of the resulting image.+ """+ size: Int+ ): URI!++ """+ The name of the app.+ """+ name: String!++ """+ A slug based on the name of the app for use in URLs.+ """+ slug: String!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The URL to the app's homepage.+ """+ url: URI!+}++"""+Autogenerated input type of ArchiveRepository+"""+input ArchiveRepositoryInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the repository to mark as archived.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of ArchiveRepository+"""+type ArchiveRepositoryPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The repository that was marked as archived.+ """+ repository: Repository+}++"""+An object that can have users assigned to it.+"""+interface Assignable {+ """+ A list of Users assigned to this object.+ """+ assignees(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserConnection!+}++"""+Represents an 'assigned' event on any assignable object.+"""+type AssignedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the assignable associated with the event.+ """+ assignable: Assignable!++ """+ Identifies the user or mannequin that was assigned.+ """+ assignee: Assignee++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Identifies the user who was assigned.+ """+ user: User+ @deprecated(+ reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC."+ )+}++"""+Types that can be assigned to issues.+"""+union Assignee = Bot | Mannequin | Organization | User++"""+An entry in the audit log.+"""+interface AuditEntry {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Types that can initiate an audit log event.+"""+union AuditEntryActor = Bot | Organization | User++"""+Ordering options for Audit Log connections.+"""+input AuditLogOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection++ """+ The field to order Audit Logs by.+ """+ field: AuditLogOrderField+}++"""+Properties by which Audit Log connections can be ordered.+"""+enum AuditLogOrderField {+ """+ Order audit log entries by timestamp+ """+ CREATED_AT+}++"""+Represents a 'automatic_base_change_failed' event on a given pull request.+"""+type AutomaticBaseChangeFailedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ The new base for this PR+ """+ newBase: String!++ """+ The old base for this PR+ """+ oldBase: String!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!+}++"""+Represents a 'automatic_base_change_succeeded' event on a given pull request.+"""+type AutomaticBaseChangeSucceededEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ The new base for this PR+ """+ newBase: String!++ """+ The old base for this PR+ """+ oldBase: String!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!+}++"""+Represents a 'base_ref_changed' event on a given issue or pull request.+"""+type BaseRefChangedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!+}++"""+Represents a 'base_ref_force_pushed' event on a given pull request.+"""+type BaseRefForcePushedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the after commit SHA for the 'base_ref_force_pushed' event.+ """+ afterCommit: Commit++ """+ Identifies the before commit SHA for the 'base_ref_force_pushed' event.+ """+ beforeCommit: Commit++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!++ """+ Identifies the fully qualified ref name for the 'base_ref_force_pushed' event.+ """+ ref: Ref+}++"""+Represents a Git blame.+"""+type Blame {+ """+ The list of ranges from a Git blame.+ """+ ranges: [BlameRange!]!+}++"""+Represents a range of information from a Git blame.+"""+type BlameRange {+ """+ Identifies the recency of the change, from 1 (new) to 10 (old). This is+ calculated as a 2-quantile and determines the length of distance between the+ median age of all the changes in the file and the recency of the current+ range's change.+ """+ age: Int!++ """+ Identifies the line author+ """+ commit: Commit!++ """+ The ending line for the range+ """+ endingLine: Int!++ """+ The starting line for the range+ """+ startingLine: Int!+}++"""+Represents a Git blob.+"""+type Blob implements GitObject & Node {+ """+ An abbreviated version of the Git object ID+ """+ abbreviatedOid: String!++ """+ Byte size of Blob object+ """+ byteSize: Int!++ """+ The HTTP path for this Git object+ """+ commitResourcePath: URI!++ """+ The HTTP URL for this Git object+ """+ commitUrl: URI!+ id: ID!++ """+ Indicates whether the Blob is binary or text. Returns null if unable to determine the encoding.+ """+ isBinary: Boolean++ """+ Indicates whether the contents is truncated+ """+ isTruncated: Boolean!++ """+ The Git object ID+ """+ oid: GitObjectID!++ """+ The Repository the Git object belongs to+ """+ repository: Repository!++ """+ UTF8 text data or null if the Blob is binary+ """+ text: String+}++"""+A special type of user which takes actions on behalf of GitHub Apps.+"""+type Bot implements Actor & Node & UniformResourceLocatable {+ """+ A URL pointing to the GitHub App's public avatar.+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int+ ): URI!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ The username of the actor.+ """+ login: String!++ """+ The HTTP path for this bot+ """+ resourcePath: URI!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this bot+ """+ url: URI!+}++"""+A branch protection rule.+"""+type BranchProtectionRule implements Node {+ """+ A list of conflicts matching branches protection rule and other branch protection rules+ """+ branchProtectionRuleConflicts(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): BranchProtectionRuleConflictConnection!++ """+ The actor who created this branch protection rule.+ """+ creator: Actor++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ Will new commits pushed to matching branches dismiss pull request review approvals.+ """+ dismissesStaleReviews: Boolean!+ id: ID!++ """+ Can admins overwrite branch protection.+ """+ isAdminEnforced: Boolean!++ """+ Repository refs that are protected by this rule+ """+ matchingRefs(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filters refs with query on name+ """+ query: String+ ): RefConnection!++ """+ Identifies the protection rule pattern.+ """+ pattern: String!++ """+ A list push allowances for this branch protection rule.+ """+ pushAllowances(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): PushAllowanceConnection!++ """+ The repository associated with this branch protection rule.+ """+ repository: Repository++ """+ Number of approving reviews required to update matching branches.+ """+ requiredApprovingReviewCount: Int++ """+ List of required status check contexts that must pass for commits to be accepted to matching branches.+ """+ requiredStatusCheckContexts: [String]++ """+ Are approving reviews required to update matching branches.+ """+ requiresApprovingReviews: Boolean!++ """+ Are reviews from code owners required to update matching branches.+ """+ requiresCodeOwnerReviews: Boolean!++ """+ Are commits required to be signed.+ """+ requiresCommitSignatures: Boolean!++ """+ Are status checks required to update matching branches.+ """+ requiresStatusChecks: Boolean!++ """+ Are branches required to be up to date before merging.+ """+ requiresStrictStatusChecks: Boolean!++ """+ Is pushing to matching branches restricted.+ """+ restrictsPushes: Boolean!++ """+ Is dismissal of pull request reviews restricted.+ """+ restrictsReviewDismissals: Boolean!++ """+ A list review dismissal allowances for this branch protection rule.+ """+ reviewDismissalAllowances(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ReviewDismissalAllowanceConnection!+}++"""+A conflict between two branch protection rules.+"""+type BranchProtectionRuleConflict {+ """+ Identifies the branch protection rule.+ """+ branchProtectionRule: BranchProtectionRule++ """+ Identifies the conflicting branch protection rule.+ """+ conflictingBranchProtectionRule: BranchProtectionRule++ """+ Identifies the branch ref that has conflicting rules+ """+ ref: Ref+}++"""+The connection type for BranchProtectionRuleConflict.+"""+type BranchProtectionRuleConflictConnection {+ """+ A list of edges.+ """+ edges: [BranchProtectionRuleConflictEdge]++ """+ A list of nodes.+ """+ nodes: [BranchProtectionRuleConflict]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type BranchProtectionRuleConflictEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: BranchProtectionRuleConflict+}++"""+The connection type for BranchProtectionRule.+"""+type BranchProtectionRuleConnection {+ """+ A list of edges.+ """+ edges: [BranchProtectionRuleEdge]++ """+ A list of nodes.+ """+ nodes: [BranchProtectionRule]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type BranchProtectionRuleEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: BranchProtectionRule+}++"""+Autogenerated input type of CancelEnterpriseAdminInvitation+"""+input CancelEnterpriseAdminInvitationInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the pending enterprise administrator invitation.+ """+ invitationId: ID!+ @possibleTypes(concreteTypes: ["EnterpriseAdministratorInvitation"])+}++"""+Autogenerated return type of CancelEnterpriseAdminInvitation+"""+type CancelEnterpriseAdminInvitationPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The invitation that was canceled.+ """+ invitation: EnterpriseAdministratorInvitation++ """+ A message confirming the result of canceling an administrator invitation.+ """+ message: String+}++"""+Autogenerated input type of ChangeUserStatus+"""+input ChangeUserStatusInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., :grinning:.+ """+ emoji: String++ """+ If set, the user status will not be shown after this date.+ """+ expiresAt: DateTime++ """+ Whether this status should indicate you are not fully available on GitHub, e.g., you are away.+ """+ limitedAvailability: Boolean = false++ """+ A short description of your current status.+ """+ message: String++ """+ The ID of the organization whose members will be allowed to see the status. If+ omitted, the status will be publicly visible.+ """+ organizationId: ID @possibleTypes(concreteTypes: ["Organization"])+}++"""+Autogenerated return type of ChangeUserStatus+"""+type ChangeUserStatusPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Your updated status.+ """+ status: UserStatus+}++"""+A single check annotation.+"""+type CheckAnnotation @preview(toggledBy: "antiope-preview") {+ """+ The annotation's severity level.+ """+ annotationLevel: CheckAnnotationLevel++ """+ The path to the file that this annotation was made on.+ """+ blobUrl: URI!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The position of this annotation.+ """+ location: CheckAnnotationSpan!++ """+ The annotation's message.+ """+ message: String!++ """+ The path that this annotation was made on.+ """+ path: String!++ """+ Additional information about the annotation.+ """+ rawDetails: String++ """+ The annotation's title+ """+ title: String+}++"""+The connection type for CheckAnnotation.+"""+type CheckAnnotationConnection {+ """+ A list of edges.+ """+ edges: [CheckAnnotationEdge]++ """+ A list of nodes.+ """+ nodes: [CheckAnnotation] @preview(toggledBy: "antiope-preview")++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Information from a check run analysis to specific lines of code.+"""+input CheckAnnotationData @preview(toggledBy: "antiope-preview") {+ """+ Represents an annotation's information level+ """+ annotationLevel: CheckAnnotationLevel!++ """+ The location of the annotation+ """+ location: CheckAnnotationRange!++ """+ A short description of the feedback for these lines of code.+ """+ message: String!++ """+ The path of the file to add an annotation to.+ """+ path: String!++ """+ Details about this annotation.+ """+ rawDetails: String++ """+ The title that represents the annotation.+ """+ title: String+}++"""+An edge in a connection.+"""+type CheckAnnotationEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: CheckAnnotation @preview(toggledBy: "antiope-preview")+}++"""+Represents an annotation's information level.+"""+enum CheckAnnotationLevel @preview(toggledBy: "antiope-preview") {+ """+ An annotation indicating an inescapable error.+ """+ FAILURE++ """+ An annotation indicating some information.+ """+ NOTICE++ """+ An annotation indicating an ignorable error.+ """+ WARNING+}++"""+A character position in a check annotation.+"""+type CheckAnnotationPosition @preview(toggledBy: "antiope-preview") {+ """+ Column number (1 indexed).+ """+ column: Int++ """+ Line number (1 indexed).+ """+ line: Int!+}++"""+Information from a check run analysis to specific lines of code.+"""+input CheckAnnotationRange @preview(toggledBy: "antiope-preview") {+ """+ The ending column of the range.+ """+ endColumn: Int++ """+ The ending line of the range.+ """+ endLine: Int!++ """+ The starting column of the range.+ """+ startColumn: Int++ """+ The starting line of the range.+ """+ startLine: Int!+}++"""+An inclusive pair of positions for a check annotation.+"""+type CheckAnnotationSpan @preview(toggledBy: "antiope-preview") {+ """+ End position (inclusive).+ """+ end: CheckAnnotationPosition!++ """+ Start position (inclusive).+ """+ start: CheckAnnotationPosition!+}++"""+The possible states for a check suite or run conclusion.+"""+enum CheckConclusionState @preview(toggledBy: "antiope-preview") {+ """+ The check suite or run requires action.+ """+ ACTION_REQUIRED++ """+ The check suite or run has been cancelled.+ """+ CANCELLED++ """+ The check suite or run has failed.+ """+ FAILURE++ """+ The check suite or run was neutral.+ """+ NEUTRAL++ """+ The check suite or run was skipped.+ """+ SKIPPED++ """+ The check suite or run was marked stale by GitHub. Only GitHub can use this conclusion.+ """+ STALE++ """+ The check suite or run has succeeded.+ """+ SUCCESS++ """+ The check suite or run has timed out.+ """+ TIMED_OUT+}++"""+A check run.+"""+type CheckRun implements Node & UniformResourceLocatable+@preview(toggledBy: "antiope-preview") {+ """+ The check run's annotations+ """+ annotations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): CheckAnnotationConnection++ """+ The check suite that this run is a part of.+ """+ checkSuite: CheckSuite!++ """+ Identifies the date and time when the check run was completed.+ """+ completedAt: DateTime++ """+ The conclusion of the check run.+ """+ conclusion: CheckConclusionState++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The URL from which to find full details of the check run on the integrator's site.+ """+ detailsUrl: URI++ """+ A reference for the check run on the integrator's system.+ """+ externalId: String+ id: ID!++ """+ The name of the check for this check run.+ """+ name: String!++ """+ The permalink to the check run summary.+ """+ permalink: URI!++ """+ The repository associated with this check run.+ """+ repository: Repository!++ """+ The HTTP path for this check run.+ """+ resourcePath: URI!++ """+ Identifies the date and time when the check run was started.+ """+ startedAt: DateTime++ """+ The current status of the check run.+ """+ status: CheckStatusState!++ """+ A string representing the check run's summary+ """+ summary: String++ """+ A string representing the check run's text+ """+ text: String++ """+ A string representing the check run+ """+ title: String++ """+ The HTTP URL for this check run.+ """+ url: URI!+}++"""+Possible further actions the integrator can perform.+"""+input CheckRunAction @preview(toggledBy: "antiope-preview") {+ """+ A short explanation of what this action would do.+ """+ description: String!++ """+ A reference for the action on the integrator's system.+ """+ identifier: String!++ """+ The text to be displayed on a button in the web UI.+ """+ label: String!+}++"""+The connection type for CheckRun.+"""+type CheckRunConnection {+ """+ A list of edges.+ """+ edges: [CheckRunEdge]++ """+ A list of nodes.+ """+ nodes: [CheckRun] @preview(toggledBy: "antiope-preview")++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type CheckRunEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: CheckRun @preview(toggledBy: "antiope-preview")+}++"""+The filters that are available when fetching check runs.+"""+input CheckRunFilter @preview(toggledBy: "antiope-preview") {+ """+ Filters the check runs created by this application ID.+ """+ appId: Int++ """+ Filters the check runs by this name.+ """+ checkName: String++ """+ Filters the check runs by this type.+ """+ checkType: CheckRunType++ """+ Filters the check runs by this status.+ """+ status: CheckStatusState+}++"""+Descriptive details about the check run.+"""+input CheckRunOutput @preview(toggledBy: "antiope-preview") {+ """+ The annotations that are made as part of the check run.+ """+ annotations: [CheckAnnotationData!]++ """+ Images attached to the check run output displayed in the GitHub pull request UI.+ """+ images: [CheckRunOutputImage!]++ """+ The summary of the check run (supports Commonmark).+ """+ summary: String!++ """+ The details of the check run (supports Commonmark).+ """+ text: String++ """+ A title to provide for this check run.+ """+ title: String!+}++"""+Images attached to the check run output displayed in the GitHub pull request UI.+"""+input CheckRunOutputImage @preview(toggledBy: "antiope-preview") {+ """+ The alternative text for the image.+ """+ alt: String!++ """+ A short image description.+ """+ caption: String++ """+ The full URL of the image.+ """+ imageUrl: URI!+}++"""+The possible types of check runs.+"""+enum CheckRunType @preview(toggledBy: "antiope-preview") {+ """+ Every check run available.+ """+ ALL++ """+ The latest check run.+ """+ LATEST+}++"""+The possible states for a check suite or run status.+"""+enum CheckStatusState @preview(toggledBy: "antiope-preview") {+ """+ The check suite or run has been completed.+ """+ COMPLETED++ """+ The check suite or run is in progress.+ """+ IN_PROGRESS++ """+ The check suite or run has been queued.+ """+ QUEUED++ """+ The check suite or run has been requested.+ """+ REQUESTED+}++"""+A check suite.+"""+type CheckSuite implements Node @preview(toggledBy: "antiope-preview") {+ """+ The GitHub App which created this check suite.+ """+ app: App++ """+ The name of the branch for this check suite.+ """+ branch: Ref++ """+ The check runs associated with a check suite.+ """+ checkRuns(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Filters the check runs by this type.+ """+ filterBy: CheckRunFilter++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): CheckRunConnection++ """+ The commit for this check suite+ """+ commit: Commit!++ """+ The conclusion of this check suite.+ """+ conclusion: CheckConclusionState++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ A list of open pull requests matching the check suite.+ """+ matchingPullRequests(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ The base ref name to filter the pull requests by.+ """+ baseRefName: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ The head ref name to filter the pull requests by.+ """+ headRefName: String++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pull requests returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the pull requests by.+ """+ states: [PullRequestState!]+ ): PullRequestConnection++ """+ The push that triggered this check suite.+ """+ push: Push++ """+ The repository associated with this check suite.+ """+ repository: Repository!++ """+ The HTTP path for this check suite+ """+ resourcePath: URI!++ """+ The status of this check suite.+ """+ status: CheckStatusState!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this check suite+ """+ url: URI!+}++"""+The auto-trigger preferences that are available for check suites.+"""+input CheckSuiteAutoTriggerPreference @preview(toggledBy: "antiope-preview") {+ """+ The node ID of the application that owns the check suite.+ """+ appId: ID!++ """+ Set to `true` to enable automatic creation of CheckSuite events upon pushes to the repository.+ """+ setting: Boolean!+}++"""+The connection type for CheckSuite.+"""+type CheckSuiteConnection {+ """+ A list of edges.+ """+ edges: [CheckSuiteEdge]++ """+ A list of nodes.+ """+ nodes: [CheckSuite] @preview(toggledBy: "antiope-preview")++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type CheckSuiteEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: CheckSuite @preview(toggledBy: "antiope-preview")+}++"""+The filters that are available when fetching check suites.+"""+input CheckSuiteFilter @preview(toggledBy: "antiope-preview") {+ """+ Filters the check suites created by this application ID.+ """+ appId: Int++ """+ Filters the check suites by this name.+ """+ checkName: String+}++"""+Autogenerated input type of ClearLabelsFromLabelable+"""+input ClearLabelsFromLabelableInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The id of the labelable object to clear the labels from.+ """+ labelableId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "Labelable"+ )+}++"""+Autogenerated return type of ClearLabelsFromLabelable+"""+type ClearLabelsFromLabelablePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The item that was unlabeled.+ """+ labelable: Labelable+}++"""+Autogenerated input type of CloneProject+"""+input CloneProjectInput {+ """+ The description of the project.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Whether or not to clone the source project's workflows.+ """+ includeWorkflows: Boolean!++ """+ The name of the project.+ """+ name: String!++ """+ The visibility of the project, defaults to false (private).+ """+ public: Boolean++ """+ The source project to clone.+ """+ sourceId: ID! @possibleTypes(concreteTypes: ["Project"])++ """+ The owner ID to create the project under.+ """+ targetOwnerId: ID!+ @possibleTypes(+ concreteTypes: ["Organization", "Repository", "User"]+ abstractType: "ProjectOwner"+ )+}++"""+Autogenerated return type of CloneProject+"""+type CloneProjectPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The id of the JobStatus for populating cloned fields.+ """+ jobStatusId: String++ """+ The new cloned project.+ """+ project: Project+}++"""+Autogenerated input type of CloneTemplateRepository+"""+input CloneTemplateRepositoryInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ A short description of the new repository.+ """+ description: String++ """+ Whether to copy all branches from the template to the new repository. Defaults+ to copying only the default branch of the template.+ """+ includeAllBranches: Boolean = false++ """+ The name of the new repository.+ """+ name: String!++ """+ The ID of the owner for the new repository.+ """+ ownerId: ID!+ @possibleTypes(+ concreteTypes: ["Organization", "User"]+ abstractType: "RepositoryOwner"+ )++ """+ The Node ID of the template repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ Indicates the repository's visibility level.+ """+ visibility: RepositoryVisibility!+}++"""+Autogenerated return type of CloneTemplateRepository+"""+type CloneTemplateRepositoryPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new repository.+ """+ repository: Repository+}++"""+An object that can be closed+"""+interface Closable {+ """+ `true` if the object is closed (definition of closed may depend on type)+ """+ closed: Boolean!++ """+ Identifies the date and time when the object was closed.+ """+ closedAt: DateTime+}++"""+Autogenerated input type of CloseIssue+"""+input CloseIssueInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ ID of the issue to be closed.+ """+ issueId: ID! @possibleTypes(concreteTypes: ["Issue"])+}++"""+Autogenerated return type of CloseIssue+"""+type CloseIssuePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The issue that was closed.+ """+ issue: Issue+}++"""+Autogenerated input type of ClosePullRequest+"""+input ClosePullRequestInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ ID of the pull request to be closed.+ """+ pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"])+}++"""+Autogenerated return type of ClosePullRequest+"""+type ClosePullRequestPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The pull request that was closed.+ """+ pullRequest: PullRequest+}++"""+Represents a 'closed' event on any `Closable`.+"""+type ClosedEvent implements Node & UniformResourceLocatable {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Object that was closed.+ """+ closable: Closable!++ """+ Object which triggered the creation of this event.+ """+ closer: Closer++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ The HTTP path for this closed event.+ """+ resourcePath: URI!++ """+ The HTTP URL for this closed event.+ """+ url: URI!+}++"""+The object which triggered a `ClosedEvent`.+"""+union Closer = Commit | PullRequest++"""+The Code of Conduct for a repository+"""+type CodeOfConduct implements Node {+ """+ The body of the Code of Conduct+ """+ body: String+ id: ID!++ """+ The key for the Code of Conduct+ """+ key: String!++ """+ The formal name of the Code of Conduct+ """+ name: String!++ """+ The HTTP path for this Code of Conduct+ """+ resourcePath: URI++ """+ The HTTP URL for this Code of Conduct+ """+ url: URI+}++"""+Collaborators affiliation level with a subject.+"""+enum CollaboratorAffiliation {+ """+ All collaborators the authenticated user can see.+ """+ ALL++ """+ All collaborators with permissions to an organization-owned subject, regardless of organization membership status.+ """+ DIRECT++ """+ All outside collaborators of an organization-owned subject.+ """+ OUTSIDE+}++"""+Represents a comment.+"""+interface Comment {+ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the subject of the comment.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ The body as Markdown.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ The body rendered to text.+ """+ bodyText: String!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ The actor who edited the comment.+ """+ editor: Actor+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!+}++"""+A comment author association with repository.+"""+enum CommentAuthorAssociation {+ """+ Author has been invited to collaborate on the repository.+ """+ COLLABORATOR++ """+ Author has previously committed to the repository.+ """+ CONTRIBUTOR++ """+ Author has not previously committed to GitHub.+ """+ FIRST_TIMER++ """+ Author has not previously committed to the repository.+ """+ FIRST_TIME_CONTRIBUTOR++ """+ Author is a member of the organization that owns the repository.+ """+ MEMBER++ """+ Author has no association with the repository.+ """+ NONE++ """+ Author is the owner of the repository.+ """+ OWNER+}++"""+The possible errors that will prevent a user from updating a comment.+"""+enum CommentCannotUpdateReason {+ """+ Unable to create comment because repository is archived.+ """+ ARCHIVED++ """+ You cannot update this comment+ """+ DENIED++ """+ You must be the author or have write access to this repository to update this comment.+ """+ INSUFFICIENT_ACCESS++ """+ Unable to create comment because issue is locked.+ """+ LOCKED++ """+ You must be logged in to update this comment.+ """+ LOGIN_REQUIRED++ """+ Repository is under maintenance.+ """+ MAINTENANCE++ """+ At least one email address must be verified to update this comment.+ """+ VERIFIED_EMAIL_REQUIRED+}++"""+Represents a 'comment_deleted' event on a given issue or pull request.+"""+type CommentDeletedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!+}++"""+Represents a Git commit.+"""+type Commit implements GitObject & Node & Subscribable & UniformResourceLocatable {+ """+ An abbreviated version of the Git object ID+ """+ abbreviatedOid: String!++ """+ The number of additions in this commit.+ """+ additions: Int!++ """+ The pull requests associated with a commit+ """+ associatedPullRequests(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pull requests.+ """+ orderBy: PullRequestOrder = { field: CREATED_AT, direction: ASC }+ ): PullRequestConnection++ """+ Authorship details of the commit.+ """+ author: GitActor++ """+ Check if the committer and the author match.+ """+ authoredByCommitter: Boolean!++ """+ The datetime when this commit was authored.+ """+ authoredDate: DateTime!++ """+ Fetches `git blame` information.+ """+ blame(+ """+ The file whose Git blame information you want.+ """+ path: String!+ ): Blame!++ """+ The number of changed files in this commit.+ """+ changedFiles: Int!++ """+ The check suites associated with a commit.+ """+ checkSuites(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Filters the check suites by this type.+ """+ filterBy: CheckSuiteFilter++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): CheckSuiteConnection @preview(toggledBy: "antiope-preview")++ """+ Comments made on the commit.+ """+ comments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): CommitCommentConnection!++ """+ The HTTP path for this Git object+ """+ commitResourcePath: URI!++ """+ The HTTP URL for this Git object+ """+ commitUrl: URI!++ """+ The datetime when this commit was committed.+ """+ committedDate: DateTime!++ """+ Check if commited via GitHub web UI.+ """+ committedViaWeb: Boolean!++ """+ Committership details of the commit.+ """+ committer: GitActor++ """+ The number of deletions in this commit.+ """+ deletions: Int!++ """+ The deployments associated with a commit.+ """+ deployments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Environments to list deployments for+ """+ environments: [String!]++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for deployments returned from the connection.+ """+ orderBy: DeploymentOrder = { field: CREATED_AT, direction: ASC }+ ): DeploymentConnection++ """+ The linear commit history starting from (and including) this commit, in the same order as `git log`.+ """+ history(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ If non-null, filters history to only show commits with matching authorship.+ """+ author: CommitAuthor++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ If non-null, filters history to only show commits touching files under this path.+ """+ path: String++ """+ Allows specifying a beginning time or date for fetching commits.+ """+ since: GitTimestamp++ """+ Allows specifying an ending time or date for fetching commits.+ """+ until: GitTimestamp+ ): CommitHistoryConnection!+ id: ID!++ """+ The Git commit message+ """+ message: String!++ """+ The Git commit message body+ """+ messageBody: String!++ """+ The commit message body rendered to HTML.+ """+ messageBodyHTML: HTML!++ """+ The Git commit message headline+ """+ messageHeadline: String!++ """+ The commit message headline rendered to HTML.+ """+ messageHeadlineHTML: HTML!++ """+ The Git object ID+ """+ oid: GitObjectID!++ """+ The organization this commit was made on behalf of.+ """+ onBehalfOf: Organization++ """+ The parents of a commit.+ """+ parents(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): CommitConnection!++ """+ The datetime when this commit was pushed.+ """+ pushedDate: DateTime++ """+ The Repository this commit belongs to+ """+ repository: Repository!++ """+ The HTTP path for this commit+ """+ resourcePath: URI!++ """+ Commit signing information, if present.+ """+ signature: GitSignature++ """+ Status information for this commit+ """+ status: Status++ """+ Check and Status rollup information for this commit.+ """+ statusCheckRollup: StatusCheckRollup++ """+ Returns a list of all submodules in this repository as of this Commit parsed from the .gitmodules file.+ """+ submodules(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): SubmoduleConnection!++ """+ Returns a URL to download a tarball archive for a repository.+ Note: For private repositories, these links are temporary and expire after five minutes.+ """+ tarballUrl: URI!++ """+ Commit's root Tree+ """+ tree: Tree!++ """+ The HTTP path for the tree of this commit+ """+ treeResourcePath: URI!++ """+ The HTTP URL for the tree of this commit+ """+ treeUrl: URI!++ """+ The HTTP URL for this commit+ """+ url: URI!++ """+ Check if the viewer is able to change their subscription status for the repository.+ """+ viewerCanSubscribe: Boolean!++ """+ Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.+ """+ viewerSubscription: SubscriptionState++ """+ Returns a URL to download a zipball archive for a repository.+ Note: For private repositories, these links are temporary and expire after five minutes.+ """+ zipballUrl: URI!+}++"""+Specifies an author for filtering Git commits.+"""+input CommitAuthor {+ """+ Email addresses to filter by. Commits authored by any of the specified email addresses will be returned.+ """+ emails: [String!]++ """+ 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+}++"""+Represents a comment on a given Commit.+"""+type CommitComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment {+ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the subject of the comment.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ Identifies the comment body.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ The body rendered to text.+ """+ bodyText: String!++ """+ Identifies the commit associated with the comment, if the commit exists.+ """+ commit: Commit++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The actor who edited the comment.+ """+ editor: Actor+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ Returns whether or not a comment has been minimized.+ """+ isMinimized: Boolean!++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ Returns why the comment was minimized.+ """+ minimizedReason: String++ """+ Identifies the file path associated with the comment.+ """+ path: String++ """+ Identifies the line position associated with the comment.+ """+ position: Int++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ A list of reactions grouped by content left on the subject.+ """+ reactionGroups: [ReactionGroup!]++ """+ A list of Reactions left on the Issue.+ """+ reactions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Allows filtering Reactions by emoji.+ """+ content: ReactionContent++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows specifying the order in which reactions are returned.+ """+ orderBy: ReactionOrder+ ): ReactionConnection!++ """+ The repository associated with this node.+ """+ repository: Repository!++ """+ The HTTP path permalink for this commit comment.+ """+ resourcePath: URI!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL permalink for this commit comment.+ """+ url: URI!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Check if the current viewer can delete this object.+ """+ viewerCanDelete: Boolean!++ """+ Check if the current viewer can minimize this object.+ """+ viewerCanMinimize: Boolean!++ """+ Can user react to this subject+ """+ viewerCanReact: Boolean!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!++ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!+}++"""+The connection type for CommitComment.+"""+type CommitCommentConnection {+ """+ A list of edges.+ """+ edges: [CommitCommentEdge]++ """+ A list of nodes.+ """+ nodes: [CommitComment]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type CommitCommentEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: CommitComment+}++"""+A thread of comments on a commit.+"""+type CommitCommentThread implements Node & RepositoryNode {+ """+ The comments that exist in this thread.+ """+ comments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): CommitCommentConnection!++ """+ The commit the comments were made on.+ """+ commit: Commit+ id: ID!++ """+ The file the comments were made on.+ """+ path: String++ """+ The position in the diff for the commit that the comment was made on.+ """+ position: Int++ """+ The repository associated with this node.+ """+ repository: Repository!+}++"""+The connection type for Commit.+"""+type CommitConnection {+ """+ A list of edges.+ """+ edges: [CommitEdge]++ """+ A list of nodes.+ """+ nodes: [Commit]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Ordering options for commit contribution connections.+"""+input CommitContributionOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field by which to order commit contributions.+ """+ field: CommitContributionOrderField!+}++"""+Properties by which commit contribution connections can be ordered.+"""+enum CommitContributionOrderField {+ """+ Order commit contributions by how many commits they represent.+ """+ COMMIT_COUNT++ """+ Order commit contributions by when they were made.+ """+ OCCURRED_AT+}++"""+This aggregates commits made by a user within one repository.+"""+type CommitContributionsByRepository {+ """+ The commit contributions, each representing a day.+ """+ contributions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for commit contributions returned from the connection.+ """+ orderBy: CommitContributionOrder = { field: OCCURRED_AT, direction: DESC }+ ): CreatedCommitContributionConnection!++ """+ The repository in which the commits were made.+ """+ repository: Repository!++ """+ The HTTP path for the user's commits to the repository in this time range.+ """+ resourcePath: URI!++ """+ The HTTP URL for the user's commits to the repository in this time range.+ """+ url: URI!+}++"""+An edge in a connection.+"""+type CommitEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Commit+}++"""+The connection type for Commit.+"""+type CommitHistoryConnection {+ """+ A list of edges.+ """+ edges: [CommitEdge]++ """+ A list of nodes.+ """+ nodes: [Commit]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Represents a 'connected' event on a given issue or pull request.+"""+type ConnectedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Reference originated in a different repository.+ """+ isCrossRepository: Boolean!++ """+ Issue or pull request that made the reference.+ """+ source: ReferencedSubject!++ """+ Issue or pull request which was connected.+ """+ subject: ReferencedSubject!+}++"""+A content attachment+"""+type ContentAttachment {+ """+ The body text of the content attachment. This parameter supports markdown.+ """+ body: String!++ """+ The content reference that the content attachment is attached to.+ """+ contentReference: ContentReference!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int!+ id: ID!++ """+ The title of the content attachment.+ """+ title: String!+}++"""+A content reference+"""+type ContentReference {+ """+ Identifies the primary key from the database.+ """+ databaseId: Int!+ id: ID!++ """+ The reference of the content reference.+ """+ reference: String!+}++"""+Represents a contribution a user made on GitHub, such as opening an issue.+"""+interface Contribution {+ """+ Whether this contribution is associated with a record you do not have access to. For+ example, your own 'first issue' contribution may have been made on a repository you can no+ longer access.+ """+ isRestricted: Boolean!++ """+ When this contribution was made.+ """+ occurredAt: DateTime!++ """+ The HTTP path for this contribution.+ """+ resourcePath: URI!++ """+ The HTTP URL for this contribution.+ """+ url: URI!++ """+ The user who made this contribution.+ """+ user: User!+}++"""+A calendar of contributions made on GitHub by a user.+"""+type ContributionCalendar {+ """+ A list of hex color codes used in this calendar. The darker the color, the more contributions it represents.+ """+ colors: [String!]!++ """+ Determine if the color set was chosen because it's currently Halloween.+ """+ isHalloween: Boolean!++ """+ A list of the months of contributions in this calendar.+ """+ months: [ContributionCalendarMonth!]!++ """+ The count of total contributions in the calendar.+ """+ totalContributions: Int!++ """+ A list of the weeks of contributions in this calendar.+ """+ weeks: [ContributionCalendarWeek!]!+}++"""+Represents a single day of contributions on GitHub by a user.+"""+type ContributionCalendarDay {+ """+ The hex color code that represents how many contributions were made on this day compared to others in the calendar.+ """+ color: String!++ """+ How many contributions were made by the user on this day.+ """+ contributionCount: Int!++ """+ The day this square represents.+ """+ date: Date!++ """+ A number representing which day of the week this square represents, e.g., 1 is Monday.+ """+ weekday: Int!+}++"""+A month of contributions in a user's contribution graph.+"""+type ContributionCalendarMonth {+ """+ The date of the first day of this month.+ """+ firstDay: Date!++ """+ The name of the month.+ """+ name: String!++ """+ How many weeks started in this month.+ """+ totalWeeks: Int!++ """+ The year the month occurred in.+ """+ year: Int!+}++"""+A week of contributions in a user's contribution graph.+"""+type ContributionCalendarWeek {+ """+ The days of contributions in this week.+ """+ contributionDays: [ContributionCalendarDay!]!++ """+ The date of the earliest square in this week.+ """+ firstDay: Date!+}++"""+Ordering options for contribution connections.+"""+input ContributionOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!+}++"""+A contributions collection aggregates contributions such as opened issues and commits created by a user.+"""+type ContributionsCollection {+ """+ Commit contributions made by the user, grouped by repository.+ """+ commitContributionsByRepository(+ """+ How many repositories should be included.+ """+ maxRepositories: Int = 25+ ): [CommitContributionsByRepository!]!++ """+ A calendar of this user's contributions on GitHub.+ """+ contributionCalendar: ContributionCalendar!++ """+ The years the user has been making contributions with the most recent year first.+ """+ contributionYears: [Int!]!++ """+ Determine if this collection's time span ends in the current month.+ """+ doesEndInCurrentMonth: Boolean!++ """+ The date of the first restricted contribution the user made in this time+ period. Can only be non-null when the user has enabled private contribution counts.+ """+ earliestRestrictedContributionDate: Date++ """+ The ending date and time of this collection.+ """+ endedAt: DateTime!++ """+ The first issue the user opened on GitHub. This will be null if that issue was+ opened outside the collection's time range and ignoreTimeRange is false. If+ the issue is not visible but the user has opted to show private contributions,+ a RestrictedContribution will be returned.+ """+ firstIssueContribution: CreatedIssueOrRestrictedContribution++ """+ The first pull request the user opened on GitHub. This will be null if that+ pull request was opened outside the collection's time range and+ ignoreTimeRange is not true. If the pull request is not visible but the user+ has opted to show private contributions, a RestrictedContribution will be returned.+ """+ firstPullRequestContribution: CreatedPullRequestOrRestrictedContribution++ """+ The first repository the user created on GitHub. This will be null if that+ first repository was created outside the collection's time range and+ ignoreTimeRange is false. If the repository is not visible, then a+ RestrictedContribution is returned.+ """+ firstRepositoryContribution: CreatedRepositoryOrRestrictedContribution++ """+ Does the user have any more activity in the timeline that occurred prior to the collection's time range?+ """+ hasActivityInThePast: Boolean!++ """+ Determine if there are any contributions in this collection.+ """+ hasAnyContributions: Boolean!++ """+ Determine if the user made any contributions in this time frame whose details+ are not visible because they were made in a private repository. Can only be+ true if the user enabled private contribution counts.+ """+ hasAnyRestrictedContributions: Boolean!++ """+ Whether or not the collector's time span is all within the same day.+ """+ isSingleDay: Boolean!++ """+ A list of issues the user opened.+ """+ issueContributions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Should the user's first issue ever be excluded from the result.+ """+ excludeFirst: Boolean = false++ """+ Should the user's most commented issue be excluded from the result.+ """+ excludePopular: Boolean = false++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for contributions returned from the connection.+ """+ orderBy: ContributionOrder = { direction: DESC }+ ): CreatedIssueContributionConnection!++ """+ Issue contributions made by the user, grouped by repository.+ """+ issueContributionsByRepository(+ """+ Should the user's first issue ever be excluded from the result.+ """+ excludeFirst: Boolean = false++ """+ Should the user's most commented issue be excluded from the result.+ """+ excludePopular: Boolean = false++ """+ How many repositories should be included.+ """+ maxRepositories: Int = 25+ ): [IssueContributionsByRepository!]!++ """+ When the user signed up for GitHub. This will be null if that sign up date+ falls outside the collection's time range and ignoreTimeRange is false.+ """+ joinedGitHubContribution: JoinedGitHubContribution++ """+ The date of the most recent restricted contribution the user made in this time+ period. Can only be non-null when the user has enabled private contribution counts.+ """+ latestRestrictedContributionDate: Date++ """+ When this collection's time range does not include any activity from the user, use this+ to get a different collection from an earlier time range that does have activity.+ """+ mostRecentCollectionWithActivity: ContributionsCollection++ """+ Returns a different contributions collection from an earlier time range than this one+ that does not have any contributions.+ """+ mostRecentCollectionWithoutActivity: ContributionsCollection++ """+ The issue the user opened on GitHub that received the most comments in the specified+ time frame.+ """+ popularIssueContribution: CreatedIssueContribution++ """+ The pull request the user opened on GitHub that received the most comments in the+ specified time frame.+ """+ popularPullRequestContribution: CreatedPullRequestContribution++ """+ Pull request contributions made by the user.+ """+ pullRequestContributions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Should the user's first pull request ever be excluded from the result.+ """+ excludeFirst: Boolean = false++ """+ Should the user's most commented pull request be excluded from the result.+ """+ excludePopular: Boolean = false++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for contributions returned from the connection.+ """+ orderBy: ContributionOrder = { direction: DESC }+ ): CreatedPullRequestContributionConnection!++ """+ Pull request contributions made by the user, grouped by repository.+ """+ pullRequestContributionsByRepository(+ """+ Should the user's first pull request ever be excluded from the result.+ """+ excludeFirst: Boolean = false++ """+ Should the user's most commented pull request be excluded from the result.+ """+ excludePopular: Boolean = false++ """+ How many repositories should be included.+ """+ maxRepositories: Int = 25+ ): [PullRequestContributionsByRepository!]!++ """+ Pull request review contributions made by the user.+ """+ pullRequestReviewContributions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for contributions returned from the connection.+ """+ orderBy: ContributionOrder = { direction: DESC }+ ): CreatedPullRequestReviewContributionConnection!++ """+ Pull request review contributions made by the user, grouped by repository.+ """+ pullRequestReviewContributionsByRepository(+ """+ How many repositories should be included.+ """+ maxRepositories: Int = 25+ ): [PullRequestReviewContributionsByRepository!]!++ """+ A list of repositories owned by the user that the user created in this time range.+ """+ repositoryContributions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Should the user's first repository ever be excluded from the result.+ """+ excludeFirst: Boolean = false++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for contributions returned from the connection.+ """+ orderBy: ContributionOrder = { direction: DESC }+ ): CreatedRepositoryContributionConnection!++ """+ A count of contributions made by the user that the viewer cannot access. Only+ non-zero when the user has chosen to share their private contribution counts.+ """+ restrictedContributionsCount: Int!++ """+ The beginning date and time of this collection.+ """+ startedAt: DateTime!++ """+ How many commits were made by the user in this time span.+ """+ totalCommitContributions: Int!++ """+ How many issues the user opened.+ """+ totalIssueContributions(+ """+ Should the user's first issue ever be excluded from this count.+ """+ excludeFirst: Boolean = false++ """+ Should the user's most commented issue be excluded from this count.+ """+ excludePopular: Boolean = false+ ): Int!++ """+ How many pull requests the user opened.+ """+ totalPullRequestContributions(+ """+ Should the user's first pull request ever be excluded from this count.+ """+ excludeFirst: Boolean = false++ """+ Should the user's most commented pull request be excluded from this count.+ """+ excludePopular: Boolean = false+ ): Int!++ """+ How many pull request reviews the user left.+ """+ totalPullRequestReviewContributions: Int!++ """+ How many different repositories the user committed to.+ """+ totalRepositoriesWithContributedCommits: Int!++ """+ How many different repositories the user opened issues in.+ """+ totalRepositoriesWithContributedIssues(+ """+ Should the user's first issue ever be excluded from this count.+ """+ excludeFirst: Boolean = false++ """+ Should the user's most commented issue be excluded from this count.+ """+ excludePopular: Boolean = false+ ): Int!++ """+ How many different repositories the user left pull request reviews in.+ """+ totalRepositoriesWithContributedPullRequestReviews: Int!++ """+ How many different repositories the user opened pull requests in.+ """+ totalRepositoriesWithContributedPullRequests(+ """+ Should the user's first pull request ever be excluded from this count.+ """+ excludeFirst: Boolean = false++ """+ Should the user's most commented pull request be excluded from this count.+ """+ excludePopular: Boolean = false+ ): Int!++ """+ How many repositories the user created.+ """+ totalRepositoryContributions(+ """+ Should the user's first repository ever be excluded from this count.+ """+ excludeFirst: Boolean = false+ ): Int!++ """+ The user who made the contributions in this collection.+ """+ user: User!+}++"""+Autogenerated input type of ConvertProjectCardNoteToIssue+"""+input ConvertProjectCardNoteToIssueInput {+ """+ The body of the newly created issue.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ProjectCard ID to convert.+ """+ projectCardId: ID! @possibleTypes(concreteTypes: ["ProjectCard"])++ """+ The ID of the repository to create the issue in.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ The title of the newly created issue. Defaults to the card's note text.+ """+ title: String+}++"""+Autogenerated return type of ConvertProjectCardNoteToIssue+"""+type ConvertProjectCardNoteToIssuePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated ProjectCard.+ """+ projectCard: ProjectCard+}++"""+Represents a 'convert_to_draft' event on a given pull request.+"""+type ConvertToDraftEvent implements Node & UniformResourceLocatable {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!++ """+ The HTTP path for this convert to draft event.+ """+ resourcePath: URI!++ """+ The HTTP URL for this convert to draft event.+ """+ url: URI!+}++"""+Represents a 'converted_note_to_issue' event on a given issue or pull request.+"""+type ConvertedNoteToIssueEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ Project referenced by event.+ """+ project: Project @preview(toggledBy: "starfox-preview")++ """+ Project card referenced by this project event.+ """+ projectCard: ProjectCard @preview(toggledBy: "starfox-preview")++ """+ Column name referenced by this project event.+ """+ projectColumnName: String! @preview(toggledBy: "starfox-preview")+}++"""+Autogenerated input type of CreateBranchProtectionRule+"""+input CreateBranchProtectionRuleInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Will new commits pushed to matching branches dismiss pull request review approvals.+ """+ dismissesStaleReviews: Boolean++ """+ Can admins overwrite branch protection.+ """+ isAdminEnforced: Boolean++ """+ The glob-like pattern used to determine matching branches.+ """+ pattern: String!++ """+ A list of User, Team or App IDs allowed to push to matching branches.+ """+ pushActorIds: [ID!]++ """+ The global relay id of the repository in which a new branch protection rule should be created in.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ Number of approving reviews required to update matching branches.+ """+ requiredApprovingReviewCount: Int++ """+ List of required status check contexts that must pass for commits to be accepted to matching branches.+ """+ requiredStatusCheckContexts: [String!]++ """+ Are approving reviews required to update matching branches.+ """+ requiresApprovingReviews: Boolean++ """+ Are reviews from code owners required to update matching branches.+ """+ requiresCodeOwnerReviews: Boolean++ """+ Are commits required to be signed.+ """+ requiresCommitSignatures: Boolean++ """+ Are status checks required to update matching branches.+ """+ requiresStatusChecks: Boolean++ """+ Are branches required to be up to date before merging.+ """+ requiresStrictStatusChecks: Boolean++ """+ Is pushing to matching branches restricted.+ """+ restrictsPushes: Boolean++ """+ Is dismissal of pull request reviews restricted.+ """+ restrictsReviewDismissals: Boolean++ """+ A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.+ """+ reviewDismissalActorIds: [ID!]+}++"""+Autogenerated return type of CreateBranchProtectionRule+"""+type CreateBranchProtectionRulePayload {+ """+ The newly created BranchProtectionRule.+ """+ branchProtectionRule: BranchProtectionRule++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of CreateCheckRun+"""+input CreateCheckRunInput @preview(toggledBy: "antiope-preview") {+ """+ Possible further actions the integrator can perform, which a user may trigger.+ """+ actions: [CheckRunAction!]++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The time that the check run finished.+ """+ completedAt: DateTime++ """+ The final conclusion of the check.+ """+ conclusion: CheckConclusionState++ """+ The URL of the integrator's site that has the full details of the check.+ """+ detailsUrl: URI++ """+ A reference for the run on the integrator's system.+ """+ externalId: String++ """+ The SHA of the head commit.+ """+ headSha: GitObjectID!++ """+ The name of the check.+ """+ name: String!++ """+ Descriptive details about the run.+ """+ output: CheckRunOutput++ """+ The node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ The time that the check run began.+ """+ startedAt: DateTime++ """+ The current status.+ """+ status: RequestableCheckStatusState+}++"""+Autogenerated return type of CreateCheckRun+"""+type CreateCheckRunPayload @preview(toggledBy: "antiope-preview") {+ """+ The newly created check run.+ """+ checkRun: CheckRun++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of CreateCheckSuite+"""+input CreateCheckSuiteInput @preview(toggledBy: "antiope-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The SHA of the head commit.+ """+ headSha: GitObjectID!++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of CreateCheckSuite+"""+type CreateCheckSuitePayload @preview(toggledBy: "antiope-preview") {+ """+ The newly created check suite.+ """+ checkSuite: CheckSuite++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of CreateContentAttachment+"""+input CreateContentAttachmentInput {+ """+ The body of the content attachment, which may contain markdown.+ """+ body: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The node ID of the content_reference.+ """+ contentReferenceId: ID! @possibleTypes(concreteTypes: ["ContentReference"])++ """+ The title of the content attachment.+ """+ title: String!+}++"""+Autogenerated return type of CreateContentAttachment+"""+type CreateContentAttachmentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The newly created content attachment.+ """+ contentAttachment: ContentAttachment+}++"""+Autogenerated input type of CreateDeployment+"""+input CreateDeploymentInput @preview(toggledBy: "flash-preview") {+ """+ Attempt to automatically merge the default branch into the requested ref, defaults to true.+ """+ autoMerge: Boolean = true++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Short description of the deployment.+ """+ description: String = ""++ """+ Name for the target deployment environment.+ """+ environment: String = "production"++ """+ JSON payload with extra information about the deployment.+ """+ payload: String = "{}"++ """+ The node ID of the ref to be deployed.+ """+ refId: ID! @possibleTypes(concreteTypes: ["Ref"])++ """+ The node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ The status contexts to verify against commit status checks. To bypass required+ contexts, pass an empty array. Defaults to all unique contexts.+ """+ requiredContexts: [String!]++ """+ Specifies a task to execute.+ """+ task: String = "deploy"+}++"""+Autogenerated return type of CreateDeployment+"""+type CreateDeploymentPayload @preview(toggledBy: "flash-preview") {+ """+ True if the default branch has been auto-merged into the deployment ref.+ """+ autoMerged: Boolean++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new deployment.+ """+ deployment: Deployment+}++"""+Autogenerated input type of CreateDeploymentStatus+"""+input CreateDeploymentStatusInput @preview(toggledBy: "flash-preview") {+ """+ Adds a new inactive status to all non-transient, non-production environment+ deployments with the same repository and environment name as the created+ status's deployment.+ """+ autoInactive: Boolean = true++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The node ID of the deployment.+ """+ deploymentId: ID! @possibleTypes(concreteTypes: ["Deployment"])++ """+ A short description of the status. Maximum length of 140 characters.+ """+ description: String = ""++ """+ If provided, updates the environment of the deploy. Otherwise, does not modify the environment.+ """+ environment: String++ """+ Sets the URL for accessing your environment.+ """+ environmentUrl: String = ""++ """+ The log URL to associate with this status. This URL should contain+ output to keep the user updated while the task is running or serve as+ historical information for what happened in the deployment.+ """+ logUrl: String = ""++ """+ The state of the deployment.+ """+ state: DeploymentStatusState!+}++"""+Autogenerated return type of CreateDeploymentStatus+"""+type CreateDeploymentStatusPayload @preview(toggledBy: "flash-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new deployment status.+ """+ deploymentStatus: DeploymentStatus+}++"""+Autogenerated input type of CreateEnterpriseOrganization+"""+input CreateEnterpriseOrganizationInput {+ """+ The logins for the administrators of the new organization.+ """+ adminLogins: [String!]!++ """+ The email used for sending billing receipts.+ """+ billingEmail: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise owning the new organization.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The login of the new organization.+ """+ login: String!++ """+ The profile name of the new organization.+ """+ profileName: String!+}++"""+Autogenerated return type of CreateEnterpriseOrganization+"""+type CreateEnterpriseOrganizationPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise that owns the created organization.+ """+ enterprise: Enterprise++ """+ The organization that was created.+ """+ organization: Organization+}++"""+Autogenerated input type of CreateIpAllowListEntry+"""+input CreateIpAllowListEntryInput {+ """+ An IP address or range of addresses in CIDR notation.+ """+ allowListValue: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Whether the IP allow list entry is active when an IP allow list is enabled.+ """+ isActive: Boolean!++ """+ An optional name for the IP allow list entry.+ """+ name: String++ """+ The ID of the owner for which to create the new IP allow list entry.+ """+ ownerId: ID!+ @possibleTypes(+ concreteTypes: ["Enterprise", "Organization"]+ abstractType: "IpAllowListOwner"+ )+}++"""+Autogenerated return type of CreateIpAllowListEntry+"""+type CreateIpAllowListEntryPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The IP allow list entry that was created.+ """+ ipAllowListEntry: IpAllowListEntry+}++"""+Autogenerated input type of CreateIssue+"""+input CreateIssueInput {+ """+ The Node ID for the user assignee for this issue.+ """+ assigneeIds: [ID!] @possibleTypes(concreteTypes: ["User"])++ """+ The body for the issue description.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ An array of Node IDs of labels for this issue.+ """+ labelIds: [ID!] @possibleTypes(concreteTypes: ["Label"])++ """+ The Node ID of the milestone for this issue.+ """+ milestoneId: ID @possibleTypes(concreteTypes: ["Milestone"])++ """+ An array of Node IDs for projects associated with this issue.+ """+ projectIds: [ID!] @possibleTypes(concreteTypes: ["Project"])++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ The title for the issue.+ """+ title: String!+}++"""+Autogenerated return type of CreateIssue+"""+type CreateIssuePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new issue.+ """+ issue: Issue+}++"""+Autogenerated input type of CreateLabel+"""+input CreateLabelInput @preview(toggledBy: "bane-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ A 6 character hex code, without the leading #, identifying the color of the label.+ """+ color: String!++ """+ A brief description of the label, such as its purpose.+ """+ description: String++ """+ The name of the label.+ """+ name: String!++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of CreateLabel+"""+type CreateLabelPayload @preview(toggledBy: "bane-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new label.+ """+ label: Label+}++"""+Autogenerated input type of CreateProject+"""+input CreateProjectInput {+ """+ The description of project.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The name of project.+ """+ name: String!++ """+ The owner ID to create the project under.+ """+ ownerId: ID!+ @possibleTypes(+ concreteTypes: ["Organization", "Repository", "User"]+ abstractType: "ProjectOwner"+ )++ """+ A list of repository IDs to create as linked repositories for the project+ """+ repositoryIds: [ID!] @possibleTypes(concreteTypes: ["Repository"])++ """+ The name of the GitHub-provided template.+ """+ template: ProjectTemplate+}++"""+Autogenerated return type of CreateProject+"""+type CreateProjectPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new project.+ """+ project: Project+}++"""+Autogenerated input type of CreatePullRequest+"""+input CreatePullRequestInput {+ """+ 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!++ """+ The contents of the pull request.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Indicates whether this pull request should be a draft.+ """+ draft: Boolean = false++ """+ 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!++ """+ Indicates whether maintainers can modify the pull request.+ """+ maintainerCanModify: Boolean = true++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ The title of the pull request.+ """+ title: String!+}++"""+Autogenerated return type of CreatePullRequest+"""+type CreatePullRequestPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new pull request.+ """+ pullRequest: PullRequest+}++"""+Autogenerated input type of CreateRef+"""+input CreateRefInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The fully qualified name of the new Ref (ie: `refs/heads/my_new_branch`).+ """+ name: String!++ """+ The GitObjectID that the new Ref shall target. Must point to a commit.+ """+ oid: GitObjectID!++ """+ The Node ID of the Repository to create the Ref in.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of CreateRef+"""+type CreateRefPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The newly created ref.+ """+ ref: Ref+}++"""+Autogenerated input type of CreateRepository+"""+input CreateRepositoryInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ A short description of the new repository.+ """+ description: String++ """+ Indicates if the repository should have the issues feature enabled.+ """+ hasIssuesEnabled: Boolean = true++ """+ Indicates if the repository should have the wiki feature enabled.+ """+ hasWikiEnabled: Boolean = false++ """+ The URL for a web page about this repository.+ """+ homepageUrl: URI++ """+ The name of the new repository.+ """+ name: String!++ """+ The ID of the owner for the new repository.+ """+ ownerId: ID+ @possibleTypes(+ concreteTypes: ["Organization", "User"]+ abstractType: "RepositoryOwner"+ )++ """+ When an organization is specified as the owner, this ID identifies the team+ that should be granted access to the new repository.+ """+ teamId: ID @possibleTypes(concreteTypes: ["Team"])++ """+ 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: Boolean = false++ """+ Indicates the repository's visibility level.+ """+ visibility: RepositoryVisibility!+}++"""+Autogenerated return type of CreateRepository+"""+type CreateRepositoryPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new repository.+ """+ repository: Repository+}++"""+Autogenerated input type of CreateTeamDiscussionComment+"""+input CreateTeamDiscussionCommentInput {+ """+ The content of the comment.+ """+ body: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the discussion to which the comment belongs.+ """+ discussionId: ID! @possibleTypes(concreteTypes: ["TeamDiscussion"])+}++"""+Autogenerated return type of CreateTeamDiscussionComment+"""+type CreateTeamDiscussionCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new comment.+ """+ teamDiscussionComment: TeamDiscussionComment+}++"""+Autogenerated input type of CreateTeamDiscussion+"""+input CreateTeamDiscussionInput {+ """+ The content of the discussion.+ """+ body: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ If true, restricts the visiblity of this discussion to team members and+ organization admins. If false or not specified, allows any organization member+ to view this discussion.+ """+ private: Boolean++ """+ The ID of the team to which the discussion belongs.+ """+ teamId: ID! @possibleTypes(concreteTypes: ["Team"])++ """+ The title of the discussion.+ """+ title: String!+}++"""+Autogenerated return type of CreateTeamDiscussion+"""+type CreateTeamDiscussionPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new discussion.+ """+ teamDiscussion: TeamDiscussion+}++"""+Represents the contribution a user made by committing to a repository.+"""+type CreatedCommitContribution implements Contribution {+ """+ How many commits were made on this day to this repository by the user.+ """+ commitCount: Int!++ """+ Whether this contribution is associated with a record you do not have access to. For+ example, your own 'first issue' contribution may have been made on a repository you can no+ longer access.+ """+ isRestricted: Boolean!++ """+ When this contribution was made.+ """+ occurredAt: DateTime!++ """+ The repository the user made a commit in.+ """+ repository: Repository!++ """+ The HTTP path for this contribution.+ """+ resourcePath: URI!++ """+ The HTTP URL for this contribution.+ """+ url: URI!++ """+ The user who made this contribution.+ """+ user: User!+}++"""+The connection type for CreatedCommitContribution.+"""+type CreatedCommitContributionConnection {+ """+ A list of edges.+ """+ edges: [CreatedCommitContributionEdge]++ """+ A list of nodes.+ """+ nodes: [CreatedCommitContribution]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of commits across days and repositories in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type CreatedCommitContributionEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: CreatedCommitContribution+}++"""+Represents the contribution a user made on GitHub by opening an issue.+"""+type CreatedIssueContribution implements Contribution {+ """+ Whether this contribution is associated with a record you do not have access to. For+ example, your own 'first issue' contribution may have been made on a repository you can no+ longer access.+ """+ isRestricted: Boolean!++ """+ The issue that was opened.+ """+ issue: Issue!++ """+ When this contribution was made.+ """+ occurredAt: DateTime!++ """+ The HTTP path for this contribution.+ """+ resourcePath: URI!++ """+ The HTTP URL for this contribution.+ """+ url: URI!++ """+ The user who made this contribution.+ """+ user: User!+}++"""+The connection type for CreatedIssueContribution.+"""+type CreatedIssueContributionConnection {+ """+ A list of edges.+ """+ edges: [CreatedIssueContributionEdge]++ """+ A list of nodes.+ """+ nodes: [CreatedIssueContribution]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type CreatedIssueContributionEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: CreatedIssueContribution+}++"""+Represents either a issue the viewer can access or a restricted contribution.+"""+union CreatedIssueOrRestrictedContribution =+ CreatedIssueContribution+ | RestrictedContribution++"""+Represents the contribution a user made on GitHub by opening a pull request.+"""+type CreatedPullRequestContribution implements Contribution {+ """+ Whether this contribution is associated with a record you do not have access to. For+ example, your own 'first issue' contribution may have been made on a repository you can no+ longer access.+ """+ isRestricted: Boolean!++ """+ When this contribution was made.+ """+ occurredAt: DateTime!++ """+ The pull request that was opened.+ """+ pullRequest: PullRequest!++ """+ The HTTP path for this contribution.+ """+ resourcePath: URI!++ """+ The HTTP URL for this contribution.+ """+ url: URI!++ """+ The user who made this contribution.+ """+ user: User!+}++"""+The connection type for CreatedPullRequestContribution.+"""+type CreatedPullRequestContributionConnection {+ """+ A list of edges.+ """+ edges: [CreatedPullRequestContributionEdge]++ """+ A list of nodes.+ """+ nodes: [CreatedPullRequestContribution]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type CreatedPullRequestContributionEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: CreatedPullRequestContribution+}++"""+Represents either a pull request the viewer can access or a restricted contribution.+"""+union CreatedPullRequestOrRestrictedContribution =+ CreatedPullRequestContribution+ | RestrictedContribution++"""+Represents the contribution a user made by leaving a review on a pull request.+"""+type CreatedPullRequestReviewContribution implements Contribution {+ """+ Whether this contribution is associated with a record you do not have access to. For+ example, your own 'first issue' contribution may have been made on a repository you can no+ longer access.+ """+ isRestricted: Boolean!++ """+ When this contribution was made.+ """+ occurredAt: DateTime!++ """+ The pull request the user reviewed.+ """+ pullRequest: PullRequest!++ """+ The review the user left on the pull request.+ """+ pullRequestReview: PullRequestReview!++ """+ The repository containing the pull request that the user reviewed.+ """+ repository: Repository!++ """+ The HTTP path for this contribution.+ """+ resourcePath: URI!++ """+ The HTTP URL for this contribution.+ """+ url: URI!++ """+ The user who made this contribution.+ """+ user: User!+}++"""+The connection type for CreatedPullRequestReviewContribution.+"""+type CreatedPullRequestReviewContributionConnection {+ """+ A list of edges.+ """+ edges: [CreatedPullRequestReviewContributionEdge]++ """+ A list of nodes.+ """+ nodes: [CreatedPullRequestReviewContribution]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type CreatedPullRequestReviewContributionEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: CreatedPullRequestReviewContribution+}++"""+Represents the contribution a user made on GitHub by creating a repository.+"""+type CreatedRepositoryContribution implements Contribution {+ """+ Whether this contribution is associated with a record you do not have access to. For+ example, your own 'first issue' contribution may have been made on a repository you can no+ longer access.+ """+ isRestricted: Boolean!++ """+ When this contribution was made.+ """+ occurredAt: DateTime!++ """+ The repository that was created.+ """+ repository: Repository!++ """+ The HTTP path for this contribution.+ """+ resourcePath: URI!++ """+ The HTTP URL for this contribution.+ """+ url: URI!++ """+ The user who made this contribution.+ """+ user: User!+}++"""+The connection type for CreatedRepositoryContribution.+"""+type CreatedRepositoryContributionConnection {+ """+ A list of edges.+ """+ edges: [CreatedRepositoryContributionEdge]++ """+ A list of nodes.+ """+ nodes: [CreatedRepositoryContribution]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type CreatedRepositoryContributionEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: CreatedRepositoryContribution+}++"""+Represents either a repository the viewer can access or a restricted contribution.+"""+union CreatedRepositoryOrRestrictedContribution =+ CreatedRepositoryContribution+ | RestrictedContribution++"""+Represents a mention made by one issue or pull request to another.+"""+type CrossReferencedEvent implements Node & UniformResourceLocatable {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Reference originated in a different repository.+ """+ isCrossRepository: Boolean!++ """+ Identifies when the reference was made.+ """+ referencedAt: DateTime!++ """+ The HTTP path for this pull request.+ """+ resourcePath: URI!++ """+ Issue or pull request that made the reference.+ """+ source: ReferencedSubject!++ """+ Issue or pull request to which the reference was made.+ """+ target: ReferencedSubject!++ """+ The HTTP URL for this pull request.+ """+ url: URI!++ """+ Checks if the target will be closed when the source is merged.+ """+ willCloseTarget: Boolean!+}++"""+An ISO-8601 encoded date string.+"""+scalar Date++"""+An ISO-8601 encoded UTC date string.+"""+scalar DateTime++"""+Autogenerated input type of DeclineTopicSuggestion+"""+input DeclineTopicSuggestionInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The name of the suggested topic.+ """+ name: String!++ """+ The reason why the suggested topic is declined.+ """+ reason: TopicSuggestionDeclineReason!++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of DeclineTopicSuggestion+"""+type DeclineTopicSuggestionPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The declined topic.+ """+ topic: Topic+}++"""+The possible default permissions for repositories.+"""+enum DefaultRepositoryPermissionField {+ """+ Can read, write, and administrate repos by default+ """+ ADMIN++ """+ No access+ """+ NONE++ """+ Can read repos by default+ """+ READ++ """+ Can read and write repos by default+ """+ WRITE+}++"""+Entities that can be deleted.+"""+interface Deletable {+ """+ Check if the current viewer can delete this object.+ """+ viewerCanDelete: Boolean!+}++"""+Autogenerated input type of DeleteBranchProtectionRule+"""+input DeleteBranchProtectionRuleInput {+ """+ The global relay id of the branch protection rule to be deleted.+ """+ branchProtectionRuleId: ID!+ @possibleTypes(concreteTypes: ["BranchProtectionRule"])++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated return type of DeleteBranchProtectionRule+"""+type DeleteBranchProtectionRulePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of DeleteDeployment+"""+input DeleteDeploymentInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the deployment to be deleted.+ """+ id: ID! @possibleTypes(concreteTypes: ["Deployment"])+}++"""+Autogenerated return type of DeleteDeployment+"""+type DeleteDeploymentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of DeleteIpAllowListEntry+"""+input DeleteIpAllowListEntryInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the IP allow list entry to delete.+ """+ ipAllowListEntryId: ID! @possibleTypes(concreteTypes: ["IpAllowListEntry"])+}++"""+Autogenerated return type of DeleteIpAllowListEntry+"""+type DeleteIpAllowListEntryPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The IP allow list entry that was deleted.+ """+ ipAllowListEntry: IpAllowListEntry+}++"""+Autogenerated input type of DeleteIssueComment+"""+input DeleteIssueCommentInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the comment to delete.+ """+ id: ID! @possibleTypes(concreteTypes: ["IssueComment"])+}++"""+Autogenerated return type of DeleteIssueComment+"""+type DeleteIssueCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of DeleteIssue+"""+input DeleteIssueInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the issue to delete.+ """+ issueId: ID! @possibleTypes(concreteTypes: ["Issue"])+}++"""+Autogenerated return type of DeleteIssue+"""+type DeleteIssuePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The repository the issue belonged to+ """+ repository: Repository+}++"""+Autogenerated input type of DeleteLabel+"""+input DeleteLabelInput @preview(toggledBy: "bane-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the label to be deleted.+ """+ id: ID! @possibleTypes(concreteTypes: ["Label"])+}++"""+Autogenerated return type of DeleteLabel+"""+type DeleteLabelPayload @preview(toggledBy: "bane-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of DeletePackageVersion+"""+input DeletePackageVersionInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the package version to be deleted.+ """+ packageVersionId: ID! @possibleTypes(concreteTypes: ["PackageVersion"])+}++"""+Autogenerated return type of DeletePackageVersion+"""+type DeletePackageVersionPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Whether or not the operation succeeded.+ """+ success: Boolean+}++"""+Autogenerated input type of DeleteProjectCard+"""+input DeleteProjectCardInput {+ """+ The id of the card to delete.+ """+ cardId: ID! @possibleTypes(concreteTypes: ["ProjectCard"])++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated return type of DeleteProjectCard+"""+type DeleteProjectCardPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The column the deleted card was in.+ """+ column: ProjectColumn++ """+ The deleted card ID.+ """+ deletedCardId: ID+}++"""+Autogenerated input type of DeleteProjectColumn+"""+input DeleteProjectColumnInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The id of the column to delete.+ """+ columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"])+}++"""+Autogenerated return type of DeleteProjectColumn+"""+type DeleteProjectColumnPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The deleted column ID.+ """+ deletedColumnId: ID++ """+ The project the deleted column was in.+ """+ project: Project+}++"""+Autogenerated input type of DeleteProject+"""+input DeleteProjectInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Project ID to update.+ """+ projectId: ID! @possibleTypes(concreteTypes: ["Project"])+}++"""+Autogenerated return type of DeleteProject+"""+type DeleteProjectPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The repository or organization the project was removed from.+ """+ owner: ProjectOwner+}++"""+Autogenerated input type of DeletePullRequestReviewComment+"""+input DeletePullRequestReviewCommentInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the comment to delete.+ """+ id: ID! @possibleTypes(concreteTypes: ["PullRequestReviewComment"])+}++"""+Autogenerated return type of DeletePullRequestReviewComment+"""+type DeletePullRequestReviewCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The pull request review the deleted comment belonged to.+ """+ pullRequestReview: PullRequestReview+}++"""+Autogenerated input type of DeletePullRequestReview+"""+input DeletePullRequestReviewInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the pull request review to delete.+ """+ pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"])+}++"""+Autogenerated return type of DeletePullRequestReview+"""+type DeletePullRequestReviewPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The deleted pull request review.+ """+ pullRequestReview: PullRequestReview+}++"""+Autogenerated input type of DeleteRef+"""+input DeleteRefInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the Ref to be deleted.+ """+ refId: ID! @possibleTypes(concreteTypes: ["Ref"])+}++"""+Autogenerated return type of DeleteRef+"""+type DeleteRefPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of DeleteTeamDiscussionComment+"""+input DeleteTeamDiscussionCommentInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the comment to delete.+ """+ id: ID! @possibleTypes(concreteTypes: ["TeamDiscussionComment"])+}++"""+Autogenerated return type of DeleteTeamDiscussionComment+"""+type DeleteTeamDiscussionCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of DeleteTeamDiscussion+"""+input DeleteTeamDiscussionInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The discussion ID to delete.+ """+ id: ID! @possibleTypes(concreteTypes: ["TeamDiscussion"])+}++"""+Autogenerated return type of DeleteTeamDiscussion+"""+type DeleteTeamDiscussionPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Represents a 'demilestoned' event on a given issue or pull request.+"""+type DemilestonedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Identifies the milestone title associated with the 'demilestoned' event.+ """+ milestoneTitle: String!++ """+ Object referenced by event.+ """+ subject: MilestoneItem!+}++"""+A dependency manifest entry+"""+type DependencyGraphDependency @preview(toggledBy: "hawkgirl-preview") {+ """+ Does the dependency itself have dependencies?+ """+ hasDependencies: Boolean!++ """+ The dependency package manager+ """+ packageManager: String++ """+ The required package name+ """+ packageName: String!++ """+ The repository containing the package+ """+ repository: Repository++ """+ The dependency version requirements+ """+ requirements: String!+}++"""+The connection type for DependencyGraphDependency.+"""+type DependencyGraphDependencyConnection+@preview(toggledBy: "hawkgirl-preview") {+ """+ A list of edges.+ """+ edges: [DependencyGraphDependencyEdge]++ """+ A list of nodes.+ """+ nodes: [DependencyGraphDependency]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type DependencyGraphDependencyEdge @preview(toggledBy: "hawkgirl-preview") {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: DependencyGraphDependency+}++"""+Dependency manifest for a repository+"""+type DependencyGraphManifest implements Node+@preview(toggledBy: "hawkgirl-preview") {+ """+ Path to view the manifest file blob+ """+ blobPath: String!++ """+ A list of manifest dependencies+ """+ dependencies(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): DependencyGraphDependencyConnection++ """+ The number of dependencies listed in the manifest+ """+ dependenciesCount: Int++ """+ Is the manifest too big to parse?+ """+ exceedsMaxSize: Boolean!++ """+ Fully qualified manifest filename+ """+ filename: String!+ id: ID!++ """+ Were we able to parse the manifest?+ """+ parseable: Boolean!++ """+ The repository containing the manifest+ """+ repository: Repository!+}++"""+The connection type for DependencyGraphManifest.+"""+type DependencyGraphManifestConnection @preview(toggledBy: "hawkgirl-preview") {+ """+ A list of edges.+ """+ edges: [DependencyGraphManifestEdge]++ """+ A list of nodes.+ """+ nodes: [DependencyGraphManifest]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type DependencyGraphManifestEdge @preview(toggledBy: "hawkgirl-preview") {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: DependencyGraphManifest+}++"""+A repository deploy key.+"""+type DeployKey implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ The deploy key.+ """+ key: String!++ """+ Whether or not the deploy key is read only.+ """+ readOnly: Boolean!++ """+ The deploy key title.+ """+ title: String!++ """+ Whether or not the deploy key has been verified.+ """+ verified: Boolean!+}++"""+The connection type for DeployKey.+"""+type DeployKeyConnection {+ """+ A list of edges.+ """+ edges: [DeployKeyEdge]++ """+ A list of nodes.+ """+ nodes: [DeployKey]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type DeployKeyEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: DeployKey+}++"""+Represents a 'deployed' event on a given pull request.+"""+type DeployedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The deployment associated with the 'deployed' event.+ """+ deployment: Deployment!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!++ """+ The ref associated with the 'deployed' event.+ """+ ref: Ref+}++"""+Represents triggered deployment instance.+"""+type Deployment implements Node {+ """+ Identifies the commit sha of the deployment.+ """+ commit: Commit++ """+ Identifies the oid of the deployment commit, even if the commit has been deleted.+ """+ commitOid: String!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the actor who triggered the deployment.+ """+ creator: Actor!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The deployment description.+ """+ description: String++ """+ The latest environment to which this deployment was made.+ """+ environment: String+ id: ID!++ """+ The latest environment to which this deployment was made.+ """+ latestEnvironment: String++ """+ The latest status of this deployment.+ """+ latestStatus: DeploymentStatus++ """+ The original environment to which this deployment was made.+ """+ originalEnvironment: String++ """+ Extra information that a deployment system might need.+ """+ payload: String++ """+ Identifies the Ref of the deployment, if the deployment was created by ref.+ """+ ref: Ref++ """+ Identifies the repository associated with the deployment.+ """+ repository: Repository!++ """+ The current state of the deployment.+ """+ state: DeploymentState++ """+ A list of statuses associated with the deployment.+ """+ statuses(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): DeploymentStatusConnection++ """+ The deployment task.+ """+ task: String++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!+}++"""+The connection type for Deployment.+"""+type DeploymentConnection {+ """+ A list of edges.+ """+ edges: [DeploymentEdge]++ """+ A list of nodes.+ """+ nodes: [Deployment]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type DeploymentEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Deployment+}++"""+Represents a 'deployment_environment_changed' event on a given pull request.+"""+type DeploymentEnvironmentChangedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The deployment status that updated the deployment environment.+ """+ deploymentStatus: DeploymentStatus!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!+}++"""+Ordering options for deployment connections+"""+input DeploymentOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order deployments by.+ """+ field: DeploymentOrderField!+}++"""+Properties by which deployment connections can be ordered.+"""+enum DeploymentOrderField {+ """+ Order collection by creation time+ """+ CREATED_AT+}++"""+The possible states in which a deployment can be.+"""+enum DeploymentState {+ """+ The pending deployment was not updated after 30 minutes.+ """+ ABANDONED++ """+ The deployment is currently active.+ """+ ACTIVE++ """+ An inactive transient deployment.+ """+ DESTROYED++ """+ The deployment experienced an error.+ """+ ERROR++ """+ The deployment has failed.+ """+ FAILURE++ """+ The deployment is inactive.+ """+ INACTIVE++ """+ The deployment is in progress.+ """+ IN_PROGRESS++ """+ The deployment is pending.+ """+ PENDING++ """+ The deployment has queued+ """+ QUEUED+}++"""+Describes the status of a given deployment attempt.+"""+type DeploymentStatus implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the actor who triggered the deployment.+ """+ creator: Actor!++ """+ Identifies the deployment associated with status.+ """+ deployment: Deployment!++ """+ Identifies the description of the deployment.+ """+ description: String++ """+ Identifies the environment of the deployment at the time of this deployment status+ """+ environment: String @preview(toggledBy: "flash-preview")++ """+ Identifies the environment URL of the deployment.+ """+ environmentUrl: URI+ id: ID!++ """+ Identifies the log URL of the deployment.+ """+ logUrl: URI++ """+ Identifies the current state of the deployment.+ """+ state: DeploymentStatusState!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!+}++"""+The connection type for DeploymentStatus.+"""+type DeploymentStatusConnection {+ """+ A list of edges.+ """+ edges: [DeploymentStatusEdge]++ """+ A list of nodes.+ """+ nodes: [DeploymentStatus]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type DeploymentStatusEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: DeploymentStatus+}++"""+The possible states for a deployment status.+"""+enum DeploymentStatusState {+ """+ The deployment experienced an error.+ """+ ERROR++ """+ The deployment has failed.+ """+ FAILURE++ """+ The deployment is inactive.+ """+ INACTIVE++ """+ The deployment is in progress.+ """+ IN_PROGRESS++ """+ The deployment is pending.+ """+ PENDING++ """+ The deployment is queued+ """+ QUEUED++ """+ The deployment was successful.+ """+ SUCCESS+}++"""+The possible sides of a diff.+"""+enum DiffSide {+ """+ The left side of the diff.+ """+ LEFT++ """+ The right side of the diff.+ """+ RIGHT+}++"""+Represents a 'disconnected' event on a given issue or pull request.+"""+type DisconnectedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Reference originated in a different repository.+ """+ isCrossRepository: Boolean!++ """+ Issue or pull request from which the issue was disconnected.+ """+ source: ReferencedSubject!++ """+ Issue or pull request which was disconnected.+ """+ subject: ReferencedSubject!+}++"""+Autogenerated input type of DismissPullRequestReview+"""+input DismissPullRequestReviewInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The contents of the pull request review dismissal message.+ """+ message: String!++ """+ The Node ID of the pull request review to modify.+ """+ pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"])+}++"""+Autogenerated return type of DismissPullRequestReview+"""+type DismissPullRequestReviewPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The dismissed pull request review.+ """+ pullRequestReview: PullRequestReview+}++"""+Specifies a review comment to be left with a Pull Request Review.+"""+input DraftPullRequestReviewComment {+ """+ Body of the comment to leave.+ """+ body: String!++ """+ Path to the file being commented on.+ """+ path: String!++ """+ Position in the file to leave a comment on.+ """+ position: Int!+}++"""+Specifies a review comment thread to be left with a Pull Request Review.+"""+input DraftPullRequestReviewThread {+ """+ Body of the comment to leave.+ """+ body: String!++ """+ The line of the blob to which the thread refers. The end of the line range for multi-line comments.+ """+ line: Int!++ """+ Path to the file being commented on.+ """+ path: String!++ """+ 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 = RIGHT++ """+ The first line of the range to which the comment refers.+ """+ startLine: Int++ """+ The side of the diff on which the start line resides.+ """+ startSide: DiffSide = RIGHT+}++"""+An account to manage multiple organizations with consolidated policy and billing.+"""+type Enterprise implements Node {+ """+ A URL pointing to the enterprise's public avatar.+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int+ ): URI!++ """+ Enterprise billing information visible to enterprise billing managers.+ """+ billingInfo: EnterpriseBillingInfo++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The description of the enterprise.+ """+ description: String++ """+ The description of the enterprise as HTML.+ """+ descriptionHTML: HTML!+ id: ID!++ """+ The location of the enterprise.+ """+ location: String++ """+ A list of users who are members of this enterprise.+ """+ members(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Only return members within the selected GitHub Enterprise deployment+ """+ deployment: EnterpriseUserDeployment++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for members returned from the connection.+ """+ orderBy: EnterpriseMemberOrder = { field: LOGIN, direction: ASC }++ """+ Only return members within the organizations with these logins+ """+ organizationLogins: [String!]++ """+ The search string to look for.+ """+ query: String++ """+ The role of the user in the enterprise organization or server.+ """+ role: EnterpriseUserAccountMembershipRole+ ): EnterpriseMemberConnection!++ """+ The name of the enterprise.+ """+ name: String!++ """+ A list of organizations that belong to this enterprise.+ """+ organizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations returned from the connection.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The search string to look for.+ """+ query: String+ ): OrganizationConnection!++ """+ Enterprise information only visible to enterprise owners.+ """+ ownerInfo: EnterpriseOwnerInfo++ """+ The HTTP path for this enterprise.+ """+ resourcePath: URI!++ """+ The URL-friendly identifier for the enterprise.+ """+ slug: String!++ """+ The HTTP URL for this enterprise.+ """+ url: URI!++ """+ A list of user accounts on this enterprise.+ """+ userAccounts(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): EnterpriseUserAccountConnection!++ """+ Is the current viewer an admin of this enterprise?+ """+ viewerIsAdmin: Boolean!++ """+ The URL of the enterprise website.+ """+ websiteUrl: URI+}++"""+The connection type for User.+"""+type EnterpriseAdministratorConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseAdministratorEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+A User who is an administrator of an enterprise.+"""+type EnterpriseAdministratorEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: User++ """+ The role of the administrator.+ """+ role: EnterpriseAdministratorRole!+}++"""+An invitation for a user to become an owner or billing manager of an enterprise.+"""+type EnterpriseAdministratorInvitation implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The email of the person who was invited to the enterprise.+ """+ email: String++ """+ The enterprise the invitation is for.+ """+ enterprise: Enterprise!+ id: ID!++ """+ The user who was invited to the enterprise.+ """+ invitee: User++ """+ The user who created the invitation.+ """+ inviter: User++ """+ The invitee's pending role in the enterprise (owner or billing_manager).+ """+ role: EnterpriseAdministratorRole!+}++"""+The connection type for EnterpriseAdministratorInvitation.+"""+type EnterpriseAdministratorInvitationConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseAdministratorInvitationEdge]++ """+ A list of nodes.+ """+ nodes: [EnterpriseAdministratorInvitation]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type EnterpriseAdministratorInvitationEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: EnterpriseAdministratorInvitation+}++"""+Ordering options for enterprise administrator invitation connections+"""+input EnterpriseAdministratorInvitationOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order enterprise administrator invitations by.+ """+ field: EnterpriseAdministratorInvitationOrderField!+}++"""+Properties by which enterprise administrator invitation connections can be ordered.+"""+enum EnterpriseAdministratorInvitationOrderField {+ """+ Order enterprise administrator member invitations by creation time+ """+ CREATED_AT+}++"""+The possible administrator roles in an enterprise account.+"""+enum EnterpriseAdministratorRole {+ """+ Represents a billing manager of the enterprise account.+ """+ BILLING_MANAGER++ """+ Represents an owner of the enterprise account.+ """+ OWNER+}++"""+Metadata for an audit entry containing enterprise account information.+"""+interface EnterpriseAuditEntryData {+ """+ The HTTP path for this enterprise.+ """+ enterpriseResourcePath: URI++ """+ The slug of the enterprise.+ """+ enterpriseSlug: String++ """+ The HTTP URL for this enterprise.+ """+ enterpriseUrl: URI+}++"""+Enterprise billing information visible to enterprise billing managers and owners.+"""+type EnterpriseBillingInfo {+ """+ The number of licenseable users/emails across the enterprise.+ """+ allLicensableUsersCount: Int!++ """+ The number of data packs used by all organizations owned by the enterprise.+ """+ assetPacks: Int!++ """+ The number of available seats across all owned organizations based on the unique number of billable users.+ """+ availableSeats: Int!+ @deprecated(+ reason: "`availableSeats` will be replaced with `totalAvailableLicenses` to provide more clarity on the value being returned Use EnterpriseBillingInfo.totalAvailableLicenses instead. Removal on 2020-01-01 UTC."+ )++ """+ The bandwidth quota in GB for all organizations owned by the enterprise.+ """+ bandwidthQuota: Float!++ """+ The bandwidth usage in GB for all organizations owned by the enterprise.+ """+ bandwidthUsage: Float!++ """+ The bandwidth usage as a percentage of the bandwidth quota.+ """+ bandwidthUsagePercentage: Int!++ """+ The total seats across all organizations owned by the enterprise.+ """+ seats: Int!+ @deprecated(+ reason: "`seats` will be replaced with `totalLicenses` to provide more clarity on the value being returned Use EnterpriseBillingInfo.totalLicenses instead. Removal on 2020-01-01 UTC."+ )++ """+ The storage quota in GB for all organizations owned by the enterprise.+ """+ storageQuota: Float!++ """+ The storage usage in GB for all organizations owned by the enterprise.+ """+ storageUsage: Float!++ """+ The storage usage as a percentage of the storage quota.+ """+ storageUsagePercentage: Int!++ """+ The number of available licenses across all owned organizations based on the unique number of billable users.+ """+ totalAvailableLicenses: Int!++ """+ The total number of licenses allocated.+ """+ totalLicenses: Int!+}++"""+The possible values for the enterprise default repository permission setting.+"""+enum EnterpriseDefaultRepositoryPermissionSettingValue {+ """+ Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories.+ """+ ADMIN++ """+ Organization members will only be able to clone and pull public repositories.+ """+ NONE++ """+ Organizations in the enterprise choose default repository permissions for their members.+ """+ NO_POLICY++ """+ Organization members will be able to clone and pull all organization repositories.+ """+ READ++ """+ Organization members will be able to clone, pull, and push all organization repositories.+ """+ WRITE+}++"""+The possible values for an enabled/disabled enterprise setting.+"""+enum EnterpriseEnabledDisabledSettingValue {+ """+ The setting is disabled for organizations in the enterprise.+ """+ DISABLED++ """+ The setting is enabled for organizations in the enterprise.+ """+ ENABLED++ """+ There is no policy set for organizations in the enterprise.+ """+ NO_POLICY+}++"""+The possible values for an enabled/no policy enterprise setting.+"""+enum EnterpriseEnabledSettingValue {+ """+ The setting is enabled for organizations in the enterprise.+ """+ ENABLED++ """+ There is no policy set for organizations in the enterprise.+ """+ NO_POLICY+}++"""+An identity provider configured to provision identities for an enterprise.+"""+type EnterpriseIdentityProvider implements Node {+ """+ The digest algorithm used to sign SAML requests for the identity provider.+ """+ digestMethod: SamlDigestAlgorithm++ """+ The enterprise this identity provider belongs to.+ """+ enterprise: Enterprise++ """+ ExternalIdentities provisioned by this identity provider.+ """+ externalIdentities(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ExternalIdentityConnection!+ id: ID!++ """+ The x509 certificate used by the identity provider to sign assertions and responses.+ """+ idpCertificate: X509Certificate++ """+ The Issuer Entity ID for the SAML identity provider.+ """+ issuer: String++ """+ Recovery codes that can be used by admins to access the enterprise if the identity provider is unavailable.+ """+ recoveryCodes: [String!]++ """+ The signature algorithm used to sign SAML requests for the identity provider.+ """+ signatureMethod: SamlSignatureAlgorithm++ """+ The URL endpoint for the identity provider's SAML SSO.+ """+ ssoUrl: URI+}++"""+An object that is a member of an enterprise.+"""+union EnterpriseMember = EnterpriseUserAccount | User++"""+The connection type for EnterpriseMember.+"""+type EnterpriseMemberConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseMemberEdge]++ """+ A list of nodes.+ """+ nodes: [EnterpriseMember]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+A User who is a member of an enterprise through one or more organizations.+"""+type EnterpriseMemberEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ Whether the user does not have a license for the enterprise.+ """+ isUnlicensed: Boolean!+ @deprecated(+ reason: "All members consume a license Removal on 2021-01-01 UTC."+ )++ """+ The item at the end of the edge.+ """+ node: EnterpriseMember+}++"""+Ordering options for enterprise member connections.+"""+input EnterpriseMemberOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order enterprise members by.+ """+ field: EnterpriseMemberOrderField!+}++"""+Properties by which enterprise member connections can be ordered.+"""+enum EnterpriseMemberOrderField {+ """+ Order enterprise members by creation time+ """+ CREATED_AT++ """+ Order enterprise members by login+ """+ LOGIN+}++"""+The possible values for the enterprise members can create repositories setting.+"""+enum EnterpriseMembersCanCreateRepositoriesSettingValue {+ """+ Members will be able to create public and private repositories.+ """+ ALL++ """+ Members will not be able to create public or private repositories.+ """+ DISABLED++ """+ Organization administrators choose whether to allow members to create repositories.+ """+ NO_POLICY++ """+ Members will be able to create only private repositories.+ """+ PRIVATE++ """+ Members will be able to create only public repositories.+ """+ PUBLIC+}++"""+The possible values for the members can make purchases setting.+"""+enum EnterpriseMembersCanMakePurchasesSettingValue {+ """+ The setting is disabled for organizations in the enterprise.+ """+ DISABLED++ """+ The setting is enabled for organizations in the enterprise.+ """+ ENABLED+}++"""+The connection type for Organization.+"""+type EnterpriseOrganizationMembershipConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseOrganizationMembershipEdge]++ """+ A list of nodes.+ """+ nodes: [Organization]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An enterprise organization that a user is a member of.+"""+type EnterpriseOrganizationMembershipEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Organization++ """+ The role of the user in the enterprise membership.+ """+ role: EnterpriseUserAccountMembershipRole!+}++"""+The connection type for User.+"""+type EnterpriseOutsideCollaboratorConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseOutsideCollaboratorEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+A User who is an outside collaborator of an enterprise through one or more organizations.+"""+type EnterpriseOutsideCollaboratorEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ Whether the outside collaborator does not have a license for the enterprise.+ """+ isUnlicensed: Boolean!+ @deprecated(+ reason: "All outside collaborators consume a license Removal on 2021-01-01 UTC."+ )++ """+ The item at the end of the edge.+ """+ node: User++ """+ The enterprise organization repositories this user is a member of.+ """+ repositories(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for repositories.+ """+ orderBy: RepositoryOrder = { field: NAME, direction: ASC }+ ): EnterpriseRepositoryInfoConnection!+}++"""+Enterprise information only visible to enterprise owners.+"""+type EnterpriseOwnerInfo {+ """+ A list of enterprise organizations configured with the provided action execution capabilities setting value.+ """+ actionExecutionCapabilitySettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }+ ): OrganizationConnection!++ """+ A list of all of the administrators for this enterprise.+ """+ admins(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for administrators returned from the connection.+ """+ orderBy: EnterpriseMemberOrder = { field: LOGIN, direction: ASC }++ """+ The search string to look for.+ """+ query: String++ """+ The role to filter by.+ """+ role: EnterpriseAdministratorRole+ ): EnterpriseAdministratorConnection!++ """+ A list of users in the enterprise who currently have two-factor authentication disabled.+ """+ affiliatedUsersWithTwoFactorDisabled(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserConnection!++ """+ Whether or not affiliated users with two-factor authentication disabled exist in the enterprise.+ """+ affiliatedUsersWithTwoFactorDisabledExist: Boolean!++ """+ The setting value for whether private repository forking is enabled for repositories in organizations in this enterprise.+ """+ allowPrivateRepositoryForkingSetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided private repository forking setting value.+ """+ allowPrivateRepositoryForkingSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ The setting value for base repository permissions for organizations in this enterprise.+ """+ defaultRepositoryPermissionSetting: EnterpriseDefaultRepositoryPermissionSettingValue!++ """+ A list of enterprise organizations configured with the provided default repository permission.+ """+ defaultRepositoryPermissionSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The permission to find organizations for.+ """+ value: DefaultRepositoryPermissionField!+ ): OrganizationConnection!++ """+ Enterprise Server installations owned by the enterprise.+ """+ enterpriseServerInstallations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Whether or not to only return installations discovered via GitHub Connect.+ """+ connectedOnly: Boolean = false++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for Enterprise Server installations returned.+ """+ orderBy: EnterpriseServerInstallationOrder = {+ field: HOST_NAME+ direction: ASC+ }+ ): EnterpriseServerInstallationConnection!++ """+ The setting value for whether the enterprise has an IP allow list enabled.+ """+ ipAllowListEnabledSetting: IpAllowListEnabledSettingValue!++ """+ The IP addresses that are allowed to access resources owned by the enterprise.+ """+ ipAllowListEntries(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for IP allow list entries returned.+ """+ orderBy: IpAllowListEntryOrder = { field: ALLOW_LIST_VALUE, direction: ASC }+ ): IpAllowListEntryConnection!++ """+ Whether or not the default repository permission is currently being updated.+ """+ isUpdatingDefaultRepositoryPermission: Boolean!++ """+ Whether the two-factor authentication requirement is currently being enforced.+ """+ isUpdatingTwoFactorRequirement: Boolean!++ """+ The setting value for whether organization members with admin permissions on a+ repository can change repository visibility.+ """+ membersCanChangeRepositoryVisibilitySetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided can change repository visibility setting value.+ """+ membersCanChangeRepositoryVisibilitySettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ The setting value for whether members of organizations in the enterprise can create internal repositories.+ """+ membersCanCreateInternalRepositoriesSetting: Boolean++ """+ The setting value for whether members of organizations in the enterprise can create private repositories.+ """+ membersCanCreatePrivateRepositoriesSetting: Boolean++ """+ The setting value for whether members of organizations in the enterprise can create public repositories.+ """+ membersCanCreatePublicRepositoriesSetting: Boolean++ """+ The setting value for whether members of organizations in the enterprise can create repositories.+ """+ membersCanCreateRepositoriesSetting: EnterpriseMembersCanCreateRepositoriesSettingValue++ """+ A list of enterprise organizations configured with the provided repository creation setting value.+ """+ membersCanCreateRepositoriesSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting to find organizations for.+ """+ value: OrganizationMembersCanCreateRepositoriesSettingValue!+ ): OrganizationConnection!++ """+ The setting value for whether members with admin permissions for repositories can delete issues.+ """+ membersCanDeleteIssuesSetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided members can delete issues setting value.+ """+ membersCanDeleteIssuesSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ The setting value for whether members with admin permissions for repositories can delete or transfer repositories.+ """+ membersCanDeleteRepositoriesSetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided members can delete repositories setting value.+ """+ membersCanDeleteRepositoriesSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ The setting value for whether members of organizations in the enterprise can invite outside collaborators.+ """+ membersCanInviteCollaboratorsSetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided members can invite collaborators setting value.+ """+ membersCanInviteCollaboratorsSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ Indicates whether members of this enterprise's organizations can purchase additional services for those organizations.+ """+ membersCanMakePurchasesSetting: EnterpriseMembersCanMakePurchasesSettingValue!++ """+ The setting value for whether members with admin permissions for repositories can update protected branches.+ """+ membersCanUpdateProtectedBranchesSetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided members can update protected branches setting value.+ """+ membersCanUpdateProtectedBranchesSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ The setting value for whether members can view dependency insights.+ """+ membersCanViewDependencyInsightsSetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided members can view dependency insights setting value.+ """+ membersCanViewDependencyInsightsSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ The setting value for whether organization projects are enabled for organizations in this enterprise.+ """+ organizationProjectsSetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided organization projects setting value.+ """+ organizationProjectsSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ A list of outside collaborators across the repositories in the enterprise.+ """+ outsideCollaborators(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ The login of one specific outside collaborator.+ """+ login: String++ """+ Ordering options for outside collaborators returned from the connection.+ """+ orderBy: EnterpriseMemberOrder = { field: LOGIN, direction: ASC }++ """+ The search string to look for.+ """+ query: String++ """+ Only return outside collaborators on repositories with this visibility.+ """+ visibility: RepositoryVisibility+ ): EnterpriseOutsideCollaboratorConnection!++ """+ A list of pending administrator invitations for the enterprise.+ """+ pendingAdminInvitations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pending enterprise administrator invitations returned from the connection.+ """+ orderBy: EnterpriseAdministratorInvitationOrder = {+ field: CREATED_AT+ direction: DESC+ }++ """+ The search string to look for.+ """+ query: String++ """+ The role to filter by.+ """+ role: EnterpriseAdministratorRole+ ): EnterpriseAdministratorInvitationConnection!++ """+ A list of pending collaborator invitations across the repositories in the enterprise.+ """+ pendingCollaboratorInvitations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pending repository collaborator invitations returned from the connection.+ """+ orderBy: RepositoryInvitationOrder = { field: CREATED_AT, direction: DESC }++ """+ The search string to look for.+ """+ query: String+ ): RepositoryInvitationConnection!++ """+ A list of pending collaborators across the repositories in the enterprise.+ """+ pendingCollaborators(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pending repository collaborator invitations returned from the connection.+ """+ orderBy: RepositoryInvitationOrder = { field: CREATED_AT, direction: DESC }++ """+ The search string to look for.+ """+ query: String+ ): EnterprisePendingCollaboratorConnection!+ @deprecated(+ reason: "Repository invitations can now be associated with an email, not only an invitee. Use the `pendingCollaboratorInvitations` field instead. Removal on 2020-10-01 UTC."+ )++ """+ A list of pending member invitations for organizations in the enterprise.+ """+ pendingMemberInvitations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ The search string to look for.+ """+ query: String+ ): EnterprisePendingMemberInvitationConnection!++ """+ The setting value for whether repository projects are enabled in this enterprise.+ """+ repositoryProjectsSetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided repository projects setting value.+ """+ repositoryProjectsSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ The SAML Identity Provider for the enterprise.+ """+ samlIdentityProvider: EnterpriseIdentityProvider++ """+ A list of enterprise organizations configured with the SAML single sign-on setting value.+ """+ samlIdentityProviderSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: IdentityProviderConfigurationState!+ ): OrganizationConnection!++ """+ The setting value for whether team discussions are enabled for organizations in this enterprise.+ """+ teamDiscussionsSetting: EnterpriseEnabledDisabledSettingValue!++ """+ A list of enterprise organizations configured with the provided team discussions setting value.+ """+ teamDiscussionsSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!++ """+ The setting value for whether the enterprise requires two-factor authentication for its organizations and users.+ """+ twoFactorRequiredSetting: EnterpriseEnabledSettingValue!++ """+ A list of enterprise organizations configured with the two-factor authentication setting value.+ """+ twoFactorRequiredSettingOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations with this setting.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The setting value to find organizations for.+ """+ value: Boolean!+ ): OrganizationConnection!+}++"""+The connection type for User.+"""+type EnterprisePendingCollaboratorConnection {+ """+ A list of edges.+ """+ edges: [EnterprisePendingCollaboratorEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+A user with an invitation to be a collaborator on a repository owned by an organization in an enterprise.+"""+type EnterprisePendingCollaboratorEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ Whether the invited collaborator does not have a license for the enterprise.+ """+ isUnlicensed: Boolean!+ @deprecated(+ reason: "All pending collaborators consume a license Removal on 2021-01-01 UTC."+ )++ """+ The item at the end of the edge.+ """+ node: User++ """+ The enterprise organization repositories this user is a member of.+ """+ repositories(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for repositories.+ """+ orderBy: RepositoryOrder = { field: NAME, direction: ASC }+ ): EnterpriseRepositoryInfoConnection!+}++"""+The connection type for OrganizationInvitation.+"""+type EnterprisePendingMemberInvitationConnection {+ """+ A list of edges.+ """+ edges: [EnterprisePendingMemberInvitationEdge]++ """+ A list of nodes.+ """+ nodes: [OrganizationInvitation]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!++ """+ Identifies the total count of unique users in the connection.+ """+ totalUniqueUserCount: Int!+}++"""+An invitation to be a member in an enterprise organization.+"""+type EnterprisePendingMemberInvitationEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ Whether the invitation has a license for the enterprise.+ """+ isUnlicensed: Boolean!+ @deprecated(+ reason: "All pending members consume a license Removal on 2020-07-01 UTC."+ )++ """+ The item at the end of the edge.+ """+ node: OrganizationInvitation+}++"""+A subset of repository information queryable from an enterprise.+"""+type EnterpriseRepositoryInfo implements Node {+ id: ID!++ """+ Identifies if the repository is private.+ """+ isPrivate: Boolean!++ """+ The repository's name.+ """+ name: String!++ """+ The repository's name with owner.+ """+ nameWithOwner: String!+}++"""+The connection type for EnterpriseRepositoryInfo.+"""+type EnterpriseRepositoryInfoConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseRepositoryInfoEdge]++ """+ A list of nodes.+ """+ nodes: [EnterpriseRepositoryInfo]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type EnterpriseRepositoryInfoEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: EnterpriseRepositoryInfo+}++"""+An Enterprise Server installation.+"""+type EnterpriseServerInstallation implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The customer name to which the Enterprise Server installation belongs.+ """+ customerName: String!++ """+ The host name of the Enterprise Server installation.+ """+ hostName: String!+ id: ID!++ """+ Whether or not the installation is connected to an Enterprise Server installation via GitHub Connect.+ """+ isConnected: Boolean!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ User accounts on this Enterprise Server installation.+ """+ userAccounts(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for Enterprise Server user accounts returned from the connection.+ """+ orderBy: EnterpriseServerUserAccountOrder = { field: LOGIN, direction: ASC }+ ): EnterpriseServerUserAccountConnection!++ """+ User accounts uploads for the Enterprise Server installation.+ """+ userAccountsUploads(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for Enterprise Server user accounts uploads returned from the connection.+ """+ orderBy: EnterpriseServerUserAccountsUploadOrder = {+ field: CREATED_AT+ direction: DESC+ }+ ): EnterpriseServerUserAccountsUploadConnection!+}++"""+The connection type for EnterpriseServerInstallation.+"""+type EnterpriseServerInstallationConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseServerInstallationEdge]++ """+ A list of nodes.+ """+ nodes: [EnterpriseServerInstallation]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type EnterpriseServerInstallationEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: EnterpriseServerInstallation+}++"""+Ordering options for Enterprise Server installation connections.+"""+input EnterpriseServerInstallationOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order Enterprise Server installations by.+ """+ field: EnterpriseServerInstallationOrderField!+}++"""+Properties by which Enterprise Server installation connections can be ordered.+"""+enum EnterpriseServerInstallationOrderField {+ """+ Order Enterprise Server installations by creation time+ """+ CREATED_AT++ """+ Order Enterprise Server installations by customer name+ """+ CUSTOMER_NAME++ """+ Order Enterprise Server installations by host name+ """+ HOST_NAME+}++"""+A user account on an Enterprise Server installation.+"""+type EnterpriseServerUserAccount implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ User emails belonging to this user account.+ """+ emails(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for Enterprise Server user account emails returned from the connection.+ """+ orderBy: EnterpriseServerUserAccountEmailOrder = {+ field: EMAIL+ direction: ASC+ }+ ): EnterpriseServerUserAccountEmailConnection!++ """+ The Enterprise Server installation on which this user account exists.+ """+ enterpriseServerInstallation: EnterpriseServerInstallation!+ id: ID!++ """+ Whether the user account is a site administrator on the Enterprise Server installation.+ """+ isSiteAdmin: Boolean!++ """+ The login of the user account on the Enterprise Server installation.+ """+ login: String!++ """+ The profile name of the user account on the Enterprise Server installation.+ """+ profileName: String++ """+ The date and time when the user account was created on the Enterprise Server installation.+ """+ remoteCreatedAt: DateTime!++ """+ The ID of the user account on the Enterprise Server installation.+ """+ remoteUserId: Int!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!+}++"""+The connection type for EnterpriseServerUserAccount.+"""+type EnterpriseServerUserAccountConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseServerUserAccountEdge]++ """+ A list of nodes.+ """+ nodes: [EnterpriseServerUserAccount]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type EnterpriseServerUserAccountEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: EnterpriseServerUserAccount+}++"""+An email belonging to a user account on an Enterprise Server installation.+"""+type EnterpriseServerUserAccountEmail implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The email address.+ """+ email: String!+ id: ID!++ """+ Indicates whether this is the primary email of the associated user account.+ """+ isPrimary: Boolean!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The user account to which the email belongs.+ """+ userAccount: EnterpriseServerUserAccount!+}++"""+The connection type for EnterpriseServerUserAccountEmail.+"""+type EnterpriseServerUserAccountEmailConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseServerUserAccountEmailEdge]++ """+ A list of nodes.+ """+ nodes: [EnterpriseServerUserAccountEmail]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type EnterpriseServerUserAccountEmailEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: EnterpriseServerUserAccountEmail+}++"""+Ordering options for Enterprise Server user account email connections.+"""+input EnterpriseServerUserAccountEmailOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order emails by.+ """+ field: EnterpriseServerUserAccountEmailOrderField!+}++"""+Properties by which Enterprise Server user account email connections can be ordered.+"""+enum EnterpriseServerUserAccountEmailOrderField {+ """+ Order emails by email+ """+ EMAIL+}++"""+Ordering options for Enterprise Server user account connections.+"""+input EnterpriseServerUserAccountOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order user accounts by.+ """+ field: EnterpriseServerUserAccountOrderField!+}++"""+Properties by which Enterprise Server user account connections can be ordered.+"""+enum EnterpriseServerUserAccountOrderField {+ """+ Order user accounts by login+ """+ LOGIN++ """+ Order user accounts by creation time on the Enterprise Server installation+ """+ REMOTE_CREATED_AT+}++"""+A user accounts upload from an Enterprise Server installation.+"""+type EnterpriseServerUserAccountsUpload implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The enterprise to which this upload belongs.+ """+ enterprise: Enterprise!++ """+ The Enterprise Server installation for which this upload was generated.+ """+ enterpriseServerInstallation: EnterpriseServerInstallation!+ id: ID!++ """+ The name of the file uploaded.+ """+ name: String!++ """+ The synchronization state of the upload+ """+ syncState: EnterpriseServerUserAccountsUploadSyncState!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!+}++"""+The connection type for EnterpriseServerUserAccountsUpload.+"""+type EnterpriseServerUserAccountsUploadConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseServerUserAccountsUploadEdge]++ """+ A list of nodes.+ """+ nodes: [EnterpriseServerUserAccountsUpload]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type EnterpriseServerUserAccountsUploadEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: EnterpriseServerUserAccountsUpload+}++"""+Ordering options for Enterprise Server user accounts upload connections.+"""+input EnterpriseServerUserAccountsUploadOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order user accounts uploads by.+ """+ field: EnterpriseServerUserAccountsUploadOrderField!+}++"""+Properties by which Enterprise Server user accounts upload connections can be ordered.+"""+enum EnterpriseServerUserAccountsUploadOrderField {+ """+ Order user accounts uploads by creation time+ """+ CREATED_AT+}++"""+Synchronization state of the Enterprise Server user accounts upload+"""+enum EnterpriseServerUserAccountsUploadSyncState {+ """+ The synchronization of the upload failed.+ """+ FAILURE++ """+ The synchronization of the upload is pending.+ """+ PENDING++ """+ The synchronization of the upload succeeded.+ """+ SUCCESS+}++"""+An account for a user who is an admin of an enterprise or a member of an enterprise through one or more organizations.+"""+type EnterpriseUserAccount implements Actor & Node {+ """+ A URL pointing to the enterprise user account's public avatar.+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int+ ): URI!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The enterprise in which this user account exists.+ """+ enterprise: Enterprise!+ id: ID!++ """+ An identifier for the enterprise user account, a login or email address+ """+ login: String!++ """+ The name of the enterprise user account+ """+ name: String++ """+ A list of enterprise organizations this user is a member of.+ """+ organizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for organizations returned from the connection.+ """+ orderBy: OrganizationOrder = { field: LOGIN, direction: ASC }++ """+ The search string to look for.+ """+ query: String++ """+ The role of the user in the enterprise organization.+ """+ role: EnterpriseUserAccountMembershipRole+ ): EnterpriseOrganizationMembershipConnection!++ """+ The HTTP path for this user.+ """+ resourcePath: URI!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this user.+ """+ url: URI!++ """+ The user within the enterprise.+ """+ user: User+}++"""+The connection type for EnterpriseUserAccount.+"""+type EnterpriseUserAccountConnection {+ """+ A list of edges.+ """+ edges: [EnterpriseUserAccountEdge]++ """+ A list of nodes.+ """+ nodes: [EnterpriseUserAccount]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type EnterpriseUserAccountEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: EnterpriseUserAccount+}++"""+The possible roles for enterprise membership.+"""+enum EnterpriseUserAccountMembershipRole {+ """+ The user is a member of the enterprise membership.+ """+ MEMBER++ """+ The user is an owner of the enterprise membership.+ """+ OWNER+}++"""+The possible GitHub Enterprise deployments where this user can exist.+"""+enum EnterpriseUserDeployment {+ """+ The user is part of a GitHub Enterprise Cloud deployment.+ """+ CLOUD++ """+ The user is part of a GitHub Enterprise Server deployment.+ """+ SERVER+}++"""+An external identity provisioned by SAML SSO or SCIM.+"""+type ExternalIdentity implements Node {+ """+ The GUID for this identity+ """+ guid: String!+ id: ID!++ """+ Organization invitation for this SCIM-provisioned external identity+ """+ organizationInvitation: OrganizationInvitation++ """+ SAML Identity attributes+ """+ samlIdentity: ExternalIdentitySamlAttributes++ """+ SCIM Identity attributes+ """+ scimIdentity: ExternalIdentityScimAttributes++ """+ User linked to this external identity. Will be NULL if this identity has not been claimed by an organization member.+ """+ user: User+}++"""+The connection type for ExternalIdentity.+"""+type ExternalIdentityConnection {+ """+ A list of edges.+ """+ edges: [ExternalIdentityEdge]++ """+ A list of nodes.+ """+ nodes: [ExternalIdentity]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type ExternalIdentityEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: ExternalIdentity+}++"""+SAML attributes for the External Identity+"""+type ExternalIdentitySamlAttributes {+ """+ The emails associated with the SAML identity+ """+ emails: [UserEmailMetadata!]++ """+ Family name of the SAML identity+ """+ familyName: String++ """+ Given name of the SAML identity+ """+ givenName: String++ """+ The groups linked to this identity in IDP+ """+ groups: [String!]++ """+ The NameID of the SAML identity+ """+ nameId: String++ """+ The userName of the SAML identity+ """+ username: String+}++"""+SCIM attributes for the External Identity+"""+type ExternalIdentityScimAttributes {+ """+ The emails associated with the SCIM identity+ """+ emails: [UserEmailMetadata!]++ """+ Family name of the SCIM identity+ """+ familyName: String++ """+ Given name of the SCIM identity+ """+ givenName: String++ """+ The groups linked to this identity in IDP+ """+ groups: [String!]++ """+ The userName of the SCIM identity+ """+ username: String+}++"""+Autogenerated input type of FollowUser+"""+input FollowUserInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ ID of the user to follow.+ """+ userId: ID! @possibleTypes(concreteTypes: ["User"])+}++"""+Autogenerated return type of FollowUser+"""+type FollowUserPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The user that was followed.+ """+ user: User+}++"""+The connection type for User.+"""+type FollowerConnection {+ """+ A list of edges.+ """+ edges: [UserEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+The connection type for User.+"""+type FollowingConnection {+ """+ A list of edges.+ """+ edges: [UserEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+A funding platform link for a repository.+"""+type FundingLink {+ """+ The funding platform this link is for.+ """+ platform: FundingPlatform!++ """+ The configured URL for this funding link.+ """+ url: URI!+}++"""+The possible funding platforms for repository funding links.+"""+enum FundingPlatform {+ """+ Community Bridge funding platform.+ """+ COMMUNITY_BRIDGE++ """+ Custom funding platform.+ """+ CUSTOM++ """+ GitHub funding platform.+ """+ GITHUB++ """+ IssueHunt funding platform.+ """+ ISSUEHUNT++ """+ Ko-fi funding platform.+ """+ KO_FI++ """+ Liberapay funding platform.+ """+ LIBERAPAY++ """+ Open Collective funding platform.+ """+ OPEN_COLLECTIVE++ """+ Otechie funding platform.+ """+ OTECHIE++ """+ Patreon funding platform.+ """+ PATREON++ """+ Tidelift funding platform.+ """+ TIDELIFT+}++"""+A generic hovercard context with a message and icon+"""+type GenericHovercardContext implements HovercardContext {+ """+ A string describing this context+ """+ message: String!++ """+ An octicon to accompany this context+ """+ octicon: String!+}++"""+A Gist.+"""+type Gist implements Node & Starrable & UniformResourceLocatable {+ """+ A list of comments associated with the gist+ """+ comments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): GistCommentConnection!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The gist description.+ """+ description: String++ """+ The files in this gist.+ """+ files(+ """+ The maximum number of files to return.+ """+ limit: Int = 10++ """+ The oid of the files to return+ """+ oid: GitObjectID+ ): [GistFile]++ """+ A list of forks associated with the gist+ """+ forks(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for gists returned from the connection+ """+ orderBy: GistOrder+ ): GistConnection!+ id: ID!++ """+ Identifies if the gist is a fork.+ """+ isFork: Boolean!++ """+ Whether the gist is public or not.+ """+ isPublic: Boolean!++ """+ The gist name.+ """+ name: String!++ """+ The gist owner.+ """+ owner: RepositoryOwner++ """+ Identifies when the gist was last pushed to.+ """+ pushedAt: DateTime++ """+ The HTML path to this resource.+ """+ resourcePath: URI!++ """+ A list of users who have starred this starrable.+ """+ stargazers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: StarOrder+ ): StargazerConnection!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this Gist.+ """+ url: URI!++ """+ Returns a boolean indicating whether the viewing user has starred this starrable.+ """+ viewerHasStarred: Boolean!+}++"""+Represents a comment on an Gist.+"""+type GistComment implements Comment & Deletable & Minimizable & Node & Updatable & UpdatableComment {+ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the gist.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ Identifies the comment body.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ The body rendered to text.+ """+ bodyText: String!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The actor who edited the comment.+ """+ editor: Actor++ """+ The associated gist.+ """+ gist: Gist!+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ Returns whether or not a comment has been minimized.+ """+ isMinimized: Boolean!++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ Returns why the comment was minimized.+ """+ minimizedReason: String++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Check if the current viewer can delete this object.+ """+ viewerCanDelete: Boolean!++ """+ Check if the current viewer can minimize this object.+ """+ viewerCanMinimize: Boolean!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!++ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!+}++"""+The connection type for GistComment.+"""+type GistCommentConnection {+ """+ A list of edges.+ """+ edges: [GistCommentEdge]++ """+ A list of nodes.+ """+ nodes: [GistComment]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type GistCommentEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: GistComment+}++"""+The connection type for Gist.+"""+type GistConnection {+ """+ A list of edges.+ """+ edges: [GistEdge]++ """+ A list of nodes.+ """+ nodes: [Gist]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type GistEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Gist+}++"""+A file in a gist.+"""+type GistFile {+ """+ The file name encoded to remove characters that are invalid in URL paths.+ """+ encodedName: String++ """+ The gist file encoding.+ """+ encoding: String++ """+ The file extension from the file name.+ """+ extension: String++ """+ Indicates if this file is an image.+ """+ isImage: Boolean!++ """+ Whether the file's contents were truncated.+ """+ isTruncated: Boolean!++ """+ The programming language this file is written in.+ """+ language: Language++ """+ The gist file name.+ """+ name: String++ """+ The gist file size in bytes.+ """+ size: Int++ """+ UTF8 text data or null if the file is binary+ """+ text(+ """+ Optionally truncate the returned file to this length.+ """+ truncate: Int+ ): String+}++"""+Ordering options for gist connections+"""+input GistOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order repositories by.+ """+ field: GistOrderField!+}++"""+Properties by which gist connections can be ordered.+"""+enum GistOrderField {+ """+ Order gists by creation time+ """+ CREATED_AT++ """+ Order gists by push time+ """+ PUSHED_AT++ """+ Order gists by update time+ """+ UPDATED_AT+}++"""+The privacy of a Gist+"""+enum GistPrivacy {+ """+ Gists that are public and secret+ """+ ALL++ """+ Public+ """+ PUBLIC++ """+ Secret+ """+ SECRET+}++"""+Represents an actor in a Git commit (ie. an author or committer).+"""+type GitActor {+ """+ A URL pointing to the author's public avatar.+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int+ ): URI!++ """+ The timestamp of the Git action (authoring or committing).+ """+ date: GitTimestamp++ """+ The email in the Git commit.+ """+ email: String++ """+ The name in the Git commit.+ """+ name: String++ """+ The GitHub user corresponding to the email field. Null if no such user exists.+ """+ user: User+}++"""+Represents information about the GitHub instance.+"""+type GitHubMetadata {+ """+ Returns a String that's a SHA of `github-services`+ """+ gitHubServicesSha: GitObjectID!++ """+ IP addresses that users connect to for git operations+ """+ gitIpAddresses: [String!]++ """+ IP addresses that service hooks are sent from+ """+ hookIpAddresses: [String!]++ """+ IP addresses that the importer connects from+ """+ importerIpAddresses: [String!]++ """+ Whether or not users are verified+ """+ isPasswordAuthenticationVerifiable: Boolean!++ """+ IP addresses for GitHub Pages' A records+ """+ pagesIpAddresses: [String!]+}++"""+Represents a Git object.+"""+interface GitObject {+ """+ An abbreviated version of the Git object ID+ """+ abbreviatedOid: String!++ """+ The HTTP path for this Git object+ """+ commitResourcePath: URI!++ """+ The HTTP URL for this Git object+ """+ commitUrl: URI!+ id: ID!++ """+ The Git object ID+ """+ oid: GitObjectID!++ """+ The Repository the Git object belongs to+ """+ repository: Repository!+}++"""+A Git object ID.+"""+scalar GitObjectID++"""+A fully qualified reference name (e.g. `refs/heads/master`).+"""+scalar GitRefname @preview(toggledBy: "update-refs-preview")++"""+Git SSH string+"""+scalar GitSSHRemote++"""+Information about a signature (GPG or S/MIME) on a Commit or Tag.+"""+interface GitSignature {+ """+ Email used to sign this object.+ """+ email: String!++ """+ True if the signature is valid and verified by GitHub.+ """+ isValid: Boolean!++ """+ Payload for GPG signing object. Raw ODB object without the signature header.+ """+ payload: String!++ """+ ASCII-armored signature header from object.+ """+ signature: String!++ """+ GitHub user corresponding to the email signing this commit.+ """+ signer: User++ """+ The state of this signature. `VALID` if signature is valid and verified by+ GitHub, otherwise represents reason why signature is considered invalid.+ """+ state: GitSignatureState!++ """+ True if the signature was made with GitHub's signing key.+ """+ wasSignedByGitHub: Boolean!+}++"""+The state of a Git signature.+"""+enum GitSignatureState {+ """+ The signing certificate or its chain could not be verified+ """+ BAD_CERT++ """+ Invalid email used for signing+ """+ BAD_EMAIL++ """+ Signing key expired+ """+ EXPIRED_KEY++ """+ Internal error - the GPG verification service misbehaved+ """+ GPGVERIFY_ERROR++ """+ Internal error - the GPG verification service is unavailable at the moment+ """+ GPGVERIFY_UNAVAILABLE++ """+ Invalid signature+ """+ INVALID++ """+ Malformed signature+ """+ MALFORMED_SIG++ """+ The usage flags for the key that signed this don't allow signing+ """+ NOT_SIGNING_KEY++ """+ Email used for signing not known to GitHub+ """+ NO_USER++ """+ Valid siganture, though certificate revocation check failed+ """+ OCSP_ERROR++ """+ Valid signature, pending certificate revocation checking+ """+ OCSP_PENDING++ """+ One or more certificates in chain has been revoked+ """+ OCSP_REVOKED++ """+ Key used for signing not known to GitHub+ """+ UNKNOWN_KEY++ """+ Unknown signature type+ """+ UNKNOWN_SIG_TYPE++ """+ Unsigned+ """+ UNSIGNED++ """+ Email used for signing unverified on GitHub+ """+ UNVERIFIED_EMAIL++ """+ Valid signature and verified by GitHub+ """+ VALID+}++"""+An ISO-8601 encoded date string. Unlike the DateTime type, GitTimestamp is not converted in UTC.+"""+scalar GitTimestamp++"""+Represents a GPG signature on a Commit or Tag.+"""+type GpgSignature implements GitSignature {+ """+ Email used to sign this object.+ """+ email: String!++ """+ True if the signature is valid and verified by GitHub.+ """+ isValid: Boolean!++ """+ Hex-encoded ID of the key that signed this object.+ """+ keyId: String++ """+ Payload for GPG signing object. Raw ODB object without the signature header.+ """+ payload: String!++ """+ ASCII-armored signature header from object.+ """+ signature: String!++ """+ GitHub user corresponding to the email signing this commit.+ """+ signer: User++ """+ The state of this signature. `VALID` if signature is valid and verified by+ GitHub, otherwise represents reason why signature is considered invalid.+ """+ state: GitSignatureState!++ """+ True if the signature was made with GitHub's signing key.+ """+ wasSignedByGitHub: Boolean!+}++"""+A string containing HTML code.+"""+scalar HTML++"""+Represents a 'head_ref_deleted' event on a given pull request.+"""+type HeadRefDeletedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the Ref associated with the `head_ref_deleted` event.+ """+ headRef: Ref++ """+ Identifies the name of the Ref associated with the `head_ref_deleted` event.+ """+ headRefName: String!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!+}++"""+Represents a 'head_ref_force_pushed' event on a given pull request.+"""+type HeadRefForcePushedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the after commit SHA for the 'head_ref_force_pushed' event.+ """+ afterCommit: Commit++ """+ Identifies the before commit SHA for the 'head_ref_force_pushed' event.+ """+ beforeCommit: Commit++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!++ """+ Identifies the fully qualified ref name for the 'head_ref_force_pushed' event.+ """+ ref: Ref+}++"""+Represents a 'head_ref_restored' event on a given pull request.+"""+type HeadRefRestoredEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!+}++"""+Detail needed to display a hovercard for a user+"""+type Hovercard {+ """+ Each of the contexts for this hovercard+ """+ contexts: [HovercardContext!]!+}++"""+An individual line of a hovercard+"""+interface HovercardContext {+ """+ A string describing this context+ """+ message: String!++ """+ An octicon to accompany this context+ """+ octicon: String!+}++"""+The possible states in which authentication can be configured with an identity provider.+"""+enum IdentityProviderConfigurationState {+ """+ Authentication with an identity provider is configured but not enforced.+ """+ CONFIGURED++ """+ Authentication with an identity provider is configured and enforced.+ """+ ENFORCED++ """+ Authentication with an identity provider is not configured.+ """+ UNCONFIGURED+}++"""+Autogenerated input type of ImportProject+"""+input ImportProjectInput {+ """+ The description of Project.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ A list of columns containing issues and pull requests.+ """+ columnImports: [ProjectColumnImport!]!++ """+ The name of Project.+ """+ name: String!++ """+ The name of the Organization or User to create the Project under.+ """+ ownerName: String!++ """+ Whether the Project is public or not.+ """+ public: Boolean = false+}++"""+Autogenerated return type of ImportProject+"""+type ImportProjectPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new Project!+ """+ project: Project+}++"""+Autogenerated input type of InviteEnterpriseAdmin+"""+input InviteEnterpriseAdminInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The email of the person to invite as an administrator.+ """+ email: String++ """+ The ID of the enterprise to which you want to invite an administrator.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The login of a user to invite as an administrator.+ """+ invitee: String++ """+ The role of the administrator.+ """+ role: EnterpriseAdministratorRole+}++"""+Autogenerated return type of InviteEnterpriseAdmin+"""+type InviteEnterpriseAdminPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The created enterprise administrator invitation.+ """+ invitation: EnterpriseAdministratorInvitation+}++"""+The possible values for the IP allow list enabled setting.+"""+enum IpAllowListEnabledSettingValue {+ """+ The setting is disabled for the owner.+ """+ DISABLED++ """+ The setting is enabled for the owner.+ """+ ENABLED+}++"""+An IP address or range of addresses that is allowed to access an owner's resources.+"""+type IpAllowListEntry implements Node {+ """+ A single IP address or range of IP addresses in CIDR notation.+ """+ allowListValue: String!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Whether the entry is currently active.+ """+ isActive: Boolean!++ """+ The name of the IP allow list entry.+ """+ name: String++ """+ The owner of the IP allow list entry.+ """+ owner: IpAllowListOwner!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!+}++"""+The connection type for IpAllowListEntry.+"""+type IpAllowListEntryConnection {+ """+ A list of edges.+ """+ edges: [IpAllowListEntryEdge]++ """+ A list of nodes.+ """+ nodes: [IpAllowListEntry]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type IpAllowListEntryEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: IpAllowListEntry+}++"""+Ordering options for IP allow list entry connections.+"""+input IpAllowListEntryOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order IP allow list entries by.+ """+ field: IpAllowListEntryOrderField!+}++"""+Properties by which IP allow list entry connections can be ordered.+"""+enum IpAllowListEntryOrderField {+ """+ Order IP allow list entries by the allow list value.+ """+ ALLOW_LIST_VALUE++ """+ Order IP allow list entries by creation time.+ """+ CREATED_AT+}++"""+Types that can own an IP allow list.+"""+union IpAllowListOwner = Enterprise | Organization++"""+An Issue is a place to discuss ideas, enhancements, tasks, and bugs for a project.+"""+type Issue implements Assignable & Closable & Comment & Labelable & Lockable & Node & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment {+ """+ Reason that the conversation was locked.+ """+ activeLockReason: LockReason++ """+ A list of Users assigned to this object.+ """+ assignees(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserConnection!++ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the subject of the comment.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ Identifies the body of the issue.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ Identifies the body of the issue rendered to text.+ """+ bodyText: String!++ """+ `true` if the object is closed (definition of closed may depend on type)+ """+ closed: Boolean!++ """+ Identifies the date and time when the object was closed.+ """+ closedAt: DateTime++ """+ A list of comments associated with the Issue.+ """+ comments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): IssueCommentConnection!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The actor who edited the comment.+ """+ editor: Actor++ """+ The hovercard information for this issue+ """+ hovercard(+ """+ Whether or not to include notification contexts+ """+ includeNotificationContexts: Boolean = true+ ): Hovercard!+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ A list of labels associated with the object.+ """+ labels(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for labels returned from the connection.+ """+ orderBy: LabelOrder = { field: CREATED_AT, direction: ASC }+ ): LabelConnection++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ `true` if the object is locked+ """+ locked: Boolean!++ """+ Identifies the milestone associated with the issue.+ """+ milestone: Milestone++ """+ Identifies the issue number.+ """+ number: Int!++ """+ A list of Users that are participating in the Issue conversation.+ """+ participants(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserConnection!++ """+ List of project cards associated with this issue.+ """+ projectCards(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ A list of archived states to filter the cards by+ """+ archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED]++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ProjectCardConnection!++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ A list of reactions grouped by content left on the subject.+ """+ reactionGroups: [ReactionGroup!]++ """+ A list of Reactions left on the Issue.+ """+ reactions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Allows filtering Reactions by emoji.+ """+ content: ReactionContent++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows specifying the order in which reactions are returned.+ """+ orderBy: ReactionOrder+ ): ReactionConnection!++ """+ The repository associated with this node.+ """+ repository: Repository!++ """+ The HTTP path for this issue+ """+ resourcePath: URI!++ """+ Identifies the state of the issue.+ """+ state: IssueState!++ """+ A list of events, comments, commits, etc. associated with the issue.+ """+ timeline(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows filtering timeline events by a `since` timestamp.+ """+ since: DateTime+ ): IssueTimelineConnection!+ @deprecated(+ reason: "`timeline` will be removed Use Issue.timelineItems instead. Removal on 2020-10-01 UTC."+ )++ """+ A list of events, comments, commits, etc. associated with the issue.+ """+ timelineItems(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Filter timeline items by type.+ """+ itemTypes: [IssueTimelineItemsItemType!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filter timeline items by a `since` timestamp.+ """+ since: DateTime++ """+ Skips the first _n_ elements in the list.+ """+ skip: Int+ ): IssueTimelineItemsConnection!++ """+ Identifies the issue title.+ """+ title: String!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this issue+ """+ url: URI!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Can user react to this subject+ """+ viewerCanReact: Boolean!++ """+ Check if the viewer is able to change their subscription status for the repository.+ """+ viewerCanSubscribe: Boolean!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!++ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!++ """+ Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.+ """+ viewerSubscription: SubscriptionState+}++"""+Represents a comment on an Issue.+"""+type IssueComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment {+ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the subject of the comment.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ The body as Markdown.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ The body rendered to text.+ """+ bodyText: String!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The actor who edited the comment.+ """+ editor: Actor+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ Returns whether or not a comment has been minimized.+ """+ isMinimized: Boolean!++ """+ Identifies the issue associated with the comment.+ """+ issue: Issue!++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ Returns why the comment was minimized.+ """+ minimizedReason: String++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ Returns the pull request associated with the comment, if this comment was made on a+ pull request.+ """+ pullRequest: PullRequest++ """+ A list of reactions grouped by content left on the subject.+ """+ reactionGroups: [ReactionGroup!]++ """+ A list of Reactions left on the Issue.+ """+ reactions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Allows filtering Reactions by emoji.+ """+ content: ReactionContent++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows specifying the order in which reactions are returned.+ """+ orderBy: ReactionOrder+ ): ReactionConnection!++ """+ The repository associated with this node.+ """+ repository: Repository!++ """+ The HTTP path for this issue comment+ """+ resourcePath: URI!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this issue comment+ """+ url: URI!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Check if the current viewer can delete this object.+ """+ viewerCanDelete: Boolean!++ """+ Check if the current viewer can minimize this object.+ """+ viewerCanMinimize: Boolean!++ """+ Can user react to this subject+ """+ viewerCanReact: Boolean!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!++ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!+}++"""+The connection type for IssueComment.+"""+type IssueCommentConnection {+ """+ A list of edges.+ """+ edges: [IssueCommentEdge]++ """+ A list of nodes.+ """+ nodes: [IssueComment]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type IssueCommentEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: IssueComment+}++"""+The connection type for Issue.+"""+type IssueConnection {+ """+ A list of edges.+ """+ edges: [IssueEdge]++ """+ A list of nodes.+ """+ nodes: [Issue]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+This aggregates issues opened by a user within one repository.+"""+type IssueContributionsByRepository {+ """+ The issue contributions.+ """+ contributions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for contributions returned from the connection.+ """+ orderBy: ContributionOrder = { direction: DESC }+ ): CreatedIssueContributionConnection!++ """+ The repository in which the issues were opened.+ """+ repository: Repository!+}++"""+An edge in a connection.+"""+type IssueEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Issue+}++"""+Ways in which to filter lists of issues.+"""+input IssueFilters {+ """+ List issues assigned to given name. Pass in `null` for issues with no assigned+ user, and `*` for issues assigned to any user.+ """+ assignee: String++ """+ List issues created by given name.+ """+ createdBy: String++ """+ List issues where the list of label names exist on the issue.+ """+ labels: [String!]++ """+ List issues where the given name is mentioned in the issue.+ """+ mentioned: String++ """+ 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.+ """+ milestone: String++ """+ List issues that have been updated at or after the given date.+ """+ since: DateTime++ """+ List issues filtered by the list of states given.+ """+ states: [IssueState!]++ """+ List issues subscribed to by viewer.+ """+ viewerSubscribed: Boolean = false+}++"""+Used for return value of Repository.issueOrPullRequest.+"""+union IssueOrPullRequest = Issue | PullRequest++"""+Ways in which lists of issues can be ordered upon return.+"""+input IssueOrder {+ """+ The direction in which to order issues by the specified field.+ """+ direction: OrderDirection!++ """+ The field in which to order issues by.+ """+ field: IssueOrderField!+}++"""+Properties by which issue connections can be ordered.+"""+enum IssueOrderField {+ """+ Order issues by comment count+ """+ COMMENTS++ """+ Order issues by creation time+ """+ CREATED_AT++ """+ Order issues by update time+ """+ UPDATED_AT+}++"""+The possible states of an issue.+"""+enum IssueState {+ """+ An issue that has been closed+ """+ CLOSED++ """+ An issue that is still open+ """+ OPEN+}++"""+The connection type for IssueTimelineItem.+"""+type IssueTimelineConnection {+ """+ A list of edges.+ """+ edges: [IssueTimelineItemEdge]++ """+ A list of nodes.+ """+ nodes: [IssueTimelineItem]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An item in an issue timeline+"""+union IssueTimelineItem =+ AssignedEvent+ | ClosedEvent+ | Commit+ | CrossReferencedEvent+ | DemilestonedEvent+ | IssueComment+ | LabeledEvent+ | LockedEvent+ | MilestonedEvent+ | ReferencedEvent+ | RenamedTitleEvent+ | ReopenedEvent+ | SubscribedEvent+ | TransferredEvent+ | UnassignedEvent+ | UnlabeledEvent+ | UnlockedEvent+ | UnsubscribedEvent+ | UserBlockedEvent++"""+An edge in a connection.+"""+type IssueTimelineItemEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: IssueTimelineItem+}++"""+An item in an issue timeline+"""+union IssueTimelineItems =+ AddedToProjectEvent+ | AssignedEvent+ | ClosedEvent+ | CommentDeletedEvent+ | ConnectedEvent+ | ConvertedNoteToIssueEvent+ | CrossReferencedEvent+ | DemilestonedEvent+ | DisconnectedEvent+ | IssueComment+ | LabeledEvent+ | LockedEvent+ | MarkedAsDuplicateEvent+ | MentionedEvent+ | MilestonedEvent+ | MovedColumnsInProjectEvent+ | PinnedEvent+ | ReferencedEvent+ | RemovedFromProjectEvent+ | RenamedTitleEvent+ | ReopenedEvent+ | SubscribedEvent+ | TransferredEvent+ | UnassignedEvent+ | UnlabeledEvent+ | UnlockedEvent+ | UnmarkedAsDuplicateEvent+ | UnpinnedEvent+ | UnsubscribedEvent+ | UserBlockedEvent++"""+The connection type for IssueTimelineItems.+"""+type IssueTimelineItemsConnection {+ """+ A list of edges.+ """+ edges: [IssueTimelineItemsEdge]++ """+ Identifies the count of items after applying `before` and `after` filters.+ """+ filteredCount: Int!++ """+ A list of nodes.+ """+ nodes: [IssueTimelineItems]++ """+ Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing.+ """+ pageCount: Int!++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!++ """+ Identifies the date and time when the timeline was last updated.+ """+ updatedAt: DateTime!+}++"""+An edge in a connection.+"""+type IssueTimelineItemsEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: IssueTimelineItems+}++"""+The possible item types found in a timeline.+"""+enum IssueTimelineItemsItemType {+ """+ Represents a 'added_to_project' event on a given issue or pull request.+ """+ ADDED_TO_PROJECT_EVENT++ """+ Represents an 'assigned' event on any assignable object.+ """+ ASSIGNED_EVENT++ """+ Represents a 'closed' event on any `Closable`.+ """+ CLOSED_EVENT++ """+ Represents a 'comment_deleted' event on a given issue or pull request.+ """+ COMMENT_DELETED_EVENT++ """+ Represents a 'connected' event on a given issue or pull request.+ """+ CONNECTED_EVENT++ """+ Represents a 'converted_note_to_issue' event on a given issue or pull request.+ """+ CONVERTED_NOTE_TO_ISSUE_EVENT++ """+ Represents a mention made by one issue or pull request to another.+ """+ CROSS_REFERENCED_EVENT++ """+ Represents a 'demilestoned' event on a given issue or pull request.+ """+ DEMILESTONED_EVENT++ """+ Represents a 'disconnected' event on a given issue or pull request.+ """+ DISCONNECTED_EVENT++ """+ Represents a comment on an Issue.+ """+ ISSUE_COMMENT++ """+ Represents a 'labeled' event on a given issue or pull request.+ """+ LABELED_EVENT++ """+ Represents a 'locked' event on a given issue or pull request.+ """+ LOCKED_EVENT++ """+ Represents a 'marked_as_duplicate' event on a given issue or pull request.+ """+ MARKED_AS_DUPLICATE_EVENT++ """+ Represents a 'mentioned' event on a given issue or pull request.+ """+ MENTIONED_EVENT++ """+ Represents a 'milestoned' event on a given issue or pull request.+ """+ MILESTONED_EVENT++ """+ Represents a 'moved_columns_in_project' event on a given issue or pull request.+ """+ MOVED_COLUMNS_IN_PROJECT_EVENT++ """+ Represents a 'pinned' event on a given issue or pull request.+ """+ PINNED_EVENT++ """+ Represents a 'referenced' event on a given `ReferencedSubject`.+ """+ REFERENCED_EVENT++ """+ Represents a 'removed_from_project' event on a given issue or pull request.+ """+ REMOVED_FROM_PROJECT_EVENT++ """+ Represents a 'renamed' event on a given issue or pull request+ """+ RENAMED_TITLE_EVENT++ """+ Represents a 'reopened' event on any `Closable`.+ """+ REOPENED_EVENT++ """+ Represents a 'subscribed' event on a given `Subscribable`.+ """+ SUBSCRIBED_EVENT++ """+ Represents a 'transferred' event on a given issue or pull request.+ """+ TRANSFERRED_EVENT++ """+ Represents an 'unassigned' event on any assignable object.+ """+ UNASSIGNED_EVENT++ """+ Represents an 'unlabeled' event on a given issue or pull request.+ """+ UNLABELED_EVENT++ """+ Represents an 'unlocked' event on a given issue or pull request.+ """+ UNLOCKED_EVENT++ """+ Represents an 'unmarked_as_duplicate' event on a given issue or pull request.+ """+ UNMARKED_AS_DUPLICATE_EVENT++ """+ Represents an 'unpinned' event on a given issue or pull request.+ """+ UNPINNED_EVENT++ """+ Represents an 'unsubscribed' event on a given `Subscribable`.+ """+ UNSUBSCRIBED_EVENT++ """+ Represents a 'user_blocked' event on a given user.+ """+ USER_BLOCKED_EVENT+}++"""+Represents a user signing up for a GitHub account.+"""+type JoinedGitHubContribution implements Contribution {+ """+ Whether this contribution is associated with a record you do not have access to. For+ example, your own 'first issue' contribution may have been made on a repository you can no+ longer access.+ """+ isRestricted: Boolean!++ """+ When this contribution was made.+ """+ occurredAt: DateTime!++ """+ The HTTP path for this contribution.+ """+ resourcePath: URI!++ """+ The HTTP URL for this contribution.+ """+ url: URI!++ """+ The user who made this contribution.+ """+ user: User!+}++"""+A label for categorizing Issues or Milestones with a given Repository.+"""+type Label implements Node {+ """+ Identifies the label color.+ """+ color: String!++ """+ Identifies the date and time when the label was created.+ """+ createdAt: DateTime++ """+ A brief description of this label.+ """+ description: String+ id: ID!++ """+ Indicates whether or not this is a default label.+ """+ isDefault: Boolean!++ """+ A list of issues associated with this label.+ """+ issues(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Filtering options for issues returned from the connection.+ """+ filterBy: IssueFilters++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for issues returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the issues by.+ """+ states: [IssueState!]+ ): IssueConnection!++ """+ Identifies the label name.+ """+ name: String!++ """+ A list of pull requests associated with this label.+ """+ pullRequests(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ The base ref name to filter the pull requests by.+ """+ baseRefName: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ The head ref name to filter the pull requests by.+ """+ headRefName: String++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pull requests returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the pull requests by.+ """+ states: [PullRequestState!]+ ): PullRequestConnection!++ """+ The repository associated with this label.+ """+ repository: Repository!++ """+ The HTTP path for this label.+ """+ resourcePath: URI!++ """+ Identifies the date and time when the label was last updated.+ """+ updatedAt: DateTime++ """+ The HTTP URL for this label.+ """+ url: URI!+}++"""+The connection type for Label.+"""+type LabelConnection {+ """+ A list of edges.+ """+ edges: [LabelEdge]++ """+ A list of nodes.+ """+ nodes: [Label]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type LabelEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Label+}++"""+Ways in which lists of labels can be ordered upon return.+"""+input LabelOrder {+ """+ The direction in which to order labels by the specified field.+ """+ direction: OrderDirection!++ """+ The field in which to order labels by.+ """+ field: LabelOrderField!+}++"""+Properties by which label connections can be ordered.+"""+enum LabelOrderField {+ """+ Order labels by creation time+ """+ CREATED_AT++ """+ Order labels by name+ """+ NAME+}++"""+An object that can have labels assigned to it.+"""+interface Labelable {+ """+ A list of labels associated with the object.+ """+ labels(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for labels returned from the connection.+ """+ orderBy: LabelOrder = { field: CREATED_AT, direction: ASC }+ ): LabelConnection+}++"""+Represents a 'labeled' event on a given issue or pull request.+"""+type LabeledEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Identifies the label associated with the 'labeled' event.+ """+ label: Label!++ """+ Identifies the `Labelable` associated with the event.+ """+ labelable: Labelable!+}++"""+Represents a given language found in repositories.+"""+type Language implements Node {+ """+ The color defined for the current language.+ """+ color: String+ id: ID!++ """+ The name of the current language.+ """+ name: String!+}++"""+A list of languages associated with the parent.+"""+type LanguageConnection {+ """+ A list of edges.+ """+ edges: [LanguageEdge]++ """+ A list of nodes.+ """+ nodes: [Language]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!++ """+ The total size in bytes of files written in that language.+ """+ totalSize: Int!+}++"""+Represents the language of a repository.+"""+type LanguageEdge {+ cursor: String!+ node: Language!++ """+ The number of bytes of code written in the language.+ """+ size: Int!+}++"""+Ordering options for language connections.+"""+input LanguageOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order languages by.+ """+ field: LanguageOrderField!+}++"""+Properties by which language connections can be ordered.+"""+enum LanguageOrderField {+ """+ Order languages by the size of all files containing the language+ """+ SIZE+}++"""+A repository's open source license+"""+type License implements Node {+ """+ The full text of the license+ """+ body: String!++ """+ The conditions set by the license+ """+ conditions: [LicenseRule]!++ """+ A human-readable description of the license+ """+ description: String++ """+ Whether the license should be featured+ """+ featured: Boolean!++ """+ Whether the license should be displayed in license pickers+ """+ hidden: Boolean!+ id: ID!++ """+ Instructions on how to implement the license+ """+ implementation: String++ """+ The lowercased SPDX ID of the license+ """+ key: String!++ """+ The limitations set by the license+ """+ limitations: [LicenseRule]!++ """+ The license full name specified by <https://spdx.org/licenses>+ """+ name: String!++ """+ Customary short name if applicable (e.g, GPLv3)+ """+ nickname: String++ """+ The permissions set by the license+ """+ permissions: [LicenseRule]!++ """+ Whether the license is a pseudo-license placeholder (e.g., other, no-license)+ """+ pseudoLicense: Boolean!++ """+ Short identifier specified by <https://spdx.org/licenses>+ """+ spdxId: String++ """+ URL to the license on <https://choosealicense.com>+ """+ url: URI+}++"""+Describes a License's conditions, permissions, and limitations+"""+type LicenseRule {+ """+ A description of the rule+ """+ description: String!++ """+ The machine-readable rule key+ """+ key: String!++ """+ The human-readable rule label+ """+ label: String!+}++"""+Autogenerated input type of LinkRepositoryToProject+"""+input LinkRepositoryToProjectInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the Project to link to a Repository+ """+ projectId: ID! @possibleTypes(concreteTypes: ["Project"])++ """+ The ID of the Repository to link to a Project.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of LinkRepositoryToProject+"""+type LinkRepositoryToProjectPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The linked Project.+ """+ project: Project++ """+ The linked Repository.+ """+ repository: Repository+}++"""+Autogenerated input type of LockLockable+"""+input LockLockableInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ A reason for why the issue or pull request will be locked.+ """+ lockReason: LockReason++ """+ ID of the issue or pull request to be locked.+ """+ lockableId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "Lockable"+ )+}++"""+Autogenerated return type of LockLockable+"""+type LockLockablePayload {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The item that was locked.+ """+ lockedRecord: Lockable+}++"""+The possible reasons that an issue or pull request was locked.+"""+enum LockReason {+ """+ The issue or pull request was locked because the conversation was off-topic.+ """+ OFF_TOPIC++ """+ The issue or pull request was locked because the conversation was resolved.+ """+ RESOLVED++ """+ The issue or pull request was locked because the conversation was spam.+ """+ SPAM++ """+ The issue or pull request was locked because the conversation was too heated.+ """+ TOO_HEATED+}++"""+An object that can be locked.+"""+interface Lockable {+ """+ Reason that the conversation was locked.+ """+ activeLockReason: LockReason++ """+ `true` if the object is locked+ """+ locked: Boolean!+}++"""+Represents a 'locked' event on a given issue or pull request.+"""+type LockedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Reason that the conversation was locked (optional).+ """+ lockReason: LockReason++ """+ Object that was locked.+ """+ lockable: Lockable!+}++"""+A placeholder user for attribution of imported data on GitHub.+"""+type Mannequin implements Actor & Node & UniformResourceLocatable {+ """+ A URL pointing to the GitHub App's public avatar.+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int+ ): URI!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The mannequin's email on the source instance.+ """+ email: String+ id: ID!++ """+ The username of the actor.+ """+ login: String!++ """+ The HTML path to this resource.+ """+ resourcePath: URI!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The URL to this resource.+ """+ url: URI!+}++"""+Autogenerated input type of MarkPullRequestReadyForReview+"""+input MarkPullRequestReadyForReviewInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ ID of the pull request to be marked as ready for review.+ """+ pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"])+}++"""+Autogenerated return type of MarkPullRequestReadyForReview+"""+type MarkPullRequestReadyForReviewPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The pull request that is ready for review.+ """+ pullRequest: PullRequest+}++"""+Represents a 'marked_as_duplicate' event on a given issue or pull request.+"""+type MarkedAsDuplicateEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!+}++"""+A public description of a Marketplace category.+"""+type MarketplaceCategory implements Node {+ """+ The category's description.+ """+ description: String++ """+ The technical description of how apps listed in this category work with GitHub.+ """+ howItWorks: String+ id: ID!++ """+ The category's name.+ """+ name: String!++ """+ How many Marketplace listings have this as their primary category.+ """+ primaryListingCount: Int!++ """+ The HTTP path for this Marketplace category.+ """+ resourcePath: URI!++ """+ How many Marketplace listings have this as their secondary category.+ """+ secondaryListingCount: Int!++ """+ The short name of the category used in its URL.+ """+ slug: String!++ """+ The HTTP URL for this Marketplace category.+ """+ url: URI!+}++"""+A listing in the GitHub integration marketplace.+"""+type MarketplaceListing implements Node {+ """+ The GitHub App this listing represents.+ """+ app: App++ """+ URL to the listing owner's company site.+ """+ companyUrl: URI++ """+ The HTTP path for configuring access to the listing's integration or OAuth app+ """+ configurationResourcePath: URI!++ """+ The HTTP URL for configuring access to the listing's integration or OAuth app+ """+ configurationUrl: URI!++ """+ URL to the listing's documentation.+ """+ documentationUrl: URI++ """+ The listing's detailed description.+ """+ extendedDescription: String++ """+ The listing's detailed description rendered to HTML.+ """+ extendedDescriptionHTML: HTML!++ """+ The listing's introductory description.+ """+ fullDescription: String!++ """+ The listing's introductory description rendered to HTML.+ """+ fullDescriptionHTML: HTML!++ """+ Does this listing have any plans with a free trial?+ """+ hasPublishedFreeTrialPlans: Boolean!++ """+ Does this listing have a terms of service link?+ """+ hasTermsOfService: Boolean!++ """+ A technical description of how this app works with GitHub.+ """+ howItWorks: String++ """+ The listing's technical description rendered to HTML.+ """+ howItWorksHTML: HTML!+ id: ID!++ """+ URL to install the product to the viewer's account or organization.+ """+ installationUrl: URI++ """+ Whether this listing's app has been installed for the current viewer+ """+ installedForViewer: Boolean!++ """+ Whether this listing has been removed from the Marketplace.+ """+ isArchived: Boolean!++ """+ Whether this listing is still an editable draft that has not been submitted+ for review and is not publicly visible in the Marketplace.+ """+ isDraft: Boolean!++ """+ Whether the product this listing represents is available as part of a paid plan.+ """+ isPaid: Boolean!++ """+ Whether this listing has been approved for display in the Marketplace.+ """+ isPublic: Boolean!++ """+ Whether this listing has been rejected by GitHub for display in the Marketplace.+ """+ isRejected: Boolean!++ """+ Whether this listing has been approved for unverified display in the Marketplace.+ """+ isUnverified: Boolean!++ """+ Whether this draft listing has been submitted for review for approval to be unverified in the Marketplace.+ """+ isUnverifiedPending: Boolean!++ """+ Whether this draft listing has been submitted for review from GitHub for approval to be verified in the Marketplace.+ """+ isVerificationPendingFromDraft: Boolean!++ """+ Whether this unverified listing has been submitted for review from GitHub for approval to be verified in the Marketplace.+ """+ isVerificationPendingFromUnverified: Boolean!++ """+ Whether this listing has been approved for verified display in the Marketplace.+ """+ isVerified: Boolean!++ """+ The hex color code, without the leading '#', for the logo background.+ """+ logoBackgroundColor: String!++ """+ URL for the listing's logo image.+ """+ logoUrl(+ """+ The size in pixels of the resulting square image.+ """+ size: Int = 400+ ): URI++ """+ The listing's full name.+ """+ name: String!++ """+ The listing's very short description without a trailing period or ampersands.+ """+ normalizedShortDescription: String!++ """+ URL to the listing's detailed pricing.+ """+ pricingUrl: URI++ """+ The category that best describes the listing.+ """+ primaryCategory: MarketplaceCategory!++ """+ URL to the listing's privacy policy, may return an empty string for listings that do not require a privacy policy URL.+ """+ privacyPolicyUrl: URI!++ """+ The HTTP path for the Marketplace listing.+ """+ resourcePath: URI!++ """+ The URLs for the listing's screenshots.+ """+ screenshotUrls: [String]!++ """+ An alternate category that describes the listing.+ """+ secondaryCategory: MarketplaceCategory++ """+ The listing's very short description.+ """+ shortDescription: String!++ """+ The short name of the listing used in its URL.+ """+ slug: String!++ """+ URL to the listing's status page.+ """+ statusUrl: URI++ """+ An email address for support for this listing's app.+ """+ supportEmail: String++ """+ Either a URL or an email address for support for this listing's app, may+ return an empty string for listings that do not require a support URL.+ """+ supportUrl: URI!++ """+ URL to the listing's terms of service.+ """+ termsOfServiceUrl: URI++ """+ The HTTP URL for the Marketplace listing.+ """+ url: URI!++ """+ Can the current viewer add plans for this Marketplace listing.+ """+ viewerCanAddPlans: Boolean!++ """+ Can the current viewer approve this Marketplace listing.+ """+ viewerCanApprove: Boolean!++ """+ Can the current viewer delist this Marketplace listing.+ """+ viewerCanDelist: Boolean!++ """+ Can the current viewer edit this Marketplace listing.+ """+ viewerCanEdit: Boolean!++ """+ Can the current viewer edit the primary and secondary category of this+ Marketplace listing.+ """+ viewerCanEditCategories: Boolean!++ """+ Can the current viewer edit the plans for this Marketplace listing.+ """+ viewerCanEditPlans: Boolean!++ """+ Can the current viewer return this Marketplace listing to draft state+ so it becomes editable again.+ """+ viewerCanRedraft: Boolean!++ """+ Can the current viewer reject this Marketplace listing by returning it to+ an editable draft state or rejecting it entirely.+ """+ viewerCanReject: Boolean!++ """+ Can the current viewer request this listing be reviewed for display in+ the Marketplace as verified.+ """+ viewerCanRequestApproval: Boolean!++ """+ Indicates whether the current user has an active subscription to this Marketplace listing.+ """+ viewerHasPurchased: Boolean!++ """+ Indicates if the current user has purchased a subscription to this Marketplace listing+ for all of the organizations the user owns.+ """+ viewerHasPurchasedForAllOrganizations: Boolean!++ """+ Does the current viewer role allow them to administer this Marketplace listing.+ """+ viewerIsListingAdmin: Boolean!+}++"""+Look up Marketplace Listings+"""+type MarketplaceListingConnection {+ """+ A list of edges.+ """+ edges: [MarketplaceListingEdge]++ """+ A list of nodes.+ """+ nodes: [MarketplaceListing]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type MarketplaceListingEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: MarketplaceListing+}++"""+Entities that have members who can set status messages.+"""+interface MemberStatusable {+ """+ Get the status messages members of this entity have set that are either public or visible only to the organization.+ """+ memberStatuses(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for user statuses returned from the connection.+ """+ orderBy: UserStatusOrder = { field: UPDATED_AT, direction: DESC }+ ): UserStatusConnection!+}++"""+Audit log entry for a members_can_delete_repos.clear event.+"""+type MembersCanDeleteReposClearAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The HTTP path for this enterprise.+ """+ enterpriseResourcePath: URI++ """+ The slug of the enterprise.+ """+ enterpriseSlug: String++ """+ The HTTP URL for this enterprise.+ """+ enterpriseUrl: URI+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a members_can_delete_repos.disable event.+"""+type MembersCanDeleteReposDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The HTTP path for this enterprise.+ """+ enterpriseResourcePath: URI++ """+ The slug of the enterprise.+ """+ enterpriseSlug: String++ """+ The HTTP URL for this enterprise.+ """+ enterpriseUrl: URI+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a members_can_delete_repos.enable event.+"""+type MembersCanDeleteReposEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The HTTP path for this enterprise.+ """+ enterpriseResourcePath: URI++ """+ The slug of the enterprise.+ """+ enterpriseSlug: String++ """+ The HTTP URL for this enterprise.+ """+ enterpriseUrl: URI+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Represents a 'mentioned' event on a given issue or pull request.+"""+type MentionedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!+}++"""+Autogenerated input type of MergeBranch+"""+input MergeBranchInput {+ """+ The email address to associate with this commit.+ """+ authorEmail: String++ """+ The name of the base branch that the provided head will be merged into.+ """+ base: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Message to use for the merge commit. If omitted, a default will be used.+ """+ commitMessage: String++ """+ The head to merge into the base branch. This can be a branch name or a commit GitObjectID.+ """+ head: String!++ """+ The Node ID of the Repository containing the base branch that will be modified.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of MergeBranch+"""+type MergeBranchPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The resulting merge Commit.+ """+ mergeCommit: Commit+}++"""+Autogenerated input type of MergePullRequest+"""+input MergePullRequestInput {+ """+ The email address to associate with this merge.+ """+ authorEmail: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Commit body to use for the merge commit; if omitted, a default message will be used+ """+ commitBody: String++ """+ Commit headline to use for the merge commit; if omitted, a default message will be used.+ """+ commitHeadline: String++ """+ OID that the pull request head ref must match to allow merge; if omitted, no check is performed.+ """+ expectedHeadOid: GitObjectID++ """+ The merge method to use. If omitted, defaults to 'MERGE'+ """+ mergeMethod: PullRequestMergeMethod = MERGE++ """+ ID of the pull request to be merged.+ """+ pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"])+}++"""+Autogenerated return type of MergePullRequest+"""+type MergePullRequestPayload {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The pull request that was merged.+ """+ pullRequest: PullRequest+}++"""+Detailed status information about a pull request merge.+"""+enum MergeStateStatus {+ """+ The head ref is out of date.+ """+ BEHIND++ """+ The merge is blocked.+ """+ BLOCKED++ """+ Mergeable and passing commit status.+ """+ CLEAN++ """+ The merge commit cannot be cleanly created.+ """+ DIRTY++ """+ The merge is blocked due to the pull request being a draft.+ """+ DRAFT++ """+ Mergeable with passing commit status and pre-receive hooks.+ """+ HAS_HOOKS++ """+ The state cannot currently be determined.+ """+ UNKNOWN++ """+ Mergeable with non-passing commit status.+ """+ UNSTABLE+}++"""+Whether or not a PullRequest can be merged.+"""+enum MergeableState {+ """+ The pull request cannot be merged due to merge conflicts.+ """+ CONFLICTING++ """+ The pull request can be merged.+ """+ MERGEABLE++ """+ The mergeability of the pull request is still being calculated.+ """+ UNKNOWN+}++"""+Represents a 'merged' event on a given pull request.+"""+type MergedEvent implements Node & UniformResourceLocatable {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the commit associated with the `merge` event.+ """+ commit: Commit++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Identifies the Ref associated with the `merge` event.+ """+ mergeRef: Ref++ """+ Identifies the name of the Ref associated with the `merge` event.+ """+ mergeRefName: String!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!++ """+ The HTTP path for this merged event.+ """+ resourcePath: URI!++ """+ The HTTP URL for this merged event.+ """+ url: URI!+}++"""+Represents a Milestone object on a given repository.+"""+type Milestone implements Closable & Node & UniformResourceLocatable {+ """+ `true` if the object is closed (definition of closed may depend on type)+ """+ closed: Boolean!++ """+ Identifies the date and time when the object was closed.+ """+ closedAt: DateTime++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the actor who created the milestone.+ """+ creator: Actor++ """+ Identifies the description of the milestone.+ """+ description: String++ """+ Identifies the due date of the milestone.+ """+ dueOn: DateTime+ id: ID!++ """+ Just for debugging on review-lab+ """+ issuePrioritiesDebug: String!++ """+ A list of issues associated with the milestone.+ """+ issues(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Filtering options for issues returned from the connection.+ """+ filterBy: IssueFilters++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for issues returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the issues by.+ """+ states: [IssueState!]+ ): IssueConnection!++ """+ Identifies the number of the milestone.+ """+ number: Int!++ """+ A list of pull requests associated with the milestone.+ """+ pullRequests(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ The base ref name to filter the pull requests by.+ """+ baseRefName: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ The head ref name to filter the pull requests by.+ """+ headRefName: String++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pull requests returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the pull requests by.+ """+ states: [PullRequestState!]+ ): PullRequestConnection!++ """+ The repository associated with this milestone.+ """+ repository: Repository!++ """+ The HTTP path for this milestone+ """+ resourcePath: URI!++ """+ Identifies the state of the milestone.+ """+ state: MilestoneState!++ """+ Identifies the title of the milestone.+ """+ title: String!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this milestone+ """+ url: URI!+}++"""+The connection type for Milestone.+"""+type MilestoneConnection {+ """+ A list of edges.+ """+ edges: [MilestoneEdge]++ """+ A list of nodes.+ """+ nodes: [Milestone]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type MilestoneEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Milestone+}++"""+Types that can be inside a Milestone.+"""+union MilestoneItem = Issue | PullRequest++"""+Ordering options for milestone connections.+"""+input MilestoneOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order milestones by.+ """+ field: MilestoneOrderField!+}++"""+Properties by which milestone connections can be ordered.+"""+enum MilestoneOrderField {+ """+ Order milestones by when they were created.+ """+ CREATED_AT++ """+ Order milestones by when they are due.+ """+ DUE_DATE++ """+ Order milestones by their number.+ """+ NUMBER++ """+ Order milestones by when they were last updated.+ """+ UPDATED_AT+}++"""+The possible states of a milestone.+"""+enum MilestoneState {+ """+ A milestone that has been closed.+ """+ CLOSED++ """+ A milestone that is still open.+ """+ OPEN+}++"""+Represents a 'milestoned' event on a given issue or pull request.+"""+type MilestonedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Identifies the milestone title associated with the 'milestoned' event.+ """+ milestoneTitle: String!++ """+ Object referenced by event.+ """+ subject: MilestoneItem!+}++"""+Entities that can be minimized.+"""+interface Minimizable {+ """+ Returns whether or not a comment has been minimized.+ """+ isMinimized: Boolean!++ """+ Returns why the comment was minimized.+ """+ minimizedReason: String++ """+ Check if the current viewer can minimize this object.+ """+ viewerCanMinimize: Boolean!+}++"""+Autogenerated input type of MinimizeComment+"""+input MinimizeCommentInput {+ """+ The classification of comment+ """+ classifier: ReportedContentClassifiers!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the subject to modify.+ """+ subjectId: ID!+ @possibleTypes(+ concreteTypes: [+ "CommitComment"+ "GistComment"+ "IssueComment"+ "PullRequestReviewComment"+ ]+ abstractType: "Minimizable"+ )+}++"""+Autogenerated return type of MinimizeComment+"""+type MinimizeCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The comment that was minimized.+ """+ minimizedComment: Minimizable+}++"""+Autogenerated input type of MoveProjectCard+"""+input MoveProjectCardInput {+ """+ Place the new card after the card with this id. Pass null to place it at the top.+ """+ afterCardId: ID @possibleTypes(concreteTypes: ["ProjectCard"])++ """+ The id of the card to move.+ """+ cardId: ID! @possibleTypes(concreteTypes: ["ProjectCard"])++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The id of the column to move it into.+ """+ columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"])+}++"""+Autogenerated return type of MoveProjectCard+"""+type MoveProjectCardPayload {+ """+ The new edge of the moved card.+ """+ cardEdge: ProjectCardEdge++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of MoveProjectColumn+"""+input MoveProjectColumnInput {+ """+ Place the new column after the column with this id. Pass null to place it at the front.+ """+ afterColumnId: ID @possibleTypes(concreteTypes: ["ProjectColumn"])++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The id of the column to move.+ """+ columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"])+}++"""+Autogenerated return type of MoveProjectColumn+"""+type MoveProjectColumnPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new edge of the moved column.+ """+ columnEdge: ProjectColumnEdge+}++"""+Represents a 'moved_columns_in_project' event on a given issue or pull request.+"""+type MovedColumnsInProjectEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ Column name the issue or pull request was moved from.+ """+ previousProjectColumnName: String! @preview(toggledBy: "starfox-preview")++ """+ Project referenced by event.+ """+ project: Project @preview(toggledBy: "starfox-preview")++ """+ Project card referenced by this project event.+ """+ projectCard: ProjectCard @preview(toggledBy: "starfox-preview")++ """+ Column name the issue or pull request was moved to.+ """+ projectColumnName: String! @preview(toggledBy: "starfox-preview")+}++"""+The root query for implementing GraphQL mutations.+"""+type Mutation {+ """+ Accepts a pending invitation for a user to become an administrator of an enterprise.+ """+ acceptEnterpriseAdministratorInvitation(+ input: AcceptEnterpriseAdministratorInvitationInput!+ ): AcceptEnterpriseAdministratorInvitationPayload++ """+ Applies a suggested topic to the repository.+ """+ acceptTopicSuggestion(+ input: AcceptTopicSuggestionInput!+ ): AcceptTopicSuggestionPayload++ """+ Adds assignees to an assignable object.+ """+ addAssigneesToAssignable(+ input: AddAssigneesToAssignableInput!+ ): AddAssigneesToAssignablePayload++ """+ Adds a comment to an Issue or Pull Request.+ """+ addComment(input: AddCommentInput!): AddCommentPayload++ """+ Adds labels to a labelable object.+ """+ addLabelsToLabelable(+ input: AddLabelsToLabelableInput!+ ): AddLabelsToLabelablePayload++ """+ Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both.+ """+ addProjectCard(input: AddProjectCardInput!): AddProjectCardPayload++ """+ Adds a column to a Project.+ """+ addProjectColumn(input: AddProjectColumnInput!): AddProjectColumnPayload++ """+ Adds a review to a Pull Request.+ """+ addPullRequestReview(+ input: AddPullRequestReviewInput!+ ): AddPullRequestReviewPayload++ """+ Adds a comment to a review.+ """+ addPullRequestReviewComment(+ input: AddPullRequestReviewCommentInput!+ ): AddPullRequestReviewCommentPayload++ """+ Adds a new thread to a pending Pull Request Review.+ """+ addPullRequestReviewThread(+ input: AddPullRequestReviewThreadInput!+ ): AddPullRequestReviewThreadPayload++ """+ Adds a reaction to a subject.+ """+ addReaction(input: AddReactionInput!): AddReactionPayload++ """+ Adds a star to a Starrable.+ """+ addStar(input: AddStarInput!): AddStarPayload++ """+ Marks a repository as archived.+ """+ archiveRepository(input: ArchiveRepositoryInput!): ArchiveRepositoryPayload++ """+ Cancels a pending invitation for an administrator to join an enterprise.+ """+ cancelEnterpriseAdminInvitation(+ input: CancelEnterpriseAdminInvitationInput!+ ): CancelEnterpriseAdminInvitationPayload++ """+ Update your status on GitHub.+ """+ changeUserStatus(input: ChangeUserStatusInput!): ChangeUserStatusPayload++ """+ Clears all labels from a labelable object.+ """+ clearLabelsFromLabelable(+ input: ClearLabelsFromLabelableInput!+ ): ClearLabelsFromLabelablePayload++ """+ Creates a new project by cloning configuration from an existing project.+ """+ cloneProject(input: CloneProjectInput!): CloneProjectPayload++ """+ Create a new repository with the same files and directory structure as a template repository.+ """+ cloneTemplateRepository(+ input: CloneTemplateRepositoryInput!+ ): CloneTemplateRepositoryPayload++ """+ Close an issue.+ """+ closeIssue(input: CloseIssueInput!): CloseIssuePayload++ """+ Close a pull request.+ """+ closePullRequest(input: ClosePullRequestInput!): ClosePullRequestPayload++ """+ Convert a project note card to one associated with a newly created issue.+ """+ convertProjectCardNoteToIssue(+ input: ConvertProjectCardNoteToIssueInput!+ ): ConvertProjectCardNoteToIssuePayload++ """+ Create a new branch protection rule+ """+ createBranchProtectionRule(+ input: CreateBranchProtectionRuleInput!+ ): CreateBranchProtectionRulePayload++ """+ Create a check run.+ """+ createCheckRun(input: CreateCheckRunInput!): CreateCheckRunPayload+ @preview(toggledBy: "antiope-preview")++ """+ Create a check suite+ """+ createCheckSuite(input: CreateCheckSuiteInput!): CreateCheckSuitePayload+ @preview(toggledBy: "antiope-preview")++ """+ Create a content attachment.+ """+ createContentAttachment(+ input: CreateContentAttachmentInput!+ ): CreateContentAttachmentPayload @preview(toggledBy: "corsair-preview")++ """+ Creates a new deployment event.+ """+ createDeployment(input: CreateDeploymentInput!): CreateDeploymentPayload+ @preview(toggledBy: "flash-preview")++ """+ Create a deployment status.+ """+ createDeploymentStatus(+ input: CreateDeploymentStatusInput!+ ): CreateDeploymentStatusPayload @preview(toggledBy: "flash-preview")++ """+ Creates an organization as part of an enterprise account.+ """+ createEnterpriseOrganization(+ input: CreateEnterpriseOrganizationInput!+ ): CreateEnterpriseOrganizationPayload++ """+ Creates a new IP allow list entry.+ """+ createIpAllowListEntry(+ input: CreateIpAllowListEntryInput!+ ): CreateIpAllowListEntryPayload++ """+ Creates a new issue.+ """+ createIssue(input: CreateIssueInput!): CreateIssuePayload++ """+ Creates a new label.+ """+ createLabel(input: CreateLabelInput!): CreateLabelPayload+ @preview(toggledBy: "bane-preview")++ """+ Creates a new project.+ """+ createProject(input: CreateProjectInput!): CreateProjectPayload++ """+ Create a new pull request+ """+ createPullRequest(input: CreatePullRequestInput!): CreatePullRequestPayload++ """+ Create a new Git Ref.+ """+ createRef(input: CreateRefInput!): CreateRefPayload++ """+ Create a new repository.+ """+ createRepository(input: CreateRepositoryInput!): CreateRepositoryPayload++ """+ Creates a new team discussion.+ """+ createTeamDiscussion(+ input: CreateTeamDiscussionInput!+ ): CreateTeamDiscussionPayload++ """+ Creates a new team discussion comment.+ """+ createTeamDiscussionComment(+ input: CreateTeamDiscussionCommentInput!+ ): CreateTeamDiscussionCommentPayload++ """+ Rejects a suggested topic for the repository.+ """+ declineTopicSuggestion(+ input: DeclineTopicSuggestionInput!+ ): DeclineTopicSuggestionPayload++ """+ Delete a branch protection rule+ """+ deleteBranchProtectionRule(+ input: DeleteBranchProtectionRuleInput!+ ): DeleteBranchProtectionRulePayload++ """+ Deletes a deployment.+ """+ deleteDeployment(input: DeleteDeploymentInput!): DeleteDeploymentPayload++ """+ Deletes an IP allow list entry.+ """+ deleteIpAllowListEntry(+ input: DeleteIpAllowListEntryInput!+ ): DeleteIpAllowListEntryPayload++ """+ Deletes an Issue object.+ """+ deleteIssue(input: DeleteIssueInput!): DeleteIssuePayload++ """+ Deletes an IssueComment object.+ """+ deleteIssueComment(input: DeleteIssueCommentInput!): DeleteIssueCommentPayload++ """+ Deletes a label.+ """+ deleteLabel(input: DeleteLabelInput!): DeleteLabelPayload+ @preview(toggledBy: "bane-preview")++ """+ Delete a package version.+ """+ deletePackageVersion(+ input: DeletePackageVersionInput!+ ): DeletePackageVersionPayload @preview(toggledBy: "package-deletes-preview")++ """+ Deletes a project.+ """+ deleteProject(input: DeleteProjectInput!): DeleteProjectPayload++ """+ Deletes a project card.+ """+ deleteProjectCard(input: DeleteProjectCardInput!): DeleteProjectCardPayload++ """+ Deletes a project column.+ """+ deleteProjectColumn(+ input: DeleteProjectColumnInput!+ ): DeleteProjectColumnPayload++ """+ Deletes a pull request review.+ """+ deletePullRequestReview(+ input: DeletePullRequestReviewInput!+ ): DeletePullRequestReviewPayload++ """+ Deletes a pull request review comment.+ """+ deletePullRequestReviewComment(+ input: DeletePullRequestReviewCommentInput!+ ): DeletePullRequestReviewCommentPayload++ """+ Delete a Git Ref.+ """+ deleteRef(input: DeleteRefInput!): DeleteRefPayload++ """+ Deletes a team discussion.+ """+ deleteTeamDiscussion(+ input: DeleteTeamDiscussionInput!+ ): DeleteTeamDiscussionPayload++ """+ Deletes a team discussion comment.+ """+ deleteTeamDiscussionComment(+ input: DeleteTeamDiscussionCommentInput!+ ): DeleteTeamDiscussionCommentPayload++ """+ Dismisses an approved or rejected pull request review.+ """+ dismissPullRequestReview(+ input: DismissPullRequestReviewInput!+ ): DismissPullRequestReviewPayload++ """+ Follow a user.+ """+ followUser(input: FollowUserInput!): FollowUserPayload++ """+ Creates a new project by importing columns and a list of issues/PRs.+ """+ importProject(input: ImportProjectInput!): ImportProjectPayload+ @preview(toggledBy: "slothette-preview")++ """+ Invite someone to become an administrator of the enterprise.+ """+ inviteEnterpriseAdmin(+ input: InviteEnterpriseAdminInput!+ ): InviteEnterpriseAdminPayload++ """+ Creates a repository link for a project.+ """+ linkRepositoryToProject(+ input: LinkRepositoryToProjectInput!+ ): LinkRepositoryToProjectPayload++ """+ Lock a lockable object+ """+ lockLockable(input: LockLockableInput!): LockLockablePayload++ """+ Marks a pull request ready for review.+ """+ markPullRequestReadyForReview(+ input: MarkPullRequestReadyForReviewInput!+ ): MarkPullRequestReadyForReviewPayload++ """+ Merge a head into a branch.+ """+ mergeBranch(input: MergeBranchInput!): MergeBranchPayload++ """+ Merge a pull request.+ """+ mergePullRequest(input: MergePullRequestInput!): MergePullRequestPayload++ """+ Minimizes a comment on an Issue, Commit, Pull Request, or Gist+ """+ minimizeComment(input: MinimizeCommentInput!): MinimizeCommentPayload++ """+ Moves a project card to another place.+ """+ moveProjectCard(input: MoveProjectCardInput!): MoveProjectCardPayload++ """+ Moves a project column to another place.+ """+ moveProjectColumn(input: MoveProjectColumnInput!): MoveProjectColumnPayload++ """+ Pin an issue to a repository+ """+ pinIssue(input: PinIssueInput!): PinIssuePayload+ @preview(toggledBy: "elektra-preview")++ """+ Regenerates the identity provider recovery codes for an enterprise+ """+ regenerateEnterpriseIdentityProviderRecoveryCodes(+ input: RegenerateEnterpriseIdentityProviderRecoveryCodesInput!+ ): RegenerateEnterpriseIdentityProviderRecoveryCodesPayload++ """+ Removes assignees from an assignable object.+ """+ removeAssigneesFromAssignable(+ input: RemoveAssigneesFromAssignableInput!+ ): RemoveAssigneesFromAssignablePayload++ """+ Removes an administrator from the enterprise.+ """+ removeEnterpriseAdmin(+ input: RemoveEnterpriseAdminInput!+ ): RemoveEnterpriseAdminPayload++ """+ Removes the identity provider from an enterprise+ """+ removeEnterpriseIdentityProvider(+ input: RemoveEnterpriseIdentityProviderInput!+ ): RemoveEnterpriseIdentityProviderPayload++ """+ Removes an organization from the enterprise+ """+ removeEnterpriseOrganization(+ input: RemoveEnterpriseOrganizationInput!+ ): RemoveEnterpriseOrganizationPayload++ """+ Removes labels from a Labelable object.+ """+ removeLabelsFromLabelable(+ input: RemoveLabelsFromLabelableInput!+ ): RemoveLabelsFromLabelablePayload++ """+ Removes outside collaborator from all repositories in an organization.+ """+ removeOutsideCollaborator(+ input: RemoveOutsideCollaboratorInput!+ ): RemoveOutsideCollaboratorPayload++ """+ Removes a reaction from a subject.+ """+ removeReaction(input: RemoveReactionInput!): RemoveReactionPayload++ """+ Removes a star from a Starrable.+ """+ removeStar(input: RemoveStarInput!): RemoveStarPayload++ """+ Reopen a issue.+ """+ reopenIssue(input: ReopenIssueInput!): ReopenIssuePayload++ """+ Reopen a pull request.+ """+ reopenPullRequest(input: ReopenPullRequestInput!): ReopenPullRequestPayload++ """+ Set review requests on a pull request.+ """+ requestReviews(input: RequestReviewsInput!): RequestReviewsPayload++ """+ Rerequests an existing check suite.+ """+ rerequestCheckSuite(+ input: RerequestCheckSuiteInput!+ ): RerequestCheckSuitePayload @preview(toggledBy: "antiope-preview")++ """+ Marks a review thread as resolved.+ """+ resolveReviewThread(+ input: ResolveReviewThreadInput!+ ): ResolveReviewThreadPayload++ """+ Creates or updates the identity provider for an enterprise.+ """+ setEnterpriseIdentityProvider(+ input: SetEnterpriseIdentityProviderInput!+ ): SetEnterpriseIdentityProviderPayload++ """+ Submits a pending pull request review.+ """+ submitPullRequestReview(+ input: SubmitPullRequestReviewInput!+ ): SubmitPullRequestReviewPayload++ """+ Transfer an issue to a different repository+ """+ transferIssue(input: TransferIssueInput!): TransferIssuePayload++ """+ Unarchives a repository.+ """+ unarchiveRepository(+ input: UnarchiveRepositoryInput!+ ): UnarchiveRepositoryPayload++ """+ Unfollow a user.+ """+ unfollowUser(input: UnfollowUserInput!): UnfollowUserPayload++ """+ Deletes a repository link from a project.+ """+ unlinkRepositoryFromProject(+ input: UnlinkRepositoryFromProjectInput!+ ): UnlinkRepositoryFromProjectPayload++ """+ Unlock a lockable object+ """+ unlockLockable(input: UnlockLockableInput!): UnlockLockablePayload++ """+ Unmark an issue as a duplicate of another issue.+ """+ unmarkIssueAsDuplicate(+ input: UnmarkIssueAsDuplicateInput!+ ): UnmarkIssueAsDuplicatePayload++ """+ Unminimizes a comment on an Issue, Commit, Pull Request, or Gist+ """+ unminimizeComment(input: UnminimizeCommentInput!): UnminimizeCommentPayload++ """+ Unpin a pinned issue from a repository+ """+ unpinIssue(input: UnpinIssueInput!): UnpinIssuePayload+ @preview(toggledBy: "elektra-preview")++ """+ Marks a review thread as unresolved.+ """+ unresolveReviewThread(+ input: UnresolveReviewThreadInput!+ ): UnresolveReviewThreadPayload++ """+ Create a new branch protection rule+ """+ updateBranchProtectionRule(+ input: UpdateBranchProtectionRuleInput!+ ): UpdateBranchProtectionRulePayload++ """+ Update a check run+ """+ updateCheckRun(input: UpdateCheckRunInput!): UpdateCheckRunPayload+ @preview(toggledBy: "antiope-preview")++ """+ Modifies the settings of an existing check suite+ """+ updateCheckSuitePreferences(+ input: UpdateCheckSuitePreferencesInput!+ ): UpdateCheckSuitePreferencesPayload @preview(toggledBy: "antiope-preview")++ """+ Sets the action execution capability setting for an enterprise.+ """+ updateEnterpriseActionExecutionCapabilitySetting(+ input: UpdateEnterpriseActionExecutionCapabilitySettingInput!+ ): UpdateEnterpriseActionExecutionCapabilitySettingPayload++ """+ Updates the role of an enterprise administrator.+ """+ updateEnterpriseAdministratorRole(+ input: UpdateEnterpriseAdministratorRoleInput!+ ): UpdateEnterpriseAdministratorRolePayload++ """+ Sets whether private repository forks are enabled for an enterprise.+ """+ updateEnterpriseAllowPrivateRepositoryForkingSetting(+ input: UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput!+ ): UpdateEnterpriseAllowPrivateRepositoryForkingSettingPayload++ """+ Sets the default repository permission for organizations in an enterprise.+ """+ updateEnterpriseDefaultRepositoryPermissionSetting(+ input: UpdateEnterpriseDefaultRepositoryPermissionSettingInput!+ ): UpdateEnterpriseDefaultRepositoryPermissionSettingPayload++ """+ Sets whether organization members with admin permissions on a repository can change repository visibility.+ """+ updateEnterpriseMembersCanChangeRepositoryVisibilitySetting(+ input: UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput!+ ): UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingPayload++ """+ Sets the members can create repositories setting for an enterprise.+ """+ updateEnterpriseMembersCanCreateRepositoriesSetting(+ input: UpdateEnterpriseMembersCanCreateRepositoriesSettingInput!+ ): UpdateEnterpriseMembersCanCreateRepositoriesSettingPayload++ """+ Sets the members can delete issues setting for an enterprise.+ """+ updateEnterpriseMembersCanDeleteIssuesSetting(+ input: UpdateEnterpriseMembersCanDeleteIssuesSettingInput!+ ): UpdateEnterpriseMembersCanDeleteIssuesSettingPayload++ """+ Sets the members can delete repositories setting for an enterprise.+ """+ updateEnterpriseMembersCanDeleteRepositoriesSetting(+ input: UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput!+ ): UpdateEnterpriseMembersCanDeleteRepositoriesSettingPayload++ """+ Sets whether members can invite collaborators are enabled for an enterprise.+ """+ updateEnterpriseMembersCanInviteCollaboratorsSetting(+ input: UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput!+ ): UpdateEnterpriseMembersCanInviteCollaboratorsSettingPayload++ """+ Sets whether or not an organization admin can make purchases.+ """+ updateEnterpriseMembersCanMakePurchasesSetting(+ input: UpdateEnterpriseMembersCanMakePurchasesSettingInput!+ ): UpdateEnterpriseMembersCanMakePurchasesSettingPayload++ """+ Sets the members can update protected branches setting for an enterprise.+ """+ updateEnterpriseMembersCanUpdateProtectedBranchesSetting(+ input: UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput!+ ): UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingPayload++ """+ Sets the members can view dependency insights for an enterprise.+ """+ updateEnterpriseMembersCanViewDependencyInsightsSetting(+ input: UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput!+ ): UpdateEnterpriseMembersCanViewDependencyInsightsSettingPayload++ """+ Sets whether organization projects are enabled for an enterprise.+ """+ updateEnterpriseOrganizationProjectsSetting(+ input: UpdateEnterpriseOrganizationProjectsSettingInput!+ ): UpdateEnterpriseOrganizationProjectsSettingPayload++ """+ Updates an enterprise's profile.+ """+ updateEnterpriseProfile(+ input: UpdateEnterpriseProfileInput!+ ): UpdateEnterpriseProfilePayload++ """+ Sets whether repository projects are enabled for a enterprise.+ """+ updateEnterpriseRepositoryProjectsSetting(+ input: UpdateEnterpriseRepositoryProjectsSettingInput!+ ): UpdateEnterpriseRepositoryProjectsSettingPayload++ """+ Sets whether team discussions are enabled for an enterprise.+ """+ updateEnterpriseTeamDiscussionsSetting(+ input: UpdateEnterpriseTeamDiscussionsSettingInput!+ ): UpdateEnterpriseTeamDiscussionsSettingPayload++ """+ Sets whether two factor authentication is required for all users in an enterprise.+ """+ updateEnterpriseTwoFactorAuthenticationRequiredSetting(+ input: UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput!+ ): UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload++ """+ Sets whether an IP allow list is enabled on an owner.+ """+ updateIpAllowListEnabledSetting(+ input: UpdateIpAllowListEnabledSettingInput!+ ): UpdateIpAllowListEnabledSettingPayload++ """+ Updates an IP allow list entry.+ """+ updateIpAllowListEntry(+ input: UpdateIpAllowListEntryInput!+ ): UpdateIpAllowListEntryPayload++ """+ Updates an Issue.+ """+ updateIssue(input: UpdateIssueInput!): UpdateIssuePayload++ """+ Updates an IssueComment object.+ """+ updateIssueComment(input: UpdateIssueCommentInput!): UpdateIssueCommentPayload++ """+ Updates an existing label.+ """+ updateLabel(input: UpdateLabelInput!): UpdateLabelPayload+ @preview(toggledBy: "bane-preview")++ """+ Updates an existing project.+ """+ updateProject(input: UpdateProjectInput!): UpdateProjectPayload++ """+ Updates an existing project card.+ """+ updateProjectCard(input: UpdateProjectCardInput!): UpdateProjectCardPayload++ """+ Updates an existing project column.+ """+ updateProjectColumn(+ input: UpdateProjectColumnInput!+ ): UpdateProjectColumnPayload++ """+ Update a pull request+ """+ updatePullRequest(input: UpdatePullRequestInput!): UpdatePullRequestPayload++ """+ Updates the body of a pull request review.+ """+ updatePullRequestReview(+ input: UpdatePullRequestReviewInput!+ ): UpdatePullRequestReviewPayload++ """+ Updates a pull request review comment.+ """+ updatePullRequestReviewComment(+ input: UpdatePullRequestReviewCommentInput!+ ): UpdatePullRequestReviewCommentPayload++ """+ Update a Git Ref.+ """+ updateRef(input: UpdateRefInput!): UpdateRefPayload++ """+ Creates, updates and/or deletes multiple refs in a repository.++ This mutation takes a list of `RefUpdate`s and performs these updates+ on the repository. All updates are performed atomically, meaning that+ if one of them is rejected, no other ref will be modified.++ `RefUpdate.beforeOid` specifies that the given reference needs to point+ to the given value before performing any updates. A value of+ `0000000000000000000000000000000000000000` can be used to verify that+ the references should not exist.++ `RefUpdate.afterOid` specifies the value that the given reference+ will point to after performing all updates. A value of+ `0000000000000000000000000000000000000000` can be used to delete a+ reference.++ If `RefUpdate.force` is set to `true`, a non-fast-forward updates+ for the given reference will be allowed.+ """+ updateRefs(input: UpdateRefsInput!): UpdateRefsPayload+ @preview(toggledBy: "update-refs-preview")++ """+ Update information about a repository.+ """+ updateRepository(input: UpdateRepositoryInput!): UpdateRepositoryPayload++ """+ Updates the state for subscribable subjects.+ """+ updateSubscription(input: UpdateSubscriptionInput!): UpdateSubscriptionPayload++ """+ Updates a team discussion.+ """+ updateTeamDiscussion(+ input: UpdateTeamDiscussionInput!+ ): UpdateTeamDiscussionPayload++ """+ Updates a discussion comment.+ """+ updateTeamDiscussionComment(+ input: UpdateTeamDiscussionCommentInput!+ ): UpdateTeamDiscussionCommentPayload++ """+ Updates team review assignment.+ """+ updateTeamReviewAssignment(+ input: UpdateTeamReviewAssignmentInput!+ ): UpdateTeamReviewAssignmentPayload @preview(toggledBy: "stone-crop-preview")++ """+ Replaces the repository's topics with the given topics.+ """+ updateTopics(input: UpdateTopicsInput!): UpdateTopicsPayload+}++"""+An object with an ID.+"""+interface Node {+ """+ ID of the object.+ """+ id: ID!+}++"""+Metadata for an audit entry with action oauth_application.*+"""+interface OauthApplicationAuditEntryData {+ """+ The name of the OAuth Application.+ """+ oauthApplicationName: String++ """+ The HTTP path for the OAuth Application+ """+ oauthApplicationResourcePath: URI++ """+ The HTTP URL for the OAuth Application+ """+ oauthApplicationUrl: URI+}++"""+Audit log entry for a oauth_application.create event.+"""+type OauthApplicationCreateAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The application URL of the OAuth Application.+ """+ applicationUrl: URI++ """+ The callback URL of the OAuth Application.+ """+ callbackUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The name of the OAuth Application.+ """+ oauthApplicationName: String++ """+ The HTTP path for the OAuth Application+ """+ oauthApplicationResourcePath: URI++ """+ The HTTP URL for the OAuth Application+ """+ oauthApplicationUrl: URI++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The rate limit of the OAuth Application.+ """+ rateLimit: Int++ """+ The state of the OAuth Application.+ """+ state: OauthApplicationCreateAuditEntryState++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The state of an OAuth Application when it was created.+"""+enum OauthApplicationCreateAuditEntryState {+ """+ The OAuth Application was active and allowed to have OAuth Accesses.+ """+ ACTIVE++ """+ The OAuth Application was in the process of being deleted.+ """+ PENDING_DELETION++ """+ The OAuth Application was suspended from generating OAuth Accesses due to abuse or security concerns.+ """+ SUSPENDED+}++"""+The corresponding operation type for the action+"""+enum OperationType {+ """+ An existing resource was accessed+ """+ ACCESS++ """+ A resource performed an authentication event+ """+ AUTHENTICATION++ """+ A new resource was created+ """+ CREATE++ """+ An existing resource was modified+ """+ MODIFY++ """+ An existing resource was removed+ """+ REMOVE++ """+ An existing resource was restored+ """+ RESTORE++ """+ An existing resource was transferred between multiple resources+ """+ TRANSFER+}++"""+Possible directions in which to order a list of items when provided an `orderBy` argument.+"""+enum OrderDirection {+ """+ Specifies an ascending order for a given `orderBy` argument.+ """+ ASC++ """+ Specifies a descending order for a given `orderBy` argument.+ """+ DESC+}++"""+Audit log entry for a org.add_billing_manager+"""+type OrgAddBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The email address used to invite a billing manager for the organization.+ """+ invitationEmail: String++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.add_member+"""+type OrgAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The permission level of the member added to the organization.+ """+ permission: OrgAddMemberAuditEntryPermission++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The permissions available to members on an Organization.+"""+enum OrgAddMemberAuditEntryPermission {+ """+ Can read, clone, push, and add collaborators to repositories.+ """+ ADMIN++ """+ Can read and clone repositories.+ """+ READ+}++"""+Audit log entry for a org.block_user+"""+type OrgBlockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The blocked user.+ """+ blockedUser: User++ """+ The username of the blocked user.+ """+ blockedUserName: String++ """+ The HTTP path for the blocked user.+ """+ blockedUserResourcePath: URI++ """+ The HTTP URL for the blocked user.+ """+ blockedUserUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.config.disable_collaborators_only event.+"""+type OrgConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.config.enable_collaborators_only event.+"""+type OrgConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.create event.+"""+type OrgCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The billing plan for the Organization.+ """+ billingPlan: OrgCreateAuditEntryBillingPlan++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The billing plans available for organizations.+"""+enum OrgCreateAuditEntryBillingPlan {+ """+ Team Plan+ """+ BUSINESS++ """+ Enterprise Cloud Plan+ """+ BUSINESS_PLUS++ """+ Free Plan+ """+ FREE++ """+ Tiered Per Seat Plan+ """+ TIERED_PER_SEAT++ """+ Legacy Unlimited Plan+ """+ UNLIMITED+}++"""+Audit log entry for a org.disable_oauth_app_restrictions event.+"""+type OrgDisableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.disable_saml event.+"""+type OrgDisableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The SAML provider's digest algorithm URL.+ """+ digestMethodUrl: URI+ id: ID!++ """+ The SAML provider's issuer URL.+ """+ issuerUrl: URI++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The SAML provider's signature algorithm URL.+ """+ signatureMethodUrl: URI++ """+ The SAML provider's single sign-on URL.+ """+ singleSignOnUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.disable_two_factor_requirement event.+"""+type OrgDisableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.enable_oauth_app_restrictions event.+"""+type OrgEnableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.enable_saml event.+"""+type OrgEnableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The SAML provider's digest algorithm URL.+ """+ digestMethodUrl: URI+ id: ID!++ """+ The SAML provider's issuer URL.+ """+ issuerUrl: URI++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The SAML provider's signature algorithm URL.+ """+ signatureMethodUrl: URI++ """+ The SAML provider's single sign-on URL.+ """+ singleSignOnUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.enable_two_factor_requirement event.+"""+type OrgEnableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.invite_member event.+"""+type OrgInviteMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The email address of the organization invitation.+ """+ email: String+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The organization invitation.+ """+ organizationInvitation: OrganizationInvitation++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.invite_to_business event.+"""+type OrgInviteToBusinessAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The HTTP path for this enterprise.+ """+ enterpriseResourcePath: URI++ """+ The slug of the enterprise.+ """+ enterpriseSlug: String++ """+ The HTTP URL for this enterprise.+ """+ enterpriseUrl: URI+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.oauth_app_access_approved event.+"""+type OrgOauthAppAccessApprovedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The name of the OAuth Application.+ """+ oauthApplicationName: String++ """+ The HTTP path for the OAuth Application+ """+ oauthApplicationResourcePath: URI++ """+ The HTTP URL for the OAuth Application+ """+ oauthApplicationUrl: URI++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.oauth_app_access_denied event.+"""+type OrgOauthAppAccessDeniedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The name of the OAuth Application.+ """+ oauthApplicationName: String++ """+ The HTTP path for the OAuth Application+ """+ oauthApplicationResourcePath: URI++ """+ The HTTP URL for the OAuth Application+ """+ oauthApplicationUrl: URI++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.oauth_app_access_requested event.+"""+type OrgOauthAppAccessRequestedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The name of the OAuth Application.+ """+ oauthApplicationName: String++ """+ The HTTP path for the OAuth Application+ """+ oauthApplicationResourcePath: URI++ """+ The HTTP URL for the OAuth Application+ """+ oauthApplicationUrl: URI++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.remove_billing_manager event.+"""+type OrgRemoveBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The reason for the billing manager being removed.+ """+ reason: OrgRemoveBillingManagerAuditEntryReason++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The reason a billing manager was removed from an Organization.+"""+enum OrgRemoveBillingManagerAuditEntryReason {+ """+ SAML external identity missing+ """+ SAML_EXTERNAL_IDENTITY_MISSING++ """+ SAML SSO enforcement requires an external identity+ """+ SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY++ """+ The organization required 2FA of its billing managers and this user did not have 2FA enabled.+ """+ TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE+}++"""+Audit log entry for a org.remove_member event.+"""+type OrgRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The types of membership the member has with the organization.+ """+ membershipTypes: [OrgRemoveMemberAuditEntryMembershipType!]++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The reason for the member being removed.+ """+ reason: OrgRemoveMemberAuditEntryReason++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The type of membership a user has with an Organization.+"""+enum OrgRemoveMemberAuditEntryMembershipType {+ """+ 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.+ """+ ADMIN++ """+ A billing manager is a user who manages the billing settings for the Organization, such as updating payment information.+ """+ BILLING_MANAGER++ """+ A direct member is a user that is a member of the Organization.+ """+ DIRECT_MEMBER++ """+ 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.+ """+ OUTSIDE_COLLABORATOR++ """+ 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.+ """+ UNAFFILIATED+}++"""+The reason a member was removed from an Organization.+"""+enum OrgRemoveMemberAuditEntryReason {+ """+ SAML external identity missing+ """+ SAML_EXTERNAL_IDENTITY_MISSING++ """+ SAML SSO enforcement requires an external identity+ """+ SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY++ """+ User was removed from organization during account recovery+ """+ TWO_FACTOR_ACCOUNT_RECOVERY++ """+ The organization required 2FA of its billing managers and this user did not have 2FA enabled.+ """+ TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE++ """+ User account has been deleted+ """+ USER_ACCOUNT_DELETED+}++"""+Audit log entry for a org.remove_outside_collaborator event.+"""+type OrgRemoveOutsideCollaboratorAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The types of membership the outside collaborator has with the organization.+ """+ membershipTypes: [OrgRemoveOutsideCollaboratorAuditEntryMembershipType!]++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The reason for the outside collaborator being removed from the Organization.+ """+ reason: OrgRemoveOutsideCollaboratorAuditEntryReason++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The type of membership a user has with an Organization.+"""+enum OrgRemoveOutsideCollaboratorAuditEntryMembershipType {+ """+ A billing manager is a user who manages the billing settings for the Organization, such as updating payment information.+ """+ BILLING_MANAGER++ """+ 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.+ """+ OUTSIDE_COLLABORATOR++ """+ 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.+ """+ UNAFFILIATED+}++"""+The reason an outside collaborator was removed from an Organization.+"""+enum OrgRemoveOutsideCollaboratorAuditEntryReason {+ """+ SAML external identity missing+ """+ SAML_EXTERNAL_IDENTITY_MISSING++ """+ The organization required 2FA of its billing managers and this user did not have 2FA enabled.+ """+ TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE+}++"""+Audit log entry for a org.restore_member event.+"""+type OrgRestoreMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The number of custom email routings for the restored member.+ """+ restoredCustomEmailRoutingsCount: Int++ """+ The number of issue assignemnts for the restored member.+ """+ restoredIssueAssignmentsCount: Int++ """+ Restored organization membership objects.+ """+ restoredMemberships: [OrgRestoreMemberAuditEntryMembership!]++ """+ The number of restored memberships.+ """+ restoredMembershipsCount: Int++ """+ The number of repositories of the restored member.+ """+ restoredRepositoriesCount: Int++ """+ The number of starred repositories for the restored member.+ """+ restoredRepositoryStarsCount: Int++ """+ The number of watched repositories for the restored member.+ """+ restoredRepositoryWatchesCount: Int++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Types of memberships that can be restored for an Organization member.+"""+union OrgRestoreMemberAuditEntryMembership =+ OrgRestoreMemberMembershipOrganizationAuditEntryData+ | OrgRestoreMemberMembershipRepositoryAuditEntryData+ | OrgRestoreMemberMembershipTeamAuditEntryData++"""+Metadata for an organization membership for org.restore_member actions+"""+type OrgRestoreMemberMembershipOrganizationAuditEntryData implements OrganizationAuditEntryData {+ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI+}++"""+Metadata for a repository membership for org.restore_member actions+"""+type OrgRestoreMemberMembershipRepositoryAuditEntryData implements RepositoryAuditEntryData {+ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI+}++"""+Metadata for a team membership for org.restore_member actions+"""+type OrgRestoreMemberMembershipTeamAuditEntryData implements TeamAuditEntryData {+ """+ The team associated with the action+ """+ team: Team++ """+ The name of the team+ """+ teamName: String++ """+ The HTTP path for this team+ """+ teamResourcePath: URI++ """+ The HTTP URL for this team+ """+ teamUrl: URI+}++"""+Audit log entry for a org.unblock_user+"""+type OrgUnblockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The user being unblocked by the organization.+ """+ blockedUser: User++ """+ The username of the blocked user.+ """+ blockedUserName: String++ """+ The HTTP path for the blocked user.+ """+ blockedUserResourcePath: URI++ """+ The HTTP URL for the blocked user.+ """+ blockedUserUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a org.update_default_repository_permission+"""+type OrgUpdateDefaultRepositoryPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The new default repository permission level for the organization.+ """+ permission: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission++ """+ The former default repository permission level for the organization.+ """+ permissionWas: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The default permission a repository can have in an Organization.+"""+enum OrgUpdateDefaultRepositoryPermissionAuditEntryPermission {+ """+ Can read, clone, push, and add collaborators to repositories.+ """+ ADMIN++ """+ No default permission value.+ """+ NONE++ """+ Can read and clone repositories.+ """+ READ++ """+ Can read, clone and push to repositories.+ """+ WRITE+}++"""+Audit log entry for a org.update_member event.+"""+type OrgUpdateMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The new member permission level for the organization.+ """+ permission: OrgUpdateMemberAuditEntryPermission++ """+ The former member permission level for the organization.+ """+ permissionWas: OrgUpdateMemberAuditEntryPermission++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The permissions available to members on an Organization.+"""+enum OrgUpdateMemberAuditEntryPermission {+ """+ Can read, clone, push, and add collaborators to repositories.+ """+ ADMIN++ """+ Can read and clone repositories.+ """+ READ+}++"""+Audit log entry for a org.update_member_repository_creation_permission event.+"""+type OrgUpdateMemberRepositoryCreationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ Can members create repositories in the organization.+ """+ canCreateRepositories: Boolean++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI++ """+ The permission for visibility level of repositories for this organization.+ """+ visibility: OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility+}++"""+The permissions available for repository creation on an Organization.+"""+enum OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility {+ """+ All organization members are restricted from creating any repositories.+ """+ ALL++ """+ All organization members are restricted from creating internal repositories.+ """+ INTERNAL++ """+ All organization members are allowed to create any repositories.+ """+ NONE++ """+ All organization members are restricted from creating private repositories.+ """+ PRIVATE++ """+ All organization members are restricted from creating private or internal repositories.+ """+ PRIVATE_INTERNAL++ """+ All organization members are restricted from creating public repositories.+ """+ PUBLIC++ """+ All organization members are restricted from creating public or internal repositories.+ """+ PUBLIC_INTERNAL++ """+ All organization members are restricted from creating public or private repositories.+ """+ PUBLIC_PRIVATE+}++"""+Audit log entry for a org.update_member_repository_invitation_permission event.+"""+type OrgUpdateMemberRepositoryInvitationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ Can outside collaborators be invited to repositories in the organization.+ """+ canInviteOutsideCollaboratorsToRepositories: Boolean++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+An account on GitHub, with one or more owners, that has repositories, members and teams.+"""+type Organization implements Actor & MemberStatusable & Node & PackageOwner & ProfileOwner & ProjectOwner & RepositoryOwner & Sponsorable & UniformResourceLocatable {+ """+ Determine if this repository owner has any items that can be pinned to their profile.+ """+ anyPinnableItems(+ """+ Filter to only a particular kind of pinnable item.+ """+ type: PinnableItemType+ ): Boolean!++ """+ Audit log entries of the organization+ """+ auditLog(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for the returned audit log entries.+ """+ orderBy: AuditLogOrder = { field: CREATED_AT, direction: DESC }++ """+ The query string to filter audit entries+ """+ query: String+ ): OrganizationAuditEntryConnection!++ """+ A URL pointing to the organization's public avatar.+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int+ ): URI!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The organization's public profile description.+ """+ description: String++ """+ The organization's public profile description rendered to HTML.+ """+ descriptionHTML: String++ """+ The organization's public email.+ """+ email: String+ id: ID!++ """+ The setting value for whether the organization has an IP allow list enabled.+ """+ ipAllowListEnabledSetting: IpAllowListEnabledSettingValue!++ """+ The IP addresses that are allowed to access resources owned by the organization.+ """+ ipAllowListEntries(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for IP allow list entries returned.+ """+ orderBy: IpAllowListEntryOrder = { field: ALLOW_LIST_VALUE, direction: ASC }+ ): IpAllowListEntryConnection!++ """+ Whether the organization has verified its profile email and website.+ """+ isVerified: Boolean!++ """+ Showcases a selection of repositories and gists that the profile owner has+ either curated or that have been selected automatically based on popularity.+ """+ itemShowcase: ProfileItemShowcase!++ """+ The organization's public profile location.+ """+ location: String++ """+ The organization's login name.+ """+ login: String!++ """+ Get the status messages members of this entity have set that are either public or visible only to the organization.+ """+ memberStatuses(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for user statuses returned from the connection.+ """+ orderBy: UserStatusOrder = { field: UPDATED_AT, direction: DESC }+ ): UserStatusConnection!++ """+ A list of users who are members of this organization.+ """+ membersWithRole(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): OrganizationMemberConnection!++ """+ The organization's public profile name.+ """+ name: String++ """+ The HTTP path creating a new team+ """+ newTeamResourcePath: URI!++ """+ The HTTP URL creating a new team+ """+ newTeamUrl: URI!++ """+ The billing email for the organization.+ """+ organizationBillingEmail: String++ """+ A list of packages under the owner.+ """+ packages(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Find packages by their names.+ """+ names: [String]++ """+ Ordering of the returned packages.+ """+ orderBy: PackageOrder = { field: CREATED_AT, direction: DESC }++ """+ Filter registry package by type.+ """+ packageType: PackageType++ """+ Find packages in a repository by ID.+ """+ repositoryId: ID+ ): PackageConnection!++ """+ A list of users who have been invited to join this organization.+ """+ pendingMembers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserConnection!++ """+ A list of repositories and gists this profile owner can pin to their profile.+ """+ pinnableItems(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filter the types of pinnable items that are returned.+ """+ types: [PinnableItemType!]+ ): PinnableItemConnection!++ """+ A list of repositories and gists this profile owner has pinned to their profile+ """+ pinnedItems(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filter the types of pinned items that are returned.+ """+ types: [PinnableItemType!]+ ): PinnableItemConnection!++ """+ Returns how many more items this profile owner can pin to their profile.+ """+ pinnedItemsRemaining: Int!++ """+ Find project by number.+ """+ project(+ """+ The project number to find.+ """+ number: Int!+ ): Project++ """+ A list of projects under the owner.+ """+ projects(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for projects returned from the connection+ """+ orderBy: ProjectOrder++ """+ Query to search projects by, currently only searching by name.+ """+ search: String++ """+ A list of states to filter the projects by.+ """+ states: [ProjectState!]+ ): ProjectConnection!++ """+ The HTTP path listing organization's projects+ """+ projectsResourcePath: URI!++ """+ The HTTP URL listing organization's projects+ """+ projectsUrl: URI!++ """+ A list of repositories that the user owns.+ """+ repositories(+ """+ Array of viewer's affiliation options for repositories returned from the+ connection. For example, OWNER will include only repositories that the+ current viewer owns.+ """+ affiliations: [RepositoryAffiliation]++ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ If non-null, filters repositories according to whether they are forks of another repository+ """+ isFork: Boolean++ """+ If non-null, filters repositories according to whether they have been locked+ """+ isLocked: Boolean++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for repositories returned from the connection+ """+ orderBy: RepositoryOrder++ """+ Array of owner's affiliation options for repositories returned from the+ connection. For example, OWNER will include only repositories that the+ organization or user being viewed owns.+ """+ ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR]++ """+ If non-null, filters repositories according to privacy+ """+ privacy: RepositoryPrivacy+ ): RepositoryConnection!++ """+ Find Repository.+ """+ repository(+ """+ Name of Repository to find.+ """+ name: String!+ ): Repository++ """+ When true the organization requires all members, billing managers, and outside+ collaborators to enable two-factor authentication.+ """+ requiresTwoFactorAuthentication: Boolean++ """+ The HTTP path for this organization.+ """+ resourcePath: URI!++ """+ The Organization's SAML identity providers+ """+ samlIdentityProvider: OrganizationIdentityProvider++ """+ The GitHub Sponsors listing for this user.+ """+ sponsorsListing: SponsorsListing++ """+ This object's sponsorships as the maintainer.+ """+ sponsorshipsAsMaintainer(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Whether or not to include private sponsorships in the result set+ """+ includePrivate: Boolean = false++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for sponsorships returned from this connection. If left+ blank, the sponsorships will be ordered based on relevancy to the viewer.+ """+ orderBy: SponsorshipOrder+ ): SponsorshipConnection!++ """+ This object's sponsorships as the sponsor.+ """+ sponsorshipsAsSponsor(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for sponsorships returned from this connection. If left+ blank, the sponsorships will be ordered based on relevancy to the viewer.+ """+ orderBy: SponsorshipOrder+ ): SponsorshipConnection!++ """+ Find an organization's team by its slug.+ """+ team(+ """+ The name or slug of the team to find.+ """+ slug: String!+ ): Team++ """+ A list of teams in this organization.+ """+ teams(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ If true, filters teams that are mapped to an LDAP Group (Enterprise only)+ """+ ldapMapped: Boolean++ """+ Ordering options for teams returned from the connection+ """+ orderBy: TeamOrder++ """+ If non-null, filters teams according to privacy+ """+ privacy: TeamPrivacy++ """+ If non-null, filters teams with query on team name and team slug+ """+ query: String++ """+ If non-null, filters teams according to whether the viewer is an admin or member on team+ """+ role: TeamRole++ """+ If true, restrict to only root teams+ """+ rootTeamsOnly: Boolean = false++ """+ User logins to filter by+ """+ userLogins: [String!]+ ): TeamConnection!++ """+ The HTTP path listing organization's teams+ """+ teamsResourcePath: URI!++ """+ The HTTP URL listing organization's teams+ """+ teamsUrl: URI!++ """+ The organization's Twitter username.+ """+ twitterUsername: String++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this organization.+ """+ url: URI!++ """+ Organization is adminable by the viewer.+ """+ viewerCanAdminister: Boolean!++ """+ Can the viewer pin repositories and gists to the profile?+ """+ viewerCanChangePinnedItems: Boolean!++ """+ Can the current viewer create new projects on this owner.+ """+ viewerCanCreateProjects: Boolean!++ """+ Viewer can create repositories on this organization+ """+ viewerCanCreateRepositories: Boolean!++ """+ Viewer can create teams on this organization.+ """+ viewerCanCreateTeams: Boolean!++ """+ Viewer is an active member of this organization.+ """+ viewerIsAMember: Boolean!++ """+ The organization's public profile URL.+ """+ websiteUrl: URI+}++"""+An audit entry in an organization audit log.+"""+union OrganizationAuditEntry =+ MembersCanDeleteReposClearAuditEntry+ | MembersCanDeleteReposDisableAuditEntry+ | MembersCanDeleteReposEnableAuditEntry+ | OauthApplicationCreateAuditEntry+ | OrgAddBillingManagerAuditEntry+ | OrgAddMemberAuditEntry+ | OrgBlockUserAuditEntry+ | OrgConfigDisableCollaboratorsOnlyAuditEntry+ | OrgConfigEnableCollaboratorsOnlyAuditEntry+ | OrgCreateAuditEntry+ | OrgDisableOauthAppRestrictionsAuditEntry+ | OrgDisableSamlAuditEntry+ | OrgDisableTwoFactorRequirementAuditEntry+ | OrgEnableOauthAppRestrictionsAuditEntry+ | OrgEnableSamlAuditEntry+ | OrgEnableTwoFactorRequirementAuditEntry+ | OrgInviteMemberAuditEntry+ | OrgInviteToBusinessAuditEntry+ | OrgOauthAppAccessApprovedAuditEntry+ | OrgOauthAppAccessDeniedAuditEntry+ | OrgOauthAppAccessRequestedAuditEntry+ | OrgRemoveBillingManagerAuditEntry+ | OrgRemoveMemberAuditEntry+ | OrgRemoveOutsideCollaboratorAuditEntry+ | OrgRestoreMemberAuditEntry+ | OrgUnblockUserAuditEntry+ | OrgUpdateDefaultRepositoryPermissionAuditEntry+ | OrgUpdateMemberAuditEntry+ | OrgUpdateMemberRepositoryCreationPermissionAuditEntry+ | OrgUpdateMemberRepositoryInvitationPermissionAuditEntry+ | PrivateRepositoryForkingDisableAuditEntry+ | PrivateRepositoryForkingEnableAuditEntry+ | RepoAccessAuditEntry+ | RepoAddMemberAuditEntry+ | RepoAddTopicAuditEntry+ | RepoArchivedAuditEntry+ | RepoChangeMergeSettingAuditEntry+ | RepoConfigDisableAnonymousGitAccessAuditEntry+ | RepoConfigDisableCollaboratorsOnlyAuditEntry+ | RepoConfigDisableContributorsOnlyAuditEntry+ | RepoConfigDisableSockpuppetDisallowedAuditEntry+ | RepoConfigEnableAnonymousGitAccessAuditEntry+ | RepoConfigEnableCollaboratorsOnlyAuditEntry+ | RepoConfigEnableContributorsOnlyAuditEntry+ | RepoConfigEnableSockpuppetDisallowedAuditEntry+ | RepoConfigLockAnonymousGitAccessAuditEntry+ | RepoConfigUnlockAnonymousGitAccessAuditEntry+ | RepoCreateAuditEntry+ | RepoDestroyAuditEntry+ | RepoRemoveMemberAuditEntry+ | RepoRemoveTopicAuditEntry+ | RepositoryVisibilityChangeDisableAuditEntry+ | RepositoryVisibilityChangeEnableAuditEntry+ | TeamAddMemberAuditEntry+ | TeamAddRepositoryAuditEntry+ | TeamChangeParentTeamAuditEntry+ | TeamRemoveMemberAuditEntry+ | TeamRemoveRepositoryAuditEntry++"""+The connection type for OrganizationAuditEntry.+"""+type OrganizationAuditEntryConnection {+ """+ A list of edges.+ """+ edges: [OrganizationAuditEntryEdge]++ """+ A list of nodes.+ """+ nodes: [OrganizationAuditEntry]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Metadata for an audit entry with action org.*+"""+interface OrganizationAuditEntryData {+ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI+}++"""+An edge in a connection.+"""+type OrganizationAuditEntryEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: OrganizationAuditEntry+}++"""+The connection type for Organization.+"""+type OrganizationConnection {+ """+ A list of edges.+ """+ edges: [OrganizationEdge]++ """+ A list of nodes.+ """+ nodes: [Organization]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type OrganizationEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Organization+}++"""+An Identity Provider configured to provision SAML and SCIM identities for Organizations+"""+type OrganizationIdentityProvider implements Node {+ """+ The digest algorithm used to sign SAML requests for the Identity Provider.+ """+ digestMethod: URI++ """+ External Identities provisioned by this Identity Provider+ """+ externalIdentities(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ExternalIdentityConnection!+ id: ID!++ """+ The x509 certificate used by the Identity Provder to sign assertions and responses.+ """+ idpCertificate: X509Certificate++ """+ The Issuer Entity ID for the SAML Identity Provider+ """+ issuer: String++ """+ Organization this Identity Provider belongs to+ """+ organization: Organization++ """+ The signature algorithm used to sign SAML requests for the Identity Provider.+ """+ signatureMethod: URI++ """+ The URL endpoint for the Identity Provider's SAML SSO.+ """+ ssoUrl: URI+}++"""+An Invitation for a user to an organization.+"""+type OrganizationInvitation implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The email address of the user invited to the organization.+ """+ email: String+ id: ID!++ """+ The type of invitation that was sent (e.g. email, user).+ """+ invitationType: OrganizationInvitationType!++ """+ The user who was invited to the organization.+ """+ invitee: User++ """+ The user who created the invitation.+ """+ inviter: User!++ """+ The organization the invite is for+ """+ organization: Organization!++ """+ The user's pending role in the organization (e.g. member, owner).+ """+ role: OrganizationInvitationRole!+}++"""+The connection type for OrganizationInvitation.+"""+type OrganizationInvitationConnection {+ """+ A list of edges.+ """+ edges: [OrganizationInvitationEdge]++ """+ A list of nodes.+ """+ nodes: [OrganizationInvitation]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type OrganizationInvitationEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: OrganizationInvitation+}++"""+The possible organization invitation roles.+"""+enum OrganizationInvitationRole {+ """+ The user is invited to be an admin of the organization.+ """+ ADMIN++ """+ The user is invited to be a billing manager of the organization.+ """+ BILLING_MANAGER++ """+ The user is invited to be a direct member of the organization.+ """+ DIRECT_MEMBER++ """+ The user's previous role will be reinstated.+ """+ REINSTATE+}++"""+The possible organization invitation types.+"""+enum OrganizationInvitationType {+ """+ The invitation was to an email address.+ """+ EMAIL++ """+ The invitation was to an existing user.+ """+ USER+}++"""+The connection type for User.+"""+type OrganizationMemberConnection {+ """+ A list of edges.+ """+ edges: [OrganizationMemberEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Represents a user within an organization.+"""+type OrganizationMemberEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ Whether the organization member has two factor enabled or not. Returns null if information is not available to viewer.+ """+ hasTwoFactorEnabled: Boolean++ """+ The item at the end of the edge.+ """+ node: User++ """+ The role this user has in the organization.+ """+ role: OrganizationMemberRole+}++"""+The possible roles within an organization for its members.+"""+enum OrganizationMemberRole {+ """+ The user is an administrator of the organization.+ """+ ADMIN++ """+ The user is a member of the organization.+ """+ MEMBER+}++"""+The possible values for the members can create repositories setting on an organization.+"""+enum OrganizationMembersCanCreateRepositoriesSettingValue {+ """+ Members will be able to create public and private repositories.+ """+ ALL++ """+ Members will not be able to create public or private repositories.+ """+ DISABLED++ """+ Members will be able to create only private repositories.+ """+ PRIVATE+}++"""+Ordering options for organization connections.+"""+input OrganizationOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order organizations by.+ """+ field: OrganizationOrderField!+}++"""+Properties by which organization connections can be ordered.+"""+enum OrganizationOrderField {+ """+ Order organizations by creation time+ """+ CREATED_AT++ """+ Order organizations by login+ """+ LOGIN+}++"""+An organization teams hovercard context+"""+type OrganizationTeamsHovercardContext implements HovercardContext {+ """+ A string describing this context+ """+ message: String!++ """+ An octicon to accompany this context+ """+ octicon: String!++ """+ Teams in this organization the user is a member of that are relevant+ """+ relevantTeams(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): TeamConnection!++ """+ The path for the full team list for this user+ """+ teamsResourcePath: URI!++ """+ The URL for the full team list for this user+ """+ teamsUrl: URI!++ """+ The total number of teams the user is on in the organization+ """+ totalTeamCount: Int!+}++"""+An organization list hovercard context+"""+type OrganizationsHovercardContext implements HovercardContext {+ """+ A string describing this context+ """+ message: String!++ """+ An octicon to accompany this context+ """+ octicon: String!++ """+ Organizations this user is a member of that are relevant+ """+ relevantOrganizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): OrganizationConnection!++ """+ The total number of organizations this user is in+ """+ totalOrganizationCount: Int!+}++"""+Information for an uploaded package.+"""+type Package implements Node {+ id: ID!++ """+ Find the latest version for the package.+ """+ latestVersion: PackageVersion++ """+ Identifies the name of the package.+ """+ name: String!++ """+ Identifies the type of the package.+ """+ packageType: PackageType!++ """+ The repository this package belongs to.+ """+ repository: Repository++ """+ Statistics about package activity.+ """+ statistics: PackageStatistics++ """+ Find package version by version string.+ """+ version(+ """+ The package version.+ """+ version: String!+ ): PackageVersion++ """+ list of versions for this package+ """+ versions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering of the returned packages.+ """+ orderBy: PackageVersionOrder = { field: CREATED_AT, direction: DESC }+ ): PackageVersionConnection!+}++"""+The connection type for Package.+"""+type PackageConnection {+ """+ A list of edges.+ """+ edges: [PackageEdge]++ """+ A list of nodes.+ """+ nodes: [Package]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PackageEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Package+}++"""+A file in a package version.+"""+type PackageFile implements Node {+ id: ID!++ """+ MD5 hash of the file.+ """+ md5: String++ """+ Name of the file.+ """+ name: String!++ """+ The package version this file belongs to.+ """+ packageVersion: PackageVersion++ """+ SHA1 hash of the file.+ """+ sha1: String++ """+ SHA256 hash of the file.+ """+ sha256: String++ """+ Size of the file in bytes.+ """+ size: Int++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ URL to download the asset.+ """+ url: URI+}++"""+The connection type for PackageFile.+"""+type PackageFileConnection {+ """+ A list of edges.+ """+ edges: [PackageFileEdge]++ """+ A list of nodes.+ """+ nodes: [PackageFile]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PackageFileEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PackageFile+}++"""+Ways in which lists of package files can be ordered upon return.+"""+input PackageFileOrder {+ """+ The direction in which to order package files by the specified field.+ """+ direction: OrderDirection++ """+ The field in which to order package files by.+ """+ field: PackageFileOrderField+}++"""+Properties by which package file connections can be ordered.+"""+enum PackageFileOrderField {+ """+ Order package files by creation time+ """+ CREATED_AT+}++"""+Ways in which lists of packages can be ordered upon return.+"""+input PackageOrder {+ """+ The direction in which to order packages by the specified field.+ """+ direction: OrderDirection++ """+ The field in which to order packages by.+ """+ field: PackageOrderField+}++"""+Properties by which package connections can be ordered.+"""+enum PackageOrderField {+ """+ Order packages by creation time+ """+ CREATED_AT+}++"""+Represents an owner of a package.+"""+interface PackageOwner {+ id: ID!++ """+ A list of packages under the owner.+ """+ packages(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Find packages by their names.+ """+ names: [String]++ """+ Ordering of the returned packages.+ """+ orderBy: PackageOrder = { field: CREATED_AT, direction: DESC }++ """+ Filter registry package by type.+ """+ packageType: PackageType++ """+ Find packages in a repository by ID.+ """+ repositoryId: ID+ ): PackageConnection!+}++"""+Represents a object that contains package activity statistics such as downloads.+"""+type PackageStatistics {+ """+ Number of times the package was downloaded since it was created.+ """+ downloadsTotalCount: Int!+}++"""+A version tag contains the mapping between a tag name and a version.+"""+type PackageTag implements Node {+ id: ID!++ """+ Identifies the tag name of the version.+ """+ name: String!++ """+ Version that the tag is associated with.+ """+ version: PackageVersion+}++"""+The possible types of a package.+"""+enum PackageType {+ """+ A debian package.+ """+ DEBIAN++ """+ A docker image.+ """+ DOCKER++ """+ A maven package.+ """+ MAVEN++ """+ An npm package.+ """+ NPM++ """+ A nuget package.+ """+ NUGET++ """+ A python package.+ """+ PYPI++ """+ A rubygems package.+ """+ RUBYGEMS+}++"""+Information about a specific package version.+"""+type PackageVersion implements Node {+ """+ List of files associated with this package version+ """+ files(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering of the returned package files.+ """+ orderBy: PackageFileOrder = { field: CREATED_AT, direction: ASC }+ ): PackageFileConnection!+ id: ID!++ """+ The package associated with this version.+ """+ package: Package++ """+ The platform this version was built for.+ """+ platform: String++ """+ Whether or not this version is a pre-release.+ """+ preRelease: Boolean!++ """+ The README of this package version.+ """+ readme: String++ """+ The release associated with this package version.+ """+ release: Release++ """+ Statistics about package activity.+ """+ statistics: PackageVersionStatistics++ """+ The package version summary.+ """+ summary: String++ """+ The version string.+ """+ version: String!+}++"""+The connection type for PackageVersion.+"""+type PackageVersionConnection {+ """+ A list of edges.+ """+ edges: [PackageVersionEdge]++ """+ A list of nodes.+ """+ nodes: [PackageVersion]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PackageVersionEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PackageVersion+}++"""+Ways in which lists of package versions can be ordered upon return.+"""+input PackageVersionOrder {+ """+ The direction in which to order package versions by the specified field.+ """+ direction: OrderDirection++ """+ The field in which to order package versions by.+ """+ field: PackageVersionOrderField+}++"""+Properties by which package version connections can be ordered.+"""+enum PackageVersionOrderField {+ """+ Order package versions by creation time+ """+ CREATED_AT+}++"""+Represents a object that contains package version activity statistics such as downloads.+"""+type PackageVersionStatistics {+ """+ Number of times the package was downloaded since it was created.+ """+ downloadsTotalCount: Int!+}++"""+Information about pagination in a connection.+"""+type PageInfo {+ """+ When paginating forwards, the cursor to continue.+ """+ endCursor: String++ """+ When paginating forwards, are there more items?+ """+ hasNextPage: Boolean!++ """+ When paginating backwards, are there more items?+ """+ hasPreviousPage: Boolean!++ """+ When paginating backwards, the cursor to continue.+ """+ startCursor: String+}++"""+Types that can grant permissions on a repository to a user+"""+union PermissionGranter = Organization | Repository | Team++"""+A level of permission and source for a user's access to a repository.+"""+type PermissionSource {+ """+ The organization the repository belongs to.+ """+ organization: Organization!++ """+ The level of access this source has granted to the user.+ """+ permission: DefaultRepositoryPermissionField!++ """+ The source of this permission.+ """+ source: PermissionGranter!+}++"""+Autogenerated input type of PinIssue+"""+input PinIssueInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the issue to be pinned+ """+ issueId: ID! @possibleTypes(concreteTypes: ["Issue"])+}++"""+Autogenerated return type of PinIssue+"""+type PinIssuePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The issue that was pinned+ """+ issue: Issue+}++"""+Types that can be pinned to a profile page.+"""+union PinnableItem = Gist | Repository++"""+The connection type for PinnableItem.+"""+type PinnableItemConnection {+ """+ A list of edges.+ """+ edges: [PinnableItemEdge]++ """+ A list of nodes.+ """+ nodes: [PinnableItem]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PinnableItemEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PinnableItem+}++"""+Represents items that can be pinned to a profile page or dashboard.+"""+enum PinnableItemType {+ """+ A gist.+ """+ GIST++ """+ An issue.+ """+ ISSUE++ """+ An organization.+ """+ ORGANIZATION++ """+ A project.+ """+ PROJECT++ """+ A pull request.+ """+ PULL_REQUEST++ """+ A repository.+ """+ REPOSITORY++ """+ A team.+ """+ TEAM++ """+ A user.+ """+ USER+}++"""+Represents a 'pinned' event on a given issue or pull request.+"""+type PinnedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Identifies the issue associated with the event.+ """+ issue: Issue!+}++"""+A Pinned Issue is a issue pinned to a repository's index page.+"""+type PinnedIssue implements Node @preview(toggledBy: "elektra-preview") {+ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ The issue that was pinned.+ """+ issue: Issue!++ """+ The actor that pinned this issue.+ """+ pinnedBy: Actor!++ """+ The repository that this issue was pinned to.+ """+ repository: Repository!+}++"""+The connection type for PinnedIssue.+"""+type PinnedIssueConnection @preview(toggledBy: "elektra-preview") {+ """+ A list of edges.+ """+ edges: [PinnedIssueEdge]++ """+ A list of nodes.+ """+ nodes: [PinnedIssue]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PinnedIssueEdge @preview(toggledBy: "elektra-preview") {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PinnedIssue+}++"""+An ISO-8601 encoded UTC date string with millisecond precison.+"""+scalar PreciseDateTime++"""+Audit log entry for a private_repository_forking.disable event.+"""+type PrivateRepositoryForkingDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The HTTP path for this enterprise.+ """+ enterpriseResourcePath: URI++ """+ The slug of the enterprise.+ """+ enterpriseSlug: String++ """+ The HTTP URL for this enterprise.+ """+ enterpriseUrl: URI+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a private_repository_forking.enable event.+"""+type PrivateRepositoryForkingEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The HTTP path for this enterprise.+ """+ enterpriseResourcePath: URI++ """+ The slug of the enterprise.+ """+ enterpriseSlug: String++ """+ The HTTP URL for this enterprise.+ """+ enterpriseUrl: URI+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+A curatable list of repositories relating to a repository owner, which defaults+to showing the most popular repositories they own.+"""+type ProfileItemShowcase {+ """+ Whether or not the owner has pinned any repositories or gists.+ """+ hasPinnedItems: Boolean!++ """+ The repositories and gists in the showcase. If the profile owner has any+ pinned items, those will be returned. Otherwise, the profile owner's popular+ repositories will be returned.+ """+ items(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): PinnableItemConnection!+}++"""+Represents any entity on GitHub that has a profile page.+"""+interface ProfileOwner {+ """+ Determine if this repository owner has any items that can be pinned to their profile.+ """+ anyPinnableItems(+ """+ Filter to only a particular kind of pinnable item.+ """+ type: PinnableItemType+ ): Boolean!++ """+ The public profile email.+ """+ email: String+ id: ID!++ """+ Showcases a selection of repositories and gists that the profile owner has+ either curated or that have been selected automatically based on popularity.+ """+ itemShowcase: ProfileItemShowcase!++ """+ The public profile location.+ """+ location: String++ """+ The username used to login.+ """+ login: String!++ """+ The public profile name.+ """+ name: String++ """+ A list of repositories and gists this profile owner can pin to their profile.+ """+ pinnableItems(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filter the types of pinnable items that are returned.+ """+ types: [PinnableItemType!]+ ): PinnableItemConnection!++ """+ A list of repositories and gists this profile owner has pinned to their profile+ """+ pinnedItems(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filter the types of pinned items that are returned.+ """+ types: [PinnableItemType!]+ ): PinnableItemConnection!++ """+ Returns how many more items this profile owner can pin to their profile.+ """+ pinnedItemsRemaining: Int!++ """+ Can the viewer pin repositories and gists to the profile?+ """+ viewerCanChangePinnedItems: Boolean!++ """+ The public profile website URL.+ """+ websiteUrl: URI+}++"""+Projects manage issues, pull requests and notes within a project owner.+"""+type Project implements Closable & Node & Updatable {+ """+ The project's description body.+ """+ body: String++ """+ The projects description body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ `true` if the object is closed (definition of closed may depend on type)+ """+ closed: Boolean!++ """+ Identifies the date and time when the object was closed.+ """+ closedAt: DateTime++ """+ List of columns in the project+ """+ columns(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ProjectColumnConnection!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The actor who originally created the project.+ """+ creator: Actor++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ The project's name.+ """+ name: String!++ """+ The project's number.+ """+ number: Int!++ """+ The project's owner. Currently limited to repositories, organizations, and users.+ """+ owner: ProjectOwner!++ """+ List of pending cards in this project+ """+ pendingCards(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ A list of archived states to filter the cards by+ """+ archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED]++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ProjectCardConnection!++ """+ The HTTP path for this project+ """+ resourcePath: URI!++ """+ Whether the project is open or closed.+ """+ state: ProjectState!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this project+ """+ url: URI!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!+}++"""+A card in a project.+"""+type ProjectCard implements Node {+ """+ The project column this card is associated under. A card may only belong to one+ project column at a time. The column field will be null if the card is created+ in a pending state and has yet to be associated with a column. Once cards are+ associated with a column, they will not become pending in the future.+ """+ column: ProjectColumn++ """+ The card content item+ """+ content: ProjectCardItem++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The actor who created this card+ """+ creator: Actor++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ Whether the card is archived+ """+ isArchived: Boolean!++ """+ The card note+ """+ note: String++ """+ The project that contains this card.+ """+ project: Project!++ """+ The HTTP path for this card+ """+ resourcePath: URI!++ """+ The state of ProjectCard+ """+ state: ProjectCardState++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this card+ """+ url: URI!+}++"""+The possible archived states of a project card.+"""+enum ProjectCardArchivedState {+ """+ A project card that is archived+ """+ ARCHIVED++ """+ A project card that is not archived+ """+ NOT_ARCHIVED+}++"""+The connection type for ProjectCard.+"""+type ProjectCardConnection {+ """+ A list of edges.+ """+ edges: [ProjectCardEdge]++ """+ A list of nodes.+ """+ nodes: [ProjectCard]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type ProjectCardEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: ProjectCard+}++"""+An issue or PR and its owning repository to be used in a project card.+"""+input ProjectCardImport {+ """+ The issue or pull request number.+ """+ number: Int!++ """+ Repository name with owner (owner/repository).+ """+ repository: String!+}++"""+Types that can be inside Project Cards.+"""+union ProjectCardItem = Issue | PullRequest++"""+Various content states of a ProjectCard+"""+enum ProjectCardState {+ """+ The card has content only.+ """+ CONTENT_ONLY++ """+ The card has a note only.+ """+ NOTE_ONLY++ """+ The card is redacted.+ """+ REDACTED+}++"""+A column inside a project.+"""+type ProjectColumn implements Node {+ """+ List of cards in the column+ """+ cards(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ A list of archived states to filter the cards by+ """+ archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED]++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ProjectCardConnection!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ The project column's name.+ """+ name: String!++ """+ The project that contains this column.+ """+ project: Project!++ """+ The semantic purpose of the column+ """+ purpose: ProjectColumnPurpose++ """+ The HTTP path for this project column+ """+ resourcePath: URI!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this project column+ """+ url: URI!+}++"""+The connection type for ProjectColumn.+"""+type ProjectColumnConnection {+ """+ A list of edges.+ """+ edges: [ProjectColumnEdge]++ """+ A list of nodes.+ """+ nodes: [ProjectColumn]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type ProjectColumnEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: ProjectColumn+}++"""+A project column and a list of its issues and PRs.+"""+input ProjectColumnImport {+ """+ The name of the column.+ """+ columnName: String!++ """+ A list of issues and pull requests in the column.+ """+ issues: [ProjectCardImport!]++ """+ The position of the column, starting from 0.+ """+ position: Int!+}++"""+The semantic purpose of the column - todo, in progress, or done.+"""+enum ProjectColumnPurpose {+ """+ The column contains cards which are complete+ """+ DONE++ """+ The column contains cards which are currently being worked on+ """+ IN_PROGRESS++ """+ The column contains cards still to be worked on+ """+ TODO+}++"""+A list of projects associated with the owner.+"""+type ProjectConnection {+ """+ A list of edges.+ """+ edges: [ProjectEdge]++ """+ A list of nodes.+ """+ nodes: [Project]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type ProjectEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Project+}++"""+Ways in which lists of projects can be ordered upon return.+"""+input ProjectOrder {+ """+ The direction in which to order projects by the specified field.+ """+ direction: OrderDirection!++ """+ The field in which to order projects by.+ """+ field: ProjectOrderField!+}++"""+Properties by which project connections can be ordered.+"""+enum ProjectOrderField {+ """+ Order projects by creation time+ """+ CREATED_AT++ """+ Order projects by name+ """+ NAME++ """+ Order projects by update time+ """+ UPDATED_AT+}++"""+Represents an owner of a Project.+"""+interface ProjectOwner {+ id: ID!++ """+ Find project by number.+ """+ project(+ """+ The project number to find.+ """+ number: Int!+ ): Project++ """+ A list of projects under the owner.+ """+ projects(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for projects returned from the connection+ """+ orderBy: ProjectOrder++ """+ Query to search projects by, currently only searching by name.+ """+ search: String++ """+ A list of states to filter the projects by.+ """+ states: [ProjectState!]+ ): ProjectConnection!++ """+ The HTTP path listing owners projects+ """+ projectsResourcePath: URI!++ """+ The HTTP URL listing owners projects+ """+ projectsUrl: URI!++ """+ Can the current viewer create new projects on this owner.+ """+ viewerCanCreateProjects: Boolean!+}++"""+State of the project; either 'open' or 'closed'+"""+enum ProjectState {+ """+ The project is closed.+ """+ CLOSED++ """+ The project is open.+ """+ OPEN+}++"""+GitHub-provided templates for Projects+"""+enum ProjectTemplate {+ """+ Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns.+ """+ AUTOMATED_KANBAN_V2++ """+ Create a board with triggers to automatically move cards across columns with review automation.+ """+ AUTOMATED_REVIEWS_KANBAN++ """+ Create a board with columns for To do, In progress and Done.+ """+ BASIC_KANBAN++ """+ Create a board to triage and prioritize bugs with To do, priority, and Done columns.+ """+ BUG_TRIAGE+}++"""+A user's public key.+"""+type PublicKey implements Node {+ """+ The last time this authorization was used to perform an action. Values will be null for keys not owned by the user.+ """+ accessedAt: DateTime++ """+ Identifies the date and time when the key was created. Keys created before+ March 5th, 2014 have inaccurate values. Values will be null for keys not owned by the user.+ """+ createdAt: DateTime++ """+ The fingerprint for this PublicKey.+ """+ fingerprint: String!+ id: ID!++ """+ Whether this PublicKey is read-only or not. Values will be null for keys not owned by the user.+ """+ isReadOnly: Boolean++ """+ The public key string.+ """+ key: String!++ """+ Identifies the date and time when the key was updated. Keys created before+ March 5th, 2014 may have inaccurate values. Values will be null for keys not+ owned by the user.+ """+ updatedAt: DateTime+}++"""+The connection type for PublicKey.+"""+type PublicKeyConnection {+ """+ A list of edges.+ """+ edges: [PublicKeyEdge]++ """+ A list of nodes.+ """+ nodes: [PublicKey]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PublicKeyEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PublicKey+}++"""+A repository pull request.+"""+type PullRequest implements Assignable & Closable & Comment & Labelable & Lockable & Node & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment {+ """+ Reason that the conversation was locked.+ """+ activeLockReason: LockReason++ """+ The number of additions in this pull request.+ """+ additions: Int!++ """+ A list of Users assigned to this object.+ """+ assignees(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserConnection!++ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the subject of the comment.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ Identifies the base Ref associated with the pull request.+ """+ baseRef: Ref++ """+ Identifies the name of the base Ref associated with the pull request, even if the ref has been deleted.+ """+ baseRefName: String!++ """+ Identifies the oid of the base ref associated with the pull request, even if the ref has been deleted.+ """+ baseRefOid: GitObjectID!++ """+ The repository associated with this pull request's base Ref.+ """+ baseRepository: Repository++ """+ The body as Markdown.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ The body rendered to text.+ """+ bodyText: String!++ """+ Whether or not the pull request is rebaseable.+ """+ canBeRebased: Boolean! @preview(toggledBy: "merge-info-preview")++ """+ The number of changed files in this pull request.+ """+ changedFiles: Int!++ """+ The HTTP path for the checks of this pull request.+ """+ checksResourcePath: URI!++ """+ The HTTP URL for the checks of this pull request.+ """+ checksUrl: URI!++ """+ `true` if the pull request is closed+ """+ closed: Boolean!++ """+ Identifies the date and time when the object was closed.+ """+ closedAt: DateTime++ """+ A list of comments associated with the pull request.+ """+ comments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): IssueCommentConnection!++ """+ A list of commits present in this pull request's head branch not present in the base branch.+ """+ commits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): PullRequestCommitConnection!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The number of deletions in this pull request.+ """+ deletions: Int!++ """+ The actor who edited this pull request's body.+ """+ editor: Actor++ """+ Lists the files changed within this pull request.+ """+ files(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): PullRequestChangedFileConnection++ """+ Identifies the head Ref associated with the pull request.+ """+ headRef: Ref++ """+ Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted.+ """+ headRefName: String!++ """+ Identifies the oid of the head ref associated with the pull request, even if the ref has been deleted.+ """+ headRefOid: GitObjectID!++ """+ The repository associated with this pull request's head Ref.+ """+ headRepository: Repository++ """+ The owner of the repository associated with this pull request's head Ref.+ """+ headRepositoryOwner: RepositoryOwner++ """+ The hovercard information for this issue+ """+ hovercard(+ """+ Whether or not to include notification contexts+ """+ includeNotificationContexts: Boolean = true+ ): Hovercard!+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ The head and base repositories are different.+ """+ isCrossRepository: Boolean!++ """+ Identifies if the pull request is a draft.+ """+ isDraft: Boolean!++ """+ A list of labels associated with the object.+ """+ labels(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for labels returned from the connection.+ """+ orderBy: LabelOrder = { field: CREATED_AT, direction: ASC }+ ): LabelConnection++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ `true` if the pull request is locked+ """+ locked: Boolean!++ """+ Indicates whether maintainers can modify the pull request.+ """+ maintainerCanModify: Boolean!++ """+ The commit that was created when this pull request was merged.+ """+ mergeCommit: Commit++ """+ Detailed information about the current pull request merge state status.+ """+ mergeStateStatus: MergeStateStatus! @preview(toggledBy: "merge-info-preview")++ """+ Whether or not the pull request can be merged based on the existence of merge conflicts.+ """+ mergeable: MergeableState!++ """+ Whether or not the pull request was merged.+ """+ merged: Boolean!++ """+ The date and time that the pull request was merged.+ """+ mergedAt: DateTime++ """+ The actor who merged the pull request.+ """+ mergedBy: Actor++ """+ Identifies the milestone associated with the pull request.+ """+ milestone: Milestone++ """+ Identifies the pull request number.+ """+ number: Int!++ """+ A list of Users that are participating in the Pull Request conversation.+ """+ participants(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserConnection!++ """+ The permalink to the pull request.+ """+ permalink: URI!++ """+ The commit that GitHub automatically generated to test if this pull request+ could be merged. This field will not return a value if the pull request is+ merged, or if the test merge commit is still being generated. See the+ `mergeable` field for more details on the mergeability of the pull request.+ """+ potentialMergeCommit: Commit++ """+ List of project cards associated with this pull request.+ """+ projectCards(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ A list of archived states to filter the cards by+ """+ archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED]++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ProjectCardConnection!++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ A list of reactions grouped by content left on the subject.+ """+ reactionGroups: [ReactionGroup!]++ """+ A list of Reactions left on the Issue.+ """+ reactions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Allows filtering Reactions by emoji.+ """+ content: ReactionContent++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows specifying the order in which reactions are returned.+ """+ orderBy: ReactionOrder+ ): ReactionConnection!++ """+ The repository associated with this node.+ """+ repository: Repository!++ """+ The HTTP path for this pull request.+ """+ resourcePath: URI!++ """+ The HTTP path for reverting this pull request.+ """+ revertResourcePath: URI!++ """+ The HTTP URL for reverting this pull request.+ """+ revertUrl: URI!++ """+ The current status of this pull request with respect to code review.+ """+ reviewDecision: PullRequestReviewDecision++ """+ A list of review requests associated with the pull request.+ """+ reviewRequests(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ReviewRequestConnection++ """+ The list of all review threads for this pull request.+ """+ reviewThreads(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): PullRequestReviewThreadConnection!++ """+ A list of reviews associated with the pull request.+ """+ reviews(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Filter by author of the review.+ """+ author: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ A list of states to filter the reviews.+ """+ states: [PullRequestReviewState!]+ ): PullRequestReviewConnection++ """+ Identifies the state of the pull request.+ """+ state: PullRequestState!++ """+ A list of reviewer suggestions based on commit history and past review comments.+ """+ suggestedReviewers: [SuggestedReviewer]!++ """+ A list of events, comments, commits, etc. associated with the pull request.+ """+ timeline(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows filtering timeline events by a `since` timestamp.+ """+ since: DateTime+ ): PullRequestTimelineConnection!+ @deprecated(+ reason: "`timeline` will be removed Use PullRequest.timelineItems instead. Removal on 2020-10-01 UTC."+ )++ """+ A list of events, comments, commits, etc. associated with the pull request.+ """+ timelineItems(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Filter timeline items by type.+ """+ itemTypes: [PullRequestTimelineItemsItemType!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filter timeline items by a `since` timestamp.+ """+ since: DateTime++ """+ Skips the first _n_ elements in the list.+ """+ skip: Int+ ): PullRequestTimelineItemsConnection!++ """+ Identifies the pull request title.+ """+ title: String!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this pull request.+ """+ url: URI!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Whether or not the viewer can apply suggestion.+ """+ viewerCanApplySuggestion: Boolean!++ """+ Can user react to this subject+ """+ viewerCanReact: Boolean!++ """+ Check if the viewer is able to change their subscription status for the repository.+ """+ viewerCanSubscribe: Boolean!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!++ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!++ """+ Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.+ """+ viewerSubscription: SubscriptionState+}++"""+A file changed in a pull request.+"""+type PullRequestChangedFile {+ """+ The number of additions to the file.+ """+ additions: Int!++ """+ The number of deletions to the file.+ """+ deletions: Int!++ """+ The path of the file.+ """+ path: String!+}++"""+The connection type for PullRequestChangedFile.+"""+type PullRequestChangedFileConnection {+ """+ A list of edges.+ """+ edges: [PullRequestChangedFileEdge]++ """+ A list of nodes.+ """+ nodes: [PullRequestChangedFile]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PullRequestChangedFileEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PullRequestChangedFile+}++"""+Represents a Git commit part of a pull request.+"""+type PullRequestCommit implements Node & UniformResourceLocatable {+ """+ The Git commit object+ """+ commit: Commit!+ id: ID!++ """+ The pull request this commit belongs to+ """+ pullRequest: PullRequest!++ """+ The HTTP path for this pull request commit+ """+ resourcePath: URI!++ """+ The HTTP URL for this pull request commit+ """+ url: URI!+}++"""+Represents a commit comment thread part of a pull request.+"""+type PullRequestCommitCommentThread implements Node & RepositoryNode {+ """+ The comments that exist in this thread.+ """+ comments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): CommitCommentConnection!++ """+ The commit the comments were made on.+ """+ commit: Commit!+ id: ID!++ """+ The file the comments were made on.+ """+ path: String++ """+ The position in the diff for the commit that the comment was made on.+ """+ position: Int++ """+ The pull request this commit comment thread belongs to+ """+ pullRequest: PullRequest!++ """+ The repository associated with this node.+ """+ repository: Repository!+}++"""+The connection type for PullRequestCommit.+"""+type PullRequestCommitConnection {+ """+ A list of edges.+ """+ edges: [PullRequestCommitEdge]++ """+ A list of nodes.+ """+ nodes: [PullRequestCommit]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PullRequestCommitEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PullRequestCommit+}++"""+The connection type for PullRequest.+"""+type PullRequestConnection {+ """+ A list of edges.+ """+ edges: [PullRequestEdge]++ """+ A list of nodes.+ """+ nodes: [PullRequest]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+This aggregates pull requests opened by a user within one repository.+"""+type PullRequestContributionsByRepository {+ """+ The pull request contributions.+ """+ contributions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for contributions returned from the connection.+ """+ orderBy: ContributionOrder = { direction: DESC }+ ): CreatedPullRequestContributionConnection!++ """+ The repository in which the pull requests were opened.+ """+ repository: Repository!+}++"""+An edge in a connection.+"""+type PullRequestEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PullRequest+}++"""+Represents available types of methods to use when merging a pull request.+"""+enum PullRequestMergeMethod {+ """+ Add all commits from the head branch to the base branch with a merge commit.+ """+ MERGE++ """+ Add all commits from the head branch onto the base branch individually.+ """+ REBASE++ """+ Combine all commits from the head branch into a single commit in the base branch.+ """+ SQUASH+}++"""+Ways in which lists of issues can be ordered upon return.+"""+input PullRequestOrder {+ """+ The direction in which to order pull requests by the specified field.+ """+ direction: OrderDirection!++ """+ The field in which to order pull requests by.+ """+ field: PullRequestOrderField!+}++"""+Properties by which pull_requests connections can be ordered.+"""+enum PullRequestOrderField {+ """+ Order pull_requests by creation time+ """+ CREATED_AT++ """+ Order pull_requests by update time+ """+ UPDATED_AT+}++"""+A review object for a given pull request.+"""+type PullRequestReview implements Comment & Deletable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment {+ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the subject of the comment.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ Identifies the pull request review body.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ The body of this review rendered as plain text.+ """+ bodyText: String!++ """+ A list of review comments for the current pull request review.+ """+ comments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): PullRequestReviewCommentConnection!++ """+ Identifies the commit associated with this pull request review.+ """+ commit: Commit++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The actor who edited the comment.+ """+ editor: Actor+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ A list of teams that this review was made on behalf of.+ """+ onBehalfOf(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): TeamConnection!++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ Identifies the pull request associated with this pull request review.+ """+ pullRequest: PullRequest!++ """+ A list of reactions grouped by content left on the subject.+ """+ reactionGroups: [ReactionGroup!]++ """+ A list of Reactions left on the Issue.+ """+ reactions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Allows filtering Reactions by emoji.+ """+ content: ReactionContent++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows specifying the order in which reactions are returned.+ """+ orderBy: ReactionOrder+ ): ReactionConnection!++ """+ The repository associated with this node.+ """+ repository: Repository!++ """+ The HTTP path permalink for this PullRequestReview.+ """+ resourcePath: URI!++ """+ Identifies the current state of the pull request review.+ """+ state: PullRequestReviewState!++ """+ Identifies when the Pull Request Review was submitted+ """+ submittedAt: DateTime++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL permalink for this PullRequestReview.+ """+ url: URI!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Check if the current viewer can delete this object.+ """+ viewerCanDelete: Boolean!++ """+ Can user react to this subject+ """+ viewerCanReact: Boolean!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!++ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!+}++"""+A review comment associated with a given repository pull request.+"""+type PullRequestReviewComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment {+ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the subject of the comment.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ The comment body of this review comment.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ The comment body of this review comment rendered as plain text.+ """+ bodyText: String!++ """+ Identifies the commit associated with the comment.+ """+ commit: Commit++ """+ Identifies when the comment was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The diff hunk to which the comment applies.+ """+ diffHunk: String!++ """+ Identifies when the comment was created in a draft state.+ """+ draftedAt: DateTime!++ """+ The actor who edited the comment.+ """+ editor: Actor+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ Returns whether or not a comment has been minimized.+ """+ isMinimized: Boolean!++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ Returns why the comment was minimized.+ """+ minimizedReason: String++ """+ Identifies the original commit associated with the comment.+ """+ originalCommit: Commit++ """+ The original line index in the diff to which the comment applies.+ """+ originalPosition: Int!++ """+ Identifies when the comment body is outdated+ """+ outdated: Boolean!++ """+ The path to which the comment applies.+ """+ path: String!++ """+ The line index in the diff to which the comment applies.+ """+ position: Int++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ The pull request associated with this review comment.+ """+ pullRequest: PullRequest!++ """+ The pull request review associated with this review comment.+ """+ pullRequestReview: PullRequestReview++ """+ A list of reactions grouped by content left on the subject.+ """+ reactionGroups: [ReactionGroup!]++ """+ A list of Reactions left on the Issue.+ """+ reactions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Allows filtering Reactions by emoji.+ """+ content: ReactionContent++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows specifying the order in which reactions are returned.+ """+ orderBy: ReactionOrder+ ): ReactionConnection!++ """+ The comment this is a reply to.+ """+ replyTo: PullRequestReviewComment++ """+ The repository associated with this node.+ """+ repository: Repository!++ """+ The HTTP path permalink for this review comment.+ """+ resourcePath: URI!++ """+ Identifies the state of the comment.+ """+ state: PullRequestReviewCommentState!++ """+ Identifies when the comment was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL permalink for this review comment.+ """+ url: URI!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Check if the current viewer can delete this object.+ """+ viewerCanDelete: Boolean!++ """+ Check if the current viewer can minimize this object.+ """+ viewerCanMinimize: Boolean!++ """+ Can user react to this subject+ """+ viewerCanReact: Boolean!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!++ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!+}++"""+The connection type for PullRequestReviewComment.+"""+type PullRequestReviewCommentConnection {+ """+ A list of edges.+ """+ edges: [PullRequestReviewCommentEdge]++ """+ A list of nodes.+ """+ nodes: [PullRequestReviewComment]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PullRequestReviewCommentEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PullRequestReviewComment+}++"""+The possible states of a pull request review comment.+"""+enum PullRequestReviewCommentState {+ """+ A comment that is part of a pending review+ """+ PENDING++ """+ A comment that is part of a submitted review+ """+ SUBMITTED+}++"""+The connection type for PullRequestReview.+"""+type PullRequestReviewConnection {+ """+ A list of edges.+ """+ edges: [PullRequestReviewEdge]++ """+ A list of nodes.+ """+ nodes: [PullRequestReview]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+This aggregates pull request reviews made by a user within one repository.+"""+type PullRequestReviewContributionsByRepository {+ """+ The pull request review contributions.+ """+ contributions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for contributions returned from the connection.+ """+ orderBy: ContributionOrder = { direction: DESC }+ ): CreatedPullRequestReviewContributionConnection!++ """+ The repository in which the pull request reviews were made.+ """+ repository: Repository!+}++"""+The review status of a pull request.+"""+enum PullRequestReviewDecision {+ """+ The pull request has received an approving review.+ """+ APPROVED++ """+ Changes have been requested on the pull request.+ """+ CHANGES_REQUESTED++ """+ A review is required before the pull request can be merged.+ """+ REVIEW_REQUIRED+}++"""+An edge in a connection.+"""+type PullRequestReviewEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PullRequestReview+}++"""+The possible events to perform on a pull request review.+"""+enum PullRequestReviewEvent {+ """+ Submit feedback and approve merging these changes.+ """+ APPROVE++ """+ Submit general feedback without explicit approval.+ """+ COMMENT++ """+ Dismiss review so it now longer effects merging.+ """+ DISMISS++ """+ Submit feedback that must be addressed before merging.+ """+ REQUEST_CHANGES+}++"""+The possible states of a pull request review.+"""+enum PullRequestReviewState {+ """+ A review allowing the pull request to merge.+ """+ APPROVED++ """+ A review blocking the pull request from merging.+ """+ CHANGES_REQUESTED++ """+ An informational review.+ """+ COMMENTED++ """+ A review that has been dismissed.+ """+ DISMISSED++ """+ A review that has not yet been submitted.+ """+ PENDING+}++"""+A threaded list of comments for a given pull request.+"""+type PullRequestReviewThread implements Node {+ """+ A list of pull request comments associated with the thread.+ """+ comments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Skips the first _n_ elements in the list.+ """+ skip: Int+ ): PullRequestReviewCommentConnection!++ """+ The side of the diff on which this thread was placed.+ """+ diffSide: DiffSide!+ id: ID!++ """+ Whether this thread has been resolved+ """+ isResolved: Boolean!++ """+ The line in the file to which this thread refers+ """+ line: Int++ """+ The original line in the file to which this thread refers.+ """+ originalLine: Int++ """+ The original start line in the file to which this thread refers (multi-line only).+ """+ originalStartLine: Int++ """+ Identifies the pull request associated with this thread.+ """+ pullRequest: PullRequest!++ """+ Identifies the repository associated with this thread.+ """+ repository: Repository!++ """+ The user who resolved this thread+ """+ resolvedBy: User++ """+ The side of the diff that the first line of the thread starts on (multi-line only)+ """+ startDiffSide: DiffSide++ """+ The start line in the file to which this thread refers (multi-line only)+ """+ startLine: Int++ """+ Whether or not the viewer can resolve this thread+ """+ viewerCanResolve: Boolean!++ """+ Whether or not the viewer can unresolve this thread+ """+ viewerCanUnresolve: Boolean!+}++"""+Review comment threads for a pull request review.+"""+type PullRequestReviewThreadConnection {+ """+ A list of edges.+ """+ edges: [PullRequestReviewThreadEdge]++ """+ A list of nodes.+ """+ nodes: [PullRequestReviewThread]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PullRequestReviewThreadEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PullRequestReviewThread+}++"""+Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits.+"""+type PullRequestRevisionMarker {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The last commit the viewer has seen.+ """+ lastSeenCommit: Commit!++ """+ The pull request to which the marker belongs.+ """+ pullRequest: PullRequest!+}++"""+The possible states of a pull request.+"""+enum PullRequestState {+ """+ A pull request that has been closed without being merged.+ """+ CLOSED++ """+ A pull request that has been closed by being merged.+ """+ MERGED++ """+ A pull request that is still open.+ """+ OPEN+}++"""+The connection type for PullRequestTimelineItem.+"""+type PullRequestTimelineConnection {+ """+ A list of edges.+ """+ edges: [PullRequestTimelineItemEdge]++ """+ A list of nodes.+ """+ nodes: [PullRequestTimelineItem]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An item in an pull request timeline+"""+union PullRequestTimelineItem =+ AssignedEvent+ | BaseRefForcePushedEvent+ | ClosedEvent+ | Commit+ | CommitCommentThread+ | CrossReferencedEvent+ | DemilestonedEvent+ | DeployedEvent+ | DeploymentEnvironmentChangedEvent+ | HeadRefDeletedEvent+ | HeadRefForcePushedEvent+ | HeadRefRestoredEvent+ | IssueComment+ | LabeledEvent+ | LockedEvent+ | MergedEvent+ | MilestonedEvent+ | PullRequestReview+ | PullRequestReviewComment+ | PullRequestReviewThread+ | ReferencedEvent+ | RenamedTitleEvent+ | ReopenedEvent+ | ReviewDismissedEvent+ | ReviewRequestRemovedEvent+ | ReviewRequestedEvent+ | SubscribedEvent+ | UnassignedEvent+ | UnlabeledEvent+ | UnlockedEvent+ | UnsubscribedEvent+ | UserBlockedEvent++"""+An edge in a connection.+"""+type PullRequestTimelineItemEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PullRequestTimelineItem+}++"""+An item in a pull request timeline+"""+union PullRequestTimelineItems =+ AddedToProjectEvent+ | AssignedEvent+ | AutomaticBaseChangeFailedEvent+ | AutomaticBaseChangeSucceededEvent+ | BaseRefChangedEvent+ | BaseRefForcePushedEvent+ | ClosedEvent+ | CommentDeletedEvent+ | ConnectedEvent+ | ConvertToDraftEvent+ | ConvertedNoteToIssueEvent+ | CrossReferencedEvent+ | DemilestonedEvent+ | DeployedEvent+ | DeploymentEnvironmentChangedEvent+ | DisconnectedEvent+ | HeadRefDeletedEvent+ | HeadRefForcePushedEvent+ | HeadRefRestoredEvent+ | IssueComment+ | LabeledEvent+ | LockedEvent+ | MarkedAsDuplicateEvent+ | MentionedEvent+ | MergedEvent+ | MilestonedEvent+ | MovedColumnsInProjectEvent+ | PinnedEvent+ | PullRequestCommit+ | PullRequestCommitCommentThread+ | PullRequestReview+ | PullRequestReviewThread+ | PullRequestRevisionMarker+ | ReadyForReviewEvent+ | ReferencedEvent+ | RemovedFromProjectEvent+ | RenamedTitleEvent+ | ReopenedEvent+ | ReviewDismissedEvent+ | ReviewRequestRemovedEvent+ | ReviewRequestedEvent+ | SubscribedEvent+ | TransferredEvent+ | UnassignedEvent+ | UnlabeledEvent+ | UnlockedEvent+ | UnmarkedAsDuplicateEvent+ | UnpinnedEvent+ | UnsubscribedEvent+ | UserBlockedEvent++"""+The connection type for PullRequestTimelineItems.+"""+type PullRequestTimelineItemsConnection {+ """+ A list of edges.+ """+ edges: [PullRequestTimelineItemsEdge]++ """+ Identifies the count of items after applying `before` and `after` filters.+ """+ filteredCount: Int!++ """+ A list of nodes.+ """+ nodes: [PullRequestTimelineItems]++ """+ Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing.+ """+ pageCount: Int!++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!++ """+ Identifies the date and time when the timeline was last updated.+ """+ updatedAt: DateTime!+}++"""+An edge in a connection.+"""+type PullRequestTimelineItemsEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PullRequestTimelineItems+}++"""+The possible item types found in a timeline.+"""+enum PullRequestTimelineItemsItemType {+ """+ Represents a 'added_to_project' event on a given issue or pull request.+ """+ ADDED_TO_PROJECT_EVENT++ """+ Represents an 'assigned' event on any assignable object.+ """+ ASSIGNED_EVENT++ """+ Represents a 'automatic_base_change_failed' event on a given pull request.+ """+ AUTOMATIC_BASE_CHANGE_FAILED_EVENT++ """+ Represents a 'automatic_base_change_succeeded' event on a given pull request.+ """+ AUTOMATIC_BASE_CHANGE_SUCCEEDED_EVENT++ """+ Represents a 'base_ref_changed' event on a given issue or pull request.+ """+ BASE_REF_CHANGED_EVENT++ """+ Represents a 'base_ref_force_pushed' event on a given pull request.+ """+ BASE_REF_FORCE_PUSHED_EVENT++ """+ Represents a 'closed' event on any `Closable`.+ """+ CLOSED_EVENT++ """+ Represents a 'comment_deleted' event on a given issue or pull request.+ """+ COMMENT_DELETED_EVENT++ """+ Represents a 'connected' event on a given issue or pull request.+ """+ CONNECTED_EVENT++ """+ Represents a 'converted_note_to_issue' event on a given issue or pull request.+ """+ CONVERTED_NOTE_TO_ISSUE_EVENT++ """+ Represents a 'convert_to_draft' event on a given pull request.+ """+ CONVERT_TO_DRAFT_EVENT++ """+ Represents a mention made by one issue or pull request to another.+ """+ CROSS_REFERENCED_EVENT++ """+ Represents a 'demilestoned' event on a given issue or pull request.+ """+ DEMILESTONED_EVENT++ """+ Represents a 'deployed' event on a given pull request.+ """+ DEPLOYED_EVENT++ """+ Represents a 'deployment_environment_changed' event on a given pull request.+ """+ DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT++ """+ Represents a 'disconnected' event on a given issue or pull request.+ """+ DISCONNECTED_EVENT++ """+ Represents a 'head_ref_deleted' event on a given pull request.+ """+ HEAD_REF_DELETED_EVENT++ """+ Represents a 'head_ref_force_pushed' event on a given pull request.+ """+ HEAD_REF_FORCE_PUSHED_EVENT++ """+ Represents a 'head_ref_restored' event on a given pull request.+ """+ HEAD_REF_RESTORED_EVENT++ """+ Represents a comment on an Issue.+ """+ ISSUE_COMMENT++ """+ Represents a 'labeled' event on a given issue or pull request.+ """+ LABELED_EVENT++ """+ Represents a 'locked' event on a given issue or pull request.+ """+ LOCKED_EVENT++ """+ Represents a 'marked_as_duplicate' event on a given issue or pull request.+ """+ MARKED_AS_DUPLICATE_EVENT++ """+ Represents a 'mentioned' event on a given issue or pull request.+ """+ MENTIONED_EVENT++ """+ Represents a 'merged' event on a given pull request.+ """+ MERGED_EVENT++ """+ Represents a 'milestoned' event on a given issue or pull request.+ """+ MILESTONED_EVENT++ """+ Represents a 'moved_columns_in_project' event on a given issue or pull request.+ """+ MOVED_COLUMNS_IN_PROJECT_EVENT++ """+ Represents a 'pinned' event on a given issue or pull request.+ """+ PINNED_EVENT++ """+ Represents a Git commit part of a pull request.+ """+ PULL_REQUEST_COMMIT++ """+ Represents a commit comment thread part of a pull request.+ """+ PULL_REQUEST_COMMIT_COMMENT_THREAD++ """+ A review object for a given pull request.+ """+ PULL_REQUEST_REVIEW++ """+ A threaded list of comments for a given pull request.+ """+ PULL_REQUEST_REVIEW_THREAD++ """+ Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits.+ """+ PULL_REQUEST_REVISION_MARKER++ """+ Represents a 'ready_for_review' event on a given pull request.+ """+ READY_FOR_REVIEW_EVENT++ """+ Represents a 'referenced' event on a given `ReferencedSubject`.+ """+ REFERENCED_EVENT++ """+ Represents a 'removed_from_project' event on a given issue or pull request.+ """+ REMOVED_FROM_PROJECT_EVENT++ """+ Represents a 'renamed' event on a given issue or pull request+ """+ RENAMED_TITLE_EVENT++ """+ Represents a 'reopened' event on any `Closable`.+ """+ REOPENED_EVENT++ """+ Represents a 'review_dismissed' event on a given issue or pull request.+ """+ REVIEW_DISMISSED_EVENT++ """+ Represents an 'review_requested' event on a given pull request.+ """+ REVIEW_REQUESTED_EVENT++ """+ Represents an 'review_request_removed' event on a given pull request.+ """+ REVIEW_REQUEST_REMOVED_EVENT++ """+ Represents a 'subscribed' event on a given `Subscribable`.+ """+ SUBSCRIBED_EVENT++ """+ Represents a 'transferred' event on a given issue or pull request.+ """+ TRANSFERRED_EVENT++ """+ Represents an 'unassigned' event on any assignable object.+ """+ UNASSIGNED_EVENT++ """+ Represents an 'unlabeled' event on a given issue or pull request.+ """+ UNLABELED_EVENT++ """+ Represents an 'unlocked' event on a given issue or pull request.+ """+ UNLOCKED_EVENT++ """+ Represents an 'unmarked_as_duplicate' event on a given issue or pull request.+ """+ UNMARKED_AS_DUPLICATE_EVENT++ """+ Represents an 'unpinned' event on a given issue or pull request.+ """+ UNPINNED_EVENT++ """+ Represents an 'unsubscribed' event on a given `Subscribable`.+ """+ UNSUBSCRIBED_EVENT++ """+ Represents a 'user_blocked' event on a given user.+ """+ USER_BLOCKED_EVENT+}++"""+The possible target states when updating a pull request.+"""+enum PullRequestUpdateState {+ """+ A pull request that has been closed without being merged.+ """+ CLOSED++ """+ A pull request that is still open.+ """+ OPEN+}++"""+A Git push.+"""+type Push implements Node @preview(toggledBy: "antiope-preview") {+ id: ID!++ """+ The SHA after the push+ """+ nextSha: GitObjectID++ """+ The permalink for this push.+ """+ permalink: URI!++ """+ The SHA before the push+ """+ previousSha: GitObjectID++ """+ The user who pushed+ """+ pusher: User!++ """+ The repository that was pushed to+ """+ repository: Repository!+}++"""+A team, user or app who has the ability to push to a protected branch.+"""+type PushAllowance implements Node {+ """+ The actor that can push.+ """+ actor: PushAllowanceActor++ """+ Identifies the branch protection rule associated with the allowed user or team.+ """+ branchProtectionRule: BranchProtectionRule+ id: ID!+}++"""+Types that can be an actor.+"""+union PushAllowanceActor = App | Team | User++"""+The connection type for PushAllowance.+"""+type PushAllowanceConnection {+ """+ A list of edges.+ """+ edges: [PushAllowanceEdge]++ """+ A list of nodes.+ """+ nodes: [PushAllowance]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type PushAllowanceEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: PushAllowance+}++"""+The query root of GitHub's GraphQL interface.+"""+type Query {+ """+ Look up a code of conduct by its key+ """+ codeOfConduct(+ """+ The code of conduct's key+ """+ key: String!+ ): CodeOfConduct++ """+ Look up a code of conduct by its key+ """+ codesOfConduct: [CodeOfConduct]++ """+ Look up an enterprise by URL slug.+ """+ enterprise(+ """+ The enterprise invitation token.+ """+ invitationToken: String++ """+ The enterprise URL slug.+ """+ slug: String!+ ): Enterprise++ """+ Look up a pending enterprise administrator invitation by invitee, enterprise and role.+ """+ enterpriseAdministratorInvitation(+ """+ The slug of the enterprise the user was invited to join.+ """+ enterpriseSlug: String!++ """+ The role for the business member invitation.+ """+ role: EnterpriseAdministratorRole!++ """+ The login of the user invited to join the business.+ """+ userLogin: String!+ ): EnterpriseAdministratorInvitation++ """+ Look up a pending enterprise administrator invitation by invitation token.+ """+ enterpriseAdministratorInvitationByToken(+ """+ The invitation token sent with the invitation email.+ """+ invitationToken: String!+ ): EnterpriseAdministratorInvitation++ """+ Look up an open source license by its key+ """+ license(+ """+ The license's downcased SPDX ID+ """+ key: String!+ ): License++ """+ Return a list of known open source licenses+ """+ licenses: [License]!++ """+ Get alphabetically sorted list of Marketplace categories+ """+ marketplaceCategories(+ """+ Exclude categories with no listings.+ """+ excludeEmpty: Boolean++ """+ Returns top level categories only, excluding any subcategories.+ """+ excludeSubcategories: Boolean++ """+ Return only the specified categories.+ """+ includeCategories: [String!]+ ): [MarketplaceCategory!]!++ """+ Look up a Marketplace category by its slug.+ """+ marketplaceCategory(+ """+ The URL slug of the category.+ """+ slug: String!++ """+ Also check topic aliases for the category slug+ """+ useTopicAliases: Boolean+ ): MarketplaceCategory++ """+ Look up a single Marketplace listing+ """+ marketplaceListing(+ """+ Select the listing that matches this slug. It's the short name of the listing used in its URL.+ """+ slug: String!+ ): MarketplaceListing++ """+ Look up Marketplace listings+ """+ marketplaceListings(+ """+ Select listings that can be administered by the specified user.+ """+ adminId: ID++ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Select listings visible to the viewer even if they are not approved. If omitted or+ false, only approved listings will be returned.+ """+ allStates: Boolean++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Select only listings with the given category.+ """+ categorySlug: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Select listings for products owned by the specified organization.+ """+ organizationId: ID++ """+ Select only listings where the primary category matches the given category slug.+ """+ primaryCategoryOnly: Boolean = false++ """+ Select the listings with these slugs, if they are visible to the viewer.+ """+ slugs: [String]++ """+ Also check topic aliases for the category slug+ """+ useTopicAliases: Boolean++ """+ Select listings to which user has admin access. If omitted, listings visible to the+ viewer are returned.+ """+ viewerCanAdmin: Boolean++ """+ Select only listings that offer a free trial.+ """+ withFreeTrialsOnly: Boolean = false+ ): MarketplaceListingConnection!++ """+ Return information about the GitHub instance+ """+ meta: GitHubMetadata!++ """+ Fetches an object given its ID.+ """+ node(+ """+ ID of the object.+ """+ id: ID!+ ): Node++ """+ Lookup nodes by a list of IDs.+ """+ nodes(+ """+ The list of node IDs.+ """+ ids: [ID!]!+ ): [Node]!++ """+ Lookup a organization by login.+ """+ organization(+ """+ The organization's login.+ """+ login: String!+ ): Organization++ """+ The client's rate limit information.+ """+ rateLimit(+ """+ If true, calculate the cost for the query without evaluating it+ """+ dryRun: Boolean = false+ ): RateLimit++ """+ Hack to workaround https://github.com/facebook/relay/issues/112 re-exposing the root query object+ """+ relay: Query!++ """+ Lookup a given repository by the owner and repository name.+ """+ repository(+ """+ The name of the repository+ """+ name: String!++ """+ The login field of a user or organization+ """+ owner: String!+ ): Repository++ """+ Lookup a repository owner (ie. either a User or an Organization) by login.+ """+ repositoryOwner(+ """+ The username to lookup the owner by.+ """+ login: String!+ ): RepositoryOwner++ """+ Lookup resource by a URL.+ """+ resource(+ """+ The URL.+ """+ url: URI!+ ): UniformResourceLocatable++ """+ Perform a search across resources.+ """+ search(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ The search string to look for.+ """+ query: String!++ """+ The types of search items to search within.+ """+ type: SearchType!+ ): SearchResultItemConnection!++ """+ GitHub Security Advisories+ """+ securityAdvisories(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Filter advisories by identifier, e.g. GHSA or CVE.+ """+ identifier: SecurityAdvisoryIdentifierFilter++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for the returned topics.+ """+ orderBy: SecurityAdvisoryOrder = { field: UPDATED_AT, direction: DESC }++ """+ Filter advisories to those published since a time in the past.+ """+ publishedSince: DateTime++ """+ Filter advisories to those updated since a time in the past.+ """+ updatedSince: DateTime+ ): SecurityAdvisoryConnection!++ """+ Fetch a Security Advisory by its GHSA ID+ """+ securityAdvisory(+ """+ GitHub Security Advisory ID.+ """+ ghsaId: String!+ ): SecurityAdvisory++ """+ Software Vulnerabilities documented by GitHub Security Advisories+ """+ securityVulnerabilities(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ An ecosystem to filter vulnerabilities by.+ """+ ecosystem: SecurityAdvisoryEcosystem++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for the returned topics.+ """+ orderBy: SecurityVulnerabilityOrder = { field: UPDATED_AT, direction: DESC }++ """+ A package name to filter vulnerabilities by.+ """+ package: String++ """+ A list of severities to filter vulnerabilities by.+ """+ severities: [SecurityAdvisorySeverity!]+ ): SecurityVulnerabilityConnection!++ """+ Look up a single Sponsors Listing+ """+ sponsorsListing(+ """+ Select the Sponsors listing which matches this slug+ """+ slug: String!+ ): SponsorsListing+ @deprecated(+ reason: "`Query.sponsorsListing` will be removed. Use `Sponsorable.sponsorsListing` instead. Removal on 2020-04-01 UTC."+ )++ """+ Look up a topic by name.+ """+ topic(+ """+ The topic's name.+ """+ name: String!+ ): Topic++ """+ Lookup a user by login.+ """+ user(+ """+ The user's login.+ """+ login: String!+ ): User++ """+ The currently authenticated user.+ """+ viewer: User!+}++"""+Represents the client's rate limit.+"""+type RateLimit {+ """+ The point cost for the current query counting against the rate limit.+ """+ cost: Int!++ """+ The maximum number of points the client is permitted to consume in a 60 minute window.+ """+ limit: Int!++ """+ The maximum number of nodes this query may return+ """+ nodeCount: Int!++ """+ The number of points remaining in the current rate limit window.+ """+ remaining: Int!++ """+ The time at which the current rate limit window resets in UTC epoch seconds.+ """+ resetAt: DateTime!++ """+ The number of points used in the current rate limit window.+ """+ used: Int!+}++"""+Represents a subject that can be reacted on.+"""+interface Reactable {+ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ A list of reactions grouped by content left on the subject.+ """+ reactionGroups: [ReactionGroup!]++ """+ A list of Reactions left on the Issue.+ """+ reactions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Allows filtering Reactions by emoji.+ """+ content: ReactionContent++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows specifying the order in which reactions are returned.+ """+ orderBy: ReactionOrder+ ): ReactionConnection!++ """+ Can user react to this subject+ """+ viewerCanReact: Boolean!+}++"""+The connection type for User.+"""+type ReactingUserConnection {+ """+ A list of edges.+ """+ edges: [ReactingUserEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Represents a user that's made a reaction.+"""+type ReactingUserEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!+ node: User!++ """+ The moment when the user made the reaction.+ """+ reactedAt: DateTime!+}++"""+An emoji reaction to a particular piece of content.+"""+type Reaction implements Node {+ """+ Identifies the emoji reaction.+ """+ content: ReactionContent!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ The reactable piece of content+ """+ reactable: Reactable!++ """+ Identifies the user who created this reaction.+ """+ user: User+}++"""+A list of reactions that have been left on the subject.+"""+type ReactionConnection {+ """+ A list of edges.+ """+ edges: [ReactionEdge]++ """+ A list of nodes.+ """+ nodes: [Reaction]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!++ """+ Whether or not the authenticated user has left a reaction on the subject.+ """+ viewerHasReacted: Boolean!+}++"""+Emojis that can be attached to Issues, Pull Requests and Comments.+"""+enum ReactionContent {+ """+ Represents the `:confused:` emoji.+ """+ CONFUSED++ """+ Represents the `:eyes:` emoji.+ """+ EYES++ """+ Represents the `:heart:` emoji.+ """+ HEART++ """+ Represents the `:hooray:` emoji.+ """+ HOORAY++ """+ Represents the `:laugh:` emoji.+ """+ LAUGH++ """+ Represents the `:rocket:` emoji.+ """+ ROCKET++ """+ Represents the `:-1:` emoji.+ """+ THUMBS_DOWN++ """+ Represents the `:+1:` emoji.+ """+ THUMBS_UP+}++"""+An edge in a connection.+"""+type ReactionEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Reaction+}++"""+A group of emoji reactions to a particular piece of content.+"""+type ReactionGroup {+ """+ Identifies the emoji reaction.+ """+ content: ReactionContent!++ """+ Identifies when the reaction was created.+ """+ createdAt: DateTime++ """+ The subject that was reacted to.+ """+ subject: Reactable!++ """+ Users who have reacted to the reaction subject with the emotion represented by this reaction group+ """+ users(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): ReactingUserConnection!++ """+ Whether or not the authenticated user has left a reaction on the subject.+ """+ viewerHasReacted: Boolean!+}++"""+Ways in which lists of reactions can be ordered upon return.+"""+input ReactionOrder {+ """+ The direction in which to order reactions by the specified field.+ """+ direction: OrderDirection!++ """+ The field in which to order reactions by.+ """+ field: ReactionOrderField!+}++"""+A list of fields that reactions can be ordered by.+"""+enum ReactionOrderField {+ """+ Allows ordering a list of reactions by when they were created.+ """+ CREATED_AT+}++"""+Represents a 'ready_for_review' event on a given pull request.+"""+type ReadyForReviewEvent implements Node & UniformResourceLocatable {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!++ """+ The HTTP path for this ready for review event.+ """+ resourcePath: URI!++ """+ The HTTP URL for this ready for review event.+ """+ url: URI!+}++"""+Represents a Git reference.+"""+type Ref implements Node {+ """+ A list of pull requests with this ref as the head ref.+ """+ associatedPullRequests(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ The base ref name to filter the pull requests by.+ """+ baseRefName: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ The head ref name to filter the pull requests by.+ """+ headRefName: String++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pull requests returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the pull requests by.+ """+ states: [PullRequestState!]+ ): PullRequestConnection!+ id: ID!++ """+ The ref name.+ """+ name: String!++ """+ The ref's prefix, such as `refs/heads/` or `refs/tags/`.+ """+ prefix: String!++ """+ The repository the ref belongs to.+ """+ repository: Repository!++ """+ The object the ref points to. Returns null when object does not exist.+ """+ target: GitObject+}++"""+The connection type for Ref.+"""+type RefConnection {+ """+ A list of edges.+ """+ edges: [RefEdge]++ """+ A list of nodes.+ """+ nodes: [Ref]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type RefEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Ref+}++"""+Ways in which lists of git refs can be ordered upon return.+"""+input RefOrder {+ """+ The direction in which to order refs by the specified field.+ """+ direction: OrderDirection!++ """+ The field in which to order refs by.+ """+ field: RefOrderField!+}++"""+Properties by which ref connections can be ordered.+"""+enum RefOrderField {+ """+ Order refs by their alphanumeric name+ """+ ALPHABETICAL++ """+ Order refs by underlying commit date if the ref prefix is refs/tags/+ """+ TAG_COMMIT_DATE+}++"""+A ref update+"""+input RefUpdate @preview(toggledBy: "update-refs-preview") {+ """+ The value this ref should be updated to.+ """+ afterOid: GitObjectID!++ """+ The value this ref needs to point to before the update.+ """+ beforeOid: GitObjectID++ """+ Force a non fast-forward update.+ """+ force: Boolean = false++ """+ The fully qualified name of the ref to be update. For example `refs/heads/branch-name`+ """+ name: GitRefname!+}++"""+Represents a 'referenced' event on a given `ReferencedSubject`.+"""+type ReferencedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the commit associated with the 'referenced' event.+ """+ commit: Commit++ """+ Identifies the repository associated with the 'referenced' event.+ """+ commitRepository: Repository!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Reference originated in a different repository.+ """+ isCrossRepository: Boolean!++ """+ Checks if the commit message itself references the subject. Can be false in the case of a commit comment reference.+ """+ isDirectReference: Boolean!++ """+ Object referenced by event.+ """+ subject: ReferencedSubject!+}++"""+Any referencable object+"""+union ReferencedSubject = Issue | PullRequest++"""+Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes+"""+input RegenerateEnterpriseIdentityProviderRecoveryCodesInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set an identity provider.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])+}++"""+Autogenerated return type of RegenerateEnterpriseIdentityProviderRecoveryCodes+"""+type RegenerateEnterpriseIdentityProviderRecoveryCodesPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The identity provider for the enterprise.+ """+ identityProvider: EnterpriseIdentityProvider+}++"""+A release contains the content for a release.+"""+type Release implements Node & UniformResourceLocatable {+ """+ The author of the release+ """+ author: User++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The description of the release.+ """+ description: String++ """+ The description of this release rendered to HTML.+ """+ descriptionHTML: HTML+ id: ID!++ """+ Whether or not the release is a draft+ """+ isDraft: Boolean!++ """+ Whether or not the release is a prerelease+ """+ isPrerelease: Boolean!++ """+ The title of the release.+ """+ name: String++ """+ Identifies the date and time when the release was created.+ """+ publishedAt: DateTime++ """+ List of releases assets which are dependent on this release.+ """+ releaseAssets(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ A list of names to filter the assets by.+ """+ name: String+ ): ReleaseAssetConnection!++ """+ The HTTP path for this issue+ """+ resourcePath: URI!++ """+ A description of the release, rendered to HTML without any links in it.+ """+ shortDescriptionHTML(+ """+ How many characters to return.+ """+ limit: Int = 200+ ): HTML++ """+ The Git tag the release points to+ """+ tag: Ref++ """+ The name of the release's Git tag+ """+ tagName: String!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this issue+ """+ url: URI!+}++"""+A release asset contains the content for a release asset.+"""+type ReleaseAsset implements Node {+ """+ The asset's content-type+ """+ contentType: String!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The number of times this asset was downloaded+ """+ downloadCount: Int!++ """+ Identifies the URL where you can download the release asset via the browser.+ """+ downloadUrl: URI!+ id: ID!++ """+ Identifies the title of the release asset.+ """+ name: String!++ """+ Release that the asset is associated with+ """+ release: Release++ """+ The size (in bytes) of the asset+ """+ size: Int!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The user that performed the upload+ """+ uploadedBy: User!++ """+ Identifies the URL of the release asset.+ """+ url: URI!+}++"""+The connection type for ReleaseAsset.+"""+type ReleaseAssetConnection {+ """+ A list of edges.+ """+ edges: [ReleaseAssetEdge]++ """+ A list of nodes.+ """+ nodes: [ReleaseAsset]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type ReleaseAssetEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: ReleaseAsset+}++"""+The connection type for Release.+"""+type ReleaseConnection {+ """+ A list of edges.+ """+ edges: [ReleaseEdge]++ """+ A list of nodes.+ """+ nodes: [Release]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type ReleaseEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Release+}++"""+Ways in which lists of releases can be ordered upon return.+"""+input ReleaseOrder {+ """+ The direction in which to order releases by the specified field.+ """+ direction: OrderDirection!++ """+ The field in which to order releases by.+ """+ field: ReleaseOrderField!+}++"""+Properties by which release connections can be ordered.+"""+enum ReleaseOrderField {+ """+ Order releases by creation time+ """+ CREATED_AT++ """+ Order releases alphabetically by name+ """+ NAME+}++"""+Autogenerated input type of RemoveAssigneesFromAssignable+"""+input RemoveAssigneesFromAssignableInput {+ """+ The id of the assignable object to remove assignees from.+ """+ assignableId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "Assignable"+ )++ """+ The id of users to remove as assignees.+ """+ assigneeIds: [ID!]! @possibleTypes(concreteTypes: ["User"])++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated return type of RemoveAssigneesFromAssignable+"""+type RemoveAssigneesFromAssignablePayload {+ """+ The item that was unassigned.+ """+ assignable: Assignable++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of RemoveEnterpriseAdmin+"""+input RemoveEnterpriseAdminInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Enterprise ID from which to remove the administrator.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The login of the user to remove as an administrator.+ """+ login: String!+}++"""+Autogenerated return type of RemoveEnterpriseAdmin+"""+type RemoveEnterpriseAdminPayload {+ """+ The user who was removed as an administrator.+ """+ admin: User++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated enterprise.+ """+ enterprise: Enterprise++ """+ A message confirming the result of removing an administrator.+ """+ message: String++ """+ The viewer performing the mutation.+ """+ viewer: User+}++"""+Autogenerated input type of RemoveEnterpriseIdentityProvider+"""+input RemoveEnterpriseIdentityProviderInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise from which to remove the identity provider.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])+}++"""+Autogenerated return type of RemoveEnterpriseIdentityProvider+"""+type RemoveEnterpriseIdentityProviderPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The identity provider that was removed from the enterprise.+ """+ identityProvider: EnterpriseIdentityProvider+}++"""+Autogenerated input type of RemoveEnterpriseOrganization+"""+input RemoveEnterpriseOrganizationInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise from which the organization should be removed.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The ID of the organization to remove from the enterprise.+ """+ organizationId: ID! @possibleTypes(concreteTypes: ["Organization"])+}++"""+Autogenerated return type of RemoveEnterpriseOrganization+"""+type RemoveEnterpriseOrganizationPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated enterprise.+ """+ enterprise: Enterprise++ """+ The organization that was removed from the enterprise.+ """+ organization: Organization++ """+ The viewer performing the mutation.+ """+ viewer: User+}++"""+Autogenerated input type of RemoveLabelsFromLabelable+"""+input RemoveLabelsFromLabelableInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ids of labels to remove.+ """+ labelIds: [ID!]! @possibleTypes(concreteTypes: ["Label"])++ """+ The id of the Labelable to remove labels from.+ """+ labelableId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "Labelable"+ )+}++"""+Autogenerated return type of RemoveLabelsFromLabelable+"""+type RemoveLabelsFromLabelablePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Labelable the labels were removed from.+ """+ labelable: Labelable+}++"""+Autogenerated input type of RemoveOutsideCollaborator+"""+input RemoveOutsideCollaboratorInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the organization to remove the outside collaborator from.+ """+ organizationId: ID! @possibleTypes(concreteTypes: ["Organization"])++ """+ The ID of the outside collaborator to remove.+ """+ userId: ID! @possibleTypes(concreteTypes: ["User"])+}++"""+Autogenerated return type of RemoveOutsideCollaborator+"""+type RemoveOutsideCollaboratorPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The user that was removed as an outside collaborator.+ """+ removedUser: User+}++"""+Autogenerated input type of RemoveReaction+"""+input RemoveReactionInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The name of the emoji reaction to remove.+ """+ content: ReactionContent!++ """+ The Node ID of the subject to modify.+ """+ subjectId: ID!+ @possibleTypes(+ concreteTypes: [+ "CommitComment"+ "Issue"+ "IssueComment"+ "PullRequest"+ "PullRequestReview"+ "PullRequestReviewComment"+ "TeamDiscussion"+ "TeamDiscussionComment"+ ]+ abstractType: "Reactable"+ )+}++"""+Autogenerated return type of RemoveReaction+"""+type RemoveReactionPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The reaction object.+ """+ reaction: Reaction++ """+ The reactable subject.+ """+ subject: Reactable+}++"""+Autogenerated input type of RemoveStar+"""+input RemoveStarInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Starrable ID to unstar.+ """+ starrableId: ID!+ @possibleTypes(+ concreteTypes: ["Gist", "Repository", "Topic"]+ abstractType: "Starrable"+ )+}++"""+Autogenerated return type of RemoveStar+"""+type RemoveStarPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The starrable.+ """+ starrable: Starrable+}++"""+Represents a 'removed_from_project' event on a given issue or pull request.+"""+type RemovedFromProjectEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ Project referenced by event.+ """+ project: Project @preview(toggledBy: "starfox-preview")++ """+ Column name referenced by this project event.+ """+ projectColumnName: String! @preview(toggledBy: "starfox-preview")+}++"""+Represents a 'renamed' event on a given issue or pull request+"""+type RenamedTitleEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the current title of the issue or pull request.+ """+ currentTitle: String!+ id: ID!++ """+ Identifies the previous title of the issue or pull request.+ """+ previousTitle: String!++ """+ Subject that was renamed.+ """+ subject: RenamedTitleSubject!+}++"""+An object which has a renamable title+"""+union RenamedTitleSubject = Issue | PullRequest++"""+Autogenerated input type of ReopenIssue+"""+input ReopenIssueInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ ID of the issue to be opened.+ """+ issueId: ID! @possibleTypes(concreteTypes: ["Issue"])+}++"""+Autogenerated return type of ReopenIssue+"""+type ReopenIssuePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The issue that was opened.+ """+ issue: Issue+}++"""+Autogenerated input type of ReopenPullRequest+"""+input ReopenPullRequestInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ ID of the pull request to be reopened.+ """+ pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"])+}++"""+Autogenerated return type of ReopenPullRequest+"""+type ReopenPullRequestPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The pull request that was reopened.+ """+ pullRequest: PullRequest+}++"""+Represents a 'reopened' event on any `Closable`.+"""+type ReopenedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Object that was reopened.+ """+ closable: Closable!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!+}++"""+Audit log entry for a repo.access event.+"""+type RepoAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI++ """+ The visibility of the repository+ """+ visibility: RepoAccessAuditEntryVisibility+}++"""+The privacy of a repository+"""+enum RepoAccessAuditEntryVisibility {+ """+ The repository is visible only to users in the same business.+ """+ INTERNAL++ """+ The repository is visible only to those with explicit access.+ """+ PRIVATE++ """+ The repository is visible to everyone.+ """+ PUBLIC+}++"""+Audit log entry for a repo.add_member event.+"""+type RepoAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI++ """+ The visibility of the repository+ """+ visibility: RepoAddMemberAuditEntryVisibility+}++"""+The privacy of a repository+"""+enum RepoAddMemberAuditEntryVisibility {+ """+ The repository is visible only to users in the same business.+ """+ INTERNAL++ """+ The repository is visible only to those with explicit access.+ """+ PRIVATE++ """+ The repository is visible to everyone.+ """+ PUBLIC+}++"""+Audit log entry for a repo.add_topic event.+"""+type RepoAddTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The name of the topic added to the repository+ """+ topic: Topic++ """+ The name of the topic added to the repository+ """+ topicName: String++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.archived event.+"""+type RepoArchivedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI++ """+ The visibility of the repository+ """+ visibility: RepoArchivedAuditEntryVisibility+}++"""+The privacy of a repository+"""+enum RepoArchivedAuditEntryVisibility {+ """+ The repository is visible only to users in the same business.+ """+ INTERNAL++ """+ The repository is visible only to those with explicit access.+ """+ PRIVATE++ """+ The repository is visible to everyone.+ """+ PUBLIC+}++"""+Audit log entry for a repo.change_merge_setting event.+"""+type RepoChangeMergeSettingAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ Whether the change was to enable (true) or disable (false) the merge type+ """+ isEnabled: Boolean++ """+ The merge method affected by the change+ """+ mergeType: RepoChangeMergeSettingAuditEntryMergeType++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The merge options available for pull requests to this repository.+"""+enum RepoChangeMergeSettingAuditEntryMergeType {+ """+ The pull request is added to the base branch in a merge commit.+ """+ MERGE++ """+ Commits from the pull request are added onto the base branch individually without a merge commit.+ """+ REBASE++ """+ The pull request's commits are squashed into a single commit before they are merged to the base branch.+ """+ SQUASH+}++"""+Audit log entry for a repo.config.disable_anonymous_git_access event.+"""+type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.config.disable_collaborators_only event.+"""+type RepoConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.config.disable_contributors_only event.+"""+type RepoConfigDisableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.config.disable_sockpuppet_disallowed event.+"""+type RepoConfigDisableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.config.enable_anonymous_git_access event.+"""+type RepoConfigEnableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.config.enable_collaborators_only event.+"""+type RepoConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.config.enable_contributors_only event.+"""+type RepoConfigEnableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.config.enable_sockpuppet_disallowed event.+"""+type RepoConfigEnableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.config.lock_anonymous_git_access event.+"""+type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.config.unlock_anonymous_git_access event.+"""+type RepoConfigUnlockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repo.create event.+"""+type RepoCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The name of the parent repository for this forked repository.+ """+ forkParentName: String++ """+ The name of the root repository for this netork.+ """+ forkSourceName: String+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI++ """+ The visibility of the repository+ """+ visibility: RepoCreateAuditEntryVisibility+}++"""+The privacy of a repository+"""+enum RepoCreateAuditEntryVisibility {+ """+ The repository is visible only to users in the same business.+ """+ INTERNAL++ """+ The repository is visible only to those with explicit access.+ """+ PRIVATE++ """+ The repository is visible to everyone.+ """+ PUBLIC+}++"""+Audit log entry for a repo.destroy event.+"""+type RepoDestroyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI++ """+ The visibility of the repository+ """+ visibility: RepoDestroyAuditEntryVisibility+}++"""+The privacy of a repository+"""+enum RepoDestroyAuditEntryVisibility {+ """+ The repository is visible only to users in the same business.+ """+ INTERNAL++ """+ The repository is visible only to those with explicit access.+ """+ PRIVATE++ """+ The repository is visible to everyone.+ """+ PUBLIC+}++"""+Audit log entry for a repo.remove_member event.+"""+type RepoRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI++ """+ The visibility of the repository+ """+ visibility: RepoRemoveMemberAuditEntryVisibility+}++"""+The privacy of a repository+"""+enum RepoRemoveMemberAuditEntryVisibility {+ """+ The repository is visible only to users in the same business.+ """+ INTERNAL++ """+ The repository is visible only to those with explicit access.+ """+ PRIVATE++ """+ The repository is visible to everyone.+ """+ PUBLIC+}++"""+Audit log entry for a repo.remove_topic event.+"""+type RepoRemoveTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The name of the topic added to the repository+ """+ topic: Topic++ """+ The name of the topic added to the repository+ """+ topicName: String++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The reasons a piece of content can be reported or minimized.+"""+enum ReportedContentClassifiers {+ """+ An abusive or harassing piece of content+ """+ ABUSE++ """+ A duplicated piece of content+ """+ DUPLICATE++ """+ An irrelevant piece of content+ """+ OFF_TOPIC++ """+ An outdated piece of content+ """+ OUTDATED++ """+ The content has been resolved+ """+ RESOLVED++ """+ A spammy piece of content+ """+ SPAM+}++"""+A repository contains the content for a project.+"""+type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & Starrable & Subscribable & UniformResourceLocatable {+ """+ A list of users that can be assigned to issues in this repository.+ """+ assignableUsers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filters users with query on user name and login+ """+ query: String+ ): UserConnection!++ """+ A list of branch protection rules for this repository.+ """+ branchProtectionRules(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): BranchProtectionRuleConnection!++ """+ Returns the code of conduct for this repository+ """+ codeOfConduct: CodeOfConduct++ """+ A list of collaborators associated with the repository.+ """+ collaborators(+ """+ Collaborators affiliation level with a repository.+ """+ affiliation: CollaboratorAffiliation++ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filters users with query on user name and login+ """+ query: String+ ): RepositoryCollaboratorConnection++ """+ A list of commit comments associated with the repository.+ """+ commitComments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): CommitCommentConnection!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The Ref associated with the repository's default branch.+ """+ defaultBranchRef: Ref++ """+ Whether or not branches are automatically deleted when merged in this repository.+ """+ deleteBranchOnMerge: Boolean!++ """+ A list of dependency manifests contained in the repository+ """+ dependencyGraphManifests(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Cursor to paginate dependencies+ """+ dependenciesAfter: String++ """+ Number of dependencies to fetch+ """+ dependenciesFirst: Int++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Flag to scope to only manifests with dependencies+ """+ withDependencies: Boolean+ ): DependencyGraphManifestConnection @preview(toggledBy: "hawkgirl-preview")++ """+ A list of deploy keys that are on this repository.+ """+ deployKeys(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): DeployKeyConnection!++ """+ Deployments associated with the repository+ """+ deployments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Environments to list deployments for+ """+ environments: [String!]++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for deployments returned from the connection.+ """+ orderBy: DeploymentOrder = { field: CREATED_AT, direction: ASC }+ ): DeploymentConnection!++ """+ The description of the repository.+ """+ description: String++ """+ The description of the repository rendered to HTML.+ """+ descriptionHTML: HTML!++ """+ The number of kilobytes this repository occupies on disk.+ """+ diskUsage: Int++ """+ Returns how many forks there are of this repository in the whole network.+ """+ forkCount: Int!++ """+ A list of direct forked repositories.+ """+ forks(+ """+ Array of viewer's affiliation options for repositories returned from the+ connection. For example, OWNER will include only repositories that the+ current viewer owns.+ """+ affiliations: [RepositoryAffiliation]++ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ If non-null, filters repositories according to whether they have been locked+ """+ isLocked: Boolean++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for repositories returned from the connection+ """+ orderBy: RepositoryOrder++ """+ Array of owner's affiliation options for repositories returned from the+ connection. For example, OWNER will include only repositories that the+ organization or user being viewed owns.+ """+ ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR]++ """+ If non-null, filters repositories according to privacy+ """+ privacy: RepositoryPrivacy+ ): RepositoryConnection!++ """+ The funding links for this repository+ """+ fundingLinks: [FundingLink!]!++ """+ Indicates if the repository has issues feature enabled.+ """+ hasIssuesEnabled: Boolean!++ """+ Indicates if the repository has the Projects feature enabled.+ """+ hasProjectsEnabled: Boolean!++ """+ Indicates if the repository has wiki feature enabled.+ """+ hasWikiEnabled: Boolean!++ """+ The repository's URL.+ """+ homepageUrl: URI+ id: ID!++ """+ Indicates if the repository is unmaintained.+ """+ isArchived: Boolean!++ """+ Returns whether or not this repository disabled.+ """+ isDisabled: Boolean!++ """+ Returns whether or not this repository is empty.+ """+ isEmpty: Boolean!++ """+ Identifies if the repository is a fork.+ """+ isFork: Boolean!++ """+ Indicates if the repository has been locked or not.+ """+ isLocked: Boolean!++ """+ Identifies if the repository is a mirror.+ """+ isMirror: Boolean!++ """+ Identifies if the repository is private.+ """+ isPrivate: Boolean!++ """+ Identifies if the repository is a template that can be used to generate new repositories.+ """+ isTemplate: Boolean!++ """+ Returns a single issue from the current repository by number.+ """+ issue(+ """+ The number for the issue to be returned.+ """+ number: Int!+ ): Issue++ """+ Returns a single issue-like object from the current repository by number.+ """+ issueOrPullRequest(+ """+ The number for the issue to be returned.+ """+ number: Int!+ ): IssueOrPullRequest++ """+ A list of issues that have been opened in the repository.+ """+ issues(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Filtering options for issues returned from the connection.+ """+ filterBy: IssueFilters++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for issues returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the issues by.+ """+ states: [IssueState!]+ ): IssueConnection!++ """+ Returns a single label by name+ """+ label(+ """+ Label name+ """+ name: String!+ ): Label++ """+ A list of labels associated with the repository.+ """+ labels(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for labels returned from the connection.+ """+ orderBy: LabelOrder = { field: CREATED_AT, direction: ASC }++ """+ If provided, searches labels by name and description.+ """+ query: String+ ): LabelConnection++ """+ A list containing a breakdown of the language composition of the repository.+ """+ languages(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: LanguageOrder+ ): LanguageConnection++ """+ The license associated with the repository+ """+ licenseInfo: License++ """+ The reason the repository has been locked.+ """+ lockReason: RepositoryLockReason++ """+ A list of Users that can be mentioned in the context of the repository.+ """+ mentionableUsers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filters users with query on user name and login+ """+ query: String+ ): UserConnection!++ """+ Whether or not PRs are merged with a merge commit on this repository.+ """+ mergeCommitAllowed: Boolean!++ """+ Returns a single milestone from the current repository by number.+ """+ milestone(+ """+ The number for the milestone to be returned.+ """+ number: Int!+ ): Milestone++ """+ A list of milestones associated with the repository.+ """+ milestones(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for milestones.+ """+ orderBy: MilestoneOrder++ """+ Filters milestones with a query on the title+ """+ query: String++ """+ Filter by the state of the milestones.+ """+ states: [MilestoneState!]+ ): MilestoneConnection++ """+ The repository's original mirror URL.+ """+ mirrorUrl: URI++ """+ The name of the repository.+ """+ name: String!++ """+ The repository's name with owner.+ """+ nameWithOwner: String!++ """+ A Git object in the repository+ """+ object(+ """+ A Git revision expression suitable for rev-parse+ """+ expression: String++ """+ The Git object ID+ """+ oid: GitObjectID+ ): GitObject++ """+ The image used to represent this repository in Open Graph data.+ """+ openGraphImageUrl: URI!++ """+ The User owner of the repository.+ """+ owner: RepositoryOwner!++ """+ A list of packages under the owner.+ """+ packages(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Find packages by their names.+ """+ names: [String]++ """+ Ordering of the returned packages.+ """+ orderBy: PackageOrder = { field: CREATED_AT, direction: DESC }++ """+ Filter registry package by type.+ """+ packageType: PackageType++ """+ Find packages in a repository by ID.+ """+ repositoryId: ID+ ): PackageConnection!++ """+ The repository parent, if this is a fork.+ """+ parent: Repository++ """+ A list of pinned issues for this repository.+ """+ pinnedIssues(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): PinnedIssueConnection @preview(toggledBy: "elektra-preview")++ """+ The primary language of the repository's code.+ """+ primaryLanguage: Language++ """+ Find project by number.+ """+ project(+ """+ The project number to find.+ """+ number: Int!+ ): Project++ """+ A list of projects under the owner.+ """+ projects(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for projects returned from the connection+ """+ orderBy: ProjectOrder++ """+ Query to search projects by, currently only searching by name.+ """+ search: String++ """+ A list of states to filter the projects by.+ """+ states: [ProjectState!]+ ): ProjectConnection!++ """+ The HTTP path listing the repository's projects+ """+ projectsResourcePath: URI!++ """+ The HTTP URL listing the repository's projects+ """+ projectsUrl: URI!++ """+ Returns a single pull request from the current repository by number.+ """+ pullRequest(+ """+ The number for the pull request to be returned.+ """+ number: Int!+ ): PullRequest++ """+ A list of pull requests that have been opened in the repository.+ """+ pullRequests(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ The base ref name to filter the pull requests by.+ """+ baseRefName: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ The head ref name to filter the pull requests by.+ """+ headRefName: String++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pull requests returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the pull requests by.+ """+ states: [PullRequestState!]+ ): PullRequestConnection!++ """+ Identifies when the repository was last pushed to.+ """+ pushedAt: DateTime++ """+ Whether or not rebase-merging is enabled on this repository.+ """+ rebaseMergeAllowed: Boolean!++ """+ Fetch a given ref from the repository+ """+ ref(+ """+ The ref to retrieve. Fully qualified matches are checked in order+ (`refs/heads/master`) before falling back onto checks for short name matches (`master`).+ """+ qualifiedName: String!+ ): Ref++ """+ Fetch a list of refs from the repository+ """+ refs(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ DEPRECATED: use orderBy. The ordering direction.+ """+ direction: OrderDirection++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for refs returned from the connection.+ """+ orderBy: RefOrder++ """+ Filters refs with query on name+ """+ query: String++ """+ A ref name prefix like `refs/heads/`, `refs/tags/`, etc.+ """+ refPrefix: String!+ ): RefConnection++ """+ Lookup a single release given various criteria.+ """+ release(+ """+ The name of the Tag the Release was created from+ """+ tagName: String!+ ): Release++ """+ List of releases which are dependent on this repository.+ """+ releases(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: ReleaseOrder+ ): ReleaseConnection!++ """+ A list of applied repository-topic associations for this repository.+ """+ repositoryTopics(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): RepositoryTopicConnection!++ """+ The HTTP path for this repository+ """+ resourcePath: URI!++ """+ A description of the repository, rendered to HTML without any links in it.+ """+ shortDescriptionHTML(+ """+ How many characters to return.+ """+ limit: Int = 200+ ): HTML!++ """+ Whether or not squash-merging is enabled on this repository.+ """+ squashMergeAllowed: Boolean!++ """+ The SSH URL to clone this repository+ """+ sshUrl: GitSSHRemote!++ """+ A list of users who have starred this starrable.+ """+ stargazers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: StarOrder+ ): StargazerConnection!++ """+ Returns a list of all submodules in this repository parsed from the+ .gitmodules file as of the default branch's HEAD commit.+ """+ submodules(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): SubmoduleConnection!++ """+ Temporary authentication token for cloning this repository.+ """+ tempCloneToken: String++ """+ The repository from which this repository was generated, if any.+ """+ templateRepository: Repository++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this repository+ """+ url: URI!++ """+ Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar.+ """+ usesCustomOpenGraphImage: Boolean!++ """+ Indicates whether the viewer has admin permissions on this repository.+ """+ viewerCanAdminister: Boolean!++ """+ Can the current viewer create new projects on this owner.+ """+ viewerCanCreateProjects: Boolean!++ """+ Check if the viewer is able to change their subscription status for the repository.+ """+ viewerCanSubscribe: Boolean!++ """+ Indicates whether the viewer can update the topics of this repository.+ """+ viewerCanUpdateTopics: Boolean!++ """+ The last commit email for the viewer.+ """+ viewerDefaultCommitEmail: String++ """+ The last used merge method by the viewer or the default for the repository.+ """+ viewerDefaultMergeMethod: PullRequestMergeMethod!++ """+ Returns a boolean indicating whether the viewing user has starred this starrable.+ """+ viewerHasStarred: Boolean!++ """+ The users permission level on the repository. Will return null if authenticated as an GitHub App.+ """+ viewerPermission: RepositoryPermission++ """+ A list of emails this viewer can commit with.+ """+ viewerPossibleCommitEmails: [String!]++ """+ Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.+ """+ viewerSubscription: SubscriptionState++ """+ A list of vulnerability alerts that are on this repository.+ """+ vulnerabilityAlerts(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): RepositoryVulnerabilityAlertConnection++ """+ A list of users watching the repository.+ """+ watchers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserConnection!+}++"""+The affiliation of a user to a repository+"""+enum RepositoryAffiliation {+ """+ Repositories that the user has been added to as a collaborator.+ """+ COLLABORATOR++ """+ 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.+ """+ ORGANIZATION_MEMBER++ """+ Repositories that are owned by the authenticated user.+ """+ OWNER+}++"""+Metadata for an audit entry with action repo.*+"""+interface RepositoryAuditEntryData {+ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI+}++"""+The connection type for User.+"""+type RepositoryCollaboratorConnection {+ """+ A list of edges.+ """+ edges: [RepositoryCollaboratorEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Represents a user who is a collaborator of a repository.+"""+type RepositoryCollaboratorEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!+ node: User!++ """+ The permission the user has on the repository.++ **Upcoming Change on 2020-10-01 UTC**+ **Description:** Type for `permission` will change from `RepositoryPermission!` to `String`.+ **Reason:** This field may return additional values+ """+ permission: RepositoryPermission!++ """+ A list of sources for the user's access to the repository.+ """+ permissionSources: [PermissionSource!]+}++"""+A list of repositories owned by the subject.+"""+type RepositoryConnection {+ """+ A list of edges.+ """+ edges: [RepositoryEdge]++ """+ A list of nodes.+ """+ nodes: [Repository]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!++ """+ The total size in kilobytes of all repositories in the connection.+ """+ totalDiskUsage: Int!+}++"""+The reason a repository is listed as 'contributed'.+"""+enum RepositoryContributionType {+ """+ Created a commit+ """+ COMMIT++ """+ Created an issue+ """+ ISSUE++ """+ Created a pull request+ """+ PULL_REQUEST++ """+ Reviewed a pull request+ """+ PULL_REQUEST_REVIEW++ """+ Created the repository+ """+ REPOSITORY+}++"""+An edge in a connection.+"""+type RepositoryEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Repository+}++"""+A subset of repository info.+"""+interface RepositoryInfo {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The description of the repository.+ """+ description: String++ """+ The description of the repository rendered to HTML.+ """+ descriptionHTML: HTML!++ """+ Returns how many forks there are of this repository in the whole network.+ """+ forkCount: Int!++ """+ Indicates if the repository has issues feature enabled.+ """+ hasIssuesEnabled: Boolean!++ """+ Indicates if the repository has the Projects feature enabled.+ """+ hasProjectsEnabled: Boolean!++ """+ Indicates if the repository has wiki feature enabled.+ """+ hasWikiEnabled: Boolean!++ """+ The repository's URL.+ """+ homepageUrl: URI++ """+ Indicates if the repository is unmaintained.+ """+ isArchived: Boolean!++ """+ Identifies if the repository is a fork.+ """+ isFork: Boolean!++ """+ Indicates if the repository has been locked or not.+ """+ isLocked: Boolean!++ """+ Identifies if the repository is a mirror.+ """+ isMirror: Boolean!++ """+ Identifies if the repository is private.+ """+ isPrivate: Boolean!++ """+ Identifies if the repository is a template that can be used to generate new repositories.+ """+ isTemplate: Boolean!++ """+ The license associated with the repository+ """+ licenseInfo: License++ """+ The reason the repository has been locked.+ """+ lockReason: RepositoryLockReason++ """+ The repository's original mirror URL.+ """+ mirrorUrl: URI++ """+ The name of the repository.+ """+ name: String!++ """+ The repository's name with owner.+ """+ nameWithOwner: String!++ """+ The image used to represent this repository in Open Graph data.+ """+ openGraphImageUrl: URI!++ """+ The User owner of the repository.+ """+ owner: RepositoryOwner!++ """+ Identifies when the repository was last pushed to.+ """+ pushedAt: DateTime++ """+ The HTTP path for this repository+ """+ resourcePath: URI!++ """+ A description of the repository, rendered to HTML without any links in it.+ """+ shortDescriptionHTML(+ """+ How many characters to return.+ """+ limit: Int = 200+ ): HTML!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this repository+ """+ url: URI!++ """+ Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar.+ """+ usesCustomOpenGraphImage: Boolean!+}++"""+An invitation for a user to be added to a repository.+"""+type RepositoryInvitation implements Node {+ """+ The email address that received the invitation.+ """+ email: String+ id: ID!++ """+ The user who received the invitation.+ """+ invitee: User++ """+ The user who created the invitation.+ """+ inviter: User!++ """+ The permission granted on this repository by this invitation.++ **Upcoming Change on 2020-10-01 UTC**+ **Description:** Type for `permission` will change from `RepositoryPermission!` to `String`.+ **Reason:** This field may return additional values+ """+ permission: RepositoryPermission!++ """+ The Repository the user is invited to.+ """+ repository: RepositoryInfo+}++"""+The connection type for RepositoryInvitation.+"""+type RepositoryInvitationConnection {+ """+ A list of edges.+ """+ edges: [RepositoryInvitationEdge]++ """+ A list of nodes.+ """+ nodes: [RepositoryInvitation]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type RepositoryInvitationEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: RepositoryInvitation+}++"""+Ordering options for repository invitation connections.+"""+input RepositoryInvitationOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order repository invitations by.+ """+ field: RepositoryInvitationOrderField!+}++"""+Properties by which repository invitation connections can be ordered.+"""+enum RepositoryInvitationOrderField {+ """+ Order repository invitations by creation time+ """+ CREATED_AT++ """+ Order repository invitations by invitee login+ """+ INVITEE_LOGIN+ @deprecated(+ reason: "`INVITEE_LOGIN` is no longer a valid field value. Repository invitations can now be associated with an email, not only an invitee. Removal on 2020-10-01 UTC."+ )+}++"""+The possible reasons a given repository could be in a locked state.+"""+enum RepositoryLockReason {+ """+ The repository is locked due to a billing related reason.+ """+ BILLING++ """+ The repository is locked due to a migration.+ """+ MIGRATING++ """+ The repository is locked due to a move.+ """+ MOVING++ """+ The repository is locked due to a rename.+ """+ RENAME+}++"""+Represents a object that belongs to a repository.+"""+interface RepositoryNode {+ """+ The repository associated with this node.+ """+ repository: Repository!+}++"""+Ordering options for repository connections+"""+input RepositoryOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order repositories by.+ """+ field: RepositoryOrderField!+}++"""+Properties by which repository connections can be ordered.+"""+enum RepositoryOrderField {+ """+ Order repositories by creation time+ """+ CREATED_AT++ """+ Order repositories by name+ """+ NAME++ """+ Order repositories by push time+ """+ PUSHED_AT++ """+ Order repositories by number of stargazers+ """+ STARGAZERS++ """+ Order repositories by update time+ """+ UPDATED_AT+}++"""+Represents an owner of a Repository.+"""+interface RepositoryOwner {+ """+ A URL pointing to the owner's public avatar.+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int+ ): URI!+ id: ID!++ """+ The username used to login.+ """+ login: String!++ """+ A list of repositories that the user owns.+ """+ repositories(+ """+ Array of viewer's affiliation options for repositories returned from the+ connection. For example, OWNER will include only repositories that the+ current viewer owns.+ """+ affiliations: [RepositoryAffiliation]++ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ If non-null, filters repositories according to whether they are forks of another repository+ """+ isFork: Boolean++ """+ If non-null, filters repositories according to whether they have been locked+ """+ isLocked: Boolean++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for repositories returned from the connection+ """+ orderBy: RepositoryOrder++ """+ Array of owner's affiliation options for repositories returned from the+ connection. For example, OWNER will include only repositories that the+ organization or user being viewed owns.+ """+ ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR]++ """+ If non-null, filters repositories according to privacy+ """+ privacy: RepositoryPrivacy+ ): RepositoryConnection!++ """+ Find Repository.+ """+ repository(+ """+ Name of Repository to find.+ """+ name: String!+ ): Repository++ """+ The HTTP URL for the owner.+ """+ resourcePath: URI!++ """+ The HTTP URL for the owner.+ """+ url: URI!+}++"""+The access level to a repository+"""+enum RepositoryPermission {+ """+ Can read, clone, and push to this repository. Can also manage issues, pull+ requests, and repository settings, including adding collaborators+ """+ ADMIN++ """+ Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings+ """+ MAINTAIN++ """+ Can read and clone this repository. Can also open and comment on issues and pull requests+ """+ READ++ """+ Can read and clone this repository. Can also manage issues and pull requests+ """+ TRIAGE++ """+ Can read, clone, and push to this repository. Can also manage issues and pull requests+ """+ WRITE+}++"""+The privacy of a repository+"""+enum RepositoryPrivacy {+ """+ Private+ """+ PRIVATE++ """+ Public+ """+ PUBLIC+}++"""+A repository-topic connects a repository to a topic.+"""+type RepositoryTopic implements Node & UniformResourceLocatable {+ id: ID!++ """+ The HTTP path for this repository-topic.+ """+ resourcePath: URI!++ """+ The topic.+ """+ topic: Topic!++ """+ The HTTP URL for this repository-topic.+ """+ url: URI!+}++"""+The connection type for RepositoryTopic.+"""+type RepositoryTopicConnection {+ """+ A list of edges.+ """+ edges: [RepositoryTopicEdge]++ """+ A list of nodes.+ """+ nodes: [RepositoryTopic]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type RepositoryTopicEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: RepositoryTopic+}++"""+The repository's visibility level.+"""+enum RepositoryVisibility {+ """+ The repository is visible only to users in the same business.+ """+ INTERNAL++ """+ The repository is visible only to those with explicit access.+ """+ PRIVATE++ """+ The repository is visible to everyone.+ """+ PUBLIC+}++"""+Audit log entry for a repository_visibility_change.disable event.+"""+type RepositoryVisibilityChangeDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The HTTP path for this enterprise.+ """+ enterpriseResourcePath: URI++ """+ The slug of the enterprise.+ """+ enterpriseSlug: String++ """+ The HTTP URL for this enterprise.+ """+ enterpriseUrl: URI+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a repository_visibility_change.enable event.+"""+type RepositoryVisibilityChangeEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!++ """+ The HTTP path for this enterprise.+ """+ enterpriseResourcePath: URI++ """+ The slug of the enterprise.+ """+ enterpriseSlug: String++ """+ The HTTP URL for this enterprise.+ """+ enterpriseUrl: URI+ id: ID!++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+A alert for a repository with an affected vulnerability.+"""+type RepositoryVulnerabilityAlert implements Node & RepositoryNode {+ """+ When was the alert created?+ """+ createdAt: DateTime!++ """+ The reason the alert was dismissed+ """+ dismissReason: String++ """+ When was the alert dimissed?+ """+ dismissedAt: DateTime++ """+ The user who dismissed the alert+ """+ dismisser: User+ id: ID!++ """+ The associated repository+ """+ repository: Repository!++ """+ The associated security advisory+ """+ securityAdvisory: SecurityAdvisory++ """+ The associated security vulnerablity+ """+ securityVulnerability: SecurityVulnerability++ """+ The vulnerable manifest filename+ """+ vulnerableManifestFilename: String!++ """+ The vulnerable manifest path+ """+ vulnerableManifestPath: String!++ """+ The vulnerable requirements+ """+ vulnerableRequirements: String+}++"""+The connection type for RepositoryVulnerabilityAlert.+"""+type RepositoryVulnerabilityAlertConnection {+ """+ A list of edges.+ """+ edges: [RepositoryVulnerabilityAlertEdge]++ """+ A list of nodes.+ """+ nodes: [RepositoryVulnerabilityAlert]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type RepositoryVulnerabilityAlertEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: RepositoryVulnerabilityAlert+}++"""+Autogenerated input type of RequestReviews+"""+input RequestReviewsInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the pull request to modify.+ """+ pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"])++ """+ The Node IDs of the team to request.+ """+ teamIds: [ID!] @possibleTypes(concreteTypes: ["Team"])++ """+ Add users to the set rather than replace.+ """+ union: Boolean++ """+ The Node IDs of the user to request.+ """+ userIds: [ID!] @possibleTypes(concreteTypes: ["User"])+}++"""+Autogenerated return type of RequestReviews+"""+type RequestReviewsPayload {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The pull request that is getting requests.+ """+ pullRequest: PullRequest++ """+ The edge from the pull request to the requested reviewers.+ """+ requestedReviewersEdge: UserEdge+}++"""+The possible states that can be requested when creating a check run.+"""+enum RequestableCheckStatusState @preview(toggledBy: "antiope-preview") {+ """+ The check suite or run has been completed.+ """+ COMPLETED++ """+ The check suite or run is in progress.+ """+ IN_PROGRESS++ """+ The check suite or run has been queued.+ """+ QUEUED+}++"""+Types that can be requested reviewers.+"""+union RequestedReviewer = Mannequin | Team | User++"""+Autogenerated input type of RerequestCheckSuite+"""+input RerequestCheckSuiteInput @preview(toggledBy: "antiope-preview") {+ """+ The Node ID of the check suite.+ """+ checkSuiteId: ID! @possibleTypes(concreteTypes: ["CheckSuite"])++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of RerequestCheckSuite+"""+type RerequestCheckSuitePayload @preview(toggledBy: "antiope-preview") {+ """+ The requested check suite.+ """+ checkSuite: CheckSuite++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of ResolveReviewThread+"""+input ResolveReviewThreadInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the thread to resolve+ """+ threadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"])+}++"""+Autogenerated return type of ResolveReviewThread+"""+type ResolveReviewThreadPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The thread to resolve.+ """+ thread: PullRequestReviewThread+}++"""+Represents a private contribution a user made on GitHub.+"""+type RestrictedContribution implements Contribution {+ """+ Whether this contribution is associated with a record you do not have access to. For+ example, your own 'first issue' contribution may have been made on a repository you can no+ longer access.+ """+ isRestricted: Boolean!++ """+ When this contribution was made.+ """+ occurredAt: DateTime!++ """+ The HTTP path for this contribution.+ """+ resourcePath: URI!++ """+ The HTTP URL for this contribution.+ """+ url: URI!++ """+ The user who made this contribution.+ """+ user: User!+}++"""+A team or user who has the ability to dismiss a review on a protected branch.+"""+type ReviewDismissalAllowance implements Node {+ """+ The actor that can dismiss.+ """+ actor: ReviewDismissalAllowanceActor++ """+ Identifies the branch protection rule associated with the allowed user or team.+ """+ branchProtectionRule: BranchProtectionRule+ id: ID!+}++"""+Types that can be an actor.+"""+union ReviewDismissalAllowanceActor = Team | User++"""+The connection type for ReviewDismissalAllowance.+"""+type ReviewDismissalAllowanceConnection {+ """+ A list of edges.+ """+ edges: [ReviewDismissalAllowanceEdge]++ """+ A list of nodes.+ """+ nodes: [ReviewDismissalAllowance]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type ReviewDismissalAllowanceEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: ReviewDismissalAllowance+}++"""+Represents a 'review_dismissed' event on a given issue or pull request.+"""+type ReviewDismissedEvent implements Node & UniformResourceLocatable {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ Identifies the optional message associated with the 'review_dismissed' event.+ """+ dismissalMessage: String++ """+ Identifies the optional message associated with the event, rendered to HTML.+ """+ dismissalMessageHTML: String+ id: ID!++ """+ Identifies the previous state of the review with the 'review_dismissed' event.+ """+ previousReviewState: PullRequestReviewState!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!++ """+ Identifies the commit which caused the review to become stale.+ """+ pullRequestCommit: PullRequestCommit++ """+ The HTTP path for this review dismissed event.+ """+ resourcePath: URI!++ """+ Identifies the review associated with the 'review_dismissed' event.+ """+ review: PullRequestReview++ """+ The HTTP URL for this review dismissed event.+ """+ url: URI!+}++"""+A request for a user to review a pull request.+"""+type ReviewRequest implements Node {+ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ Identifies the pull request associated with this review request.+ """+ pullRequest: PullRequest!++ """+ The reviewer that is requested.+ """+ requestedReviewer: RequestedReviewer+}++"""+The connection type for ReviewRequest.+"""+type ReviewRequestConnection {+ """+ A list of edges.+ """+ edges: [ReviewRequestEdge]++ """+ A list of nodes.+ """+ nodes: [ReviewRequest]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type ReviewRequestEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: ReviewRequest+}++"""+Represents an 'review_request_removed' event on a given pull request.+"""+type ReviewRequestRemovedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!++ """+ Identifies the reviewer whose review request was removed.+ """+ requestedReviewer: RequestedReviewer+}++"""+Represents an 'review_requested' event on a given pull request.+"""+type ReviewRequestedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ PullRequest referenced by event.+ """+ pullRequest: PullRequest!++ """+ Identifies the reviewer whose review was requested.+ """+ requestedReviewer: RequestedReviewer+}++"""+A hovercard context with a message describing the current code review state of the pull+request.+"""+type ReviewStatusHovercardContext implements HovercardContext {+ """+ A string describing this context+ """+ message: String!++ """+ An octicon to accompany this context+ """+ octicon: String!++ """+ The current status of the pull request with respect to code review.+ """+ reviewDecision: PullRequestReviewDecision+}++"""+The possible digest algorithms used to sign SAML requests for an identity provider.+"""+enum SamlDigestAlgorithm {+ """+ SHA1+ """+ SHA1++ """+ SHA256+ """+ SHA256++ """+ SHA384+ """+ SHA384++ """+ SHA512+ """+ SHA512+}++"""+The possible signature algorithms used to sign SAML requests for a Identity Provider.+"""+enum SamlSignatureAlgorithm {+ """+ RSA-SHA1+ """+ RSA_SHA1++ """+ RSA-SHA256+ """+ RSA_SHA256++ """+ RSA-SHA384+ """+ RSA_SHA384++ """+ RSA-SHA512+ """+ RSA_SHA512+}++"""+A Saved Reply is text a user can use to reply quickly.+"""+type SavedReply implements Node {+ """+ The body of the saved reply.+ """+ body: String!++ """+ The saved reply body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int+ id: ID!++ """+ The title of the saved reply.+ """+ title: String!++ """+ The user that saved this reply.+ """+ user: Actor+}++"""+The connection type for SavedReply.+"""+type SavedReplyConnection {+ """+ A list of edges.+ """+ edges: [SavedReplyEdge]++ """+ A list of nodes.+ """+ nodes: [SavedReply]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type SavedReplyEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: SavedReply+}++"""+Ordering options for saved reply connections.+"""+input SavedReplyOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order saved replies by.+ """+ field: SavedReplyOrderField!+}++"""+Properties by which saved reply connections can be ordered.+"""+enum SavedReplyOrderField {+ """+ Order saved reply by when they were updated.+ """+ UPDATED_AT+}++"""+The results of a search.+"""+union SearchResultItem =+ App+ | Issue+ | MarketplaceListing+ | Organization+ | PullRequest+ | Repository+ | User++"""+A list of results that matched against a search query.+"""+type SearchResultItemConnection {+ """+ The number of pieces of code that matched the search query.+ """+ codeCount: Int!++ """+ A list of edges.+ """+ edges: [SearchResultItemEdge]++ """+ The number of issues that matched the search query.+ """+ issueCount: Int!++ """+ A list of nodes.+ """+ nodes: [SearchResultItem]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ The number of repositories that matched the search query.+ """+ repositoryCount: Int!++ """+ The number of users that matched the search query.+ """+ userCount: Int!++ """+ The number of wiki pages that matched the search query.+ """+ wikiCount: Int!+}++"""+An edge in a connection.+"""+type SearchResultItemEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: SearchResultItem++ """+ Text matches on the result found.+ """+ textMatches: [TextMatch]+}++"""+Represents the individual results of a search.+"""+enum SearchType {+ """+ Returns results matching issues in repositories.+ """+ ISSUE++ """+ Returns results matching repositories.+ """+ REPOSITORY++ """+ Returns results matching users and organizations on GitHub.+ """+ USER+}++"""+A GitHub Security Advisory+"""+type SecurityAdvisory implements Node {+ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ This is a long plaintext description of the advisory+ """+ description: String!++ """+ The GitHub Security Advisory ID+ """+ ghsaId: String!+ id: ID!++ """+ A list of identifiers for this advisory+ """+ identifiers: [SecurityAdvisoryIdentifier!]!++ """+ The organization that originated the advisory+ """+ origin: String!++ """+ The permalink for the advisory+ """+ permalink: URI++ """+ When the advisory was published+ """+ publishedAt: DateTime!++ """+ A list of references for this advisory+ """+ references: [SecurityAdvisoryReference!]!++ """+ The severity of the advisory+ """+ severity: SecurityAdvisorySeverity!++ """+ A short plaintext summary of the advisory+ """+ summary: String!++ """+ When the advisory was last updated+ """+ updatedAt: DateTime!++ """+ Vulnerabilities associated with this Advisory+ """+ vulnerabilities(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ An ecosystem to filter vulnerabilities by.+ """+ ecosystem: SecurityAdvisoryEcosystem++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for the returned topics.+ """+ orderBy: SecurityVulnerabilityOrder = { field: UPDATED_AT, direction: DESC }++ """+ A package name to filter vulnerabilities by.+ """+ package: String++ """+ A list of severities to filter vulnerabilities by.+ """+ severities: [SecurityAdvisorySeverity!]+ ): SecurityVulnerabilityConnection!++ """+ When the advisory was withdrawn, if it has been withdrawn+ """+ withdrawnAt: DateTime+}++"""+The connection type for SecurityAdvisory.+"""+type SecurityAdvisoryConnection {+ """+ A list of edges.+ """+ edges: [SecurityAdvisoryEdge]++ """+ A list of nodes.+ """+ nodes: [SecurityAdvisory]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+The possible ecosystems of a security vulnerability's package.+"""+enum SecurityAdvisoryEcosystem {+ """+ PHP packages hosted at packagist.org+ """+ COMPOSER++ """+ Java artifacts hosted at the Maven central repository+ """+ MAVEN++ """+ JavaScript packages hosted at npmjs.com+ """+ NPM++ """+ .NET packages hosted at the NuGet Gallery+ """+ NUGET++ """+ Python packages hosted at PyPI.org+ """+ PIP++ """+ Ruby gems hosted at RubyGems.org+ """+ RUBYGEMS+}++"""+An edge in a connection.+"""+type SecurityAdvisoryEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: SecurityAdvisory+}++"""+A GitHub Security Advisory Identifier+"""+type SecurityAdvisoryIdentifier {+ """+ The identifier type, e.g. GHSA, CVE+ """+ type: String!++ """+ The identifier+ """+ value: String!+}++"""+An advisory identifier to filter results on.+"""+input SecurityAdvisoryIdentifierFilter {+ """+ The identifier type.+ """+ type: SecurityAdvisoryIdentifierType!++ """+ The identifier string. Supports exact or partial matching.+ """+ value: String!+}++"""+Identifier formats available for advisories.+"""+enum SecurityAdvisoryIdentifierType {+ """+ Common Vulnerabilities and Exposures Identifier.+ """+ CVE++ """+ GitHub Security Advisory ID.+ """+ GHSA+}++"""+Ordering options for security advisory connections+"""+input SecurityAdvisoryOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order security advisories by.+ """+ field: SecurityAdvisoryOrderField!+}++"""+Properties by which security advisory connections can be ordered.+"""+enum SecurityAdvisoryOrderField {+ """+ Order advisories by publication time+ """+ PUBLISHED_AT++ """+ Order advisories by update time+ """+ UPDATED_AT+}++"""+An individual package+"""+type SecurityAdvisoryPackage {+ """+ The ecosystem the package belongs to, e.g. RUBYGEMS, NPM+ """+ ecosystem: SecurityAdvisoryEcosystem!++ """+ The package name+ """+ name: String!+}++"""+An individual package version+"""+type SecurityAdvisoryPackageVersion {+ """+ The package name or version+ """+ identifier: String!+}++"""+A GitHub Security Advisory Reference+"""+type SecurityAdvisoryReference {+ """+ A publicly accessible reference+ """+ url: URI!+}++"""+Severity of the vulnerability.+"""+enum SecurityAdvisorySeverity {+ """+ Critical.+ """+ CRITICAL++ """+ High.+ """+ HIGH++ """+ Low.+ """+ LOW++ """+ Moderate.+ """+ MODERATE+}++"""+An individual vulnerability within an Advisory+"""+type SecurityVulnerability {+ """+ The Advisory associated with this Vulnerability+ """+ advisory: SecurityAdvisory!++ """+ The first version containing a fix for the vulnerability+ """+ firstPatchedVersion: SecurityAdvisoryPackageVersion++ """+ A description of the vulnerable package+ """+ package: SecurityAdvisoryPackage!++ """+ The severity of the vulnerability within this package+ """+ severity: SecurityAdvisorySeverity!++ """+ When the vulnerability was last updated+ """+ updatedAt: DateTime!++ """+ A string that describes the vulnerable package versions.+ This string follows a basic syntax with a few forms.+ + `= 0.2.0` denotes a single vulnerable version.+ + `<= 1.0.8` denotes a version range up to and including the specified version+ + `< 0.1.11` denotes a version range up to, but excluding, the specified version+ + `>= 4.3.0, < 4.3.5` denotes a version range with a known minimum and maximum version.+ + `>= 0.0.1` denotes a version range with a known minimum, but no known maximum+ """+ vulnerableVersionRange: String!+}++"""+The connection type for SecurityVulnerability.+"""+type SecurityVulnerabilityConnection {+ """+ A list of edges.+ """+ edges: [SecurityVulnerabilityEdge]++ """+ A list of nodes.+ """+ nodes: [SecurityVulnerability]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type SecurityVulnerabilityEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: SecurityVulnerability+}++"""+Ordering options for security vulnerability connections+"""+input SecurityVulnerabilityOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order security vulnerabilities by.+ """+ field: SecurityVulnerabilityOrderField!+}++"""+Properties by which security vulnerability connections can be ordered.+"""+enum SecurityVulnerabilityOrderField {+ """+ Order vulnerability by update time+ """+ UPDATED_AT+}++"""+Autogenerated input type of SetEnterpriseIdentityProvider+"""+input SetEnterpriseIdentityProviderInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The digest algorithm used to sign SAML requests for the identity provider.+ """+ digestMethod: SamlDigestAlgorithm!++ """+ The ID of the enterprise on which to set an identity provider.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The x509 certificate used by the identity provider to sign assertions and responses.+ """+ idpCertificate: String!++ """+ The Issuer Entity ID for the SAML identity provider+ """+ issuer: String++ """+ The signature algorithm used to sign SAML requests for the identity provider.+ """+ signatureMethod: SamlSignatureAlgorithm!++ """+ The URL endpoint for the identity provider's SAML SSO.+ """+ ssoUrl: URI!+}++"""+Autogenerated return type of SetEnterpriseIdentityProvider+"""+type SetEnterpriseIdentityProviderPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The identity provider for the enterprise.+ """+ identityProvider: EnterpriseIdentityProvider+}++"""+Represents an S/MIME signature on a Commit or Tag.+"""+type SmimeSignature implements GitSignature {+ """+ Email used to sign this object.+ """+ email: String!++ """+ True if the signature is valid and verified by GitHub.+ """+ isValid: Boolean!++ """+ Payload for GPG signing object. Raw ODB object without the signature header.+ """+ payload: String!++ """+ ASCII-armored signature header from object.+ """+ signature: String!++ """+ GitHub user corresponding to the email signing this commit.+ """+ signer: User++ """+ The state of this signature. `VALID` if signature is valid and verified by+ GitHub, otherwise represents reason why signature is considered invalid.+ """+ state: GitSignatureState!++ """+ True if the signature was made with GitHub's signing key.+ """+ wasSignedByGitHub: Boolean!+}++"""+Entites that can sponsor others via GitHub Sponsors+"""+union Sponsor = Organization | User++"""+Entities that can be sponsored through GitHub Sponsors+"""+interface Sponsorable {+ """+ The GitHub Sponsors listing for this user.+ """+ sponsorsListing: SponsorsListing++ """+ This object's sponsorships as the maintainer.+ """+ sponsorshipsAsMaintainer(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Whether or not to include private sponsorships in the result set+ """+ includePrivate: Boolean = false++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for sponsorships returned from this connection. If left+ blank, the sponsorships will be ordered based on relevancy to the viewer.+ """+ orderBy: SponsorshipOrder+ ): SponsorshipConnection!++ """+ This object's sponsorships as the sponsor.+ """+ sponsorshipsAsSponsor(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for sponsorships returned from this connection. If left+ blank, the sponsorships will be ordered based on relevancy to the viewer.+ """+ orderBy: SponsorshipOrder+ ): SponsorshipConnection!+}++"""+A GitHub Sponsors listing.+"""+type SponsorsListing implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The full description of the listing.+ """+ fullDescription: String!++ """+ The full description of the listing rendered to HTML.+ """+ fullDescriptionHTML: HTML!+ id: ID!++ """+ The listing's full name.+ """+ name: String!++ """+ The short description of the listing.+ """+ shortDescription: String!++ """+ The short name of the listing.+ """+ slug: String!++ """+ The published tiers for this GitHub Sponsors listing.+ """+ tiers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for Sponsors tiers returned from the connection.+ """+ orderBy: SponsorsTierOrder = {+ field: MONTHLY_PRICE_IN_CENTS+ direction: ASC+ }+ ): SponsorsTierConnection+}++"""+A GitHub Sponsors tier associated with a GitHub Sponsors listing.+"""+type SponsorsTier implements Node {+ """+ SponsorsTier information only visible to users that can administer the associated Sponsors listing.+ """+ adminInfo: SponsorsTierAdminInfo++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The description of the tier.+ """+ description: String!++ """+ The tier description rendered to HTML+ """+ descriptionHTML: HTML!+ id: ID!++ """+ How much this tier costs per month in cents.+ """+ monthlyPriceInCents: Int!++ """+ How much this tier costs per month in dollars.+ """+ monthlyPriceInDollars: Int!++ """+ The name of the tier.+ """+ name: String!++ """+ The sponsors listing that this tier belongs to.+ """+ sponsorsListing: SponsorsListing!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!+}++"""+SponsorsTier information only visible to users that can administer the associated Sponsors listing.+"""+type SponsorsTierAdminInfo {+ """+ The sponsorships associated with this tier.+ """+ sponsorships(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Whether or not to include private sponsorships in the result set+ """+ includePrivate: Boolean = false++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for sponsorships returned from this connection. If left+ blank, the sponsorships will be ordered based on relevancy to the viewer.+ """+ orderBy: SponsorshipOrder+ ): SponsorshipConnection!+}++"""+The connection type for SponsorsTier.+"""+type SponsorsTierConnection {+ """+ A list of edges.+ """+ edges: [SponsorsTierEdge]++ """+ A list of nodes.+ """+ nodes: [SponsorsTier]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type SponsorsTierEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: SponsorsTier+}++"""+Ordering options for Sponsors tiers connections.+"""+input SponsorsTierOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order tiers by.+ """+ field: SponsorsTierOrderField!+}++"""+Properties by which Sponsors tiers connections can be ordered.+"""+enum SponsorsTierOrderField {+ """+ Order tiers by creation time.+ """+ CREATED_AT++ """+ Order tiers by their monthly price in cents+ """+ MONTHLY_PRICE_IN_CENTS+}++"""+A sponsorship relationship between a sponsor and a maintainer+"""+type Sponsorship implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ The entity that is being sponsored+ """+ maintainer: User!+ @deprecated(+ reason: "`Sponsorship.maintainer` will be removed. Use `Sponsorship.sponsorable` instead. Removal on 2020-04-01 UTC."+ )++ """+ The privacy level for this sponsorship.+ """+ privacyLevel: SponsorshipPrivacy!++ """+ The user that is sponsoring. Returns null if the sponsorship is private or if sponsor is not a user.+ """+ sponsor: User+ @deprecated(+ reason: "`Sponsorship.sponsor` will be removed. Use `Sponsorship.sponsorEntity` instead. Removal on 2020-10-01 UTC."+ )++ """+ The user or organization that is sponsoring. Returns null if the sponsorship is private.+ """+ sponsorEntity: Sponsor++ """+ The entity that is being sponsored+ """+ sponsorable: Sponsorable!++ """+ The associated sponsorship tier+ """+ tier: SponsorsTier+}++"""+The connection type for Sponsorship.+"""+type SponsorshipConnection {+ """+ A list of edges.+ """+ edges: [SponsorshipEdge]++ """+ A list of nodes.+ """+ nodes: [Sponsorship]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type SponsorshipEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Sponsorship+}++"""+Ordering options for sponsorship connections.+"""+input SponsorshipOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order sponsorship by.+ """+ field: SponsorshipOrderField!+}++"""+Properties by which sponsorship connections can be ordered.+"""+enum SponsorshipOrderField {+ """+ Order sponsorship by creation time.+ """+ CREATED_AT+}++"""+The privacy of a sponsorship+"""+enum SponsorshipPrivacy {+ """+ Private+ """+ PRIVATE++ """+ Public+ """+ PUBLIC+}++"""+Ways in which star connections can be ordered.+"""+input StarOrder {+ """+ The direction in which to order nodes.+ """+ direction: OrderDirection!++ """+ The field in which to order nodes by.+ """+ field: StarOrderField!+}++"""+Properties by which star connections can be ordered.+"""+enum StarOrderField {+ """+ Allows ordering a list of stars by when they were created.+ """+ STARRED_AT+}++"""+The connection type for User.+"""+type StargazerConnection {+ """+ A list of edges.+ """+ edges: [StargazerEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Represents a user that's starred a repository.+"""+type StargazerEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!+ node: User!++ """+ Identifies when the item was starred.+ """+ starredAt: DateTime!+}++"""+Things that can be starred.+"""+interface Starrable {+ id: ID!++ """+ A list of users who have starred this starrable.+ """+ stargazers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: StarOrder+ ): StargazerConnection!++ """+ Returns a boolean indicating whether the viewing user has starred this starrable.+ """+ viewerHasStarred: Boolean!+}++"""+The connection type for Repository.+"""+type StarredRepositoryConnection {+ """+ A list of edges.+ """+ edges: [StarredRepositoryEdge]++ """+ Is the list of stars for this user truncated? This is true for users that have many stars.+ """+ isOverLimit: Boolean!++ """+ A list of nodes.+ """+ nodes: [Repository]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Represents a starred repository.+"""+type StarredRepositoryEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!+ node: Repository!++ """+ Identifies when the item was starred.+ """+ starredAt: DateTime!+}++"""+Represents a commit status.+"""+type Status implements Node {+ """+ The commit this status is attached to.+ """+ commit: Commit++ """+ Looks up an individual status context by context name.+ """+ context(+ """+ The context name.+ """+ name: String!+ ): StatusContext++ """+ The individual status contexts for this commit.+ """+ contexts: [StatusContext!]!+ id: ID!++ """+ The combined commit status.+ """+ state: StatusState!+}++"""+Represents the rollup for both the check runs and status for a commit.+"""+type StatusCheckRollup implements Node {+ """+ The commit the status and check runs are attached to.+ """+ commit: Commit++ """+ A list of status contexts and check runs for this commit.+ """+ contexts(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): StatusCheckRollupContextConnection!+ id: ID!++ """+ The combined status for the commit.+ """+ state: StatusState!+}++"""+Types that can be inside a StatusCheckRollup context.+"""+union StatusCheckRollupContext = CheckRun | StatusContext++"""+The connection type for StatusCheckRollupContext.+"""+type StatusCheckRollupContextConnection {+ """+ A list of edges.+ """+ edges: [StatusCheckRollupContextEdge]++ """+ A list of nodes.+ """+ nodes: [StatusCheckRollupContext]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type StatusCheckRollupContextEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: StatusCheckRollupContext+}++"""+Represents an individual commit status context+"""+type StatusContext implements Node {+ """+ The avatar of the OAuth application or the user that created the status+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int = 40+ ): URI++ """+ This commit this status context is attached to.+ """+ commit: Commit++ """+ The name of this status context.+ """+ context: String!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The actor who created this status context.+ """+ creator: Actor++ """+ The description for this status context.+ """+ description: String+ id: ID!++ """+ The state of this status context.+ """+ state: StatusState!++ """+ The URL for this status context.+ """+ targetUrl: URI+}++"""+The possible commit status states.+"""+enum StatusState {+ """+ Status is errored.+ """+ ERROR++ """+ Status is expected.+ """+ EXPECTED++ """+ Status is failing.+ """+ FAILURE++ """+ Status is pending.+ """+ PENDING++ """+ Status is successful.+ """+ SUCCESS+}++"""+Autogenerated input type of SubmitPullRequestReview+"""+input SubmitPullRequestReviewInput {+ """+ The text field to set on the Pull Request Review.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The event to send to the Pull Request Review.+ """+ event: PullRequestReviewEvent!++ """+ The Pull Request ID to submit any pending reviews.+ """+ pullRequestId: ID @possibleTypes(concreteTypes: ["PullRequest"])++ """+ The Pull Request Review ID to submit.+ """+ pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"])+}++"""+Autogenerated return type of SubmitPullRequestReview+"""+type SubmitPullRequestReviewPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The submitted pull request review.+ """+ pullRequestReview: PullRequestReview+}++"""+A pointer to a repository at a specific revision embedded inside another repository.+"""+type Submodule {+ """+ The branch of the upstream submodule for tracking updates+ """+ branch: String++ """+ The git URL of the submodule repository+ """+ gitUrl: URI!++ """+ The name of the submodule in .gitmodules+ """+ name: String!++ """+ The path in the superproject that this submodule is located in+ """+ path: String!++ """+ The commit revision of the subproject repository being tracked by the submodule+ """+ subprojectCommitOid: GitObjectID+}++"""+The connection type for Submodule.+"""+type SubmoduleConnection {+ """+ A list of edges.+ """+ edges: [SubmoduleEdge]++ """+ A list of nodes.+ """+ nodes: [Submodule]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type SubmoduleEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Submodule+}++"""+Entities that can be subscribed to for web and email notifications.+"""+interface Subscribable {+ id: ID!++ """+ Check if the viewer is able to change their subscription status for the repository.+ """+ viewerCanSubscribe: Boolean!++ """+ Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.+ """+ viewerSubscription: SubscriptionState+}++"""+Represents a 'subscribed' event on a given `Subscribable`.+"""+type SubscribedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Object referenced by event.+ """+ subscribable: Subscribable!+}++"""+The possible states of a subscription.+"""+enum SubscriptionState {+ """+ The User is never notified.+ """+ IGNORED++ """+ The User is notified of all conversations.+ """+ SUBSCRIBED++ """+ The User is only notified when participating or @mentioned.+ """+ UNSUBSCRIBED+}++"""+A suggestion to review a pull request based on a user's commit history and review comments.+"""+type SuggestedReviewer {+ """+ Is this suggestion based on past commits?+ """+ isAuthor: Boolean!++ """+ Is this suggestion based on past review comments?+ """+ isCommenter: Boolean!++ """+ Identifies the user suggested to review the pull request.+ """+ reviewer: User!+}++"""+Represents a Git tag.+"""+type Tag implements GitObject & Node {+ """+ An abbreviated version of the Git object ID+ """+ abbreviatedOid: String!++ """+ The HTTP path for this Git object+ """+ commitResourcePath: URI!++ """+ The HTTP URL for this Git object+ """+ commitUrl: URI!+ id: ID!++ """+ The Git tag message.+ """+ message: String++ """+ The Git tag name.+ """+ name: String!++ """+ The Git object ID+ """+ oid: GitObjectID!++ """+ The Repository the Git object belongs to+ """+ repository: Repository!++ """+ Details about the tag author.+ """+ tagger: GitActor++ """+ The Git object the tag points to.+ """+ target: GitObject!+}++"""+A team of users in an organization.+"""+type Team implements MemberStatusable & Node & Subscribable {+ """+ A list of teams that are ancestors of this team.+ """+ ancestors(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): TeamConnection!++ """+ A URL pointing to the team's avatar.+ """+ avatarUrl(+ """+ The size in pixels of the resulting square image.+ """+ size: Int = 400+ ): URI++ """+ List of child teams belonging to this team+ """+ childTeams(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Whether to list immediate child teams or all descendant child teams.+ """+ immediateOnly: Boolean = true++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: TeamOrder++ """+ User logins to filter by+ """+ userLogins: [String!]+ ): TeamConnection!++ """+ The slug corresponding to the organization and team.+ """+ combinedSlug: String!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The description of the team.+ """+ description: String++ """+ Find a team discussion by its number.+ """+ discussion(+ """+ The sequence number of the discussion to find.+ """+ number: Int!+ ): TeamDiscussion++ """+ A list of team discussions.+ """+ discussions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ If provided, filters discussions according to whether or not they are pinned.+ """+ isPinned: Boolean++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: TeamDiscussionOrder+ ): TeamDiscussionConnection!++ """+ The HTTP path for team discussions+ """+ discussionsResourcePath: URI!++ """+ The HTTP URL for team discussions+ """+ discussionsUrl: URI!++ """+ The HTTP path for editing this team+ """+ editTeamResourcePath: URI!++ """+ The HTTP URL for editing this team+ """+ editTeamUrl: URI!+ id: ID!++ """+ A list of pending invitations for users to this team+ """+ invitations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): OrganizationInvitationConnection++ """+ Get the status messages members of this entity have set that are either public or visible only to the organization.+ """+ memberStatuses(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for user statuses returned from the connection.+ """+ orderBy: UserStatusOrder = { field: UPDATED_AT, direction: DESC }+ ): UserStatusConnection!++ """+ A list of users who are members of this team.+ """+ members(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filter by membership type+ """+ membership: TeamMembershipType = ALL++ """+ Order for the connection.+ """+ orderBy: TeamMemberOrder++ """+ The search string to look for.+ """+ query: String++ """+ Filter by team member role+ """+ role: TeamMemberRole+ ): TeamMemberConnection!++ """+ The HTTP path for the team' members+ """+ membersResourcePath: URI!++ """+ The HTTP URL for the team' members+ """+ membersUrl: URI!++ """+ The name of the team.+ """+ name: String!++ """+ The HTTP path creating a new team+ """+ newTeamResourcePath: URI!++ """+ The HTTP URL creating a new team+ """+ newTeamUrl: URI!++ """+ The organization that owns this team.+ """+ organization: Organization!++ """+ The parent team of the team.+ """+ parentTeam: Team++ """+ The level of privacy the team has.+ """+ privacy: TeamPrivacy!++ """+ A list of repositories this team has access to.+ """+ repositories(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for the connection.+ """+ orderBy: TeamRepositoryOrder++ """+ The search string to look for.+ """+ query: String+ ): TeamRepositoryConnection!++ """+ The HTTP path for this team's repositories+ """+ repositoriesResourcePath: URI!++ """+ The HTTP URL for this team's repositories+ """+ repositoriesUrl: URI!++ """+ The HTTP path for this team+ """+ resourcePath: URI!++ """+ What algorithm is used for review assignment for this team+ """+ reviewRequestDelegationAlgorithm: TeamReviewAssignmentAlgorithm+ @preview(toggledBy: "stone-crop-preview")++ """+ True if review assignment is enabled for this team+ """+ reviewRequestDelegationEnabled: Boolean!+ @preview(toggledBy: "stone-crop-preview")++ """+ How many team members are required for review assignment for this team+ """+ reviewRequestDelegationMemberCount: Int+ @preview(toggledBy: "stone-crop-preview")++ """+ When assigning team members via delegation, whether the entire team should be notified as well.+ """+ reviewRequestDelegationNotifyTeam: Boolean!+ @preview(toggledBy: "stone-crop-preview")++ """+ The slug corresponding to the team.+ """+ slug: String!++ """+ The HTTP path for this team's teams+ """+ teamsResourcePath: URI!++ """+ The HTTP URL for this team's teams+ """+ teamsUrl: URI!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this team+ """+ url: URI!++ """+ Team is adminable by the viewer.+ """+ viewerCanAdminister: Boolean!++ """+ Check if the viewer is able to change their subscription status for the repository.+ """+ viewerCanSubscribe: Boolean!++ """+ Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.+ """+ viewerSubscription: SubscriptionState+}++"""+Audit log entry for a team.add_member event.+"""+type TeamAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & TeamAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ Whether the team was mapped to an LDAP Group.+ """+ isLdapMapped: Boolean++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The team associated with the action+ """+ team: Team++ """+ The name of the team+ """+ teamName: String++ """+ The HTTP path for this team+ """+ teamResourcePath: URI++ """+ The HTTP URL for this team+ """+ teamUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a team.add_repository event.+"""+type TeamAddRepositoryAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TeamAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ Whether the team was mapped to an LDAP Group.+ """+ isLdapMapped: Boolean++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The team associated with the action+ """+ team: Team++ """+ The name of the team+ """+ teamName: String++ """+ The HTTP path for this team+ """+ teamResourcePath: URI++ """+ The HTTP URL for this team+ """+ teamUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Metadata for an audit entry with action team.*+"""+interface TeamAuditEntryData {+ """+ The team associated with the action+ """+ team: Team++ """+ The name of the team+ """+ teamName: String++ """+ The HTTP path for this team+ """+ teamResourcePath: URI++ """+ The HTTP URL for this team+ """+ teamUrl: URI+}++"""+Audit log entry for a team.change_parent_team event.+"""+type TeamChangeParentTeamAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & TeamAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ Whether the team was mapped to an LDAP Group.+ """+ isLdapMapped: Boolean++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The new parent team.+ """+ parentTeam: Team++ """+ The name of the new parent team+ """+ parentTeamName: String++ """+ The name of the former parent team+ """+ parentTeamNameWas: String++ """+ The HTTP path for the parent team+ """+ parentTeamResourcePath: URI++ """+ The HTTP URL for the parent team+ """+ parentTeamUrl: URI++ """+ The former parent team.+ """+ parentTeamWas: Team++ """+ The HTTP path for the previous parent team+ """+ parentTeamWasResourcePath: URI++ """+ The HTTP URL for the previous parent team+ """+ parentTeamWasUrl: URI++ """+ The team associated with the action+ """+ team: Team++ """+ The name of the team+ """+ teamName: String++ """+ The HTTP path for this team+ """+ teamResourcePath: URI++ """+ The HTTP URL for this team+ """+ teamUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The connection type for Team.+"""+type TeamConnection {+ """+ A list of edges.+ """+ edges: [TeamEdge]++ """+ A list of nodes.+ """+ nodes: [Team]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+A team discussion.+"""+type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment {+ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the discussion's team.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ The body as Markdown.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ The body rendered to text.+ """+ bodyText: String!++ """+ Identifies the discussion body hash.+ """+ bodyVersion: String!++ """+ A list of comments on this discussion.+ """+ comments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ When provided, filters the connection such that results begin with the comment with this number.+ """+ fromComment: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: TeamDiscussionCommentOrder+ ): TeamDiscussionCommentConnection!++ """+ The HTTP path for discussion comments+ """+ commentsResourcePath: URI!++ """+ The HTTP URL for discussion comments+ """+ commentsUrl: URI!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The actor who edited the comment.+ """+ editor: Actor+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ Whether or not the discussion is pinned.+ """+ isPinned: Boolean!++ """+ Whether or not the discussion is only visible to team members and org admins.+ """+ isPrivate: Boolean!++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ Identifies the discussion within its team.+ """+ number: Int!++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ A list of reactions grouped by content left on the subject.+ """+ reactionGroups: [ReactionGroup!]++ """+ A list of Reactions left on the Issue.+ """+ reactions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Allows filtering Reactions by emoji.+ """+ content: ReactionContent++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows specifying the order in which reactions are returned.+ """+ orderBy: ReactionOrder+ ): ReactionConnection!++ """+ The HTTP path for this discussion+ """+ resourcePath: URI!++ """+ The team that defines the context of this discussion.+ """+ team: Team!++ """+ The title of the discussion+ """+ title: String!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this discussion+ """+ url: URI!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Check if the current viewer can delete this object.+ """+ viewerCanDelete: Boolean!++ """+ Whether or not the current viewer can pin this discussion.+ """+ viewerCanPin: Boolean!++ """+ Can user react to this subject+ """+ viewerCanReact: Boolean!++ """+ Check if the viewer is able to change their subscription status for the repository.+ """+ viewerCanSubscribe: Boolean!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!++ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!++ """+ Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.+ """+ viewerSubscription: SubscriptionState+}++"""+A comment on a team discussion.+"""+type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & UniformResourceLocatable & Updatable & UpdatableComment {+ """+ The actor who authored the comment.+ """+ author: Actor++ """+ Author's association with the comment's team.+ """+ authorAssociation: CommentAuthorAssociation!++ """+ The body as Markdown.+ """+ body: String!++ """+ The body rendered to HTML.+ """+ bodyHTML: HTML!++ """+ The body rendered to text.+ """+ bodyText: String!++ """+ The current version of the body content.+ """+ bodyVersion: String!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Check if this comment was created via an email reply.+ """+ createdViaEmail: Boolean!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The discussion this comment is about.+ """+ discussion: TeamDiscussion!++ """+ The actor who edited the comment.+ """+ editor: Actor+ id: ID!++ """+ Check if this comment was edited and includes an edit with the creation data+ """+ includesCreatedEdit: Boolean!++ """+ The moment the editor made the last edit+ """+ lastEditedAt: DateTime++ """+ Identifies the comment number.+ """+ number: Int!++ """+ Identifies when the comment was published at.+ """+ publishedAt: DateTime++ """+ A list of reactions grouped by content left on the subject.+ """+ reactionGroups: [ReactionGroup!]++ """+ A list of Reactions left on the Issue.+ """+ reactions(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Allows filtering Reactions by emoji.+ """+ content: ReactionContent++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Allows specifying the order in which reactions are returned.+ """+ orderBy: ReactionOrder+ ): ReactionConnection!++ """+ The HTTP path for this comment+ """+ resourcePath: URI!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this comment+ """+ url: URI!++ """+ A list of edits to this content.+ """+ userContentEdits(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): UserContentEditConnection++ """+ Check if the current viewer can delete this object.+ """+ viewerCanDelete: Boolean!++ """+ Can user react to this subject+ """+ viewerCanReact: Boolean!++ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!++ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!++ """+ Did the viewer author this comment.+ """+ viewerDidAuthor: Boolean!+}++"""+The connection type for TeamDiscussionComment.+"""+type TeamDiscussionCommentConnection {+ """+ A list of edges.+ """+ edges: [TeamDiscussionCommentEdge]++ """+ A list of nodes.+ """+ nodes: [TeamDiscussionComment]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type TeamDiscussionCommentEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: TeamDiscussionComment+}++"""+Ways in which team discussion comment connections can be ordered.+"""+input TeamDiscussionCommentOrder {+ """+ The direction in which to order nodes.+ """+ direction: OrderDirection!++ """+ The field by which to order nodes.+ """+ field: TeamDiscussionCommentOrderField!+}++"""+Properties by which team discussion comment connections can be ordered.+"""+enum TeamDiscussionCommentOrderField {+ """+ Allows sequential ordering of team discussion comments (which is equivalent to chronological ordering).+ """+ NUMBER+}++"""+The connection type for TeamDiscussion.+"""+type TeamDiscussionConnection {+ """+ A list of edges.+ """+ edges: [TeamDiscussionEdge]++ """+ A list of nodes.+ """+ nodes: [TeamDiscussion]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type TeamDiscussionEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: TeamDiscussion+}++"""+Ways in which team discussion connections can be ordered.+"""+input TeamDiscussionOrder {+ """+ The direction in which to order nodes.+ """+ direction: OrderDirection!++ """+ The field by which to order nodes.+ """+ field: TeamDiscussionOrderField!+}++"""+Properties by which team discussion connections can be ordered.+"""+enum TeamDiscussionOrderField {+ """+ Allows chronological ordering of team discussions.+ """+ CREATED_AT+}++"""+An edge in a connection.+"""+type TeamEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: Team+}++"""+The connection type for User.+"""+type TeamMemberConnection {+ """+ A list of edges.+ """+ edges: [TeamMemberEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Represents a user who is a member of a team.+"""+type TeamMemberEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The HTTP path to the organization's member access page.+ """+ memberAccessResourcePath: URI!++ """+ The HTTP URL to the organization's member access page.+ """+ memberAccessUrl: URI!+ node: User!++ """+ The role the member has on the team.+ """+ role: TeamMemberRole!+}++"""+Ordering options for team member connections+"""+input TeamMemberOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order team members by.+ """+ field: TeamMemberOrderField!+}++"""+Properties by which team member connections can be ordered.+"""+enum TeamMemberOrderField {+ """+ Order team members by creation time+ """+ CREATED_AT++ """+ Order team members by login+ """+ LOGIN+}++"""+The possible team member roles; either 'maintainer' or 'member'.+"""+enum TeamMemberRole {+ """+ A team maintainer has permission to add and remove team members.+ """+ MAINTAINER++ """+ A team member has no administrative permissions on the team.+ """+ MEMBER+}++"""+Defines which types of team members are included in the returned list. Can be one of IMMEDIATE, CHILD_TEAM or ALL.+"""+enum TeamMembershipType {+ """+ Includes immediate and child team members for the team.+ """+ ALL++ """+ Includes only child team members for the team.+ """+ CHILD_TEAM++ """+ Includes only immediate members of the team.+ """+ IMMEDIATE+}++"""+Ways in which team connections can be ordered.+"""+input TeamOrder {+ """+ The direction in which to order nodes.+ """+ direction: OrderDirection!++ """+ The field in which to order nodes by.+ """+ field: TeamOrderField!+}++"""+Properties by which team connections can be ordered.+"""+enum TeamOrderField {+ """+ Allows ordering a list of teams by name.+ """+ NAME+}++"""+The possible team privacy values.+"""+enum TeamPrivacy {+ """+ A secret team can only be seen by its members.+ """+ SECRET++ """+ A visible team can be seen and @mentioned by every member of the organization.+ """+ VISIBLE+}++"""+Audit log entry for a team.remove_member event.+"""+type TeamRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & TeamAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ Whether the team was mapped to an LDAP Group.+ """+ isLdapMapped: Boolean++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The team associated with the action+ """+ team: Team++ """+ The name of the team+ """+ teamName: String++ """+ The HTTP path for this team+ """+ teamResourcePath: URI++ """+ The HTTP URL for this team+ """+ teamUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+Audit log entry for a team.remove_repository event.+"""+type TeamRemoveRepositoryAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TeamAuditEntryData {+ """+ The action name+ """+ action: String!++ """+ The user who initiated the action+ """+ actor: AuditEntryActor++ """+ The IP address of the actor+ """+ actorIp: String++ """+ A readable representation of the actor's location+ """+ actorLocation: ActorLocation++ """+ The username of the user who initiated the action+ """+ actorLogin: String++ """+ The HTTP path for the actor.+ """+ actorResourcePath: URI++ """+ The HTTP URL for the actor.+ """+ actorUrl: URI++ """+ The time the action was initiated+ """+ createdAt: PreciseDateTime!+ id: ID!++ """+ Whether the team was mapped to an LDAP Group.+ """+ isLdapMapped: Boolean++ """+ The corresponding operation type for the action+ """+ operationType: OperationType++ """+ The Organization associated with the Audit Entry.+ """+ organization: Organization++ """+ The name of the Organization.+ """+ organizationName: String++ """+ The HTTP path for the organization+ """+ organizationResourcePath: URI++ """+ The HTTP URL for the organization+ """+ organizationUrl: URI++ """+ The repository associated with the action+ """+ repository: Repository++ """+ The name of the repository+ """+ repositoryName: String++ """+ The HTTP path for the repository+ """+ repositoryResourcePath: URI++ """+ The HTTP URL for the repository+ """+ repositoryUrl: URI++ """+ The team associated with the action+ """+ team: Team++ """+ The name of the team+ """+ teamName: String++ """+ The HTTP path for this team+ """+ teamResourcePath: URI++ """+ The HTTP URL for this team+ """+ teamUrl: URI++ """+ The user affected by the action+ """+ user: User++ """+ For actions involving two users, the actor is the initiator and the user is the affected user.+ """+ userLogin: String++ """+ The HTTP path for the user.+ """+ userResourcePath: URI++ """+ The HTTP URL for the user.+ """+ userUrl: URI+}++"""+The connection type for Repository.+"""+type TeamRepositoryConnection {+ """+ A list of edges.+ """+ edges: [TeamRepositoryEdge]++ """+ A list of nodes.+ """+ nodes: [Repository]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+Represents a team repository.+"""+type TeamRepositoryEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!+ node: Repository!++ """+ The permission level the team has on the repository++ **Upcoming Change on 2020-10-01 UTC**+ **Description:** Type for `permission` will change from `RepositoryPermission!` to `String`.+ **Reason:** This field may return additional values+ """+ permission: RepositoryPermission!+}++"""+Ordering options for team repository connections+"""+input TeamRepositoryOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order repositories by.+ """+ field: TeamRepositoryOrderField!+}++"""+Properties by which team repository connections can be ordered.+"""+enum TeamRepositoryOrderField {+ """+ Order repositories by creation time+ """+ CREATED_AT++ """+ Order repositories by name+ """+ NAME++ """+ Order repositories by permission+ """+ PERMISSION++ """+ Order repositories by push time+ """+ PUSHED_AT++ """+ Order repositories by number of stargazers+ """+ STARGAZERS++ """+ Order repositories by update time+ """+ UPDATED_AT+}++"""+The possible team review assignment algorithms+"""+enum TeamReviewAssignmentAlgorithm @preview(toggledBy: "stone-crop-preview") {+ """+ Balance review load across the entire team+ """+ LOAD_BALANCE++ """+ Alternate reviews between each team member+ """+ ROUND_ROBIN+}++"""+The role of a user on a team.+"""+enum TeamRole {+ """+ User has admin rights on the team.+ """+ ADMIN++ """+ User is a member of the team.+ """+ MEMBER+}++"""+A text match within a search result.+"""+type TextMatch {+ """+ The specific text fragment within the property matched on.+ """+ fragment: String!++ """+ Highlights within the matched fragment.+ """+ highlights: [TextMatchHighlight!]!++ """+ The property matched on.+ """+ property: String!+}++"""+Represents a single highlight in a search result match.+"""+type TextMatchHighlight {+ """+ The indice in the fragment where the matched text begins.+ """+ beginIndice: Int!++ """+ The indice in the fragment where the matched text ends.+ """+ endIndice: Int!++ """+ The text matched.+ """+ text: String!+}++"""+A topic aggregates entities that are related to a subject.+"""+type Topic implements Node & Starrable {+ id: ID!++ """+ The topic's name.+ """+ name: String!++ """+ A list of related topics, including aliases of this topic, sorted with the most relevant+ first. Returns up to 10 Topics.+ """+ relatedTopics(+ """+ How many topics to return.+ """+ first: Int = 3+ ): [Topic!]!++ """+ A list of users who have starred this starrable.+ """+ stargazers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: StarOrder+ ): StargazerConnection!++ """+ Returns a boolean indicating whether the viewing user has starred this starrable.+ """+ viewerHasStarred: Boolean!+}++"""+Metadata for an audit entry with a topic.+"""+interface TopicAuditEntryData {+ """+ The name of the topic added to the repository+ """+ topic: Topic++ """+ The name of the topic added to the repository+ """+ topicName: String+}++"""+Reason that the suggested topic is declined.+"""+enum TopicSuggestionDeclineReason {+ """+ The suggested topic is not relevant to the repository.+ """+ NOT_RELEVANT++ """+ The viewer does not like the suggested topic.+ """+ PERSONAL_PREFERENCE++ """+ The suggested topic is too general for the repository.+ """+ TOO_GENERAL++ """+ The suggested topic is too specific for the repository (e.g. #ruby-on-rails-version-4-2-1).+ """+ TOO_SPECIFIC+}++"""+Autogenerated input type of TransferIssue+"""+input TransferIssueInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the issue to be transferred+ """+ issueId: ID! @possibleTypes(concreteTypes: ["Issue"])++ """+ The Node ID of the repository the issue should be transferred to+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of TransferIssue+"""+type TransferIssuePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The issue that was transferred+ """+ issue: Issue+}++"""+Represents a 'transferred' event on a given issue or pull request.+"""+type TransferredEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ The repository this came from+ """+ fromRepository: Repository+ id: ID!++ """+ Identifies the issue associated with the event.+ """+ issue: Issue!+}++"""+Represents a Git tree.+"""+type Tree implements GitObject & Node {+ """+ An abbreviated version of the Git object ID+ """+ abbreviatedOid: String!++ """+ The HTTP path for this Git object+ """+ commitResourcePath: URI!++ """+ The HTTP URL for this Git object+ """+ commitUrl: URI!++ """+ A list of tree entries.+ """+ entries: [TreeEntry!]+ id: ID!++ """+ The Git object ID+ """+ oid: GitObjectID!++ """+ The Repository the Git object belongs to+ """+ repository: Repository!+}++"""+Represents a Git tree entry.+"""+type TreeEntry {+ """+ Entry file mode.+ """+ mode: Int!++ """+ Entry file name.+ """+ name: String!++ """+ Entry file object.+ """+ object: GitObject++ """+ Entry file Git object ID.+ """+ oid: GitObjectID!++ """+ The Repository the tree entry belongs to+ """+ repository: Repository!++ """+ If the TreeEntry is for a directory occupied by a submodule project, this returns the corresponding submodule+ """+ submodule: Submodule++ """+ Entry file type.+ """+ type: String!+}++"""+An RFC 3986, RFC 3987, and RFC 6570 (level 4) compliant URI string.+"""+scalar URI++"""+Autogenerated input type of UnarchiveRepository+"""+input UnarchiveRepositoryInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the repository to unarchive.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of UnarchiveRepository+"""+type UnarchiveRepositoryPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The repository that was unarchived.+ """+ repository: Repository+}++"""+Represents an 'unassigned' event on any assignable object.+"""+type UnassignedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the assignable associated with the event.+ """+ assignable: Assignable!++ """+ Identifies the user or mannequin that was unassigned.+ """+ assignee: Assignee++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Identifies the subject (user) who was unassigned.+ """+ user: User+ @deprecated(+ reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC."+ )+}++"""+Autogenerated input type of UnfollowUser+"""+input UnfollowUserInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ ID of the user to unfollow.+ """+ userId: ID! @possibleTypes(concreteTypes: ["User"])+}++"""+Autogenerated return type of UnfollowUser+"""+type UnfollowUserPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The user that was unfollowed.+ """+ user: User+}++"""+Represents a type that can be retrieved by a URL.+"""+interface UniformResourceLocatable {+ """+ The HTML path to this resource.+ """+ resourcePath: URI!++ """+ The URL to this resource.+ """+ url: URI!+}++"""+Represents an unknown signature on a Commit or Tag.+"""+type UnknownSignature implements GitSignature {+ """+ Email used to sign this object.+ """+ email: String!++ """+ True if the signature is valid and verified by GitHub.+ """+ isValid: Boolean!++ """+ Payload for GPG signing object. Raw ODB object without the signature header.+ """+ payload: String!++ """+ ASCII-armored signature header from object.+ """+ signature: String!++ """+ GitHub user corresponding to the email signing this commit.+ """+ signer: User++ """+ The state of this signature. `VALID` if signature is valid and verified by+ GitHub, otherwise represents reason why signature is considered invalid.+ """+ state: GitSignatureState!++ """+ True if the signature was made with GitHub's signing key.+ """+ wasSignedByGitHub: Boolean!+}++"""+Represents an 'unlabeled' event on a given issue or pull request.+"""+type UnlabeledEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Identifies the label associated with the 'unlabeled' event.+ """+ label: Label!++ """+ Identifies the `Labelable` associated with the event.+ """+ labelable: Labelable!+}++"""+Autogenerated input type of UnlinkRepositoryFromProject+"""+input UnlinkRepositoryFromProjectInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the Project linked to the Repository.+ """+ projectId: ID! @possibleTypes(concreteTypes: ["Project"])++ """+ The ID of the Repository linked to the Project.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of UnlinkRepositoryFromProject+"""+type UnlinkRepositoryFromProjectPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The linked Project.+ """+ project: Project++ """+ The linked Repository.+ """+ repository: Repository+}++"""+Autogenerated input type of UnlockLockable+"""+input UnlockLockableInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ ID of the issue or pull request to be unlocked.+ """+ lockableId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "Lockable"+ )+}++"""+Autogenerated return type of UnlockLockable+"""+type UnlockLockablePayload {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The item that was unlocked.+ """+ unlockedRecord: Lockable+}++"""+Represents an 'unlocked' event on a given issue or pull request.+"""+type UnlockedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Object that was unlocked.+ """+ lockable: Lockable!+}++"""+Autogenerated input type of UnmarkIssueAsDuplicate+"""+input UnmarkIssueAsDuplicateInput {+ """+ ID of the issue or pull request currently considered canonical/authoritative/original.+ """+ canonicalId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "IssueOrPullRequest"+ )++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ ID of the issue or pull request currently marked as a duplicate.+ """+ duplicateId: ID!+ @possibleTypes(+ concreteTypes: ["Issue", "PullRequest"]+ abstractType: "IssueOrPullRequest"+ )+}++"""+Autogenerated return type of UnmarkIssueAsDuplicate+"""+type UnmarkIssueAsDuplicatePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The issue or pull request that was marked as a duplicate.+ """+ duplicate: IssueOrPullRequest+}++"""+Represents an 'unmarked_as_duplicate' event on a given issue or pull request.+"""+type UnmarkedAsDuplicateEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!+}++"""+Autogenerated input type of UnminimizeComment+"""+input UnminimizeCommentInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the subject to modify.+ """+ subjectId: ID!+ @possibleTypes(+ concreteTypes: [+ "CommitComment"+ "GistComment"+ "IssueComment"+ "PullRequestReviewComment"+ ]+ abstractType: "Minimizable"+ )+}++"""+Autogenerated return type of UnminimizeComment+"""+type UnminimizeCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The comment that was unminimized.+ """+ unminimizedComment: Minimizable+}++"""+Autogenerated input type of UnpinIssue+"""+input UnpinIssueInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the issue to be unpinned+ """+ issueId: ID! @possibleTypes(concreteTypes: ["Issue"])+}++"""+Autogenerated return type of UnpinIssue+"""+type UnpinIssuePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The issue that was unpinned+ """+ issue: Issue+}++"""+Represents an 'unpinned' event on a given issue or pull request.+"""+type UnpinnedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Identifies the issue associated with the event.+ """+ issue: Issue!+}++"""+Autogenerated input type of UnresolveReviewThread+"""+input UnresolveReviewThreadInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the thread to unresolve+ """+ threadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"])+}++"""+Autogenerated return type of UnresolveReviewThread+"""+type UnresolveReviewThreadPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The thread to resolve.+ """+ thread: PullRequestReviewThread+}++"""+Represents an 'unsubscribed' event on a given `Subscribable`.+"""+type UnsubscribedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ Object referenced by event.+ """+ subscribable: Subscribable!+}++"""+Entities that can be updated.+"""+interface Updatable {+ """+ Check if the current viewer can update this object.+ """+ viewerCanUpdate: Boolean!+}++"""+Comments that can be updated.+"""+interface UpdatableComment {+ """+ Reasons why the current viewer can not update this comment.+ """+ viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!+}++"""+Autogenerated input type of UpdateBranchProtectionRule+"""+input UpdateBranchProtectionRuleInput {+ """+ The global relay id of the branch protection rule to be updated.+ """+ branchProtectionRuleId: ID!+ @possibleTypes(concreteTypes: ["BranchProtectionRule"])++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Will new commits pushed to matching branches dismiss pull request review approvals.+ """+ dismissesStaleReviews: Boolean++ """+ Can admins overwrite branch protection.+ """+ isAdminEnforced: Boolean++ """+ The glob-like pattern used to determine matching branches.+ """+ pattern: String++ """+ A list of User, Team or App IDs allowed to push to matching branches.+ """+ pushActorIds: [ID!]++ """+ Number of approving reviews required to update matching branches.+ """+ requiredApprovingReviewCount: Int++ """+ List of required status check contexts that must pass for commits to be accepted to matching branches.+ """+ requiredStatusCheckContexts: [String!]++ """+ Are approving reviews required to update matching branches.+ """+ requiresApprovingReviews: Boolean++ """+ Are reviews from code owners required to update matching branches.+ """+ requiresCodeOwnerReviews: Boolean++ """+ Are commits required to be signed.+ """+ requiresCommitSignatures: Boolean++ """+ Are status checks required to update matching branches.+ """+ requiresStatusChecks: Boolean++ """+ Are branches required to be up to date before merging.+ """+ requiresStrictStatusChecks: Boolean++ """+ Is pushing to matching branches restricted.+ """+ restrictsPushes: Boolean++ """+ Is dismissal of pull request reviews restricted.+ """+ restrictsReviewDismissals: Boolean++ """+ A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches.+ """+ reviewDismissalActorIds: [ID!]+}++"""+Autogenerated return type of UpdateBranchProtectionRule+"""+type UpdateBranchProtectionRulePayload {+ """+ The newly created BranchProtectionRule.+ """+ branchProtectionRule: BranchProtectionRule++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of UpdateCheckRun+"""+input UpdateCheckRunInput @preview(toggledBy: "antiope-preview") {+ """+ Possible further actions the integrator can perform, which a user may trigger.+ """+ actions: [CheckRunAction!]++ """+ The node of the check.+ """+ checkRunId: ID! @possibleTypes(concreteTypes: ["CheckRun"])++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The time that the check run finished.+ """+ completedAt: DateTime++ """+ The final conclusion of the check.+ """+ conclusion: CheckConclusionState++ """+ The URL of the integrator's site that has the full details of the check.+ """+ detailsUrl: URI++ """+ A reference for the run on the integrator's system.+ """+ externalId: String++ """+ The name of the check.+ """+ name: String++ """+ Descriptive details about the run.+ """+ output: CheckRunOutput++ """+ The node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ The time that the check run began.+ """+ startedAt: DateTime++ """+ The current status.+ """+ status: RequestableCheckStatusState+}++"""+Autogenerated return type of UpdateCheckRun+"""+type UpdateCheckRunPayload @preview(toggledBy: "antiope-preview") {+ """+ The updated check run.+ """+ checkRun: CheckRun++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of UpdateCheckSuitePreferences+"""+input UpdateCheckSuitePreferencesInput @preview(toggledBy: "antiope-preview") {+ """+ The check suite preferences to modify.+ """+ autoTriggerPreferences: [CheckSuiteAutoTriggerPreference!]!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of UpdateCheckSuitePreferences+"""+type UpdateCheckSuitePreferencesPayload @preview(toggledBy: "antiope-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated repository.+ """+ repository: Repository+}++"""+Autogenerated input type of UpdateEnterpriseActionExecutionCapabilitySetting+"""+input UpdateEnterpriseActionExecutionCapabilitySettingInput {+ """+ The value for the action execution capability setting on the enterprise.+ """+ capability: ActionExecutionCapabilitySetting!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the members can create repositories setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])+}++"""+Autogenerated return type of UpdateEnterpriseActionExecutionCapabilitySetting+"""+type UpdateEnterpriseActionExecutionCapabilitySettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated action execution capability setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the action execution capability setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseAdministratorRole+"""+input UpdateEnterpriseAdministratorRoleInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the Enterprise which the admin belongs to.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The login of a administrator whose role is being changed.+ """+ login: String!++ """+ The new role for the Enterprise administrator.+ """+ role: EnterpriseAdministratorRole!+}++"""+Autogenerated return type of UpdateEnterpriseAdministratorRole+"""+type UpdateEnterpriseAdministratorRolePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ A message confirming the result of changing the administrator's role.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseAllowPrivateRepositoryForkingSetting+"""+input UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the allow private repository forking setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the allow private repository forking setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseAllowPrivateRepositoryForkingSetting+"""+type UpdateEnterpriseAllowPrivateRepositoryForkingSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated allow private repository forking setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the allow private repository forking setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseDefaultRepositoryPermissionSetting+"""+input UpdateEnterpriseDefaultRepositoryPermissionSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the default repository permission setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the default repository permission setting on the enterprise.+ """+ settingValue: EnterpriseDefaultRepositoryPermissionSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseDefaultRepositoryPermissionSetting+"""+type UpdateEnterpriseDefaultRepositoryPermissionSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated default repository permission setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the default repository permission setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting+"""+input UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the members can change repository visibility setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the members can change repository visibility setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting+"""+type UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated members can change repository visibility setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the members can change repository visibility setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseMembersCanCreateRepositoriesSetting+"""+input UpdateEnterpriseMembersCanCreateRepositoriesSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the members can create repositories setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ Allow members to create internal repositories. Defaults to current value.+ """+ membersCanCreateInternalRepositories: Boolean++ """+ Allow members to create private repositories. Defaults to current value.+ """+ membersCanCreatePrivateRepositories: Boolean++ """+ Allow members to create public repositories. Defaults to current value.+ """+ membersCanCreatePublicRepositories: Boolean++ """+ When false, allow member organizations to set their own repository creation member privileges.+ """+ membersCanCreateRepositoriesPolicyEnabled: Boolean++ """+ 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+}++"""+Autogenerated return type of UpdateEnterpriseMembersCanCreateRepositoriesSetting+"""+type UpdateEnterpriseMembersCanCreateRepositoriesSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated members can create repositories setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the members can create repositories setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseMembersCanDeleteIssuesSetting+"""+input UpdateEnterpriseMembersCanDeleteIssuesSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the members can delete issues setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the members can delete issues setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseMembersCanDeleteIssuesSetting+"""+type UpdateEnterpriseMembersCanDeleteIssuesSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated members can delete issues setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the members can delete issues setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseMembersCanDeleteRepositoriesSetting+"""+input UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the members can delete repositories setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the members can delete repositories setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseMembersCanDeleteRepositoriesSetting+"""+type UpdateEnterpriseMembersCanDeleteRepositoriesSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated members can delete repositories setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the members can delete repositories setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseMembersCanInviteCollaboratorsSetting+"""+input UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the members can invite collaborators setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the members can invite collaborators setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseMembersCanInviteCollaboratorsSetting+"""+type UpdateEnterpriseMembersCanInviteCollaboratorsSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated members can invite collaborators setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the members can invite collaborators setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseMembersCanMakePurchasesSetting+"""+input UpdateEnterpriseMembersCanMakePurchasesSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the members can make purchases setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the members can make purchases setting on the enterprise.+ """+ settingValue: EnterpriseMembersCanMakePurchasesSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseMembersCanMakePurchasesSetting+"""+type UpdateEnterpriseMembersCanMakePurchasesSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated members can make purchases setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the members can make purchases setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting+"""+input UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the members can update protected branches setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the members can update protected branches setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting+"""+type UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated members can update protected branches setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the members can update protected branches setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseMembersCanViewDependencyInsightsSetting+"""+input UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the members can view dependency insights setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the members can view dependency insights setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseMembersCanViewDependencyInsightsSetting+"""+type UpdateEnterpriseMembersCanViewDependencyInsightsSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated members can view dependency insights setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the members can view dependency insights setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseOrganizationProjectsSetting+"""+input UpdateEnterpriseOrganizationProjectsSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the organization projects setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the organization projects setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseOrganizationProjectsSetting+"""+type UpdateEnterpriseOrganizationProjectsSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated organization projects setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the organization projects setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseProfile+"""+input UpdateEnterpriseProfileInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The description of the enterprise.+ """+ description: String++ """+ The Enterprise ID to update.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The location of the enterprise.+ """+ location: String++ """+ The name of the enterprise.+ """+ name: String++ """+ The URL of the enterprise's website.+ """+ websiteUrl: String+}++"""+Autogenerated return type of UpdateEnterpriseProfile+"""+type UpdateEnterpriseProfilePayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated enterprise.+ """+ enterprise: Enterprise+}++"""+Autogenerated input type of UpdateEnterpriseRepositoryProjectsSetting+"""+input UpdateEnterpriseRepositoryProjectsSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the repository projects setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the repository projects setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseRepositoryProjectsSetting+"""+type UpdateEnterpriseRepositoryProjectsSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated repository projects setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the repository projects setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseTeamDiscussionsSetting+"""+input UpdateEnterpriseTeamDiscussionsSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the team discussions setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the team discussions setting on the enterprise.+ """+ settingValue: EnterpriseEnabledDisabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseTeamDiscussionsSetting+"""+type UpdateEnterpriseTeamDiscussionsSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated team discussions setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the team discussions setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateEnterpriseTwoFactorAuthenticationRequiredSetting+"""+input UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the enterprise on which to set the two factor authentication required setting.+ """+ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"])++ """+ The value for the two factor authentication required setting on the enterprise.+ """+ settingValue: EnterpriseEnabledSettingValue!+}++"""+Autogenerated return type of UpdateEnterpriseTwoFactorAuthenticationRequiredSetting+"""+type UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The enterprise with the updated two factor authentication required setting.+ """+ enterprise: Enterprise++ """+ A message confirming the result of updating the two factor authentication required setting.+ """+ message: String+}++"""+Autogenerated input type of UpdateIpAllowListEnabledSetting+"""+input UpdateIpAllowListEnabledSettingInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the owner on which to set the IP allow list enabled setting.+ """+ ownerId: ID!+ @possibleTypes(+ concreteTypes: ["Enterprise", "Organization"]+ abstractType: "IpAllowListOwner"+ )++ """+ The value for the IP allow list enabled setting.+ """+ settingValue: IpAllowListEnabledSettingValue!+}++"""+Autogenerated return type of UpdateIpAllowListEnabledSetting+"""+type UpdateIpAllowListEnabledSettingPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The IP allow list owner on which the setting was updated.+ """+ owner: IpAllowListOwner+}++"""+Autogenerated input type of UpdateIpAllowListEntry+"""+input UpdateIpAllowListEntryInput {+ """+ An IP address or range of addresses in CIDR notation.+ """+ allowListValue: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the IP allow list entry to update.+ """+ ipAllowListEntryId: ID! @possibleTypes(concreteTypes: ["IpAllowListEntry"])++ """+ Whether the IP allow list entry is active when an IP allow list is enabled.+ """+ isActive: Boolean!++ """+ An optional name for the IP allow list entry.+ """+ name: String+}++"""+Autogenerated return type of UpdateIpAllowListEntry+"""+type UpdateIpAllowListEntryPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The IP allow list entry that was updated.+ """+ ipAllowListEntry: IpAllowListEntry+}++"""+Autogenerated input type of UpdateIssueComment+"""+input UpdateIssueCommentInput {+ """+ The updated text of the comment.+ """+ body: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the IssueComment to modify.+ """+ id: ID! @possibleTypes(concreteTypes: ["IssueComment"])+}++"""+Autogenerated return type of UpdateIssueComment+"""+type UpdateIssueCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated comment.+ """+ issueComment: IssueComment+}++"""+Autogenerated input type of UpdateIssue+"""+input UpdateIssueInput {+ """+ An array of Node IDs of users for this issue.+ """+ assigneeIds: [ID!] @possibleTypes(concreteTypes: ["User"])++ """+ The body for the issue description.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the Issue to modify.+ """+ id: ID! @possibleTypes(concreteTypes: ["Issue"])++ """+ An array of Node IDs of labels for this issue.+ """+ labelIds: [ID!] @possibleTypes(concreteTypes: ["Label"])++ """+ The Node ID of the milestone for this issue.+ """+ milestoneId: ID @possibleTypes(concreteTypes: ["Milestone"])++ """+ An array of Node IDs for projects associated with this issue.+ """+ projectIds: [ID!]++ """+ The desired issue state.+ """+ state: IssueState++ """+ The title for the issue.+ """+ title: String+}++"""+Autogenerated return type of UpdateIssue+"""+type UpdateIssuePayload {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The issue.+ """+ issue: Issue+}++"""+Autogenerated input type of UpdateLabel+"""+input UpdateLabelInput @preview(toggledBy: "bane-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ A 6 character hex code, without the leading #, identifying the updated color of the label.+ """+ color: String++ """+ A brief description of the label, such as its purpose.+ """+ description: String++ """+ The Node ID of the label to be updated.+ """+ id: ID! @possibleTypes(concreteTypes: ["Label"])++ """+ The updated name of the label.+ """+ name: String+}++"""+Autogenerated return type of UpdateLabel+"""+type UpdateLabelPayload @preview(toggledBy: "bane-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated label.+ """+ label: Label+}++"""+Autogenerated input type of UpdateProjectCard+"""+input UpdateProjectCardInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Whether or not the ProjectCard should be archived+ """+ isArchived: Boolean++ """+ The note of ProjectCard.+ """+ note: String++ """+ The ProjectCard ID to update.+ """+ projectCardId: ID! @possibleTypes(concreteTypes: ["ProjectCard"])+}++"""+Autogenerated return type of UpdateProjectCard+"""+type UpdateProjectCardPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated ProjectCard.+ """+ projectCard: ProjectCard+}++"""+Autogenerated input type of UpdateProjectColumn+"""+input UpdateProjectColumnInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The name of project column.+ """+ name: String!++ """+ The ProjectColumn ID to update.+ """+ projectColumnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"])+}++"""+Autogenerated return type of UpdateProjectColumn+"""+type UpdateProjectColumnPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated project column.+ """+ projectColumn: ProjectColumn+}++"""+Autogenerated input type of UpdateProject+"""+input UpdateProjectInput {+ """+ The description of project.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The name of project.+ """+ name: String++ """+ The Project ID to update.+ """+ projectId: ID! @possibleTypes(concreteTypes: ["Project"])++ """+ Whether the project is public or not.+ """+ public: Boolean++ """+ Whether the project is open or closed.+ """+ state: ProjectState+}++"""+Autogenerated return type of UpdateProject+"""+type UpdateProjectPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated project.+ """+ project: Project+}++"""+Autogenerated input type of UpdatePullRequest+"""+input UpdatePullRequestInput {+ """+ An array of Node IDs of users for this pull request.+ """+ assigneeIds: [ID!] @possibleTypes(concreteTypes: ["User"])++ """+ The name of the branch you want your changes pulled into. This should be an existing branch+ on the current repository.+ """+ baseRefName: String++ """+ The contents of the pull request.+ """+ body: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ An array of Node IDs of labels for this pull request.+ """+ labelIds: [ID!] @possibleTypes(concreteTypes: ["Label"])++ """+ Indicates whether maintainers can modify the pull request.+ """+ maintainerCanModify: Boolean++ """+ The Node ID of the milestone for this pull request.+ """+ milestoneId: ID @possibleTypes(concreteTypes: ["Milestone"])++ """+ An array of Node IDs for projects associated with this pull request.+ """+ projectIds: [ID!]++ """+ The Node ID of the pull request.+ """+ pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"])++ """+ The target state of the pull request.+ """+ state: PullRequestUpdateState++ """+ The title of the pull request.+ """+ title: String+}++"""+Autogenerated return type of UpdatePullRequest+"""+type UpdatePullRequestPayload {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated pull request.+ """+ pullRequest: PullRequest+}++"""+Autogenerated input type of UpdatePullRequestReviewComment+"""+input UpdatePullRequestReviewCommentInput {+ """+ The text of the comment.+ """+ body: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the comment to modify.+ """+ pullRequestReviewCommentId: ID!+ @possibleTypes(concreteTypes: ["PullRequestReviewComment"])+}++"""+Autogenerated return type of UpdatePullRequestReviewComment+"""+type UpdatePullRequestReviewCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated comment.+ """+ pullRequestReviewComment: PullRequestReviewComment+}++"""+Autogenerated input type of UpdatePullRequestReview+"""+input UpdatePullRequestReviewInput {+ """+ The contents of the pull request review body.+ """+ body: String!++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the pull request review to modify.+ """+ pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"])+}++"""+Autogenerated return type of UpdatePullRequestReview+"""+type UpdatePullRequestReviewPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated pull request review.+ """+ pullRequestReview: PullRequestReview+}++"""+Autogenerated input type of UpdateRef+"""+input UpdateRefInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Permit updates of branch Refs that are not fast-forwards?+ """+ force: Boolean = false++ """+ The GitObjectID that the Ref shall be updated to target.+ """+ oid: GitObjectID!++ """+ The Node ID of the Ref to be updated.+ """+ refId: ID! @possibleTypes(concreteTypes: ["Ref"])+}++"""+Autogenerated return type of UpdateRef+"""+type UpdateRefPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated Ref.+ """+ ref: Ref+}++"""+Autogenerated input type of UpdateRefs+"""+input UpdateRefsInput @preview(toggledBy: "update-refs-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ A list of ref updates.+ """+ refUpdates: [RefUpdate!]!++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])+}++"""+Autogenerated return type of UpdateRefs+"""+type UpdateRefsPayload @preview(toggledBy: "update-refs-preview") {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String+}++"""+Autogenerated input type of UpdateRepository+"""+input UpdateRepositoryInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ A new description for the repository. Pass an empty string to erase the existing description.+ """+ description: String++ """+ Indicates if the repository should have the issues feature enabled.+ """+ hasIssuesEnabled: Boolean++ """+ Indicates if the repository should have the project boards feature enabled.+ """+ hasProjectsEnabled: Boolean++ """+ Indicates if the repository should have the wiki feature enabled.+ """+ hasWikiEnabled: Boolean++ """+ The URL for a web page about this repository. Pass an empty string to erase the existing URL.+ """+ homepageUrl: URI++ """+ The new name of the repository.+ """+ name: String++ """+ The ID of the repository to update.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ 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: Boolean+}++"""+Autogenerated return type of UpdateRepository+"""+type UpdateRepositoryPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated repository.+ """+ repository: Repository+}++"""+Autogenerated input type of UpdateSubscription+"""+input UpdateSubscriptionInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The new state of the subscription.+ """+ state: SubscriptionState!++ """+ The Node ID of the subscribable object to modify.+ """+ subscribableId: ID!+ @possibleTypes(+ concreteTypes: [+ "Commit"+ "Issue"+ "PullRequest"+ "Repository"+ "Team"+ "TeamDiscussion"+ ]+ abstractType: "Subscribable"+ )+}++"""+Autogenerated return type of UpdateSubscription+"""+type UpdateSubscriptionPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The input subscribable entity.+ """+ subscribable: Subscribable+}++"""+Autogenerated input type of UpdateTeamDiscussionComment+"""+input UpdateTeamDiscussionCommentInput {+ """+ The updated text of the comment.+ """+ body: String!++ """+ The current version of the body content.+ """+ bodyVersion: String++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The ID of the comment to modify.+ """+ id: ID! @possibleTypes(concreteTypes: ["TeamDiscussionComment"])+}++"""+Autogenerated return type of UpdateTeamDiscussionComment+"""+type UpdateTeamDiscussionCommentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated comment.+ """+ teamDiscussionComment: TeamDiscussionComment+}++"""+Autogenerated input type of UpdateTeamDiscussion+"""+input UpdateTeamDiscussionInput {+ """+ The updated text of the discussion.+ """+ body: String++ """+ 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++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the discussion to modify.+ """+ id: ID! @possibleTypes(concreteTypes: ["TeamDiscussion"])++ """+ If provided, sets the pinned state of the updated discussion.+ """+ pinned: Boolean++ """+ The updated title of the discussion.+ """+ title: String+}++"""+Autogenerated return type of UpdateTeamDiscussion+"""+type UpdateTeamDiscussionPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The updated discussion.+ """+ teamDiscussion: TeamDiscussion+}++"""+Autogenerated input type of UpdateTeamReviewAssignment+"""+input UpdateTeamReviewAssignmentInput+@preview(toggledBy: "stone-crop-preview") {+ """+ The algorithm to use for review assignment+ """+ algorithm: TeamReviewAssignmentAlgorithm = ROUND_ROBIN++ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Turn on or off review assignment+ """+ enabled: Boolean!++ """+ An array of team member IDs to exclude+ """+ excludedTeamMemberIds: [ID!] @possibleTypes(concreteTypes: ["User"])++ """+ The Node ID of the team to update review assginments of+ """+ id: ID! @possibleTypes(concreteTypes: ["Team"])++ """+ Notify the entire team of the PR if it is delegated+ """+ notifyTeam: Boolean = true++ """+ The number of team members to assign+ """+ teamMemberCount: Int = 1+}++"""+Autogenerated return type of UpdateTeamReviewAssignment+"""+type UpdateTeamReviewAssignmentPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The team that was modified+ """+ team: Team+}++"""+Autogenerated input type of UpdateTopics+"""+input UpdateTopicsInput {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ The Node ID of the repository.+ """+ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"])++ """+ An array of topic names.+ """+ topicNames: [String!]!+}++"""+Autogenerated return type of UpdateTopics+"""+type UpdateTopicsPayload {+ """+ A unique identifier for the client performing the mutation.+ """+ clientMutationId: String++ """+ Names of the provided topics that are not valid.+ """+ invalidTopicNames: [String!]++ """+ The updated repository.+ """+ repository: Repository+}++"""+A user is an individual's account on GitHub that owns repositories and can make new content.+"""+type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & RepositoryOwner & Sponsorable & UniformResourceLocatable {+ """+ Determine if this repository owner has any items that can be pinned to their profile.+ """+ anyPinnableItems(+ """+ Filter to only a particular kind of pinnable item.+ """+ type: PinnableItemType+ ): Boolean!++ """+ A URL pointing to the user's public avatar.+ """+ avatarUrl(+ """+ The size of the resulting square image.+ """+ size: Int+ ): URI!++ """+ The user's public profile bio.+ """+ bio: String++ """+ The user's public profile bio as HTML.+ """+ bioHTML: HTML!++ """+ A list of commit comments made by this user.+ """+ commitComments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): CommitCommentConnection!++ """+ The user's public profile company.+ """+ company: String++ """+ The user's public profile company as HTML.+ """+ companyHTML: HTML!++ """+ The collection of contributions this user has made to different repositories.+ """+ contributionsCollection(+ """+ Only contributions made at this time or later will be counted. If omitted, defaults to a year ago.+ """+ from: DateTime++ """+ The ID of the organization used to filter contributions.+ """+ organizationID: ID++ """+ Only contributions made before and up to and including this time will be+ counted. If omitted, defaults to the current time.+ """+ to: DateTime+ ): ContributionsCollection!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the primary key from the database.+ """+ databaseId: Int++ """+ The user's publicly visible profile email.+ """+ email: String!++ """+ A list of users the given user is followed by.+ """+ followers(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): FollowerConnection!++ """+ A list of users the given user is following.+ """+ following(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): FollowingConnection!++ """+ Find gist by repo name.+ """+ gist(+ """+ The gist name to find.+ """+ name: String!+ ): Gist++ """+ A list of gist comments made by this user.+ """+ gistComments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): GistCommentConnection!++ """+ A list of the Gists the user has created.+ """+ gists(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for gists returned from the connection+ """+ orderBy: GistOrder++ """+ Filters Gists according to privacy.+ """+ privacy: GistPrivacy+ ): GistConnection!++ """+ The hovercard information for this user in a given context+ """+ hovercard(+ """+ The ID of the subject to get the hovercard in the context of+ """+ primarySubjectId: ID+ ): Hovercard!+ id: ID!++ """+ Whether or not this user is a participant in the GitHub Security Bug Bounty.+ """+ isBountyHunter: Boolean!++ """+ Whether or not this user is a participant in the GitHub Campus Experts Program.+ """+ isCampusExpert: Boolean!++ """+ Whether or not this user is a GitHub Developer Program member.+ """+ isDeveloperProgramMember: Boolean!++ """+ Whether or not this user is a GitHub employee.+ """+ isEmployee: Boolean!++ """+ Whether or not the user has marked themselves as for hire.+ """+ isHireable: Boolean!++ """+ Whether or not this user is a site administrator.+ """+ isSiteAdmin: Boolean!++ """+ Whether or not this user is the viewing user.+ """+ isViewer: Boolean!++ """+ A list of issue comments made by this user.+ """+ issueComments(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): IssueCommentConnection!++ """+ A list of issues associated with this user.+ """+ issues(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Filtering options for issues returned from the connection.+ """+ filterBy: IssueFilters++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for issues returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the issues by.+ """+ states: [IssueState!]+ ): IssueConnection!++ """+ Showcases a selection of repositories and gists that the profile owner has+ either curated or that have been selected automatically based on popularity.+ """+ itemShowcase: ProfileItemShowcase!++ """+ The user's public profile location.+ """+ location: String++ """+ The username used to login.+ """+ login: String!++ """+ The user's public profile name.+ """+ name: String++ """+ Find an organization by its login that the user belongs to.+ """+ organization(+ """+ The login of the organization to find.+ """+ login: String!+ ): Organization++ """+ Verified email addresses that match verified domains for a specified organization the user is a member of.+ """+ organizationVerifiedDomainEmails(+ """+ The login of the organization to match verified domains from.+ """+ login: String!+ ): [String!]!++ """+ A list of organizations the user belongs to.+ """+ organizations(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): OrganizationConnection!++ """+ A list of packages under the owner.+ """+ packages(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Find packages by their names.+ """+ names: [String]++ """+ Ordering of the returned packages.+ """+ orderBy: PackageOrder = { field: CREATED_AT, direction: DESC }++ """+ Filter registry package by type.+ """+ packageType: PackageType++ """+ Find packages in a repository by ID.+ """+ repositoryId: ID+ ): PackageConnection!++ """+ A list of repositories and gists this profile owner can pin to their profile.+ """+ pinnableItems(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filter the types of pinnable items that are returned.+ """+ types: [PinnableItemType!]+ ): PinnableItemConnection!++ """+ A list of repositories and gists this profile owner has pinned to their profile+ """+ pinnedItems(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Filter the types of pinned items that are returned.+ """+ types: [PinnableItemType!]+ ): PinnableItemConnection!++ """+ Returns how many more items this profile owner can pin to their profile.+ """+ pinnedItemsRemaining: Int!++ """+ Find project by number.+ """+ project(+ """+ The project number to find.+ """+ number: Int!+ ): Project++ """+ A list of projects under the owner.+ """+ projects(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for projects returned from the connection+ """+ orderBy: ProjectOrder++ """+ Query to search projects by, currently only searching by name.+ """+ search: String++ """+ A list of states to filter the projects by.+ """+ states: [ProjectState!]+ ): ProjectConnection!++ """+ The HTTP path listing user's projects+ """+ projectsResourcePath: URI!++ """+ The HTTP URL listing user's projects+ """+ projectsUrl: URI!++ """+ A list of public keys associated with this user.+ """+ publicKeys(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int+ ): PublicKeyConnection!++ """+ A list of pull requests associated with this user.+ """+ pullRequests(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ The base ref name to filter the pull requests by.+ """+ baseRefName: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ The head ref name to filter the pull requests by.+ """+ headRefName: String++ """+ A list of label names to filter the pull requests by.+ """+ labels: [String!]++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for pull requests returned from the connection.+ """+ orderBy: IssueOrder++ """+ A list of states to filter the pull requests by.+ """+ states: [PullRequestState!]+ ): PullRequestConnection!++ """+ A list of repositories that the user owns.+ """+ repositories(+ """+ Array of viewer's affiliation options for repositories returned from the+ connection. For example, OWNER will include only repositories that the+ current viewer owns.+ """+ affiliations: [RepositoryAffiliation]++ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ If non-null, filters repositories according to whether they are forks of another repository+ """+ isFork: Boolean++ """+ If non-null, filters repositories according to whether they have been locked+ """+ isLocked: Boolean++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for repositories returned from the connection+ """+ orderBy: RepositoryOrder++ """+ Array of owner's affiliation options for repositories returned from the+ connection. For example, OWNER will include only repositories that the+ organization or user being viewed owns.+ """+ ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR]++ """+ If non-null, filters repositories according to privacy+ """+ privacy: RepositoryPrivacy+ ): RepositoryConnection!++ """+ A list of repositories that the user recently contributed to.+ """+ repositoriesContributedTo(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ If non-null, include only the specified types of contributions. The+ GitHub.com UI uses [COMMIT, ISSUE, PULL_REQUEST, REPOSITORY]+ """+ contributionTypes: [RepositoryContributionType]++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ If true, include user repositories+ """+ includeUserRepositories: Boolean++ """+ If non-null, filters repositories according to whether they have been locked+ """+ isLocked: Boolean++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for repositories returned from the connection+ """+ orderBy: RepositoryOrder++ """+ If non-null, filters repositories according to privacy+ """+ privacy: RepositoryPrivacy+ ): RepositoryConnection!++ """+ Find Repository.+ """+ repository(+ """+ Name of Repository to find.+ """+ name: String!+ ): Repository++ """+ The HTTP path for this user+ """+ resourcePath: URI!++ """+ Replies this user has saved+ """+ savedReplies(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ The field to order saved replies by.+ """+ orderBy: SavedReplyOrder = { field: UPDATED_AT, direction: DESC }+ ): SavedReplyConnection++ """+ The GitHub Sponsors listing for this user.+ """+ sponsorsListing: SponsorsListing++ """+ This object's sponsorships as the maintainer.+ """+ sponsorshipsAsMaintainer(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Whether or not to include private sponsorships in the result set+ """+ includePrivate: Boolean = false++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for sponsorships returned from this connection. If left+ blank, the sponsorships will be ordered based on relevancy to the viewer.+ """+ orderBy: SponsorshipOrder+ ): SponsorshipConnection!++ """+ This object's sponsorships as the sponsor.+ """+ sponsorshipsAsSponsor(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for sponsorships returned from this connection. If left+ blank, the sponsorships will be ordered based on relevancy to the viewer.+ """+ orderBy: SponsorshipOrder+ ): SponsorshipConnection!++ """+ Repositories the user has starred.+ """+ starredRepositories(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Order for connection+ """+ orderBy: StarOrder++ """+ Filters starred repositories to only return repositories owned by the viewer.+ """+ ownedByViewer: Boolean+ ): StarredRepositoryConnection!++ """+ The user's description of what they're currently doing.+ """+ status: UserStatus++ """+ Repositories the user has contributed to, ordered by contribution rank, plus repositories the user has created+ """+ topRepositories(+ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for repositories returned from the connection+ """+ orderBy: RepositoryOrder!++ """+ How far back in time to fetch contributed repositories+ """+ since: DateTime+ ): RepositoryConnection!++ """+ The user's Twitter username.+ """+ twitterUsername: String++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The HTTP URL for this user+ """+ url: URI!++ """+ Can the viewer pin repositories and gists to the profile?+ """+ viewerCanChangePinnedItems: Boolean!++ """+ Can the current viewer create new projects on this owner.+ """+ viewerCanCreateProjects: Boolean!++ """+ Whether or not the viewer is able to follow the user.+ """+ viewerCanFollow: Boolean!++ """+ Whether or not this user is followed by the viewer.+ """+ viewerIsFollowing: Boolean!++ """+ A list of repositories the given user is watching.+ """+ watching(+ """+ Affiliation options for repositories returned from the connection. If none+ specified, the results will include repositories for which the current+ viewer is an owner or collaborator, or member.+ """+ affiliations: [RepositoryAffiliation]++ """+ Returns the elements in the list that come after the specified cursor.+ """+ after: String++ """+ Returns the elements in the list that come before the specified cursor.+ """+ before: String++ """+ Returns the first _n_ elements from the list.+ """+ first: Int++ """+ If non-null, filters repositories according to whether they have been locked+ """+ isLocked: Boolean++ """+ Returns the last _n_ elements from the list.+ """+ last: Int++ """+ Ordering options for repositories returned from the connection+ """+ orderBy: RepositoryOrder++ """+ Array of owner's affiliation options for repositories returned from the+ connection. For example, OWNER will include only repositories that the+ organization or user being viewed owns.+ """+ ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR]++ """+ If non-null, filters repositories according to privacy+ """+ privacy: RepositoryPrivacy+ ): RepositoryConnection!++ """+ A URL pointing to the user's public website/blog.+ """+ websiteUrl: URI+}++"""+The possible durations that a user can be blocked for.+"""+enum UserBlockDuration {+ """+ The user was blocked for 1 day+ """+ ONE_DAY++ """+ The user was blocked for 30 days+ """+ ONE_MONTH++ """+ The user was blocked for 7 days+ """+ ONE_WEEK++ """+ The user was blocked permanently+ """+ PERMANENT++ """+ The user was blocked for 3 days+ """+ THREE_DAYS+}++"""+Represents a 'user_blocked' event on a given user.+"""+type UserBlockedEvent implements Node {+ """+ Identifies the actor who performed the event.+ """+ actor: Actor++ """+ Number of days that the user was blocked for.+ """+ blockDuration: UserBlockDuration!++ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!+ id: ID!++ """+ The user who was blocked.+ """+ subject: User+}++"""+The connection type for User.+"""+type UserConnection {+ """+ A list of edges.+ """+ edges: [UserEdge]++ """+ A list of nodes.+ """+ nodes: [User]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edit on user content+"""+type UserContentEdit implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ Identifies the date and time when the object was deleted.+ """+ deletedAt: DateTime++ """+ The actor who deleted this content+ """+ deletedBy: Actor++ """+ A summary of the changes for this edit+ """+ diff: String++ """+ When this content was edited+ """+ editedAt: DateTime!++ """+ The actor who edited this content+ """+ editor: Actor+ id: ID!++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!+}++"""+A list of edits to content.+"""+type UserContentEditConnection {+ """+ A list of edges.+ """+ edges: [UserContentEditEdge]++ """+ A list of nodes.+ """+ nodes: [UserContentEdit]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type UserContentEditEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: UserContentEdit+}++"""+Represents a user.+"""+type UserEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: User+}++"""+Email attributes from External Identity+"""+type UserEmailMetadata {+ """+ Boolean to identify primary emails+ """+ primary: Boolean++ """+ Type of email+ """+ type: String++ """+ Email id+ """+ value: String!+}++"""+The user's description of what they're currently doing.+"""+type UserStatus implements Node {+ """+ Identifies the date and time when the object was created.+ """+ createdAt: DateTime!++ """+ An emoji summarizing the user's status.+ """+ emoji: String++ """+ The status emoji as HTML.+ """+ emojiHTML: HTML++ """+ If set, the status will not be shown after this date.+ """+ expiresAt: DateTime++ """+ ID of the object.+ """+ id: ID!++ """+ Whether this status indicates the user is not fully available on GitHub.+ """+ indicatesLimitedAvailability: Boolean!++ """+ A brief message describing what the user is doing.+ """+ message: String++ """+ The organization whose members can see this status. If null, this status is publicly visible.+ """+ organization: Organization++ """+ Identifies the date and time when the object was last updated.+ """+ updatedAt: DateTime!++ """+ The user who has this status.+ """+ user: User!+}++"""+The connection type for UserStatus.+"""+type UserStatusConnection {+ """+ A list of edges.+ """+ edges: [UserStatusEdge]++ """+ A list of nodes.+ """+ nodes: [UserStatus]++ """+ Information to aid in pagination.+ """+ pageInfo: PageInfo!++ """+ Identifies the total count of items in the connection.+ """+ totalCount: Int!+}++"""+An edge in a connection.+"""+type UserStatusEdge {+ """+ A cursor for use in pagination.+ """+ cursor: String!++ """+ The item at the end of the edge.+ """+ node: UserStatus+}++"""+Ordering options for user status connections.+"""+input UserStatusOrder {+ """+ The ordering direction.+ """+ direction: OrderDirection!++ """+ The field to order user statuses by.+ """+ field: UserStatusOrderField!+}++"""+Properties by which user status connections can be ordered.+"""+enum UserStatusOrderField {+ """+ Order user statuses by when they were updated.+ """+ UPDATED_AT+}++"""+A hovercard context with a message describing how the viewer is related.+"""+type ViewerHovercardContext implements HovercardContext {+ """+ A string describing this context+ """+ message: String!++ """+ An octicon to accompany this context+ """+ octicon: String!++ """+ Identifies the user who is related to this context.+ """+ viewer: User!+}++"""+A valid x509 certificate string+"""+scalar X509Certificate
test/Case/Interface/Test.hs view
@@ -48,6 +48,7 @@ ... on Deity { power }+ ... on Hero { hobby }@@ -66,7 +67,7 @@ } character4: character { ... on Hero {- hobby+ hobby } } }@@ -129,6 +130,9 @@ Character4Hero { hobby = "Hero Hobby", __typename = "Hero"+ },+ Character4Character+ { __typename = "Deity" } ] }
test/Case/Interface/response.json view
@@ -46,6 +46,10 @@ "__typename": "Hero", "hobby": "Hero Hobby", "name2": "Hero name2"+ },+ {+ "__typename": "Deity",+ "name": "Deity name" } ] }
+ test/Case/JSON/Custom/Mutation.hs view
@@ -0,0 +1,69 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}++module Case.JSON.Custom.Mutation+ ( test,+ )+where++import Data.ByteString.Lazy.Char8+ ( ByteString,+ )+import Data.Morpheus.Client+ ( Fetch (..),+ gql,+ )+import Data.Text (Text)+import Spec.Utils+ ( defineClientWithJSON,+ mockApi,+ )+import Test.Tasty+ ( TestTree,+ )+import Test.Tasty.HUnit+ ( assertEqual,+ testCase,+ )+import Prelude+ ( ($),+ Either (..),+ IO,+ Maybe (..),+ String,+ )++defineClientWithJSON+ "JSON/Custom"+ [gql|+ mutation TestMutation+ {+ mutationTypeName+ }+ |]++resolver :: ByteString -> IO ByteString+resolver = mockApi "JSON/Custom/Mutation"++client :: IO (Either String TestMutation)+client = fetch resolver ()++test :: TestTree+test = testCase "test Mutation" $ do+ value <- client+ assertEqual+ "test custom Mutation"+ ( Right+ ( TestMutation+ { mutationTypeName = Just "TestMutation"+ }+ )+ )+ value
+ test/Case/JSON/Custom/Mutation/response.json view
@@ -0,0 +1,5 @@+{+ "data": {+ "mutationTypeName": "TestMutation"+ }+}
+ test/Case/JSON/Custom/Query.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}++module Case.JSON.Custom.Query+ ( test,+ )+where++import Data.ByteString.Lazy.Char8+ ( ByteString,+ )+import Data.Morpheus.Client+ ( Fetch (..),+ GQLScalar (..),+ ScalarValue (..),+ gql,+ )+import Data.Text (Text)+import Spec.Utils+ ( defineClientWithJSON,+ mockApi,+ )+import Test.Tasty+ ( TestTree,+ )+import Test.Tasty.HUnit+ ( assertEqual,+ testCase,+ )+import Prelude+ ( ($),+ Applicative (..),+ Either (..),+ Eq (..),+ IO,+ Maybe (..),+ Show,+ String,+ )++newtype GitTimestamp = GitTimestamp+ { unGitTimestamp :: Text+ }+ deriving (Eq, Show)++instance GQLScalar GitTimestamp where+ parseValue (String x) = pure (GitTimestamp x)+ parseValue _ = Left ""+ serialize (GitTimestamp x) = String x++defineClientWithJSON+ "JSON/Custom"+ [gql|+ query TestQuery+ {+ queryTypeName+ }+ |]++resolver :: ByteString -> IO ByteString+resolver = mockApi "JSON/Custom/Query"++client :: IO (Either String TestQuery)+client = fetch resolver ()++test :: TestTree+test = testCase "test Query" $ do+ value <- client+ assertEqual+ "test custom Query"+ ( Right+ ( TestQuery+ { queryTypeName = Just "TestQuery"+ }+ )+ )+ value
+ test/Case/JSON/Custom/Query/response.json view
@@ -0,0 +1,5 @@+{+ "data": {+ "queryTypeName": "TestQuery"+ }+}
+ test/Case/JSON/Custom/Subscription.hs view
@@ -0,0 +1,70 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}++module Case.JSON.Custom.Subscription+ ( test,+ )+where++import Data.ByteString.Lazy.Char8+ ( ByteString,+ )+import Data.Morpheus.Client+ ( Fetch (..),+ gql,+ )+import Data.Text (Text)+import Spec.Utils+ ( defineClientWithJSON,+ mockApi,+ )+import Test.Tasty+ ( TestTree,+ )+import Test.Tasty.HUnit+ ( assertEqual,+ testCase,+ )+import Prelude+ ( ($),+ Either (..),+ IO,+ Maybe (..),+ String,+ )++defineClientWithJSON+ "JSON/Custom"+ [gql|+ subscription TestSubscription+ {+ subscriptionTypeName+ }+ |]++resolver :: ByteString -> IO ByteString+resolver = mockApi "JSON/Custom/Subscription"++client :: IO (Either String TestSubscription)+client = fetch resolver ()++test :: TestTree+test = testCase "test Subscription" $ do+ value <- client+ assertEqual+ "test custom Subscription"+ ( Right+ ( TestSubscription+ { subscriptionTypeName =+ Just "TestSubscription"+ }+ )+ )+ value
+ test/Case/JSON/Custom/Subscription/response.json view
@@ -0,0 +1,5 @@+{+ "data": {+ "subscriptionTypeName": "TestSubscription"+ }+}
+ test/Case/JSON/Custom/schema.json view
@@ -0,0 +1,70 @@+{+ "data": {+ "__schema": {+ "queryType": {+ "name": "CustomQueryType"+ },+ "mutationType": {+ "name": "CustomMutationType"+ },+ "subscriptionType": {+ "name": "CustomSubscriptionType"+ },+ "types": [+ {+ "kind": "OBJECT",+ "name": "CustomQueryType",+ "fields": [+ {+ "name": "queryTypeName",+ "args": [],+ "type": {+ "kind": "SCALAR",+ "name": "String"+ },+ "isDeprecated": false+ }+ ],+ "interfaces": []+ },+ {+ "kind": "OBJECT",+ "name": "CustomMutationType",+ "fields": [+ {+ "name": "mutationTypeName",+ "args": [],+ "type": {+ "kind": "SCALAR",+ "name": "String"+ },+ "isDeprecated": false+ }+ ],+ "interfaces": []+ },+ {+ "kind": "OBJECT",+ "name": "CustomSubscriptionType",+ "fields": [+ {+ "name": "subscriptionTypeName",+ "args": [],+ "type": {+ "kind": "SCALAR",+ "name": "String"+ },+ "isDeprecated": false+ }+ ],+ "interfaces": []+ },+ {+ "kind": "SCALAR",+ "name": "String"+ }+ ],+ "directives": []+ }+ }+}
test/Spec.hs view
@@ -6,7 +6,11 @@ ) where +import qualified Case.Enum.Test as Enum import Case.Interface.Test (testInterface)+import qualified Case.JSON.Custom.Mutation as JSONCustomMutation+import qualified Case.JSON.Custom.Query as JSONCustomQuery+import qualified Case.JSON.Custom.Subscription as JSONCustomSubscription import Case.LowercaseTypeName.Test ( testLowercaseTypeName, )@@ -25,5 +29,9 @@ testGroup "client tests" [ testInterface,- testLowercaseTypeName+ testLowercaseTypeName,+ Enum.test,+ JSONCustomMutation.test,+ JSONCustomQuery.test,+ JSONCustomSubscription.test ]
test/Spec/Utils.hs view
@@ -4,8 +4,8 @@ module Spec.Utils ( mockApi,- schemaUrl, defineClientWith,+ defineClientWithJSON, ) where @@ -14,13 +14,14 @@ import Data.Functor ((<$>)) import Data.Morpheus.Client ( defineByDocumentFile,+ defineByIntrospectionFile, ) import Data.Morpheus.Types.Internal.AST ( FieldName (..), GQLQuery, ) import Data.Semigroup ((<>))-import Data.Text (unpack)+import qualified Data.Text as T import Language.Haskell.TH ( Dec, Q,@@ -35,10 +36,7 @@ ) path :: FieldName -> FilePath-path (FieldName name) = "test/Case/" <> unpack name--schemaUrl :: FieldName -> FilePath-schemaUrl p = path p <> "/schema.gql"+path (FieldName name) = "test/Case/" <> T.unpack name withProject :: FilePath -> FilePath withProject = ("morpheus-graphql-client/" <>)@@ -57,5 +55,13 @@ (GQLQuery, String) -> Q [Dec] defineClientWith url exp = do- p <- fixFilePath (schemaUrl url)+ p <- fixFilePath (path url <> "/schema.gql") defineByDocumentFile p exp++defineClientWithJSON ::+ FieldName ->+ (GQLQuery, String) ->+ Q [Dec]+defineClientWithJSON url exp = do+ p <- fixFilePath (path url <> "/schema.json")+ defineByIntrospectionFile p exp