diff --git a/notNeededPackages.json b/notNeededPackages.json
index 887873d2403a32..dbd21ab15b920e 100644
--- a/notNeededPackages.json
+++ b/notNeededPackages.json
@@ -2289,6 +2289,10 @@
"libraryName": "feedme",
"asOfVersion": "2.0.2"
},
+ "feedparser": {
+ "libraryName": "feedparser",
+ "asOfVersion": "2.3.0"
+ },
"feedsub": {
"libraryName": "feedsub",
"asOfVersion": "0.7.5"
diff --git a/types/feedparser/feedparser-tests.ts b/types/feedparser/feedparser-tests.ts
deleted file mode 100644
index 9066678d063ee2..00000000000000
--- a/types/feedparser/feedparser-tests.ts
+++ /dev/null
@@ -1,32 +0,0 @@
-import request = require("request");
-import FeedParser = require("feedparser");
-
-const req = request("https://news.google.com/news?cf=all&hl=en&pz=1&ned=us&output=rss");
-const feedparser = new FeedParser({});
-
-req.on("error", error => {
- // handle any request errors
-});
-
-req.on("response", res => {
- if (res.statusCode !== 200) {
- req.emit("error", new Error("Bad status code"));
- } else {
- req.pipe(feedparser);
- }
-});
-
-feedparser.on("error", (error: Error) => {
- // always handle errors
-});
-
-feedparser.on("readable", () => {
- // This is where the action is!
- const stream = feedparser;
- const meta = feedparser.meta; // **NOTE** the "meta" is always available in the context of the feedparser instance
- let item: FeedParser.Item;
-
- while (item = stream.read()) {
- console.log(item);
- }
-});
diff --git a/types/feedparser/index.d.ts b/types/feedparser/index.d.ts
deleted file mode 100644
index b722568eac4a4a..00000000000000
--- a/types/feedparser/index.d.ts
+++ /dev/null
@@ -1,168 +0,0 @@
-/** Declaration file generated by dts-gen */
-
-///
-
-import stream = require("stream");
-import { SAXStream } from "sax";
-export = FeedParser;
-
-declare class FeedParser extends stream.Duplex {
- constructor(options: FeedParser.Options);
- options: FeedParser.Options;
- stream: SAXStream;
- meta: {
- [key: string]: any;
- };
- _emitted_meta: boolean;
- stack: any[];
- xmlbase: any[];
- in_xhtml: boolean;
- xhtml: {
- [key: string]: any;
- };
- errors: Error[];
-
- addListener(ev: any, fn: any): any;
-
- cork(): void;
-
- eventNames(): any;
-
- getMaxListeners(): any;
-
- handleAttributes(attrs: FeedParser.Attrs, el: string): any;
-
- handleCloseTag(el: string): void;
-
- handleEnd(): any;
-
- handleError(e: Error): void;
-
- handleItem(node: FeedParser.Node, type: FeedParser.Type, options: FeedParser.Options): FeedParser.Item;
-
- handleMeta(node: FeedParser.Node, type: FeedParser.Type, options: FeedParser.Options): FeedParser.Meta;
-
- handleOpenTag(node: FeedParser.Node): void;
-
- handleProcessingInstruction(node: FeedParser.Node): void;
-
- handleSaxError(e: Error): void;
-
- handleText(text: string): void;
-
- init(): void;
-
- isPaused(): any;
-
- listenerCount(type: FeedParser.Type): any;
-
- listeners(type: FeedParser.Type): any;
-
- on(ev: any, fn: any): any;
-
- pause(): any;
-
- pipe(dest: any, pipeOpts: any): any;
-
- push(chunk: any, encoding: any): any;
-
- read(n?: number): FeedParser.Item;
-
- removeAllListeners(type: FeedParser.Type, ...args: any[]): any;
-
- resume(): any;
-
- resumeSaxError(): void;
-
- setDefaultEncoding(encoding: any): any;
-
- setEncoding(enc: any): any;
-
- setMaxListeners(n: any): any;
-
- uncork(): void;
-
- unpipe(dest: any): any;
-
- unshift(chunk: any): any;
-
- wrap(stream: SAXStream, ...args: any[]): any;
-
- private _transform(data: any, encoding: string, done: () => any): void;
- private _flush(done: () => any): void;
-}
-
-declare namespace FeedParser {
- type Type = "atom" | "rss" | "rdf";
-
- interface Options {
- normalize?: boolean | undefined;
- addmeta?: boolean | undefined;
- feedurl?: string | undefined;
- resume_saxerror?: boolean | undefined;
- MAX_BUFFER_LENGTH?: number | undefined;
- }
-
- interface Node {
- [key: string]: any;
- }
-
- interface Attrs {
- name: string;
- value: any;
- prefix: string;
- local: string;
- uri: string;
- }
-
- interface NS {
- [key: string]: string;
- }
-
- interface Image {
- url: string;
- title: string;
- }
-
- interface Meta {
- "#ns": NS[];
- "#type": Type;
- "#version": string;
- title: string;
- description: string;
- date: Date | null;
- pubdate: Date | null;
- link: string;
- xmlurl: string;
- author: string;
- language: string;
- image: Image;
- favicon: string;
- copyright: string;
- generator: string;
- categories: string[];
- }
-
- interface Enclosure {
- length?: string | undefined;
- type?: string | undefined;
- url: string;
- }
-
- interface Item {
- title: string;
- description: string;
- summary: string;
- date: Date | null;
- pubdate: Date | null;
- link: string;
- origlink: string;
- author: string;
- guid: string;
- comments: string;
- image: Image;
- categories: string[];
- enclosures: Enclosure[];
- meta: Meta;
- }
-}
diff --git a/types/feedparser/package.json b/types/feedparser/package.json
deleted file mode 100644
index d5eaff5c47b31f..00000000000000
--- a/types/feedparser/package.json
+++ /dev/null
@@ -1,22 +0,0 @@
-{
- "private": true,
- "name": "@types/feedparser",
- "version": "2.2.9999",
- "projects": [
- "https://github.com/danmactough/node-feedparser"
- ],
- "dependencies": {
- "@types/node": "*",
- "@types/sax": "*"
- },
- "devDependencies": {
- "@types/feedparser": "workspace:.",
- "@types/request": "*"
- },
- "owners": [
- {
- "name": "Juan J. Jimenez-Anca",
- "githubUsername": "cortopy"
- }
- ]
-}
diff --git a/types/feedparser/.npmignore b/types/spdx-license-ids/.npmignore
similarity index 100%
rename from types/feedparser/.npmignore
rename to types/spdx-license-ids/.npmignore
diff --git a/types/spdx-license-ids/deprecated.d.ts b/types/spdx-license-ids/deprecated.d.ts
new file mode 100644
index 00000000000000..8045300d5744c0
--- /dev/null
+++ b/types/spdx-license-ids/deprecated.d.ts
@@ -0,0 +1,2 @@
+declare const deprecatedSpdxLicenseIds: string[];
+export = deprecatedSpdxLicenseIds;
diff --git a/types/spdx-license-ids/index.d.ts b/types/spdx-license-ids/index.d.ts
new file mode 100644
index 00000000000000..a5d1bc2178e9b2
--- /dev/null
+++ b/types/spdx-license-ids/index.d.ts
@@ -0,0 +1,4 @@
+///
+
+declare const spdxLicenseIds: string[];
+export = spdxLicenseIds;
diff --git a/types/spdx-license-ids/package.json b/types/spdx-license-ids/package.json
new file mode 100644
index 00000000000000..6d9722d5a55bed
--- /dev/null
+++ b/types/spdx-license-ids/package.json
@@ -0,0 +1,17 @@
+{
+ "private": true,
+ "name": "@types/spdx-license-ids",
+ "version": "3.0.9999",
+ "projects": [
+ "https://github.com/jslicense/spdx-license-ids"
+ ],
+ "devDependencies": {
+ "@types/spdx-license-ids": "workspace:."
+ },
+ "owners": [
+ {
+ "name": "Jamie Magee",
+ "githubUsername": "JamieMagee"
+ }
+ ]
+}
diff --git a/types/spdx-license-ids/spdx-license-ids-tests.ts b/types/spdx-license-ids/spdx-license-ids-tests.ts
new file mode 100644
index 00000000000000..9da3aafa625197
--- /dev/null
+++ b/types/spdx-license-ids/spdx-license-ids-tests.ts
@@ -0,0 +1,8 @@
+import spdxLicenseIds = require("spdx-license-ids");
+import deprecatedIds = require("spdx-license-ids/deprecated");
+
+// $ExpectType string[]
+spdxLicenseIds;
+
+// $ExpectType string[]
+deprecatedIds;
diff --git a/types/feedparser/tsconfig.json b/types/spdx-license-ids/tsconfig.json
similarity index 91%
rename from types/feedparser/tsconfig.json
rename to types/spdx-license-ids/tsconfig.json
index 6645f9a249ffea..e1f18a072917b0 100644
--- a/types/feedparser/tsconfig.json
+++ b/types/spdx-license-ids/tsconfig.json
@@ -14,6 +14,6 @@
},
"files": [
"index.d.ts",
- "feedparser-tests.ts"
+ "spdx-license-ids-tests.ts"
]
}