readonly is for property (class property to property in interface). Properties must be initialized at their declaration or in the constructor. It only ensures that it won't be modified by me. Others can still modify it. See here

static must be class member.

Function overload, this is possible in TypeScript but it's not supported by JavaScript.