<?php namespace App\Member\Data; use Spatie\LaravelData\Data; use Spatie\LaravelData\DataCollection; use Zoomyboy\LaravelNami\Data\Course as NamiCourse; use Zoomyboy\LaravelNami\Data\Member as NamiMember; use Zoomyboy\LaravelNami\Data\MembershipEntry as NamiMembershipEntry; use Spatie\LaravelData\Attributes\DataCollectionOf; class FullMember extends Data { /** * @param DataCollection<int, NamiCourse> $courses * @param DataCollection<int, NamiMembershipEntry> $memberships */ public function __construct( public NamiMember $member, #[DataCollectionOf(NamiCourse::class)] public DataCollection $courses, #[DataCollectionOf(NamiMembershipEntry::class)] public DataCollection $memberships, ) {} }