diff --git a/src/mutation/mutation.ts b/src/mutation/mutation.ts index c18ac12..a9c5dcc 100644 --- a/src/mutation/mutation.ts +++ b/src/mutation/mutation.ts @@ -14,7 +14,7 @@ import type { ThunkObjMap, } from 'graphql'; -type MutationFn = (object: any, ctx: any, info: GraphQLResolveInfo) => unknown; +type MutationFn = (object: TInput, ctx: TContext, info: GraphQLResolveInfo) => TOutput; /** * A description of a mutation consumable by mutationWithClientMutationId @@ -30,22 +30,22 @@ type MutationFn = (object: any, ctx: any, info: GraphQLResolveInfo) => unknown; * input field, and it should return an Object with a key for each * output field. It may return synchronously, or return a Promise. */ -interface MutationConfig { +interface MutationConfig { name: string; description?: string; deprecationReason?: string; extensions?: GraphQLFieldExtensions; inputFields: ThunkObjMap; - outputFields: ThunkObjMap>; - mutateAndGetPayload: MutationFn; + outputFields: ThunkObjMap>; + mutateAndGetPayload: MutationFn; } /** * Returns a GraphQLFieldConfig for the mutation described by the * provided MutationConfig. */ -export function mutationWithClientMutationId( - config: MutationConfig, +export function mutationWithClientMutationId( + config: MutationConfig, ): GraphQLFieldConfig { const { name, inputFields, outputFields, mutateAndGetPayload } = config; const augmentedInputFields = () => ({