/* eslint-disable */ import { TypedDocumentNode as DocumentNode } from '@graphql-typed-document-node/core'; export type Maybe = T | null; export type InputMaybe = Maybe; export type Exact = { [K in keyof T]: T[K]; }; export type MakeOptional = Omit & { [SubKey in K]?: Maybe; }; export type MakeMaybe = Omit & { [SubKey in K]: Maybe; }; export type MakeEmpty< T extends { [key: string]: unknown }, K extends keyof T > = { [_ in K]?: never }; export type Incremental = | T | { [P in keyof T]?: P extends ' $fragmentName' | '__typename' ? T[P] : never; }; /** 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 }; }; /** Move a Pokémon can perform with the associated damage and type. */ export type Attack = { __typename?: 'Attack'; damage?: Maybe; name?: Maybe; type?: Maybe; }; export type AttacksConnection = { __typename?: 'AttacksConnection'; fast?: Maybe>>; special?: Maybe>>; }; /** Requirement that prevents an evolution through regular means of levelling up. */ export type EvolutionRequirement = { __typename?: 'EvolutionRequirement'; amount?: Maybe; name?: Maybe; }; export type Pokemon = { __typename?: 'Pokemon'; attacks?: Maybe; /** @deprecated And this is the reason why */ classification?: Maybe; evolutionRequirements?: Maybe>>; evolutions?: Maybe>>; /** Likelihood of an attempt to catch a Pokémon to fail. */ fleeRate?: Maybe; height?: Maybe; id: Scalars['ID']['output']; /** Maximum combat power a Pokémon may achieve at max level. */ maxCP?: Maybe; /** Maximum health points a Pokémon may achieve at max level. */ maxHP?: Maybe; name: Scalars['String']['output']; resistant?: Maybe>>; types?: Maybe>>; weaknesses?: Maybe>>; weight?: Maybe; }; export type PokemonDimension = { __typename?: 'PokemonDimension'; maximum?: Maybe; minimum?: Maybe; }; /** Elemental property associated with either a Pokémon or one of their moves. */ export enum PokemonType { Bug = 'Bug', Dark = 'Dark', Dragon = 'Dragon', Electric = 'Electric', Fairy = 'Fairy', Fighting = 'Fighting', Fire = 'Fire', Flying = 'Flying', Ghost = 'Ghost', Grass = 'Grass', Ground = 'Ground', Ice = 'Ice', Normal = 'Normal', Poison = 'Poison', Psychic = 'Psychic', Rock = 'Rock', Steel = 'Steel', Water = 'Water', } export type Query = { __typename?: 'Query'; /** Get a single Pokémon by its ID, a three character long identifier padded with zeroes */ pokemon?: Maybe; /** List out all Pokémon, optionally in pages */ pokemons?: Maybe>>; }; export type QueryPokemonArgs = { id: Scalars['ID']['input']; }; export type QueryPokemonsArgs = { limit?: InputMaybe; skip?: InputMaybe; }; export type PokemonFieldsFragment = { __typename?: 'Pokemon'; id: string; name: string; attacks?: { __typename?: 'AttacksConnection'; fast?: Array<{ __typename?: 'Attack'; damage?: number | null; name?: string | null; } | null> | null; } | null; } & { ' $fragmentName'?: 'PokemonFieldsFragment' }; export type PoQueryVariables = Exact<{ id: Scalars['ID']['input']; }>; export type PoQuery = { __typename?: 'Query'; pokemon?: | ({ __typename: 'Pokemon'; id: string; fleeRate?: number | null; name: string; attacks?: { __typename?: 'AttacksConnection'; special?: Array<{ __typename?: 'Attack'; name?: string | null; damage?: number | null; } | null> | null; } | null; weight?: { __typename?: 'PokemonDimension'; minimum?: string | null; maximum?: string | null; } | null; } & { ' $fragmentRefs'?: { PokemonFieldsFragment: PokemonFieldsFragment }; }) | null; }; export const PokemonFieldsFragmentDoc = { kind: 'Document', definitions: [ { kind: 'FragmentDefinition', name: { kind: 'Name', value: 'pokemonFields' }, typeCondition: { kind: 'NamedType', name: { kind: 'Name', value: 'Pokemon' }, }, selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'id' } }, { kind: 'Field', name: { kind: 'Name', value: 'name' } }, { kind: 'Field', name: { kind: 'Name', value: 'attacks' }, selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'fast' }, selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'damage' }, }, { kind: 'Field', name: { kind: 'Name', value: 'name' } }, ], }, }, ], }, }, ], }, }, ], } as unknown as DocumentNode; export const PoDocument = { kind: 'Document', definitions: [ { kind: 'OperationDefinition', operation: 'query', name: { kind: 'Name', value: 'Po' }, variableDefinitions: [ { kind: 'VariableDefinition', variable: { kind: 'Variable', name: { kind: 'Name', value: 'id' } }, type: { kind: 'NonNullType', type: { kind: 'NamedType', name: { kind: 'Name', value: 'ID' } }, }, }, ], selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'pokemon' }, arguments: [ { kind: 'Argument', name: { kind: 'Name', value: 'id' }, value: { kind: 'Variable', name: { kind: 'Name', value: 'id' }, }, }, ], selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'id' } }, { kind: 'Field', name: { kind: 'Name', value: 'fleeRate' } }, { kind: 'FragmentSpread', name: { kind: 'Name', value: 'pokemonFields' }, }, { kind: 'Field', name: { kind: 'Name', value: 'attacks' }, selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'special' }, selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'name' }, }, { kind: 'Field', name: { kind: 'Name', value: 'damage' }, }, ], }, }, ], }, }, { kind: 'Field', name: { kind: 'Name', value: 'weight' }, selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'minimum' }, }, { kind: 'Field', name: { kind: 'Name', value: 'maximum' }, }, ], }, }, { kind: 'Field', name: { kind: 'Name', value: 'name' } }, { kind: 'Field', name: { kind: 'Name', value: '__typename' } }, ], }, }, ], }, }, { kind: 'FragmentDefinition', name: { kind: 'Name', value: 'pokemonFields' }, typeCondition: { kind: 'NamedType', name: { kind: 'Name', value: 'Pokemon' }, }, selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'id' } }, { kind: 'Field', name: { kind: 'Name', value: 'name' } }, { kind: 'Field', name: { kind: 'Name', value: 'attacks' }, selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'fast' }, selectionSet: { kind: 'SelectionSet', selections: [ { kind: 'Field', name: { kind: 'Name', value: 'damage' }, }, { kind: 'Field', name: { kind: 'Name', value: 'name' } }, ], }, }, ], }, }, ], }, }, ], } as unknown as DocumentNode;