UNPKG

942 BTypeScriptView Raw
1import { Loader, BaseLoaderOptions, Source } from '@graphql-tools/utils';
2import { GraphQLTagPluckOptions } from '@graphql-tools/graphql-tag-pluck';
3/**
4 * Additional options for loading from GitHub
5 */
6export interface GithubLoaderOptions extends BaseLoaderOptions {
7 /**
8 * A GitHub access token
9 */
10 token: string;
11 /**
12 * Additional options to pass to `graphql-tag-pluck`
13 */
14 pluckConfig?: GraphQLTagPluckOptions;
15}
16/**
17 * This loader loads a file from GitHub.
18 *
19 * ```js
20 * const typeDefs = await loadTypedefs('github:githubUser/githubRepo#branchName:path/to/file.ts', {
21 * loaders: [new GithubLoader()],
22 * token: YOUR_GITHUB_TOKEN,
23 * })
24 * ```
25 */
26export declare class GithubLoader implements Loader<GithubLoaderOptions> {
27 canLoad(pointer: string): Promise<boolean>;
28 canLoadSync(): boolean;
29 load(pointer: string, options: GithubLoaderOptions): Promise<Source[]>;
30 loadSync(): never;
31}