WooCommerce Code Reference

EnumType extends Type
in package
implements InputType, OutputType, LeafType, NullableType, NamedType Uses NamedTypeImplementation

Registry of built-in Automattic\WooCommerce\Vendor\GraphQL types and base class for all other types.

Tags
see
EnumValueDefinitionNode
phpstan-type

PartialEnumValueConfig array{ name?: string, value?: mixed, deprecationReason?: string|null, description?: string|null, astNode?: EnumValueDefinitionNode|null }

phpstan-type

EnumValues iterable<string, PartialEnumValueConfig>|iterable<string, mixed>|iterable<int, string>

phpstan-type

EnumTypeConfig array{ name?: string|null, description?: string|null, values: EnumValues|callable(): EnumValues, astNode?: EnumTypeDefinitionNode|null, extensionASTNodes?: array|null }

Interfaces, Classes and Traits

InputType
export type InputType = | ScalarType | EnumType | InputObjectType | ListOfType<InputType> | NonNull< | ScalarType | EnumType | InputObjectType | ListOfType<InputType>, >;.
OutputType
LeafType
NullableType
NamedType
export type NamedType = | ScalarType | ObjectType | InterfaceType | UnionType | EnumType | InputObjectType;.

Table of Contents

BOOLEAN  = 'Boolean'
BUILT_IN_SCALAR_NAMES  = [self::INT, self::FLOAT, self::STRING, self::BOOLEAN, self::ID]
BUILT_IN_TYPE_NAMES  = [...self::BUILT_IN_SCALAR_NAMES, ...AutomatticWooCommerceVendorGraphQLTypeIntrospection::TYPE_NAMES]
Names of all built-in types: built-in scalars and introspection types.
FLOAT  = 'Float'
ID  = 'ID'
INT  = 'Int'
STANDARD_TYPE_NAMES  = self::BUILT_IN_SCALAR_NAMES
STRING  = 'String'
$astNode  : EnumTypeDefinitionNode|null
$config  : array<string|int, mixed>
$description  : string|null
$extensionASTNodes  : array<string|int, mixed>
$name  : string
$builtInScalars  : array<string|int, mixed>|null
$builtInTypes  : array<string|int, mixed>|null
$nameLookup  : array<string|int, mixed>
$valueLookup  : MixedStore
Lazily initialized.
$values  : array<string|int, mixed>
Lazily initialized.
__construct()  : mixed
__toString()  : string
assertValid()  : void
astNode()  : (\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\Node&\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\TypeDefinitionNode)|null
boolean()  : ScalarType
Returns the built-in Boolean scalar type.
builtInScalars()  : array<string, ScalarType>
Returns all built-in scalar types.
builtInTypes()  : array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType>
Returns all built-in types: built-in scalars and introspection types.
description()  : string|null
extensionASTNodes()  : array<string|int, EnumTypeExtensionNode>
float()  : ScalarType
Returns the built-in Float scalar type.
getNamedType()  : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType)|null
Returns the underlying named type of the given type.
getNullableType()  : Type|NullableType
Unwraps a potentially non-null type to return the underlying nullable type.
getStandardTypes()  : array<string, ScalarType>
Returns all built-in scalar types.
getValue()  : EnumValueDefinition|null
getValues()  : array<int, EnumValueDefinition>
id()  : ScalarType
Returns the built-in ID scalar type.
int()  : ScalarType
Returns the built-in Int scalar type.
isAbstractType()  : bool
Determines if the given type is an abstract type.
isBuiltInScalar()  : bool
Determines if the given type is a built-in scalar (Int, Float, String, Boolean, ID).
isBuiltInScalarName()  : bool
Checks if the given name is one of the built-in scalar type names (ID, String, Int, Float, Boolean).
isBuiltInType()  : bool
isCompositeType()  : bool
Determines if the given type is a composite type.
isInputType()  : bool
Determines if the given type is an input type.
isLeafType()  : bool
Determines if the given type is a leaf type.
isOutputType()  : bool
Determines if the given type is an output type.
jsonSerialize()  : string
listOf()  : ListOfType<string|int, T>
Wraps the given type in a list type.
name()  : string
nonNull()  : NonNull
Wraps the given type in a non-null type.
overrideStandardTypes()  : void
Allows partially or completely overriding the standard types globally.
parseLiteral()  : mixed
Parses an externally provided literal value (hardcoded in Automattic\WooCommerce\Vendor\GraphQL query) to use as an input.
parseValue()  : mixed
Parses an externally provided value (query variable) to use as an input.
serialize()  : mixed
Serializes an internal value to include in a response.
string()  : ScalarType
Returns the built-in String scalar type.
toString()  : string
didYouMean()  : string|null
inferName()  : string
getValueLookup()  : MixedStore<string|int, EnumValueDefinition>
initializeNameLookup()  : void

Constants

BUILT_IN_TYPE_NAMES

Names of all built-in types: built-in scalars and introspection types.

public array<int, string> BUILT_IN_TYPE_NAMES = [...self::BUILT_IN_SCALAR_NAMES, ...AutomatticWooCommerceVendorGraphQLTypeIntrospection::TYPE_NAMES]
Tags
see
Type::BUILT_IN_SCALAR_NAMES

for just the built-in scalar names.

Properties

Methods

astNode()

public astNode() : (\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\Node&\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\TypeDefinitionNode)|null
Return values
(\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\Node&\Automattic\WooCommerce\Vendor\GraphQL\Language\AST\TypeDefinitionNode)|null

builtInTypes()

Returns all built-in types: built-in scalars and introspection types.

public static builtInTypes() : array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType>
Return values
array<string, \Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType>

getNamedType()

Returns the underlying named type of the given type.

public static getNamedType(Type|null $type) : (\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType)|null
Parameters
$type : Type|null
Tags
phpstan-return

($type is null ? null : Type&NamedType)

Return values
(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NamedType)|null

isBuiltInScalar()

Determines if the given type is a built-in scalar (Int, Float, String, Boolean, ID).

public static isBuiltInScalar(mixed $type) : bool

Does not unwrap NonNull/List wrappers — checks the type instance directly. ScalarType is a NamedType, so {@see} is unnecessary.

Parameters
$type : mixed
Tags
phpstan-assert-if-true

ScalarType $type

Return values
bool

isBuiltInScalarName()

Checks if the given name is one of the built-in scalar type names (ID, String, Int, Float, Boolean).

public static isBuiltInScalarName(string $name) : bool
Parameters
$name : string
Return values
bool

nonNull()

Wraps the given type in a non-null type.

public static nonNull(NonNull|(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NullableType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|callable $type) : NonNull
Parameters
$type : NonNull|(\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\NullableType&\Automattic\WooCommerce\Vendor\GraphQL\Type\Definition\Type)|callable
Return values
NonNull

parseLiteral()

Parses an externally provided literal value (hardcoded in Automattic\WooCommerce\Vendor\GraphQL query) to use as an input.

public parseLiteral(Node $valueNode[, array<string|int, mixed>|null $variables = null ]) : mixed
Parameters
$valueNode : Node
$variables : array<string|int, mixed>|null = null
Tags
throws
JsonException
throws
Error
throws
InvariantViolation
Return values
mixed