UNPKG

grafast

Version:

Cutting edge GraphQL planning and execution engine

28 lines 1.83 kB
import type { ExecutionDetails, Maybe, PromiseOrDirect } from ".."; import { type Deferred } from "../deferred"; import type { Multistep, UnwrapMultistep } from "../multistep"; import type { Step } from "../step.js"; export declare const nextTick: (cb: () => void) => void; export type IOEquivalence<TSpec> = null | string | { [key in Exclude<keyof TSpec, keyof any[]>]?: string | null; }; export declare function makeAccessMap<TLookup extends Multistep>($spec: Step, ioEquivalence: IOEquivalence<UnwrapMultistep<TLookup>>): Record<string, Step>; export declare function ioEquivalenceMatches(io1: IOEquivalence<Multistep>, io2: IOEquivalence<Multistep>): boolean; export declare function paramSig(paramDepIdByKey: Record<string, number>, depIdToStepId: (depId: number) => number): string; export interface LoadBatch { deferred: Deferred<any>; batchSpecs: readonly any[]; } export declare function executeBatches<TLoadInfo extends { shared: any; attributes: readonly any[]; params: any; /** @deprecated use `shared` instead (it's identical) */ unary: any; }, TCallback extends (specs: ReadonlyArray<any>, info: TLoadInfo) => PromiseOrDirect<ReadonlyArray<any>>>(loadBatches: readonly LoadBatch[], loadInfo: TLoadInfo, load: TCallback): Promise<void>; type LoadCallback = (...args: any[]) => any; export declare function executeLoad<const TLookup extends Multistep, TItem, TData extends Maybe<TItem> | Maybe<ReadonlyArray<Maybe<TItem>>>, TParams extends Record<string, any>, const TLoadContext extends Multistep = never>(details: ExecutionDetails, sharedDepId: number | null, paramDepIdByKey: Record<string, number>, baseLoadInfo: { attributes: readonly any[]; }, load: LoadCallback): PromiseOrDirect<TData>[] | Promise<PromiseOrDirect<TData>[]>; export {}; //# sourceMappingURL=_loadCommon.d.ts.map