@Alessio look at the code in my link, I don't specify the types there at all:
const t = tryNew(Test, '', 23);
Typescript itself infers the types of arguments and checks the passed values.