Это все тебе не нужно
Посмотри @ngxd/core, просто разберись как с ним работать, чтобы у тебя биндились компоненты
Разберись с ng-content, ng-container, ng-template
Потом научись делать выборки из view через ViewChild/Children и ContentChild/Children
Посмотри как работает дерево DI вместе с этими декораторами, например вот этот пример
https://github.com/nycJSorg/30-seconds-of-angular/pull/26/filesПосмотри, что такое структурные директивы: получение TemplateRef и отображение его во view
Также разберись с dsl у структурных директив: как работает *ngFor=“let item of items trackBy index“
Посмотри ngxf, там очень много различных подходов