<?php

declare(strict_types=1);

use RectorLaravel\Set\LaravelSetProvider;
use Rector\Config\RectorConfig;
use RectorLaravel\Set\LaravelSetList;
use Rector\Set\ValueObject\SetList;

return RectorConfig::configure()
    ->withPaths([
        __DIR__ . '/app',
        __DIR__ . '/bootstrap',
        __DIR__ . '/cms',
        __DIR__ . '/config',
        __DIR__ . '/core',
        __DIR__ . '/modules',
        __DIR__ . '/plugins',
        __DIR__ . '/resources',
        __DIR__ . '/routes',
        __DIR__ . '/shop',
        __DIR__ . '/sites',
        __DIR__ . '/tests',
    ])
    ->withSkip([
        __DIR__ . '/modules/ModuleBuilder/admin/module_files',
        __DIR__ . '/modules/ModuleBuilder/admin/templates',
    ])
    ->withSetProviders(LaravelSetProvider::class)
    ->withComposerBased(laravel: true, twig: true)
    ->withPhpSets()
    ->withPreparedSets()
    ->withTypeCoverageLevel(1)
    ->withDeadCodeLevel(1)
    ->withCodeQualityLevel(1);
