/* * Copyright (C) Sapphirecode - All Rights Reserved * This file is part of SCode-Eslint-Config which is released under BSD-3-Clause. * See file 'LICENSE' for full license details. * Created by Timo Hocker , March 2020 */ module.exports = { globals: {}, parser: '@typescript-eslint/parser', extends: [ '@sapphirecode/eslint-config-es6', 'plugin:@typescript-eslint/eslint-recommended', 'plugin:@typescript-eslint/recommended' ], plugins: [ '@typescript-eslint' ], parserOptions: { sourceType: 'module', parser: 'babel-eslint' }, settings: { 'import/parsers': { '@typescript-eslint/parser': ['.ts', '.tsx'] } }, rules: { '@typescript-eslint/camelcase': 'off', '@typescript-eslint/naming-convention': ['error', { selector: 'default', format: ['snake_case'] }, { selector: 'typeLike', format: ['PascalCase'] }, { selector: 'property', modifiers: ['private'], format: ['snake_case'], leadingUnderscore: 'require' } ], 'id-match': ['error', '^([a-z][a-z0-9_]*|[A-Z][a-zA-Z]*)$', { onlyDeclarations: true }] } }