//
// AUTO-GENERATED FILE. DO NOT MODIFY.
//
// This class was automatically generated by Apollo GraphQL version '3.3.0'.
//
package io.sentry.apollo3.selections

import com.apollographql.apollo3.api.CompiledArgument
import com.apollographql.apollo3.api.CompiledField
import com.apollographql.apollo3.api.CompiledSelection
import com.apollographql.apollo3.api.CompiledVariable
import com.apollographql.apollo3.api.notNull
import io.sentry.apollo3.type.GraphQLID
import io.sentry.apollo3.type.GraphQLString
import io.sentry.apollo3.type.Launch
import io.sentry.apollo3.type.Mission
import io.sentry.apollo3.type.Query.Companion.type
import io.sentry.apollo3.type.Rocket
import kotlin.collections.List

public object LaunchDetailsQuerySelections {
  private val mission: List<CompiledSelection> =
    listOf(
      CompiledField.Builder(name = "name", type = GraphQLString.type).build(),
      CompiledField.Builder(name = "missionPatch", type = GraphQLString.type)
        .arguments(listOf(CompiledArgument("size", "LARGE")))
        .build(),
    )

  private val rocket: List<CompiledSelection> =
    listOf(
      CompiledField.Builder(name = "name", type = GraphQLString.type).build(),
      CompiledField.Builder(name = "type", type = GraphQLString.type).build(),
    )

  private val launch: List<CompiledSelection> =
    listOf(
      CompiledField.Builder(name = "id", type = GraphQLID.type.notNull()).build(),
      CompiledField.Builder(name = "site", type = GraphQLString.type).build(),
      CompiledField.Builder(name = "mission", type = Mission.type).selections(mission).build(),
      CompiledField.Builder(name = "rocket", type = Rocket.type).selections(rocket).build(),
    )

  public val root: List<CompiledSelection> =
    listOf(
      CompiledField.Builder(name = "launch", type = Launch.type)
        .arguments(listOf(CompiledArgument("id", CompiledVariable("id"))))
        .selections(launch)
        .build()
    )
}
