znotifier-api Patterns core of Nest.js: Depency Inversion Principle (DIP of SOLID) Dependency Injection