fix(compiler): support interface types in injectable constuctors (#14894)

Fixes #12631
This commit is contained in:
Chuck Jazdzewski
2017-03-15 09:24:56 -07:00
committed by GitHub
parent 36ce0afff6
commit b00fe20afd
9 changed files with 122 additions and 12 deletions

View File

@ -17,7 +17,7 @@
export const VERSION = 3;
export type MetadataEntry = ClassMetadata | FunctionMetadata | MetadataValue;
export type MetadataEntry = ClassMetadata | InterfaceMetadata | FunctionMetadata | MetadataValue;
export interface ModuleMetadata {
__symbolic: 'module';
@ -47,6 +47,11 @@ export function isClassMetadata(value: any): value is ClassMetadata {
return value && value.__symbolic === 'class';
}
export interface InterfaceMetadata { __symbolic: 'interface'; }
export function isInterfaceMetadata(value: any): value is InterfaceMetadata {
return value && value.__symbolic === 'interface';
}
export interface MetadataMap { [name: string]: MemberMetadata[]; }
export interface MemberMetadata {