UNPKG

graphql-modules

Version:

Create reusable, maintainable, testable and extendable GraphQL modules

35 lines (34 loc) 1.03 kB
import { ResolvedModule } from '../module/factory'; import { ID } from '../shared/types'; import { ApplicationConfig, Application } from './types'; export declare type ModulesMap = Map<ID, ResolvedModule>; /** * @internal */ export interface InternalAppContext { ɵgetModuleContext(moduleId: ID, context: GraphQLModules.GlobalContext): GraphQLModules.ModuleContext; } /** * @api * Creates Application out of Modules. Accepts `ApplicationConfig`. * * @example * * ```typescript * import { createApplication } from 'graphql-modules'; * import { createHook, executionAsyncId } from 'async_hooks'; * import { usersModule } from './users'; * import { postsModule } from './posts'; * import { commentsModule } from './comments'; * * const app = createApplication({ * modules: [ * usersModule, * postsModule, * commentsModule * ], * executionContext: { createHook, executionAsyncId }, * }) * ``` */ export declare function createApplication(applicationConfig: ApplicationConfig): Application;