<?xml version="1.0"?>
<psalm
        errorLevel="2"
        phpVersion="8.1"
        resolveFromConfigFile="true"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns="https://getpsalm.org/schema/config"
        xsi:schemaLocation="https://getpsalm.org/schema/config vendor/vimeo/psalm/config.xsd"
>
    <projectFiles>
        <directory name="examples"/>
        <directory name="src" />
        <file name="test/test-server.php"/>
        <ignoreFiles>
            <directory name="vendor"/>
        </ignoreFiles>
    </projectFiles>

    <issueHandlers>
        <MissingClosureReturnType>
            <errorLevel type="suppress">
                <directory name="src" />
            </errorLevel>
        </MissingClosureReturnType>

        <PossiblyUnusedMethod>
            <errorLevel type="suppress">
                <directory name="src"/>
            </errorLevel>
        </PossiblyUnusedMethod>

        <PropertyNotSetInConstructor>
            <errorLevel type="suppress">
                <file name="src/Driver/Http1Driver.php"/>
                <file name="src/Driver/Http2Driver.php"/>
            </errorLevel>
        </PropertyNotSetInConstructor>

        <RiskyTruthyFalsyComparison>
            <errorLevel type="suppress">
                <directory name="src" />
            </errorLevel>
        </RiskyTruthyFalsyComparison>

        <UnusedClass>
            <errorLevel type="suppress">
                <directory name="src"/>
            </errorLevel>
        </UnusedClass>

        <UnusedClosureParam>
            <errorLevel type="suppress">
                <directory name="examples"/>
            </errorLevel>
        </UnusedClosureParam>
    </issueHandlers>
</psalm>
