Вы можете использовать универсальный тип.
class ControllerTimeline<T>: UIViewController {
var myObject :T?
...
}
Если вам нужно, чтобы T имел какое-то ограничение (пример: может быть только NSObject)
class ControllerTimeline<T: NSObject>: UIViewController {
var myObject :T?
...
}
Если вы хотите использовать только A или B, вы можете создать общего родителя для A и B +
class ControllerTimeline<T: C>: UIViewController {
...
Или пусть A и B реализуют общий протокол и набирают что-то вроде этого
class ControllerTimeline<T: MyProtocol>: UIViewController {
...