package common

type PointOfInterest struct {
	Name     string      `json:"name"`
	Location POILocation `json:"location"`
}

type POILocation struct {
	Latitude  float64 `json:"latitude"`
	Longitude float64 `json:"longitude"`
}

type MobilePOIEditMessage struct {
	OldName string          `json:"old_name"`
	UserPOI PointOfInterest `json:"user_poi"`
}

type MobilePOIDeleteMessage struct {
	Name string `json:"name"`
}

type MobilePOIsMessage struct {
	UserPOI []PointOfInterest `json:"user_pois"`
}

type HMIPOIRequestMessage struct {
	DriverID string `json:"driver_id"`
}

type HMIPOIMessage struct {
	DriverID string          `json:"driver_id"`
	UserPOI  PointOfInterest `json:"user_poi"`
}

type HMIPOIEditMessage struct {
	DriverID string          `json:"driver_id"`
	OldName  string          `json:"old_name"`
	UserPOI  PointOfInterest `json:"user_poi"`
}

type HMIPOIDeleteMessage struct {
	DriverID string `json:"driver_id"`
	Name     string `json:"name"`
}

type HMIPOIsMessage struct {
	DriverID string            `json:"driver_id"`
	UserPOIs []PointOfInterest `json:"user_pois"`
}
