Best Practices for Defining Layer Constructing Functions: Interfaces vs. Type Aliases - Effect Community