typescript interface class naming convention