Redirect user to a particular link in 10 seconds after using wp_die

wp_die() terminates the script execution and sends itself a 500 status header (wich can be altered by the third parameter). So you need to send the Refresh header before the wp_die() call. I also recommend to print the redirect location to the body because it’s up to the client to respect the refresh header.

if ( $condition ) {
    $location = 'http://pm.dev';
    $timeout  = 5;
    $message="You will be redirected to <a href="" . $location . '">' . $location . '</a>';
    $title="Your title";
    $status   = 303; # this might be debatable

    header( 'Refresh: ' . $timeout . ';' . $location );
    wp_die( $message, $title, array( 'response' => $status ) );
}

(I’m not sure about the correct status code.)

Note: As this code sends HTTP Headers, there must no other output sent to the browser before this code.