in src/main/scala/com/spotify/scio/AnnotationTypeInjector.scala [58:67]
def getUnapplyReturnTypes(caseClasses: String): Seq[String] =
getConstructorProps(caseClasses).types
def getTupledMethod(returnClassName: String, caseClasses: String): String =
getConstructorProps(caseClasses) match {
case cp: ConstructorProps if (2 to 22).contains(cp.types.size) =>
s"def tupled: _root_.scala.Function1[( ${cp.types.mkString(" , ")} ), $returnClassName ] = ???"
case _ =>
""
}