Shell converted to TypeScript