Hm, ValueError feels wrong for this. It's more of a state-related error. Maybe it's worth making a `TimeoutStateError`?

Also, please sentence-case messages inside errors for consistency. Capitalize the first letter and period in the end.