package land type UserEventType = int const ( UserEventMouseDown = UserEventType(iota) UserEventMouseUp UserEventMouseMove ) type InteractableObject interface { GetPosition() Vector2D GetSize() Vector2D OnEvent(event UserEventType, args ...any) }