Huáng Jùnliàng fa5057f9fb Flow: interface identifier should be declared in the scope (#10220)
* fix: typo

* declare name for flow interface

* add test case for export overload function, typescript

* test: add test

Fixes #10044

* test: update test

* test(flow): add multiple declarations regression test

* re-enable flow test case

# Conflicts:
#	packages/babel-plugin-transform-flow-strip-types/test/fixtures/strip-types/def-site-variance/input.js
#	packages/babel-plugin-transform-flow-strip-types/test/fixtures/strip-types/strip-declare-statements/input.js
#	packages/babel-plugin-transform-flow-strip-types/test/fixtures/strip-types/strip-interfaces-module-and-script/input.js
#	packages/babel-plugin-transform-flow-strip-types/test/fixtures/strip-types/strip-iterator/input.js

* test: disable two flow dupl-decl test

* fix: do not declare name for declare function until we figure out a better way

* test: duplicate declare function and function would not throw
2019-10-02 07:32:42 +02:00

49 lines
454 B
JavaScript

class C1<+T, -U> {}
function f<+T, -U>() {}
type T<+T, -U> = {};
type T2 = {
+p: T
};
type T3 = {
-p: T
};
type T4 = {
+[k: K]: V
};
type T5 = {
-[k: K]: V
};
interface I1 {
+p: T
}
interface I2 {
-p: T
}
interface I3 {
+[k: K]: V
}
interface I4 {
-[k: K]: V
}
declare class I {
+p: T
}
declare class I {
-p: T
}
declare class I {
+[k: K]: V
}
declare class I {
-[k: K]: V
}
class C2 {
+p: T = e;
}
class C3 {
-p: T = e;
}