<?php

namespace App\Domains\Event\Actions\UpdateParticipant;

use App\Models\EventParticipant;

class UpdateParticipantRequest {
    function __construct(
        public EventParticipant $participant,
        public string $firstname,
        public string $lastname,
        public ?string $nickname,
        public string $address_1,
        public ?string $address_2,
        public string $postcode,
        public string $city,
        public string $localgroup,
        public string $birthday,
        public string $email_1,
        public string $phone_1,
        public ?string $contact_person,
        public ?string $email_2,
        public ?string $phone_2,
        public string $arrival,
        public string $departure,
        public string $participationType,
        public string $eatingHabit,
        public ?string $paymentMethod,
        public ?string $allergies,
        public ?string $intolerances,
        public ?string $medications,
        public string $extendedFirstAid,
        public string $swimmingPermission,
        public ?string $tetanusVaccination,
        public ?string $notes,
        public string $amountPaid,
        public string $amountExpected,
        public string $cocStatus,
        /** Antworten auf die Teilnahmeoptionen: [ question_key => value ]. null = unverändert lassen. */
        public ?array $participationOptions = null,
        /** Gewählte Zusätze: [ addon_key => bool ]. null = unverändert lassen. */
        public ?array $selectedAddons = null,
    ) {}
}
