If BA are worried about people leaving then make them sign a bond, or even better, focus on making BA such a good place to work nobody wants to leave in the first place. Charging upfront for type ratings is unjustifiable and a few years ago would have been unthinkable at BA.
They aren't worried about people leaving. We can see who leaves the company every month, and I only need one hand to keep count of them. They've got no shortage of applicants alas, otherwise there might be bigger appetite from bosses to introduce better terms!