Ей не нужно ничего возвращать
let loginView = CustomView()
loginView.setKeyboard(type: .password)
я инкапсулирую все методы) чтобы не было к ним доуступа извне) я кроче что придумал, правда не знаю сработает ли. в общем, у меня есть труктурка, у которой есть поле, которое передается как плейсхолдер, создал одну переменную в класе с didSet куда передал метод, который в текстфилд плейсхолдер передает стрингу, и в этом же методе в текстфилд кийборд тайп передаю метод, который принимает в себя стрингу и в зависимости от стринги возращает нужный тип клавиатуры))