mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-19 21:13:30 +01:00
types: use readonly array / collection types for user input (#10045)
* types: use readonly arrays * chore: check on interface properties * chore: ReadonlyCollection * chore: exclude EventEmitter methods * chore: resolve false positive
This commit is contained in:
@@ -204,6 +204,9 @@
|
||||
{
|
||||
"files": ["typings/*.ts", "scripts/*.mjs"],
|
||||
"parser": "@typescript-eslint/parser",
|
||||
"parserOptions": {
|
||||
"project": "./tsconfig.json"
|
||||
},
|
||||
"plugins": ["@typescript-eslint"],
|
||||
"rules": {
|
||||
"@typescript-eslint/naming-convention": [
|
||||
@@ -216,6 +219,33 @@
|
||||
"match": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"no-restricted-syntax": [
|
||||
2,
|
||||
{
|
||||
"selector": "MethodDefinition[key.name!=on][key.name!=once][key.name!=off] > TSEmptyBodyFunctionExpression > Identifier :not(TSTypeOperator[operator=readonly]) > TSArrayType",
|
||||
"message": "Array parameters on methods must be readonly"
|
||||
},
|
||||
{
|
||||
"selector": "MethodDefinition > TSEmptyBodyFunctionExpression > Identifier TSTypeReference > Identifier[name=Collection]",
|
||||
"message": "Parameters of type Collection on methods must use ReadonlyCollection"
|
||||
},
|
||||
{
|
||||
"selector": "TSDeclareFunction > Identifier :not(TSTypeOperator[operator=readonly]) > TSArrayType",
|
||||
"message": "Array parameters on functions must be readonly"
|
||||
},
|
||||
{
|
||||
"selector": "TSDeclareFunction Identifier TSTypeReference > Identifier[name=Collection]",
|
||||
"message": "Parameters of type Collection on functions must use ReadonlyCollection"
|
||||
},
|
||||
{
|
||||
"selector": "TSInterfaceDeclaration TSPropertySignature :not(TSTypeOperator[operator=readonly]) > TSArrayType",
|
||||
"message": "Array properties on interfaces must be readonly"
|
||||
},
|
||||
{
|
||||
"selector": "TSInterfaceDeclaration TSPropertySignature TSTypeReference > Identifier[name=Collection]",
|
||||
"message": "Interface properties of type Collection must use ReadonlyCollection"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user