tests/cases/compiler/moduleElementsInWrongContext.ts(2,5): error TS1235: A namespace declaration is only allowed in a namespace or module.
tests/cases/compiler/moduleElementsInWrongContext.ts(3,5): error TS1235: A namespace declaration is only allowed in a namespace or module.
tests/cases/compiler/moduleElementsInWrongContext.ts(7,5): error TS1235: A namespace declaration is only allowed in a namespace or module.
tests/cases/compiler/moduleElementsInWrongContext.ts(9,5): error TS1234: An ambient module declaration is only allowed at the top level in a file.
tests/cases/compiler/moduleElementsInWrongContext.ts(13,5): error TS1231: An export assignment can only be used in a module.
tests/cases/compiler/moduleElementsInWrongContext.ts(17,5): error TS1233: An export declaration can only be used in a module.
tests/cases/compiler/moduleElementsInWrongContext.ts(18,5): error TS1233: An export declaration can only be used in a module.
tests/cases/compiler/moduleElementsInWrongContext.ts(19,5): error TS1233: An export declaration can only be used in a module.
tests/cases/compiler/moduleElementsInWrongContext.ts(19,14): error TS2305: Module '"ambient"' has no exported member 'baz'.
tests/cases/compiler/moduleElementsInWrongContext.ts(20,5): error TS1231: An export assignment can only be used in a module.
tests/cases/compiler/moduleElementsInWrongContext.ts(21,5): error TS1184: Modifiers cannot appear here.
tests/cases/compiler/moduleElementsInWrongContext.ts(22,5): error TS1184: Modifiers cannot appear here.
tests/cases/compiler/moduleElementsInWrongContext.ts(23,5): error TS1232: An import declaration can only be used in a namespace or module.
tests/cases/compiler/moduleElementsInWrongContext.ts(24,5): error TS1232: An import declaration can only be used in a namespace or module.
tests/cases/compiler/moduleElementsInWrongContext.ts(25,5): error TS1232: An import declaration can only be used in a namespace or module.
tests/cases/compiler/moduleElementsInWrongContext.ts(26,5): error TS1232: An import declaration can only be used in a namespace or module.
tests/cases/compiler/moduleElementsInWrongContext.ts(27,5): error TS1232: An import declaration can only be used in a namespace or module.
tests/cases/compiler/moduleElementsInWrongContext.ts(28,5): error TS1232: An import declaration can only be used in a namespace or module.


==== tests/cases/compiler/moduleElementsInWrongContext.ts (18 errors) ====
    {
        module M { }
        ~~~~~~
!!! error TS1235: A namespace declaration is only allowed in a namespace or module.
        export namespace N {
        ~~~~~~
!!! error TS1235: A namespace declaration is only allowed in a namespace or module.
            export interface I { }
        }
    
        namespace Q.K { }
        ~~~~~~~~~
!!! error TS1235: A namespace declaration is only allowed in a namespace or module.
    
        declare module "ambient" {
        ~~~~~~~
!!! error TS1234: An ambient module declaration is only allowed at the top level in a file.
    
        }
    
        export = M;
        ~~~~~~
!!! error TS1231: An export assignment can only be used in a module.
    
        var v;
        function foo() { }
        export * from "ambient";
        ~~~~~~
!!! error TS1233: An export declaration can only be used in a module.
        export { foo };
        ~~~~~~
!!! error TS1233: An export declaration can only be used in a module.
        export { baz as b } from "ambient";
        ~~~~~~
!!! error TS1233: An export declaration can only be used in a module.
                 ~~~
!!! error TS2305: Module '"ambient"' has no exported member 'baz'.
        export default v;
        ~~~~~~
!!! error TS1231: An export assignment can only be used in a module.
        export default class C { }
        ~~~~~~
!!! error TS1184: Modifiers cannot appear here.
        export function bee() { }
        ~~~~~~
!!! error TS1184: Modifiers cannot appear here.
        import I = M;
        ~~~~~~
!!! error TS1232: An import declaration can only be used in a namespace or module.
        import I2 = require("foo");
        ~~~~~~
!!! error TS1232: An import declaration can only be used in a namespace or module.
        import * as Foo from "ambient";
        ~~~~~~
!!! error TS1232: An import declaration can only be used in a namespace or module.
        import bar from "ambient";
        ~~~~~~
!!! error TS1232: An import declaration can only be used in a namespace or module.
        import { baz } from "ambient";
        ~~~~~~
!!! error TS1232: An import declaration can only be used in a namespace or module.
        import "ambient";
        ~~~~~~
!!! error TS1232: An import declaration can only be used in a namespace or module.
    }
    