# Type Directives

These directives can generally be applied to type definitions in the schema.

This is not limited to type but also includes input, enum, union, interface and scalar types.

# TypeManipulator

The \Nuwave\Lighthouse\Support\Contracts\TypeManipulator (opens new window) interface can be used to manipulate the AST from a type definition node.

# TypeMiddleware

The \Nuwave\Lighthouse\Support\Contracts\TypeMiddleware (opens new window) interface allows access to an AST node as it is converted to an executable type.

# TypeResolver

The \Nuwave\Lighthouse\Support\Contracts\TypeResolver (opens new window) interface can be used for custom conversion from AST values to an executable type.

# Type Extension Directives

These directives can generally be applied to type extensions (opens new window) in the schema.

# TypeExtensionManipulator

The \Nuwave\Lighthouse\Support\Contracts\TypeExtensionManipulator (opens new window) interface can be used to manipulate the AST from a type extension node.