@sterblue/sterblue-sdk
Version:
Sterblue Graph SDK for graphile.sterblue.com
20 lines (19 loc) • 790 B
TypeScript
import { ApolloClient, DocumentNode } from "@apollo/client";
export declare type ExposedApolloClientSdk<CacheType, Sdk, Client extends ApolloClient<CacheType>> = Sdk & {
query: Client["query"];
mutate: Client["mutate"];
subscribe: Client["subscribe"];
stream: <Result, Variables>(arg: {
query: DocumentNode;
variables?: {
[key: string]: Variables;
};
}) => Promise<AsyncIterableIterator<Result>>;
client: Client;
};
/**
* Logic used to expose ApolloClient functions in the Sdk
*
* @param client apollo client object that will be exposed in the sdk
*/
export declare const exposeApolloClient: <CacheType, Sdk, Client extends ApolloClient<CacheType>>(sdk: Sdk, client: Client) => ExposedApolloClientSdk<CacheType, Sdk, Client>;