includes:
    - ./vendor/larastan/larastan/extension.neon

parameters:
    treatPhpDocTypesAsCertain: false
    checkModelProperties: true
    checkOctaneCompatibility: true
    reportUnmatchedIgnoredErrors: false

    paths:
        - app
        - config
        - database
        - elastic
        - routes
        - tests

    # The level 9 is the highest level
    level: 5

    ignoreErrors:
        -
            identifier: missingType.iterableValue
        -
            identifier: varTag.nativeType
        -
            identifier: method.childReturnType
        -
            identifier: new.static
        - '#Call to an undefined method Mockery\\ExpectationInterface|Mockery\\HigherOrderMessage::once\(\).#'
        - '#Call to an undefined method Database\\Factories.*::trashed\(\).#'
        - '#::mapWithKeys\(\) expects*non-empty-array<int\|string, string> given.#'
        - '#Access to an undefined property App\\Models\\Wiki\\Artist::\$pivot.#'
        - "#BelongsToMany<.*,\\s*'pivot'> but returns .*BelongsToMany<.*,\\s*string>.#"
        - '#Call to method assertActionMounted\(\) on an unknown class static.#'
        -
            identifier: nullsafe.neverNull
            path: app/Scout/Typesense/Models/*
        -
            message: '#Call to an undefined method PHPUnit\\Framework\\TestCase::.*\(\)#'
            path: tests/*
        -
            message: '#Call to protected method expectException\(\) of class PHPUnit\\Framework\\TestCase.#'
            path: tests/*
        -
            message: '#Call to an undefined method Pest\\PendingCalls\\TestCall::expect\(\).#'
            path: tests/Unit/ArchTest.php
        -
            message: '#Undefined variable: \$this#'
            path: tests/Pest.php
        -
            message: '#Call to method callMountedAction\(\) on an unknown class static.#'
            path: tests/Unit/Filament/*
        -
            message: '#Call to method assertActionHidden\(\) on an unknown class static.#'
            path: tests/Unit/Filament/*
        -
            message: '#Call to method assertActionDoesNotExist\(\) on an unknown class static.#'
            path: tests/Unit/Filament/*
        -
            message: '#Access to an undefined property PHPUnit\\Framework\\TestCase::\$mutation.#'
            path: tests/Feature/GraphQL/*
