package oncall

// CurrentOncallResponse is the stable service-facing representation of the
// current primary and backup assignments for one team.
type CurrentOncallResponse struct {
	TeamID                uint     `json:"team_id"`
	AtTime                int64    `json:"at_time"`
	CurrentEngineerEmails []string `json:"current_engineer_emails"`
	BackupEngineerEmails  []string `json:"backup_engineer_emails"`
	CurrentNoOncall       bool     `json:"current_no_oncall"`
	NextSwitchAt          int64    `json:"next_switch_at"`
	// ManagerEmails are the team's managers. Unlike the two lanes above they do
	// not depend on at_time: they are the standing escalation target when the
	// schedule has nobody on call, or when an alert needs to go up a level.
	ManagerEmails []string `json:"manager_emails"`
}
