refactoring-inline-types

Refactor inline types into reusable, well-organized type definitions using interfaces, type aliases, and generics