This isn't possible, you can however, define your properties in the constructor and initialize them to default values and then define an initialization method that receives your custom data.
Something like this:
class Projectile extends ISpriteInstance {
constructor()
{
super();
this._foobar = null;
}
Initialize(foobar)
{
this._foobar = foobar;
}
}
let projectile = runtime.objects.projectile.createInstance("main",playerObj.x,playerObj.y, true)
projectile.Initialize(/*your custom data goes here*/);