ClassAndModuleThatMergeWithModulesExportedGenericFunctionAndNonGenericClassStaticFunctionOfTheSameName.ts(2,5): error TS2564: Property 'id' has no initializer and is not definitely assigned in the constructor.
ClassAndModuleThatMergeWithModulesExportedGenericFunctionAndNonGenericClassStaticFunctionOfTheSameName.ts(3,5): error TS2564: Property 'value' has no initializer and is not definitely assigned in the constructor.
ClassAndModuleThatMergeWithModulesExportedGenericFunctionAndNonGenericClassStaticFunctionOfTheSameName.ts(5,12): error TS2300: Duplicate identifier 'fn'.
ClassAndModuleThatMergeWithModulesExportedGenericFunctionAndNonGenericClassStaticFunctionOfTheSameName.ts(10,21): error TS2300: Duplicate identifier 'fn'.


==== ClassAndModuleThatMergeWithModulesExportedGenericFunctionAndNonGenericClassStaticFunctionOfTheSameName.ts (4 errors) ====
    class clodule<T> {
        id: string;
        ~~
!!! error TS2564: Property 'id' has no initializer and is not definitely assigned in the constructor.
        value: T;
        ~~~~~
!!! error TS2564: Property 'value' has no initializer and is not definitely assigned in the constructor.
    
        static fn(id: string) { }
               ~~
!!! error TS2300: Duplicate identifier 'fn'.
    }
    
    namespace clodule {
        // error: duplicate identifier expected
        export function fn<T>(x: T, y: T): T {
                        ~~
!!! error TS2300: Duplicate identifier 'fn'.
            return x;
        }
    }
    
    