<?php

declare(strict_types=1);

namespace apexl\Io\modules\mirrorS3\Hook;

use apexl\Io\interfaces\AbstractHook;
use apexl\Io\modules\mirror\Interface\UploaderServiceResolverInterface;
use apexl\Io\modules\mirrorS3\Service\S3UploaderService;
use Arrayy\Type\StringCollection;

final readonly class AddS3Alias implements AbstractHook
{

    public function hooks(): array
    {
        return [
            UploaderServiceResolverInterface::HOOK__UPLOADER_SERVICE_ALIASES,
        ];
    }

    public function __invoke(StringCollection $aliases): StringCollection
    {
        $aliases->set('s3', S3UploaderService::class);

        return $aliases;
    }
}
