Skip to main content
Module

x/pothos/packages/core/config-store.ts>ConfigStore

Pothos GraphQL is library for creating GraphQL schemas in typescript using a strongly typed code first approach
Go to Latest
class ConfigStore
import { ConfigStore } from "https://deno.land/x/pothos@release-1720638912/packages/core/config-store.ts";

Constructors

new
ConfigStore(builder: PothosSchemaTypes.SchemaBuilder<Types>)

Properties

private
builder: PothosSchemaTypes.SchemaBuilder<Types>
private
fields: Map<string, Map<string, PothosFieldConfig<Types>>>
private
implementors: Map<string, BaseTypeRef<Types>>
private
paramAssociations: Map<unknown, unknown>
private
pending: boolean
private
pendingActions: (() => void)[]
private
pendingTypeConfigResolutions: Map<unknown, ((config: PothosTypeConfig, ref: BaseTypeRef<Types>) => void)[]>
private
refs: Set<BaseTypeRef<Types>>
typeConfigs: Map<string, PothosTypeConfig>

Methods

private
describeRef(ref: unknown): string
private
resolveParamAssociations(param: unknown)
addFields(param: ConfigurableRef<Types>, fields: () => FieldMap)
getFields<T extends GraphQLFieldKind>(name: string, kind?: T): Map<string, Extract<PothosFieldConfig<Types>, { graphqlKind: T; }>>
getTypeConfig<T extends PothosTypeConfig["kind"]>(ref: ConfigurableRef<Types> | string, kind?: T)
hasImplementation(typeName: string)
onPrepare(cb: () => void)
onTypeConfig(param: ConfigurableRef<Types>, onConfig: (config: PothosTypeConfig, ref: BaseTypeRef<Types>) => void)
onTypeConfigOfKind<Kind extends PothosTypeConfig["kind"]>(
kind: Kind,
onConfig: (config: PothosTypeConfig & { kind: Kind; }) => void,
)