Class types provide compilation checks for different property and method privacy levels, which allows us to specify which properties and methods of a class are accessible outside of the class.
public TypeIn TypeScript, every class property and method is public by default. The public keyword is useful for readability and maintaining a consistent style within a codebase. Unlike other class types, the public keyword does not affect how TypeScript compiles code.
private TypeThe private type in TypeScript specifies that a property or method in a class should not be accessed outside of the class. When private is used to mark a field, it cannot be called in a derived class or on a class instance. If a private method or property is called in a derived class or class instance, TypeScript will generate an error during compilation.
readonly TypeThe readonly type marks a property or method in a class as unchangeable after initialization. When the readonly type is applied, the property or method can be assigned in the class’ constructor() method, but may not be reassigned at any other time.
protected TypeThe protected type marks a property or method in a class as accessible only by the class itself or by derived classes. When the protected type is applied, instance of classes may not access the protected property or method.