ClosureCompiler

Closureで型キャストのやり方。

function makeInstance(clazz) {
  var instance = /**@type {Type}*/(new clazz());
  ....
  return instance;
}

この場合括弧が必要なので注意。