namespace Zenject { public interface IFactory { } public interface IFactory : IFactory { TValue Create(); } public interface IFactory : IFactory { TValue Create(TParam1 param); } public interface IFactory : IFactory { TValue Create(TParam1 param1, TParam2 param2); } public interface IFactory : IFactory { TValue Create(TParam1 param1, TParam2 param2, TParam3 param3); } public interface IFactory : IFactory { TValue Create(TParam1 param1, TParam2 param2, TParam3 param3, TParam4 param4); } public interface IFactory : IFactory { TValue Create(TParam1 param1, TParam2 param2, TParam3 param3, TParam4 param4, TParam5 param5); } public interface IFactory : IFactory { TValue Create(TParam1 param1, TParam2 param2, TParam3 param3, TParam4 param4, TParam5 param5, TParam6 param6); } public interface IFactory : IFactory { TValue Create(TParam1 param1, TParam2 param2, TParam3 param3, TParam4 param4, TParam5 param5, TParam6 param6, TParam7 param7); } public interface IFactory : IFactory { TValue Create(TParam1 param1, TParam2 param2, TParam3 param3, TParam4 param4, TParam5 param5, TParam6 param6, TParam7 param7, TParam8 param8); } public interface IFactory : IFactory { TValue Create(TParam1 param1, TParam2 param2, TParam3 param3, TParam4 param4, TParam5 param5, TParam6 param6, TParam7 param7, TParam8 param8, TParam9 param9); } public interface IFactory : IFactory { TValue Create(TParam1 param1, TParam2 param2, TParam3 param3, TParam4 param4, TParam5 param5, TParam6 param6, TParam7 param7, TParam8 param8, TParam9 param9, TParam10 param10); } }