TypeScript version of Bloom