import './__typegen'
import { objectType, unionType } from '../../../src'

export const typeNames = [
  'NbTtwcUU',
  'eemljdwg',
  'TDURJGny',
  'QKdnhgbW',
  'XdzKjpVP',
  'kKQNulhi',
  'PpTuFbFz',
  'DpnWHIJW',
  'JbsCxxcE',
  'uqAoXisC',
  'RCZmHSOp',
  'vveXjotS',
  'ZeyczKBv',
  'GdxXCAak',
  'mooFGlVS',
  'Xqkpjqni',
  'fDAloqko',
  'kQUqAggO',
  'tndtDdZP',
  'LtvKCzwe',
  'TDztrYLm',
  'OfyEZrPd',
  'gQDQWruj',
  'gqhvwsiF',
  'PYCDIQQc',
  'BiZjyuaY',
  'VynhbqCL',
  'hOqSbuBE',
  'mQIYoGzu',
  'dHKrfYNo',
  'EqEZXLCy',
  'MPQLFUho',
  'IZERvBgk',
  'kkQiMyOg',
  'GsbHZkLK',
  'ETUiuOHD',
  'bdmjhrZP',
  'vWCRSMfI',
  'eROeesVg',
  'newdlmuf',
  'tgBSTWuP',
  'ALXAXBKq',
  'xHmRwgeG',
  'IWhegzTM',
  'RTcWEgoC',
  'sYmZSZhS',
  'HXZUTyvG',
  'ogOIrhgb',
  'bpcReAKs',
  'uxqOEIwV',
  'SsKBGyvg',
  'ApAniugk',
  'fXnweaVk',
  'AOogKhAD',
  'UGJqdGDT',
  'NETQHyFQ',
  'PWOXDRzE',
  'EtPHwkkm',
  'QelISHAj',
  'TWLZYGzk',
  'dnutiEie',
  'RNSfiIOi',
  'PGcwRfdb',
  'BXowGvwZ',
  'LHxWkxKq',
  'hqweSGgf',
  'dOWdqEud',
  'bsuhpkhX',
  'HZbsVdoX',
  'XFYbFCkA',
  'muuoinyp',
  'lhdysNNV',
  'WurxotQy',
  'ICrkovFe',
  'jkcwiNhe',
  'RMBiaCdu',
  'xnxcQfWx',
  'Iypygftg',
  'qXlhbRwq',
  'ECChhDfK',
  'qCzvlwRD',
  'cXAmxvqv',
  'TppFHtyg',
  'PBGQfXYx',
  'HwkXtjRP',
  'ZEyINaeG',
  'KsPfaUFr',
  'HgYVPDgm',
  'YBZmfmWn',
  'rKZaCTrp',
  'PwzFJfRE',
  'hLptFSis',
  'KbTYPbTr',
  'FaJAYKqm',
  'uaVbWYYy',
  'GzglazdH',
  'CgAQHanX',
  'ixwjWVvf',
  'dAmPEeQn',
  'pnfpWCgc',
  'iVjcPoMw',
  'WsneBHrs',
  'kAFbqgpE',
  'IhSGxaNc',
  'XvyULguR',
  'GYbaqoRT',
  'LMnZbpCI',
  'deqJYjdv',
  'sOPJOCHV',
  'eggnlUYr',
  'wtjYwstX',
  'kEhnOaCH',
  'LBePcCkW',
  'PNeiVzWR',
  'PTtcHGFZ',
  'fvXQFkRb',
  'mFSUfTPi',
  'tHuINsQQ',
  'dnjGpfIS',
  'awDoUlrM',
  'IAOEaBfb',
  'EhpNnQJw',
  'QMkOOMdT',
  'TbgzaUgu',
  'zpZvbHAk',
  'JZMQpjQv',
  'EjIQIfmv',
  'hQiYNmDV',
  'OwZeKGSU',
  'ISayJMYD',
  'yrGYxJeE',
  'wvbxCjzQ',
  'cMxjKIfV',
  'HjRDJhnX',
  'JuaucwDY',
  'yJNnsHEj',
  'WaVLDFqC',
  'DBZLsxpr',
  'hBCadJbD',
  'ubXmVvgH',
  'eJSSQaaC',
  'iZJAoMWm',
  'qBIjdcrW',
  'bGRbQdGF',
  'WoCNZkWp',
  'WhUVndTD',
  'AuMxHAoX',
  'KvHHVcPa',
  'PNgZWWwo',
  'NefQmhqG',
  'yNNQUmqa',
  'HJmsvtgX',
  'IuVQPFJN',
  'JXAbemqC',
  'kXMItaoE',
  'HNLQTErw',
  'JsAPYbRs',
  'KVIgujkc',
  'euCWAGET',
  'KGbJMfhO',
  'lPtHeBuR',
  'ZzRSmAyf',
  'NlMnyCgu',
  'NrrBYDim',
  'kHLLmfcE',
  'ZElcDXRS',
  'aEOOAAKG',
  'mKbKQhyO',
  'hAfKmdaD',
  'cEORMlXC',
  'Bjgguvhd',
  'TKzetlpb',
  'CXumheDD',
  'FDouQoXO',
  'lVumUBIa',
  'TeZWMTzw',
  'oLLKSNvK',
  'tBRvILTt',
  'HdiyXGxs',
  'zLwooCNa',
  'bndWrLAg',
  'WMsrUAGp',
  'HLRWzsTU',
  'zlPOFwWi',
  'dbFplbat',
  'HENcJewx',
  'zvGUhtyF',
  'HWMyawvm',
  'jCnSiJOq',
  'gfyuMPLk',
  'ptQOpnjR',
  'BAzfAeMR',
  'HxCkBUxv',
  'AQDzZPsI',
  'arOfyZvi',
  'OZfGULVa',
  'yMjEoECr',
  'ctfzshTJ',
  'MvpRfuhb',
  'GhHKLcZe',
  'yNumRBxd',
  'jrmLpsfT',
  'JjkgZKrV',
  'DNohRdIN',
  'IGibGxHO',
  'IBZxPcZb',
  'laqqtHJN',
  'GwkBnXKj',
  'jciWswYD',
  'NczZcGdE',
  'hIjYlIps',
  'QXSXwpMN',
  'aKYfIihK',
  'KoKtAqbt',
  'EzcWBhIv',
  'TZHgNTAO',
  'YwFARARB',
  'VAvPoGEb',
  'GcpbGXTn',
  'DGxuhtpo',
  'QmPQoOZh',
  'YxNVEAVR',
  'ahctkrlN',
  'IqZAiUKE',
  'PVCfSccj',
  'WsNuPHEi',
  'PHltFHbS',
  'OjwpvBGH',
  'FcFlCNAk',
  'vKNwRocJ',
  'bLcHZPpX',
  'RVbkKVjJ',
  'ZbrxBPat',
  'vmWUXlxn',
  'bNaHPVhI',
  'ldqzvWyd',
  'phBMkPER',
  'hDsbddpo',
  'IhtaZNUi',
  'DMggicLd',
  'hgsVEiUk',
  'yPDuKVOh',
  'OBnGIgyZ',
  'yJubHpPP',
  'YNnosqXJ',
  'Stydvxig',
  'lifwEmKz',
  'cGxDWUGD',
  'ZrPlFevQ',
  'unjJMyow',
  'BTIsXTrL',
  'HIPZQFdS',
  'hEyyqHvv',
  'tWYLhGmP',
  'DbgPTfDo',
  'RydRYmBj',
  'GDATeumz',
  'SBNNVkRr',
  'FHLtgKoA',
  'iWpPsvNV',
  'jAUaKDuu',
  'mtikMWMb',
  'tfdcstkI',
  'UuNFAnQg',
  'YZpErVkH',
  'QxHzTNGy',
  'BYPWzETJ',
  'rsrjXXbp',
  'CCXSFsMn',
  'yvlysvTB',
  'eWlLfMzi',
  'hTNuohNQ',
  'klkPkaYU',
  'mZmlDoBs',
  'fFyvwcxZ',
  'XwweqpQZ',
  'fPXYtcbT',
  'jnFMLyxL',
  'OehdOjXt',
  'ZVaYkAdb',
  'lFbOnWGE',
  'FvftqquW',
  'DkoAlvGn',
  'zUQFahzk',
  'faKaQEBn',
  'XHvdKJbC',
  'BFohGIGQ',
  'jmnxoYAy',
  'xUqWuwDO',
  'zjnLruIQ',
  'gvxFkejN',
  'wYUTmKCU',
  'NwPaWUGr',
  'iqXgPwiC',
  'BWwxnXpM',
  'DKEJFUiy',
  'rDLkvRXw',
  'ShqdAPLQ',
  'lsDifAmH',
  'kAqRlGFR',
] as const

export const types = [
  typeNames.map((typeName, i) => {
    return objectType({
      name: typeName,
      definition(t) {
        t.id('id' + i.toString())
      },
    })
  }),
  unionType({
    name: 'BigUnion',
    resolveType() {
      return null
    },
    definition(t) {
      t.members(...typeNames)
    },
  }),
  unionType({
    name: 'MediumUnionType',
    resolveType() {
      return null
    },
    definition(t) {
      t.members(...typeNames.slice(50, 150))
    },
  }),
  unionType({
    name: 'MediumUnionTypes',
    resolveType() {
      return null
    },
    definition(t) {
      t.members(...typeNames.slice(0, 100))
    },
  }),
]
