Role based routing, router guards, child route guards are well explained in this video. You will also learn to prevent user from navigating to another page if they have any unsaved form data.
correction: Typescript uses 'string' as type, 'String' is an object in javascript. There is a very minor difference still is it recommended to use sting as type. :)