public static function getInternalDirectives()
{
if (!self::$internalDirectives) {
self::$internalDirectives = ['include' => new self(['name' => 'include', 'description' => 'Directs the executor to include this field or fragment only when the `if` argument is true.', 'locations' => [DirectiveLocation::FIELD, DirectiveLocation::FRAGMENT_SPREAD, DirectiveLocation::INLINE_FRAGMENT], 'args' => [new FieldArgument(['name' => 'if', 'type' => Type::nonNull(Type::boolean()), 'description' => 'Included when true.'])]]), 'skip' => new self(['name' => 'skip', 'description' => 'Directs the executor to skip this field or fragment when the `if` argument is true.', 'locations' => [DirectiveLocation::FIELD, DirectiveLocation::FRAGMENT_SPREAD, DirectiveLocation::INLINE_FRAGMENT], 'args' => [new FieldArgument(['name' => 'if', 'type' => Type::nonNull(Type::boolean()), 'description' => 'Skipped when true'])]]), 'deprecated' => new self(['name' => 'deprecated', 'description' => 'Marks an element of a GraphQL schema as no longer supported.', 'locations' => [DirectiveLocation::FIELD_DEFINITION, DirectiveLocation::ENUM_VALUE], 'args' => [new FieldArgument(['name' => 'reason', 'type' => Type::string(), 'description' => 'Explains why this element was deprecated, usually also including a ' . 'suggestion for how to access supported similar data. Formatted ' . 'in [Markdown](https://daringfireball.net/projects/markdown/).', 'defaultValue' => self::DEFAULT_DEPRECATION_REASON])]])];
}
return self::$internalDirectives;
}