includes:
	- config.level1.neon

parameters:
	featureToggles:
		invalidVarTag: false
	checkClassCaseSensitivity: true
	checkThisOnly: false
	checkPhpDocMissingReturn: true

rules:
	- PHPStan\Rules\Cast\EchoRule
	- PHPStan\Rules\Cast\InvalidCastRule
	- PHPStan\Rules\Cast\InvalidPartOfEncapsedStringRule
	- PHPStan\Rules\Cast\PrintRule
	- PHPStan\Rules\Functions\IncompatibleDefaultParameterTypeRule
	- PHPStan\Rules\Methods\IncompatibleDefaultParameterTypeRule
	- PHPStan\Rules\Operators\InvalidBinaryOperationRule
	- PHPStan\Rules\Operators\InvalidUnaryOperationRule
	- PHPStan\Rules\Operators\InvalidComparisonOperationRule
	- PHPStan\Rules\PhpDoc\IncompatiblePhpDocTypeRule
	- PHPStan\Rules\PhpDoc\IncompatiblePropertyPhpDocTypeRule
	- PHPStan\Rules\PhpDoc\InvalidPhpDocTagValueRule
	- PHPStan\Rules\PhpDoc\InvalidThrowsPhpDocValueRule

conditionalTags:
	PHPStan\Rules\PhpDoc\InvalidPhpDocVarTagTypeRule:
		phpstan.rules.rule: %featureToggles.invalidVarTag%
	PHPStan\Rules\PhpDoc\WrongVariableNameInVarTagRule:
		phpstan.rules.rule: %featureToggles.invalidVarTag%

services:
	-
		class: PHPStan\Rules\Functions\CallCallablesRule
		arguments:
			reportMaybes: %reportMaybes%
		tags:
			- phpstan.rules.rule
	-
		class: PHPStan\Rules\PhpDoc\InvalidPhpDocVarTagTypeRule
		arguments:
			checkClassCaseSensitivity: %checkClassCaseSensitivity%

	-
		class: PHPStan\Rules\PhpDoc\WrongVariableNameInVarTagRule
