UNPKG

@graphql-yoga/plugin-persisted-operations

Version:

Persisted Operations plugin for GraphQL Yoga.

26 lines (25 loc) 1.27 kB
import { DocumentNode } from 'graphql'; import { GraphQLParams, Plugin, PromiseOrValue } from 'graphql-yoga'; export type ExtractPersistedOperationId = (params: GraphQLParams) => null | string; export declare const defaultExtractPersistedOperationId: ExtractPersistedOperationId; type AllowArbitraryOperationsHandler = (request: Request) => PromiseOrValue<boolean>; export type UsePersistedOperationsOptions = { /** * A function that fetches the persisted operation */ getPersistedOperation(key: string): PromiseOrValue<DocumentNode | string | null>; /** * Whether to allow execution of arbitrary GraphQL operations aside from persisted operations. */ allowArbitraryOperations?: boolean | AllowArbitraryOperationsHandler; /** * The path to the persisted operation id */ extractPersistedOperationId?: ExtractPersistedOperationId; /** * Whether to skip validation of the persisted operation */ skipDocumentValidation?: boolean; }; export declare function usePersistedOperations<TPluginContext extends Record<string, any>>({ allowArbitraryOperations, extractPersistedOperationId, getPersistedOperation, skipDocumentValidation, }: UsePersistedOperationsOptions): Plugin<TPluginContext>; export {};