Added TypeScript support