The major hurdle to clear here is whether the timer can be reprogrammed between tasks, or if the timer can be programmed once and its events used by both applications.
For example, if you're using the overflow interrupt to trigger a generic ISR, then you can probably use it for more than one purpose. Say, for library 1, you need to do something on every overflow, whereas library 2 needs to act on every fifth overflow. That could be accomplished by incrementing a counter, and triggering library 2 when it's mod 5.
If you're using CtC mode (clear timer on compare match) to fire at a variable frequency, which would be common for tone generators, then the window between events becomes less predictable for the "other" library. But, if you never need to generate tones while the other library has access to the timer, you can multiplex their use. You just have to be careful to re-initialize the timer settings every time either library needs to use it.
So yes, it's possible. It would be typically disastrous to publish such a library, since guaranteeing the state of a non-exclusive timer is inherently troublesome. But, if it's your own code, or a common use-case where a certain combination of libraries will always be used in tandem, it's absolutely doable.