<?php

declare(strict_types=1);

namespace KupShop\GraphQLBundle\ApiAdmin\Types\Order\Input;

use KupShop\GraphQLBundle\ApiAdmin\Types\Order\OrderDocument;
use TheCodingMachine\GraphQLite\Annotations\Field;
use TheCodingMachine\GraphQLite\Annotations\Input;

#[Input(update: true)]
class OrderUpdateInput
{
    #[Field(description: 'ID objednávky.')]
    public int $id;

    #[Field(description: 'Stav objednávky.')]
    public ?StatusModify $status;

    #[Field(description: 'Číslo balíku. Více čísel balíků je potřeba oddělit čárkou.')]
    public ?string $packageId;

    /**
     * TODO: odeberu jakmile zacnou na sartoru pouzivat field documents.
     *
     * @deprecated
     */
    #[Field(description: 'Odkaz na fakturu ve formátu PDF. Při nastavení bude použita místo standartní e-shopové faktury.')]
    public ?string $invoiceUrl;

    /**
     * @var OrderDocument[]|null
     */
    #[Field(description: 'Nastavení vlastních PDF dokladů.')]
    public ?array $documents;

    /**
     * @var OrderItemInput[]|null
     */
    #[Field(description: 'Aktualizace položek objednávky.')]
    public ?array $items;

    #[Field(description: 'ID uživatele')]
    public ?int $userId;
}
