-
Couldn't load subscription status.
- Fork 6
Open
Description
Type declaration of interface should be moved inside namespace, although it then requires user to type Namespace.Interface, it avoids errors when importing both the namespace and the type.
export type TagResult =
| TagResult.BuildErrorTagResult
| TagResult.SuccessRightTreeTagResult
| TagResult.TestErrorTagResult
| TagResult.WrongFileTreeSuccessTagResult;
export namespace TagResult {
export enum Type {
BuildErrorTagResult = "moulinette.tag.BuildErrorTagResult",
TestErrorTagResult = "moulinette.tag.TestErrorTagResult",
SuccessRightTreeTagResult = "moulinette.tag.SuccessRightTreeTagResult",
WrongFileTreeSuccessTagResult = "moulinette.tag.WrongFileTreeSuccessTagResult",
}
}
becomes
export namespace TagResult {
export type TagResult =
| TagResult.BuildErrorTagResult
| TagResult.SuccessRightTreeTagResult
| TagResult.TestErrorTagResult
| TagResult.WrongFileTreeSuccessTagResult;
export enum Type {
BuildErrorTagResult = "moulinette.tag.BuildErrorTagResult",
TestErrorTagResult = "moulinette.tag.TestErrorTagResult",
SuccessRightTreeTagResult = "moulinette.tag.SuccessRightTreeTagResult",
WrongFileTreeSuccessTagResult = "moulinette.tag.WrongFileTreeSuccessTagResult",
}
}
So that you could here use TagResult (as TagResult.TagResult) and TagResult.Type without any problems, ambiguity or IDE miscomprehension.
Metadata
Metadata
Assignees
Labels
No labels