0.2.1 • Published 6 years ago

tslint-no-subclass v0.2.1

Weekly downloads
4
License
MIT
Repository
github
Last release
6 years ago

tslint-no-subclass

License: MIT

NPM

TSLint rule to prevent class inheritance.

Install

npm install --save-dev tslint-no-subclass

Usage

Add the following to tslint.json:

{
    "extends": [
        "tslint-no-subclass"
    ],
    "rules": {
        "no-subclass": true
    }
}

Allow inheritance for specific classes

{
    "extends": [
        "tslint-no-subclass"
    ],
    "rules": {
        "no-subclass": [true, "Foo", "Bar"]
    }
}

Example

Config:

{
    "extends": [
        "tslint-no-subclass"
    ],
    "rules": {
        "no-subclass": [true, "Allow"]
    }
}

Source code:

class Allow {}

class Valid extends Allow {} // Valid because "Allow" was added to rule exceptions

class Disallow {}

class Invalid extends Disallow {} // Error: Subclass not allowed