import type { TypedDocumentNode } from '@graphql-typed-document-node/core'; import type { TadaDocumentNode } from 'gql.tada'; import type { DocumentNode } from 'graphql'; export type GraphQLDocument, Variables = Record> = string | DocumentNode | TypedDocumentNode | TadaDocumentNode; export type GraphQLQueryOptions, Variables = Record> = { query: GraphQLDocument; operationName?: string; extensions?: Record; } & (Variables extends { [key: string]: never; } ? { variables?: Variables; } : { variables: Variables; }); export type GraphQLQueryResult> = { data?: Result; errors?: GraphQLResponseErrors; extensions?: Record; }; export type GraphQLResponseErrors = Array<{ message: string; locations?: { line: number; column: number; }[]; path?: (string | number)[]; }>; export interface IotaGraphQLClientOptions> { url: string; fetch?: typeof fetch; headers?: Record; queries?: Queries; } export declare class IotaGraphQLRequestError extends Error { } export declare class IotaGraphQLClient = {}> { #private; constructor({ url, fetch: fetchFn, headers, queries, }: IotaGraphQLClientOptions); query, Variables = Record>(options: GraphQLQueryOptions): Promise>; execute, Result = Queries[Query] extends GraphQLDocument ? R : Record, Variables = Queries[Query] extends GraphQLDocument ? V : Record>(query: Query, options: Omit, 'query'>): Promise>; } //# sourceMappingURL=client.d.ts.map