Luokkatippien käyttö TypeScriptin geneerisissä tyypeissä

Yleisenä tyyppinä voidaan käyttää myös luokkia. Täytyy kuitenkin määrittää luokan tyyppi sen konstruktorin avulla. Siten parametrin type:T sijaan meidän on annettava type: {new(): T;}. Tehdään funktio, joka puolestaan luo uuden käyttäjän luokasta User:

typescriptfunction getUser <T> (type: { new (): T; }): T {
  return new type();
}

class User {
  constructor() {
    console.log('You create a new user!');
  }
}

let user: User = getUser(User);

Suoritetun koodin tulos:

typescript'You create a new user!'