class OuterClass {} export namespace Outer { export class InnerClass {} export namespace Inner { export class EvenInnerClass {} var a: OuterClass; var b: InnerClass; var c: EvenInnerClass; var d: Outer.InnerClass; var e: Outer.Inner.EvenInnerClass; var f: Inner.EvenInnerClass; export function evenInner( a: OuterClass, b: InnerClass, c: EvenInnerClass, d: Outer.InnerClass, e: Outer.Inner.EvenInnerClass, f: Inner.EvenInnerClass ): void {} } var a: OuterClass; var b: InnerClass; var c: Inner.EvenInnerClass; var d: Outer.InnerClass; var e: Outer.Inner.EvenInnerClass; export function inner( a: OuterClass, b: InnerClass, c: Inner.EvenInnerClass, d: Outer.InnerClass, e: Outer.Inner.EvenInnerClass ): void {} } var a: OuterClass; var b: Outer.InnerClass; var c: Outer.Inner.EvenInnerClass; export function outer( a: OuterClass, b: Outer.InnerClass, c: Outer.Inner.EvenInnerClass ): void {}