<?php

declare(strict_types=1);

namespace App\Commerce\Dto;

final readonly class ShopProductResult
{
    /**
     * @param string[] $highlights
     */
    public function __construct(
        public string $id,
        public string $name,
        public ?string $productNumber = null,
        public ?string $manufacturer = null,
        public ?string $price = null,
        public ?bool $available = null,
        public ?string $url = null,
        public array $highlights = [],
        public ?string $description = null,
        public ?string $productImage = null,
        public ?string $customFields = null,

        // Internal ranking/merge metadata
        public ?int $matchScore = null,
        public ?string $matchSource = null,
        public array $matchedQueries = [],
    ) {
    }
}