create-vite-apollo-fs
Version:
Generate a fullstack project using Apollo GraphQL (node.js, express), graphql-codegen for Types and React (vite)
236 lines (209 loc) • 6.37 kB
text/typescript
// @ts-nocheck
import { GraphQLResolveInfo } from "graphql";
export type Maybe<T> = T | null;
export type InputMaybe<T> = Maybe<T>;
export type Exact<T extends { [key: string]: unknown }> = {
[K in keyof T]: T[K];
};
export type MakeOptional<T, K extends keyof T> = Omit<T, K> & {
[SubKey in K]?: Maybe<T[SubKey]>;
};
export type MakeMaybe<T, K extends keyof T> = Omit<T, K> & {
[SubKey in K]: Maybe<T[SubKey]>;
};
export type MakeEmpty<
T extends { [key: string]: unknown },
K extends keyof T
> = { [_ in K]?: never };
export type Incremental<T> =
| T
| {
[P in keyof T]?: P extends " $fragmentName" | "__typename" ? T[P] : never;
};
export type RequireFields<T, K extends keyof T> = Omit<T, K> & {
[P in K]-?: NonNullable<T[P]>;
};
/** All built-in and custom scalars, mapped to their actual values */
export type Scalars = {
ID: { input: string; output: string };
String: { input: string; output: string };
Boolean: { input: boolean; output: boolean };
Int: { input: number; output: number };
Float: { input: number; output: number };
};
export type Mutation = {
__typename?: "Mutation";
addUser: User;
};
export type MutationAddUserArgs = {
name: Scalars["String"]["input"];
};
export type Query = {
__typename?: "Query";
hello: Scalars["String"]["output"];
users: Array<User>;
};
export type Subscription = {
__typename?: "Subscription";
greetings: Scalars["String"]["output"];
};
export type User = {
__typename?: "User";
id: Scalars["ID"]["output"];
name: Scalars["String"]["output"];
};
export type ResolverTypeWrapper<T> = Promise<T> | T;
export type ResolverWithResolve<TResult, TParent, TContext, TArgs> = {
resolve: ResolverFn<TResult, TParent, TContext, TArgs>;
};
export type Resolver<TResult, TParent = {}, TContext = {}, TArgs = {}> =
| ResolverFn<TResult, TParent, TContext, TArgs>
| ResolverWithResolve<TResult, TParent, TContext, TArgs>;
export type ResolverFn<TResult, TParent, TContext, TArgs> = (
parent: TParent,
args: TArgs,
context: TContext,
info: GraphQLResolveInfo
) => Promise<TResult> | TResult;
export type SubscriptionSubscribeFn<TResult, TParent, TContext, TArgs> = (
parent: TParent,
args: TArgs,
context: TContext,
info: GraphQLResolveInfo
) => AsyncIterable<TResult> | Promise<AsyncIterable<TResult>>;
export type SubscriptionResolveFn<TResult, TParent, TContext, TArgs> = (
parent: TParent,
args: TArgs,
context: TContext,
info: GraphQLResolveInfo
) => TResult | Promise<TResult>;
export interface SubscriptionSubscriberObject<
TResult,
TKey extends string,
TParent,
TContext,
TArgs
> {
subscribe: SubscriptionSubscribeFn<
{ [key in TKey]: TResult },
TParent,
TContext,
TArgs
>;
resolve?: SubscriptionResolveFn<
TResult,
{ [key in TKey]: TResult },
TContext,
TArgs
>;
}
export interface SubscriptionResolverObject<TResult, TParent, TContext, TArgs> {
subscribe: SubscriptionSubscribeFn<any, TParent, TContext, TArgs>;
resolve: SubscriptionResolveFn<TResult, any, TContext, TArgs>;
}
export type SubscriptionObject<
TResult,
TKey extends string,
TParent,
TContext,
TArgs
> =
| SubscriptionSubscriberObject<TResult, TKey, TParent, TContext, TArgs>
| SubscriptionResolverObject<TResult, TParent, TContext, TArgs>;
export type SubscriptionResolver<
TResult,
TKey extends string,
TParent = {},
TContext = {},
TArgs = {}
> =
| ((
...args: any[]
) => SubscriptionObject<TResult, TKey, TParent, TContext, TArgs>)
| SubscriptionObject<TResult, TKey, TParent, TContext, TArgs>;
export type TypeResolveFn<TTypes, TParent = {}, TContext = {}> = (
parent: TParent,
context: TContext,
info: GraphQLResolveInfo
) => Maybe<TTypes> | Promise<Maybe<TTypes>>;
export type IsTypeOfResolverFn<T = {}, TContext = {}> = (
obj: T,
context: TContext,
info: GraphQLResolveInfo
) => boolean | Promise<boolean>;
export type NextResolverFn<T> = () => Promise<T>;
export type DirectiveResolverFn<
TResult = {},
TParent = {},
TContext = {},
TArgs = {}
> = (
next: NextResolverFn<TResult>,
parent: TParent,
args: TArgs,
context: TContext,
info: GraphQLResolveInfo
) => TResult | Promise<TResult>;
/** Mapping between all available schema types and the resolvers types */
export type ResolversTypes = {
Boolean: ResolverTypeWrapper<Scalars["Boolean"]["output"]>;
ID: ResolverTypeWrapper<Scalars["ID"]["output"]>;
Mutation: ResolverTypeWrapper<{}>;
Query: ResolverTypeWrapper<{}>;
String: ResolverTypeWrapper<Scalars["String"]["output"]>;
Subscription: ResolverTypeWrapper<{}>;
User: ResolverTypeWrapper<User>;
};
/** Mapping between all available schema types and the resolvers parents */
export type ResolversParentTypes = {
Boolean: Scalars["Boolean"]["output"];
ID: Scalars["ID"]["output"];
Mutation: {};
Query: {};
String: Scalars["String"]["output"];
Subscription: {};
User: User;
};
export type MutationResolvers<
ContextType = any,
ParentType extends ResolversParentTypes["Mutation"] = ResolversParentTypes["Mutation"]
> = {
addUser?: Resolver<
ResolversTypes["User"],
ParentType,
ContextType,
RequireFields<MutationAddUserArgs, "name">
>;
};
export type QueryResolvers<
ContextType = any,
ParentType extends ResolversParentTypes["Query"] = ResolversParentTypes["Query"]
> = {
hello?: Resolver<ResolversTypes["String"], ParentType, ContextType>;
users?: Resolver<Array<ResolversTypes["User"]>, ParentType, ContextType>;
};
export type SubscriptionResolvers<
ContextType = any,
ParentType extends ResolversParentTypes["Subscription"] = ResolversParentTypes["Subscription"]
> = {
greetings?: SubscriptionResolver<
ResolversTypes["String"],
"greetings",
ParentType,
ContextType
>;
};
export type UserResolvers<
ContextType = any,
ParentType extends ResolversParentTypes["User"] = ResolversParentTypes["User"]
> = {
id?: Resolver<ResolversTypes["ID"], ParentType, ContextType>;
name?: Resolver<ResolversTypes["String"], ParentType, ContextType>;
__isTypeOf?: IsTypeOfResolverFn<ParentType, ContextType>;
};
export type Resolvers<ContextType = any> = {
Mutation?: MutationResolvers<ContextType>;
Query?: QueryResolvers<ContextType>;
Subscription?: SubscriptionResolvers<ContextType>;
User?: UserResolvers<ContextType>;
};