code: function filterNamedImportOrExportCompletionItems(exportsOfModule, namedImportsOrExports) {
                  var existingImportsOrExports = ts.createMap();
                  for (var _i = 0, namedImportsOrExports_1 = namedImportsOrExports; _i < namedImportsOrExports_1.length; _i++) {
                      var element = namedImportsOrExports_1[_i];
                      // If this is the current item we are editing right now, do not filter it out
                      if (element.getStart() <= position && position <= element.getEnd()) {
                          continue;
                      }
                      var name_41 = element.propertyName || element.name;
                      existingImportsOrExports[name_41.text] = true;
                  }
                  if (!ts.someProperties(existingImportsOrExports)) {
                      return ts.filter(exportsOfModule, function (e) { return e.name !== "default"; });
                  }
                  return ts.filter(exportsOfModule, function (e) { return e.name !== "default" && !existingImportsOrExports[e.name]; });
              }
docs: Filters out completion suggestions for named imports or exports.
  
  @param exportsOfModule          The list of symbols which a module exposes.
  @param namedImportsOrExports    The list of existing import/export specifiers in the import/export clause.
  
  @returns Symbols to be suggested at an import/export clause, barring those whose named imports/exports
  do not occur at the current position and have not otherwise been typed.