Rule: member-access
Requires explicit visibility declarations for class members.
Rationale
Explicit visibility declarations can make code more readable and accessible for those new to TS.
Other languages such as C# default to private
, unlike TypeScript’s default of public
.
Members lacking a visibility declaration may be an indication of an accidental leak of class internals.
Notes:
TS Only
Has Fixer
Config
These arguments may be optionally provided:
"no-public"
forbids public accessibility to be specified, because this is the default."check-accessor"
enforces explicit visibility on get/set accessors"check-constructor"
enforces explicit visibility on constructors"check-parameter-property"
enforces explicit visibility on parameter properties
Config examples
"member-access": true
"member-access": [true, "no-public"]
"member-access": [true, "check-accessor"]
Schema
{ "type": "array", "items": { "type": "string", "enum": [ "no-public", "check-accessor", "check-constructor", "check-parameter-property" ] }, "minLength": 0, "maxLength": 4 }