UNPKG

@graphql-tools/external-fragment-loader

Version:

A GraphQL loader that resolves cross-package fragment dependencies from external packages

26 lines (25 loc) • 1.39 kB
import type { DocumentNode } from 'graphql'; import type { Loader, Source } from '@graphql-tools/utils'; import type { ExternalFragmentLoaderOptions } from './options.cjs'; /** * Custom-loader entry point for `@graphql-tools/load`. * * Custom loaders must return a single DocumentNode (or Source). By default, * use the synchronous resolver so this entry point works for both * `loadTypedefs` and `loadTypedefsSync`. Set `options.async` to use the * asynchronous resolver from an asynchronous load call. */ type AsyncExternalFragmentLoaderOptions = ExternalFragmentLoaderOptions & { async: true; }; type SyncExternalFragmentLoaderOptions = ExternalFragmentLoaderOptions & { async?: false; }; export default function externalFragmentLoader(_pointer: string, options: AsyncExternalFragmentLoaderOptions): Promise<DocumentNode>; export default function externalFragmentLoader(_pointer: string, options: SyncExternalFragmentLoaderOptions): DocumentNode; export default function externalFragmentLoader(_pointer: string, options: ExternalFragmentLoaderOptions): DocumentNode | Promise<DocumentNode>; export declare class ExternalFragmentLoader implements Loader<ExternalFragmentLoaderOptions> { load(_pointer: string, options: ExternalFragmentLoaderOptions): Promise<Source[]>; loadSync(_pointer: string, options: ExternalFragmentLoaderOptions): Source[]; } export {};