@forge/cli-shared

9.7.0-next.14-experimental-fd0ebbc9.7.0-next.16
out/graphql/graphql-client.d.ts
~out/graphql/graphql-client.d.tsModified
+8−5
Index: package/out/graphql/graphql-client.d.ts
===================================================================
--- package/out/graphql/graphql-client.d.ts
+++ package/out/graphql/graphql-client.d.ts
@@ -1,7 +1,9 @@
-import { TypedDocumentString, Variables } from 'graphql-request';
-export { TypedDocumentString, Variables };
-export type DocumentVariables<TDocument> = TDocument extends TypedDocumentString<unknown, infer TVariables> ? TVariables : never;
+import { Variables } from 'graphql-request';
+import { Mutation, Query } from './graphql-types';
+export { Variables };
+export type AvailableMutations = Omit<Mutation, '__typename'>;
+export type AvailableQueries = Omit<Query, '__typename'>;
 export interface GatewayRequestIdGraphQLExtensions {
     gateway?: {
         request_id: string;
     };
@@ -10,13 +12,14 @@
     response: TResponse;
     requestId?: string;
     extensions?: TExtensions;
 }
+export type MutationResult<TLabel extends keyof AvailableMutations> = Record<TLabel, NonNullable<Required<AvailableMutations>[TLabel]>>;
 export interface GraphQLClient {
-    query<TResult, TVariables extends Variables>(document: TypedDocumentString<TResult, TVariables>, variables: NoInfer<TVariables>): Promise<TResult & {
+    query<TLabel extends keyof AvailableQueries, TVariables extends Variables, TExtensions = GatewayRequestIdGraphQLExtensions>(query: string, variables: TVariables): Promise<Record<TLabel, AvailableQueries[TLabel]> & {
         requestId: string;
     }>;
-    mutate<TResult, TVariables extends Variables, TExtensions = GatewayRequestIdGraphQLExtensions>(document: TypedDocumentString<TResult, TVariables>, variables: NoInfer<TVariables>): Promise<RunnerResponse<TResult, TExtensions>>;
+    mutate<TLabel extends keyof AvailableMutations, TVariables extends Variables, TExtensions = GatewayRequestIdGraphQLExtensions>(query: string, variables: TVariables): Promise<RunnerResponse<MutationResult<TLabel>, TExtensions>>;
 }
 export interface GraphQLRunner {
     run<TVariables extends Variables, TResponse, TExtensions = GatewayRequestIdGraphQLExtensions>(operation: string, variables: TVariables): Promise<RunnerResponse<TResponse, TExtensions>>;
 }