<?php

declare(strict_types=1);

namespace KupShop\GraphQLBundle\ApiAdmin\Types\Catalog\Product\Input\Related;

use TheCodingMachine\GraphQLite\Annotations\Field;
use TheCodingMachine\GraphQLite\Annotations\Input;

/**
 * @Input()
 */
class RelatedProductsInput
{
    /**
     * ID produktu.
     *
     * @Field()
     */
    public int $productId;

    /**
     * Produkty, které mají být v souvisejícím zboží.
     *
     * @Field()
     *
     * @var RelatedItemInput[]
     */
    public array $products;

    /**
     * - Pokud `true`, tak se u produktu zachovají aktuální související produkty a k nim se přidají související produktu specifikované v `products`.
     * - Pokud `false`, tak u produktu smažou aktuální související produkty a přidá související produkty, které jsou specifikované v `products`.
     *
     * @Field()
     */
    public ?bool $append = false;

    /**
     * ID z listu souvisejícího typu produktu.
     *
     * @Field()
     */
    public ?int $type = null;
}
