TypeScript migration