/** Where a request stopped: never reached the server, refused by it, or answered with errors in place of data. */ export type GraphqlFailure = 'network' | 'http' | 'graphql'; export declare class GraphqlRequestError extends Error { readonly failure: GraphqlFailure; readonly statusCode?: number; constructor(message: string, failure: GraphqlFailure, statusCode?: number); } export type GraphqlClient = { request: (document: string, variables?: Record) => Promise; }; /** * What the SDK sends its server: a handful of queries, always to the network, never cached, never subscribed to. A * GraphQL client with a normalized cache would be most of the SDK's weight for that, so this is a `fetch`. * * A refusal still counts for the session: it goes to the auth-failure channel, the way the builder's Apollo link sends * it, so a session revoked elsewhere is noticed by whichever request is refused next. */ export declare const createGraphqlClient: (uri: string, webKey: string) => GraphqlClient;