Added type system for JS