|  | <?php | 
        
          |  |  | 
        
          |  | # This is all from a different file, reused. | 
        
          |  |  | 
        
          |  | function hopinRegistrationWasCreated( | 
        
          |  | ?string $id = null, | 
        
          |  | ?string $chargeId = null, | 
        
          |  | ?string $userName = null, | 
        
          |  | ?string $userEmail = null, | 
        
          |  | ?string $userHeadline = null, | 
        
          |  | ?string $userTown = null, | 
        
          |  | ?string $eventName = null, | 
        
          |  | ?string $personaLabel = null, | 
        
          |  | ?string $persona = null, | 
        
          |  | ?Timestamp $createdAt = null | 
        
          |  | ): HopinRegistrationWasCreated { | 
        
          |  | return new HopinRegistrationWasCreated( | 
        
          |  | $id ?? 'registration id', | 
        
          |  | $chargeId ?? 'charge id', | 
        
          |  | $userName ?? 'user name', | 
        
          |  | $userEmail ?? '[email protected]', | 
        
          |  | $userHeadline ?? 'user headline', | 
        
          |  | $userTown ?? 'user town', | 
        
          |  | $eventName ?? 'event name', | 
        
          |  | $personaLabel ?? 'ticket name', | 
        
          |  | $persona ?? '60.50', | 
        
          |  | $createdAt ?? $this->timestamp() | 
        
          |  | ); | 
        
          |  | } | 
        
          |  |  | 
        
          |  | function freeConferenceTicketWasCreatedForAWebinarCustomer( | 
        
          |  | ?string $hopinRegistrationId = null, | 
        
          |  | ?string $attendeeName = null, | 
        
          |  | ?string $attendeeEmail = null, | 
        
          |  | ?string $eventName = null, | 
        
          |  | ?string $ticketName = null, | 
        
          |  | ?string $ticketPrice = null, | 
        
          |  | ?HopinTicketReference $ticketReference = null, | 
        
          |  | ?Timestamp $createdAt = null, | 
        
          |  | ): FreeConferenceTicketWasCreatedForAWebinarCustomer { | 
        
          |  | return new FreeConferenceTicketWasCreatedForAWebinarCustomer( | 
        
          |  | $hopinRegistrationId ?? 'registration id', | 
        
          |  | $attendeeName ?? 'user name', | 
        
          |  | $attendeeEmail ?? '[email protected]', | 
        
          |  | $eventName ?? 'event name', | 
        
          |  | $ticketName ?? 'ticket name', | 
        
          |  | $ticketPrice ?? '60.50', | 
        
          |  | $ticketReference ?? $this->ticketReference(), | 
        
          |  | $createdAt ?? $this->timestamp(), | 
        
          |  | ); | 
        
          |  | } | 
        
          |  |  | 
        
          |  | function ticketReference( | 
        
          |  | ?string $eventSlug = null, | 
        
          |  | ?string $ticketName = null, | 
        
          |  | ?string $ticketDescription = null, | 
        
          |  | ?int $ticketCount = null, | 
        
          |  | ?string $ticketCode = null, | 
        
          |  | ?string $ticketUrl = null | 
        
          |  | ): HopinTicketReference { | 
        
          |  | return new HopinTicketReference( | 
        
          |  | $eventSlug ?? 'laracon-eu-online-conference', | 
        
          |  | $ticketName ?? 'Conference Ticket - invoice company name', | 
        
          |  | $ticketDescription ?? 'Attend the conference sessions on Jan. 18th and 19th.', | 
        
          |  | $ticketCount ?? 3, | 
        
          |  | $ticketCode ?? 'code', | 
        
          |  | $ticketUrl ?? 'ticket url' | 
        
          |  | ); | 
        
          |  | } |