Consider this code where start, continue and finish are promises. 
export const do = () => {
    return new Promise((resolve, reject) => {
        start()
            .then(() => continue())
            .then(() => finish())
            .then(() => resolve())
            .catch((reason) => reject(reason))
    });
};
Is this how to write nested promises?
 
     
    