<?php
declare(strict_types=1);

namespace App\Domain\Media;

interface ImageProcessorInterface
{
    /**
     * Erstellt alle konfigurierten Bildvarianten für ein Bild
     *
     * @param Image $image
     * @return array<ImageVariant>
     */
    public function createAllVariants(Image $image): array;

    /**
     * Erstellt alle Bildvarianten für einen bestimmten Typ
     *
     * @param Image $image
     * @param ImageVariantType $type
     * @return array<ImageVariant>
     */
    public function createVariantsForType(Image $image, ImageVariantType $type): array;
}
