<?php

declare(strict_types=1);

$app = require dirname(__DIR__) . '/bootstrap.php';

/** @var \FinityUpdates\Config $config */
$config = $app['config'];
/** @var \FinityUpdates\Http\Request $request */
$request = $app['request'];
/** @var \FinityUpdates\Http\Session $session */
$session = $app['session'];
/** @var \FinityUpdates\Auth\AdminAuth $auth */
$auth = $app['auth'];
/** @var \FinityUpdates\Version\VersionService $versions */
$versions = $app['versions'];
/** @var \FinityUpdates\Release\ReleaseManager $files */
$files = $app['files'];
/** @var \FinityUpdates\Security\RateLimiter $rateLimiter */
$rateLimiter = $app['rateLimiter'];

(new \FinityUpdates\App($config, $request, $session, $auth, $versions, $files, $rateLimiter))->run();
