graphql-yoga
Version:
20 lines (19 loc) • 1.29 kB
text/typescript
import { type IncrementalDeliverySpec, type IncrementalSpec } from '@graphql-tools/utils';
export type { IncrementalDeliverySpec, IncrementalSpec } from '@graphql-tools/utils';
export { DEFAULT_MULTIPART_CONTENT_TYPE, getMultipartContentType, INCREMENTAL_DELIVERY_SPECS, } from '@graphql-tools/utils';
export type IncrementalSpecNegotiation = {
spec: IncrementalSpec;
contentType: string;
} | 'unsupported';
export declare function getMediaTypesForRequestInOrder(request: Request, specs?: readonly IncrementalDeliverySpec[]): string[];
export declare function isMatchingMediaType(askedMediaType: string, processorMediaType: string): boolean;
/**
* Map a single Accept media type to an executor `incrementalSpec` using the
* registered HTTP parameter table. Non-multipart types return `undefined`.
*/
export declare function negotiateIncrementalSpecFromMediaType(mediaType: string, specs?: readonly IncrementalDeliverySpec[]): IncrementalSpecNegotiation | undefined;
/**
* Last matching `multipart/mixed` in the request Accept list (same last-match
* rule as result-processor selection). `undefined` leaves the executor default.
*/
export declare function getIncrementalSpecForRequest(request: Request, specs?: readonly IncrementalDeliverySpec[]): IncrementalSpec | undefined;