---
lang: en
title: 'API docs: graphql'
keywords: LoopBack 4.0, LoopBack 4, Node.js, TypeScript, OpenAPI
sidebar: lb4_sidebar
editurl: https://github.com/loopbackio/loopback-next/tree/master/extensions/graphql
permalink: /doc/en/lb4/apidocs.graphql.html
---

<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [@loopback/graphql](./graphql.md)

## graphql package

[@loopback/graphql](https://github.com/loopbackio/loopback-next/tree/master/extensions/graphql)

## Classes

<table><thead><tr><th>

Class


</th><th>

Description


</th></tr></thead>
<tbody><tr><td>

[GraphQLComponent](./graphql.graphqlcomponent.md)


</td><td>

Component for GraphQL


</td></tr>
<tr><td>

[GraphQLResolutionContext](./graphql.graphqlresolutioncontext.md)


</td><td>

Context for graphql resolver resolution


</td></tr>
<tr><td>

[GraphQLServer](./graphql.graphqlserver.md)


</td><td>

GraphQL Server


</td></tr>
<tr><td>

[LoopBackContainer](./graphql.loopbackcontainer.md)


</td><td>

Implementation of `ContainerType` to plug into `type-graphql` as the IoC container


</td></tr>
</tbody></table>

## Functions

<table><thead><tr><th>

Function


</th><th>

Description


</th></tr></thead>
<tbody><tr><td>

[registerResolver(ctx, resolverClass, nameOrOptions)](./graphql.registerresolver.md)


</td><td>

Register a GraphQL resolver class


</td></tr>
</tbody></table>

## Interfaces

<table><thead><tr><th>

Interface


</th><th>

Description


</th></tr></thead>
<tbody><tr><td>

[GraphQLComponentOptions](./graphql.graphqlcomponentoptions.md)


</td><td>

Options for GraphQL component


</td></tr>
<tr><td>

[GraphQLServerOptions](./graphql.graphqlserveroptions.md)


</td><td>

Options for GraphQL server


</td></tr>
</tbody></table>

## Namespaces

<table><thead><tr><th>

Namespace


</th><th>

Description


</th></tr></thead>
<tbody><tr><td>

[GraphQLBindings](./graphql.graphqlbindings.md)


</td><td>

Namespace for GraphQL related bindings


</td></tr>
<tr><td>

[GraphQLTags](./graphql.graphqltags.md)


</td><td>

Namespace for GraphQL related tags


</td></tr>
</tbody></table>

## Variables

<table><thead><tr><th>

Variable


</th><th>

Description


</th></tr></thead>
<tbody><tr><td>

[arg](./graphql.arg.md)


</td><td>

Re-exporting type-graphql decorators as lower case versions for two purposes: - To be consistent with LoopBack's naming convention of decorators - Allow future possibility to add extra metadata in addition to type-graphql's behavior, for example, mapping to LoopBack model properties


</td></tr>
<tr><td>

[args](./graphql.args.md)


</td><td>


</td></tr>
<tr><td>

[argsType](./graphql.argstype.md)


</td><td>


</td></tr>
<tr><td>

[authorized](./graphql.authorized.md)


</td><td>


</td></tr>
<tr><td>

[field](./graphql.field.md)


</td><td>


</td></tr>
<tr><td>

[fieldResolver](./graphql.fieldresolver.md)


</td><td>


</td></tr>
<tr><td>

[inputType](./graphql.inputtype.md)


</td><td>


</td></tr>
<tr><td>

[mutation](./graphql.mutation.md)


</td><td>


</td></tr>
<tr><td>

[objectType](./graphql.objecttype.md)


</td><td>


</td></tr>
<tr><td>

[pubSub](./graphql.pubsub.md)


</td><td>


</td></tr>
<tr><td>

[query](./graphql.query.md)


</td><td>


</td></tr>
<tr><td>

[resolver](./graphql.resolver.md)


</td><td>


</td></tr>
<tr><td>

[root](./graphql.root.md)


</td><td>


</td></tr>
<tr><td>

[subscription](./graphql.subscription.md)


</td><td>


</td></tr>
</tbody></table>

## Type Aliases

<table><thead><tr><th>

Type Alias


</th><th>

Description


</th></tr></thead>
<tbody><tr><td>

[GraphQLWsContextResolver](./graphql.graphqlwscontextresolver.md)


</td><td>


</td></tr>
</tbody></table>

