import { expectAssignable } from 'tsd' import { MaybePromiseDeep } from './typegenTypeHelpers' /** * MaybePromiseDeep */ // A case found by Sytten https://github.com/graphql-nexus/schema/issues/470 // The presence of .then was leading to type errors type Ones = 1[] type GraphQLResponse = Ones | null const getOnes = () => Promise.resolve([] as Ones) expectAssignable>(getOnes().then((ones) => ones)) // object with array expectAssignable>({ a: [1] }) expectAssignable>(Promise.resolve({ a: [1] })) // array expectAssignable>([1]) expectAssignable>(Promise.resolve([1]))