Finally moved a mid-sized project from JSDoc type comments to proper TypeScript. The migration took about half a day — less than expected.
The biggest win is not autocompletion or error catching (though those matter). It is that the types act as documentation that stays in sync with the code. Prose comments lie; types don't compile if they do.
One friction point: strict: true surfaces a lot of implicit any that was quietly hiding real assumptions. Fixing each one forced me to think about what the code actually expected — which is the point.