package model

type EntityType string

const (
	EntityTypeCase    EntityType = "CASE"
	EntityTypePlan    EntityType = "PLAN"
	EntityTypeTrigger EntityType = "TRIGGER"
)

type EditOperation string

const (
	EditOperationCreate = "CREATE"
	EditOperationUpdate = "UPDATE"
	EditOperationDelete = "DELETE"
)

type EntityRef struct {
	ID   ID         `json:"id"`
	Type EntityType `json:"type"`
}

type EditLogEntry struct {
	ID        ID            `json:"id"`
	Target    EntityRef     `json:"target"`
	Operation EditOperation `json:"operation"`
	EditedAt  Timestamp     `json:"editedAt"`
	EditedBy  ID            `json:"editedBy"`
	Old       string        `json:"old"`
	New       string        `json:"new"`
}
