Как избежать метода класса фабрики kotlin по подтипу?

у меня вопрос о котлине:

Представьте, что у вас есть это:

sealed class Graph : Serializable data class Graph1() : Graph() {} data class Graph2() : Graph() {} 

И вы хотите иметь фабричный класс, который задает подтип Graph, дает вам GraphView.

Итак, у вас есть что-то похожее

 interface GraphViewFactory{ fun get(data: Graph1):GraphView fun get(data: Graph2):GraphView } 

А также у вас есть реализация для этого.

Возможно ли в котлине избежать этого метода взрыва интерфейса, имеющего по одному на тип графика, используя встроенный и оверенный? Я пытаюсь, но я не могу.

С одной стороны, интерфейс kotlin (я думаю) не допускает встроенных функций, с другой стороны, даже без интерфейса я не могу автопоставить параметр T как подтвержденный одним из определенных классов подтипов внутри фабричного класса.