// Package domain contains pure domain models with no external dependencies. // These types represent the core business concepts of the service. package domain import "errors" // Domain errors - these are business-level errors that should be translated // to appropriate HTTP status codes by the handler layer. var ( // ErrNotFound indicates a requested resource does not exist. ErrNotFound = errors.New("not found") // ErrPreferencesNotFound indicates no preferences exist for the user. ErrPreferencesNotFound = errors.New("preferences not found") // ErrInvalidTheme indicates the theme value is not one of light, dark, system. ErrInvalidTheme = errors.New("invalid theme: must be one of light, dark, system") // ErrInvalidLanguage indicates the language value exceeds 10 characters. ErrInvalidLanguage = errors.New("invalid language: must be at most 10 characters") // ErrForbidden indicates the user is not authorized for this operation. ErrForbidden = errors.New("forbidden") )