public static string ToTypeScriptName(AstType astType, IEmitter emitter, bool asDefinition = false, bool ignoreDependency = false) { string name = null; var primitive = astType as PrimitiveType; name = BridgeTypes.GetTsPrimitivie(primitive); if (name != null) { return(name); } var composedType = astType as ComposedType; if (composedType != null && composedType.ArraySpecifiers != null && composedType.ArraySpecifiers.Count > 0) { return(BridgeTypes.ToTypeScriptName(composedType.BaseType, emitter) + string.Concat(Enumerable.Repeat("[]", composedType.ArraySpecifiers.Count))); } var simpleType = astType as SimpleType; if (simpleType != null && simpleType.Identifier == "dynamic") { return("any"); } var resolveResult = emitter.Resolver.ResolveNode(astType, emitter); return(BridgeTypes.ToTypeScriptName(resolveResult.Type, emitter, asDefinition: asDefinition, ignoreDependency: ignoreDependency)); }