The concept of pausing a game (I'll presume game here) is to stop updating the game forward if it's paused. That includes any motion, physics, input (related to the gameplay) and time (don't forget time!). That means any clock should either be paused (if possible), the duration during the paused time removed from future times or stopping feeding the update loop any time (or timestep).
You'll likely need to change 'state' while it's paused. For example, to wait to be unpaused or show a menu. The simplest form would be to track a boolean and do something different depending on its value.
bool isPaused{ false };
while (window.isOpen())
{
if (!isPaused)
{
// .. update gameplay
}
else
{
// .. wait for unpause
}
}
The most important thing to remember is that you should not just loop, waiting for input to unpause, but you should be still polling all events and updating the window. You can, of course, use the events differently and/or draw different things to the window when it is paused.