extended API with `pause` and `resume` methods