Unless the original data class is indeed
just a tupple (e.g. it does not add any extra behavior beyond provided by data class) it is going to be non-trivial (e.g. it will require either annotation process / code-generation or reflection). However, you are free to define your own interface like
interface Tupple2<A,B> { fun component1(): A; fun component2(): B }
, implement it in your data classes and experiment. Maybe that is going to be enough for your needs.