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