Lets have a closer look at their differences:
|TypeScript Class is a template which holds methods,variables and provides a skeleton to object.
|TypeScript Interface is a blueprint which will tell a deriving class what to implement.
|To design a skeleton of modules functionality wise
|To hide a complexity from external accessing resource and securing core logic
|We can Instantiate class using its object
|We can not instantiate interface
|Class supports inheritance by extending other class
|Supports inheritance but can not implement other interfaces
|Class can have functions and function has complete definition
|Interface can have function but it can not define it
|Class can have constructor
|Class can public, private, protected
|Interface uses only public access specifier.