defmodule PolicyService.Events.Car.CarPolicyApplicationSubmitted do @derive Jason.Encoder defstruct [ :application_id, :org_id, :submitted_by, :applicant_info, :car_details, :selected_providers, :submitted_at ] end defmodule PolicyService.Events.Car.CarQuoteRequestSent do @derive Jason.Encoder defstruct [ :application_id, :org_id, :provider_id, :provider_email, :applicant_info, :car_details, :requested_at ] end defmodule PolicyService.Events.Car.CarProviderQuoteReceived do @derive Jason.Encoder defstruct [ :application_id, :org_id, :recorded_by, :provider_id, :quote_id, :premium, :coverage_details, :valid_until, :received_at ] end defmodule PolicyService.Events.Car.AllCarQuotesReceived do @derive Jason.Encoder defstruct [:application_id, :org_id, :quote_count] end defmodule PolicyService.Events.Car.CarQuoteAccepted do @derive Jason.Encoder defstruct [:application_id, :org_id, :accepted_by, :quote_id, :provider_id, :accepted_at] end defmodule PolicyService.Events.Car.CarSolicitationSent do @derive Jason.Encoder defstruct [:application_id, :org_id, :provider_id, :quote_id, :sent_at] end defmodule PolicyService.Events.Car.CarPolicyIssued do @derive Jason.Encoder defstruct [ :application_id, :org_id, :recorded_by, :policy_number, :provider_id, :effective_date, :expiry_date, :issued_at ] end