diff --git a/tests/baselines/reference/umd9.js b/tests/baselines/reference/umd9.js
new file mode 100644
index 00000000000..99660aebb4c
--- /dev/null
+++ b/tests/baselines/reference/umd9.js
@@ -0,0 +1,19 @@
+//// [tests/cases/conformance/externalModules/umd9.ts] ////
+
+//// [foo.d.ts]
+declare class Thing {
+ foo(): number;
+}
+export = Thing;
+export as namespace Foo;
+
+//// [a.ts]
+///
+export const x = Foo; // OK in value position because allowUmdGlobalAccess: true
+
+
+//// [a.js]
+"use strict";
+exports.__esModule = true;
+///
+exports.x = Foo; // OK in value position because allowUmdGlobalAccess: true
diff --git a/tests/baselines/reference/umd9.symbols b/tests/baselines/reference/umd9.symbols
new file mode 100644
index 00000000000..013636f5edb
--- /dev/null
+++ b/tests/baselines/reference/umd9.symbols
@@ -0,0 +1,19 @@
+=== tests/cases/conformance/externalModules/a.ts ===
+///
+export const x = Foo; // OK in value position because allowUmdGlobalAccess: true
+>x : Symbol(x, Decl(a.ts, 1, 12))
+>Foo : Symbol(Foo, Decl(foo.d.ts, 3, 15))
+
+=== tests/cases/conformance/externalModules/foo.d.ts ===
+declare class Thing {
+>Thing : Symbol(Thing, Decl(foo.d.ts, 0, 0))
+
+ foo(): number;
+>foo : Symbol(Thing.foo, Decl(foo.d.ts, 0, 21))
+}
+export = Thing;
+>Thing : Symbol(Thing, Decl(foo.d.ts, 0, 0))
+
+export as namespace Foo;
+>Foo : Symbol(Foo, Decl(foo.d.ts, 3, 15))
+
diff --git a/tests/baselines/reference/umd9.types b/tests/baselines/reference/umd9.types
new file mode 100644
index 00000000000..e4fc9376efd
--- /dev/null
+++ b/tests/baselines/reference/umd9.types
@@ -0,0 +1,19 @@
+=== tests/cases/conformance/externalModules/a.ts ===
+///
+export const x = Foo; // OK in value position because allowUmdGlobalAccess: true
+>x : typeof Thing
+>Foo : typeof Thing
+
+=== tests/cases/conformance/externalModules/foo.d.ts ===
+declare class Thing {
+>Thing : Thing
+
+ foo(): number;
+>foo : () => number
+}
+export = Thing;
+>Thing : Thing
+
+export as namespace Foo;
+>Foo : typeof Thing
+