---
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 markdown="1">

[GraphQLComponent](./graphql.graphqlcomponent.md)


</td><td markdown="1">

Component for GraphQL


</td></tr>
<tr><td markdown="1">

[GraphQLResolutionContext](./graphql.graphqlresolutioncontext.md)


</td><td markdown="1">

Context for graphql resolver resolution


</td></tr>
<tr><td markdown="1">

[GraphQLServer](./graphql.graphqlserver.md)


</td><td markdown="1">

GraphQL Server


</td></tr>
<tr><td markdown="1">

[LoopBackContainer](./graphql.loopbackcontainer.md)


</td><td markdown="1">

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 markdown="1">

[registerResolver(ctx, resolverClass, nameOrOptions)](./graphql.registerresolver.md)


</td><td markdown="1">

Register a GraphQL resolver class


</td></tr>
</tbody></table>

## Interfaces

<table><thead><tr><th>

Interface


</th><th>

Description


</th></tr></thead>
<tbody><tr><td markdown="1">

[GraphQLComponentOptions](./graphql.graphqlcomponentoptions.md)


</td><td markdown="1">

Options for GraphQL component


</td></tr>
<tr><td markdown="1">

[GraphQLServerOptions](./graphql.graphqlserveroptions.md)


</td><td markdown="1">

Options for GraphQL server


</td></tr>
</tbody></table>

## Namespaces

<table><thead><tr><th>

Namespace


</th><th>

Description


</th></tr></thead>
<tbody><tr><td markdown="1">

[GraphQLBindings](./graphql.graphqlbindings.md)


</td><td markdown="1">

Namespace for GraphQL related bindings


</td></tr>
<tr><td markdown="1">

[GraphQLTags](./graphql.graphqltags.md)


</td><td markdown="1">

Namespace for GraphQL related tags


</td></tr>
</tbody></table>

## Variables

<table><thead><tr><th>

Variable


</th><th>

Description


</th></tr></thead>
<tbody><tr><td markdown="1">

[arg](./graphql.arg.md)


</td><td markdown="1">

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 markdown="1">

[args](./graphql.args.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[argsType](./graphql.argstype.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[authorized](./graphql.authorized.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[field](./graphql.field.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[fieldResolver](./graphql.fieldresolver.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[inputType](./graphql.inputtype.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[mutation](./graphql.mutation.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[objectType](./graphql.objecttype.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[query](./graphql.query.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[resolver](./graphql.resolver.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[root](./graphql.root.md)


</td><td markdown="1">


</td></tr>
<tr><td markdown="1">

[subscription](./graphql.subscription.md)


</td><td markdown="1">


</td></tr>
</tbody></table>

## Type Aliases

<table><thead><tr><th>

Type Alias


</th><th>

Description


</th></tr></thead>
<tbody><tr><td markdown="1">

[GraphQLWsContextResolver](./graphql.graphqlwscontextresolver.md)


</td><td markdown="1">


</td></tr>
</tbody></table>


