How to delay fire and smoke animation?
Blender let's us animate almost any value that we can alter. To get the results you want, you need to animate the values that change the effect you want.

To keyframe a value, go to the frame you want to set the value and with the mouse over the value press I or right click and choose Insert Keyframe. The value will get shaded in yellow to indicate the value is keyframed on the current frame or green to indicate it is keyed on another frame.

At frame 19 keyframe smoke density at 1.0 and keyframe flame rate as 0.0.



At frame 20 set density to 0.0 and flame rate to 2.0 and keyframe both.



Re-bake the simulation.

Now you only get smoke until frame 20 when you start getting flames. Keyframe other values to get the variations you want at various times. Note that for the simulation, you need to allow a few frames for the smoke/fire to disperse as it doesn't just disappear when you turn it off, you only turn off the smoke/fire being emitted.