import { ASTNode } from 'graphql'; export declare const toGraphQLString: (v: string | ASTNode) => string; export declare class PLazy extends Promise { private _executor; private _promise?; constructor(executor: (resolve: (value: ValueType) => void, reject: (err: unknown) => void) => void); then: Promise['then']; catch: Promise['catch']; finally: Promise['finally']; } export declare function gql(chunks: TemplateStringsArray, ...variables: any[]): string; export declare function deferredPromise(): { promise: Promise; resolve: (value: T | PromiseLike) => void; reject: (reason?: any) => void; }; export declare function LazyPromise(fn: () => Value | Promise): Promise; type PossiblePromise = T | Promise; export type DeepPartial = T extends Function ? T : T extends Array ? DeepPartialArray : T extends object ? DeepPartialObject : T | undefined; interface DeepPartialArray extends Array>>> { } type DeepPartialObject = { [P in keyof T]?: PossiblePromise>>; }; export {};