UNPKG

t-graphql

Version:

typed GraphQL - end-to-end type-safe GraphQL for TypeScript. Think tRPC, but GraphQL

15 lines (14 loc) 730 B
import { AnyObjectQueryType } from '../queries/ObjectQueryType'; import { QueryResult } from '../types/QueryResult.type'; import { QueryVariables } from '../types/QueryVariables.type'; type OptionalKeys<T extends object> = { [P in keyof T]: {} extends Pick<T, P> ? P : never; }[keyof T]; export declare function useQuery<Q extends AnyObjectQueryType, Variables extends QueryVariables<Q>, QueryParameters extends [Exclude<keyof Variables, OptionalKeys<Variables>>] extends [never] ? { variables?: Variables; } : { variables: Variables; }>(queryType: Q, ...args: [Exclude<keyof Variables, OptionalKeys<Variables>>] extends [never] ? [QueryParameters] | [] : [QueryParameters]): { data: QueryResult<Q>; }; export {};