First you get a PUSH_PROMISE request that is a single frame. It's tiny.
That tells the client what the server wants to send.
The client can respond with a an RST_STREAM frame https://http2.github.io/http2-spec/#RST_STREAM Again, that's a single frame.
By design it's meant to be extremely small and quick even on high latency, and/or low bandwidth connections.