[
  {
    "name": "QueryRoot",
    "body": "\nconst QueryRoot = {\n  \"name\": \"QueryRoot\",\n  \"kind\": \"OBJECT\",\n  \"fieldBaseTypes\": {\n    \"collection\": \"Collection\",\n    \"node\": \"Node\",\n    \"product\": \"Product\",\n    \"shop\": \"Shop\"\n  },\n  \"implementsNode\": false\n};\nexport default QueryRoot;",
    "path": "types/query-root.js"
  },
  {
    "name": "Node",
    "body": "\nconst Node = {\n  \"name\": \"Node\",\n  \"kind\": \"INTERFACE\",\n  \"fieldBaseTypes\": {\n    \"id\": \"ID\"\n  },\n  \"possibleTypes\": [\"Collection\", \"Product\", \"ProductOption\", \"ProductVariant\"]\n};\nexport default Node;",
    "path": "types/node.js"
  },
  {
    "name": "Mutation",
    "body": "\nconst Mutation = {\n  \"name\": \"Mutation\",\n  \"kind\": \"OBJECT\",\n  \"fieldBaseTypes\": {\n    \"apiCustomerAccessTokenCreate\": \"ApiCustomerAccessTokenCreatePayload\",\n    \"apiCustomerAccessTokenDelete\": \"ApiCustomerAccessTokenDeletePayload\",\n    \"apiCustomerAccessTokenRenew\": \"ApiCustomerAccessTokenRenewPayload\"\n  },\n  \"implementsNode\": false,\n  \"relayInputObjectBaseTypes\": {\n    \"apiCustomerAccessTokenCreate\": \"ApiCustomerAccessTokenCreateInput\",\n    \"apiCustomerAccessTokenDelete\": \"ApiCustomerAccessTokenDeleteInput\",\n    \"apiCustomerAccessTokenRenew\": \"ApiCustomerAccessTokenRenewInput\"\n  }\n};\nexport default Mutation;",
    "path": "types/mutation.js"
  },
  {
    "body": "\nimport QueryRoot from \"./types/query-root\";\nimport Node from \"./types/node\";\nimport Mutation from \"./types/mutation\";\nconst Schema = {\n  types: {}\n};\nSchema.types[\"QueryRoot\"] = QueryRoot;\nSchema.types[\"Node\"] = Node;\nSchema.types[\"Mutation\"] = Mutation;\nSchema.queryType = \"QueryRoot\";\nSchema.mutationType = \"Mutation\";\nSchema.subscriptionType = null;\n\nfunction recursivelyFreezeObject(structure) {\n  Object.getOwnPropertyNames(structure).forEach(key => {\n    const value = structure[key];\n    if (value && typeof value === 'object') {\n      recursivelyFreezeObject(value);\n    }\n  });\n  Object.freeze(structure);\n  return structure;\n}\n\nexport default recursivelyFreezeObject(Schema);",
    "path": "schema.js"
  }
]
