diff --git a/package.json b/package.json
index 27d57c51f3e..acc65bba675 100644
--- a/package.json
+++ b/package.json
@@ -36,9 +36,9 @@
     "@lavamoat/allow-scripts": "^2.3.1",
     "@metamask/create-release-branch": "^1.1.0",
     "@metamask/eslint-config": "^12.2.0",
-    "@metamask/eslint-config-jest": "^12.0.0",
-    "@metamask/eslint-config-nodejs": "^12.0.0",
-    "@metamask/eslint-config-typescript": "^12.0.0",
+    "@metamask/eslint-config-jest": "^12.1.0",
+    "@metamask/eslint-config-nodejs": "^12.1.0",
+    "@metamask/eslint-config-typescript": "^12.1.0",
     "@metamask/eth-json-rpc-provider": "^1.0.0",
     "@metamask/utils": "^6.2.0",
     "@types/node": "^16.18.24",
@@ -63,7 +63,7 @@
     "rimraf": "^3.0.2",
     "simple-git-hooks": "^2.8.0",
     "ts-node": "^10.9.1",
-    "typescript": "~4.6.3",
+    "typescript": "~4.8.4",
     "which": "^3.0.0"
   },
   "packageManager": "yarn@3.3.0",
diff --git a/packages/accounts-controller/package.json b/packages/accounts-controller/package.json
index 24191d9ba33..605f263648a 100644
--- a/packages/accounts-controller/package.json
+++ b/packages/accounts-controller/package.json
@@ -48,9 +48,9 @@
     "@types/readable-stream": "^2.3.0",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "peerDependencies": {
     "@metamask/keyring-controller": "^8.0.0"
diff --git a/packages/address-book-controller/package.json b/packages/address-book-controller/package.json
index a3e4afe7d22..be0a5bf1973 100644
--- a/packages/address-book-controller/package.json
+++ b/packages/address-book-controller/package.json
@@ -38,9 +38,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/announcement-controller/package.json b/packages/announcement-controller/package.json
index 8ad9778e1d5..af9628188f5 100644
--- a/packages/announcement-controller/package.json
+++ b/packages/announcement-controller/package.json
@@ -37,9 +37,9 @@
     "immer": "^9.0.6",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/approval-controller/package.json b/packages/approval-controller/package.json
index 27657d4ed44..76b4cb97b9b 100644
--- a/packages/approval-controller/package.json
+++ b/packages/approval-controller/package.json
@@ -41,9 +41,9 @@
     "jest": "^27.5.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/assets-controllers/package.json b/packages/assets-controllers/package.json
index ea014ec3cb3..a78a738522f 100644
--- a/packages/assets-controllers/package.json
+++ b/packages/assets-controllers/package.json
@@ -62,9 +62,9 @@
     "nock": "^13.3.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "peerDependencies": {
     "@metamask/approval-controller": "^3.5.1",
diff --git a/packages/base-controller/package.json b/packages/base-controller/package.json
index 9d67bb3ff51..5d0a72391e7 100644
--- a/packages/base-controller/package.json
+++ b/packages/base-controller/package.json
@@ -39,9 +39,9 @@
     "jest": "^27.5.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/composable-controller/package.json b/packages/composable-controller/package.json
index c62d5fb7799..099d462fa96 100644
--- a/packages/composable-controller/package.json
+++ b/packages/composable-controller/package.json
@@ -38,9 +38,9 @@
     "jest": "^27.5.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/controller-utils/package.json b/packages/controller-utils/package.json
index 60904687711..93bb7fe5d3d 100644
--- a/packages/controller-utils/package.json
+++ b/packages/controller-utils/package.json
@@ -44,9 +44,9 @@
     "jest": "^27.5.1",
     "nock": "^13.3.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/ens-controller/package.json b/packages/ens-controller/package.json
index 3edbe15d70d..04479b3d765 100644
--- a/packages/ens-controller/package.json
+++ b/packages/ens-controller/package.json
@@ -42,9 +42,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "peerDependencies": {
     "@metamask/network-controller": "^13.0.0"
diff --git a/packages/gas-fee-controller/package.json b/packages/gas-fee-controller/package.json
index e5d2de0a0c9..a651863ec7c 100644
--- a/packages/gas-fee-controller/package.json
+++ b/packages/gas-fee-controller/package.json
@@ -49,9 +49,9 @@
     "nock": "^13.3.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "peerDependencies": {
     "@metamask/network-controller": "^13.0.0"
diff --git a/packages/keyring-controller/package.json b/packages/keyring-controller/package.json
index d2b33d2a8b4..3ac5bb39f72 100644
--- a/packages/keyring-controller/package.json
+++ b/packages/keyring-controller/package.json
@@ -51,9 +51,9 @@
     "jest": "^27.5.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3",
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4",
     "uuid": "^8.3.2"
   },
   "peerDependencies": {
diff --git a/packages/logging-controller/package.json b/packages/logging-controller/package.json
index a02635b1680..1387c982e47 100644
--- a/packages/logging-controller/package.json
+++ b/packages/logging-controller/package.json
@@ -38,9 +38,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/message-manager/package.json b/packages/message-manager/package.json
index ac55fe711b7..b1f9d6a6ed7 100644
--- a/packages/message-manager/package.json
+++ b/packages/message-manager/package.json
@@ -43,9 +43,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/name-controller/package.json b/packages/name-controller/package.json
index 38a0f99f0fc..3d7d1c32514 100644
--- a/packages/name-controller/package.json
+++ b/packages/name-controller/package.json
@@ -40,9 +40,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/name-controller/src/providers/etherscan.ts b/packages/name-controller/src/providers/etherscan.ts
index aa048922422..fb9a2933b0a 100644
--- a/packages/name-controller/src/providers/etherscan.ts
+++ b/packages/name-controller/src/providers/etherscan.ts
@@ -9,7 +9,7 @@ import type {
   NameProviderResult,
 } from '../types';
 import { NameType } from '../types';
-import { handleFetch } from '../util';
+import { handleFetch, assertIsError } from '../util';
 
 const ID = 'etherscan';
 const LABEL = 'Etherscan (Verified Contract Name)';
@@ -134,7 +134,10 @@ export class EtherscanNameProvider implements NameProvider {
     }
   }
 
-  async #sendRequest(url: string) {
+  async #sendRequest(url: string): Promise<{
+    responseData?: EtherscanGetSourceCodeResponse;
+    error?: Error;
+  }> {
     try {
       log('Sending request', url);
 
@@ -144,6 +147,7 @@ export class EtherscanNameProvider implements NameProvider {
 
       return { responseData };
     } catch (error) {
+      assertIsError(error);
       return { error };
     } finally {
       this.#lastRequestTime = Date.now();
diff --git a/packages/name-controller/src/util.ts b/packages/name-controller/src/util.ts
index a41a2535018..451b6b51be2 100644
--- a/packages/name-controller/src/util.ts
+++ b/packages/name-controller/src/util.ts
@@ -57,3 +57,19 @@ export async function successfulFetch(request: string, options?: RequestInit) {
   }
   return response;
 }
+
+/**
+ * Assert that a value is an error. If it's not an error, throw an
+ * error that wraps the given value.
+ *
+ * TODO: Migrate this to @metamask/utils
+ *
+ * @param error - The value that we expect to be an error.
+ * @throws Throws an error wrapping the given value if it's not an error.
+ */
+export function assertIsError(error: unknown): asserts error is Error {
+  if (error instanceof Error) {
+    return;
+  }
+  throw new Error(`Invalid error of type '${typeof error}'`);
+}
diff --git a/packages/name-controller/src/utils.test.ts b/packages/name-controller/src/utils.test.ts
index b5d0ef23089..556af3bb849 100644
--- a/packages/name-controller/src/utils.test.ts
+++ b/packages/name-controller/src/utils.test.ts
@@ -1,4 +1,4 @@
-import { graphQL } from './util';
+import { assertIsError, graphQL } from './util';
 
 describe('Utils', () => {
   describe('graphQL', () => {
@@ -51,4 +51,16 @@ describe('Utils', () => {
       );
     });
   });
+
+  describe('assertIsError', () => {
+    it('does not throw if given an error', () => {
+      expect(() => assertIsError(new Error('test'))).not.toThrow();
+    });
+
+    it('throws if passed something that is not an error', () => {
+      expect(() => assertIsError('test')).toThrow(
+        `Invalid error of type 'string'`,
+      );
+    });
+  });
 });
diff --git a/packages/network-controller/package.json b/packages/network-controller/package.json
index 2ad3570d8b3..57885ed1ec8 100644
--- a/packages/network-controller/package.json
+++ b/packages/network-controller/package.json
@@ -56,9 +56,9 @@
     "nock": "^13.3.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/notification-controller/package.json b/packages/notification-controller/package.json
index fea9e4f35c2..0db20eaafe5 100644
--- a/packages/notification-controller/package.json
+++ b/packages/notification-controller/package.json
@@ -39,9 +39,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/permission-controller/package.json b/packages/permission-controller/package.json
index 28ac47accae..01be934eae8 100644
--- a/packages/permission-controller/package.json
+++ b/packages/permission-controller/package.json
@@ -45,9 +45,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "peerDependencies": {
     "@metamask/approval-controller": "^3.5.1"
diff --git a/packages/phishing-controller/package.json b/packages/phishing-controller/package.json
index 73db7a26336..73be5bb03af 100644
--- a/packages/phishing-controller/package.json
+++ b/packages/phishing-controller/package.json
@@ -42,9 +42,9 @@
     "nock": "^13.3.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/polling-controller/package.json b/packages/polling-controller/package.json
index 40eb0868095..1b080935750 100644
--- a/packages/polling-controller/package.json
+++ b/packages/polling-controller/package.json
@@ -41,9 +41,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "peerDependencies": {
     "@metamask/network-controller": "^13.0.0"
diff --git a/packages/preferences-controller/package.json b/packages/preferences-controller/package.json
index e72014e400f..91158fceffd 100644
--- a/packages/preferences-controller/package.json
+++ b/packages/preferences-controller/package.json
@@ -37,9 +37,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/rate-limit-controller/package.json b/packages/rate-limit-controller/package.json
index d929f6f53d4..49c368c9e90 100644
--- a/packages/rate-limit-controller/package.json
+++ b/packages/rate-limit-controller/package.json
@@ -38,9 +38,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "engines": {
     "node": ">=16.0.0"
diff --git a/packages/selected-network-controller/package.json b/packages/selected-network-controller/package.json
index e49bc8a9b05..e93173b2913 100644
--- a/packages/selected-network-controller/package.json
+++ b/packages/selected-network-controller/package.json
@@ -42,9 +42,9 @@
     "nock": "^13.3.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "peerDependencies": {
     "@metamask/network-controller": "^13.0.0"
diff --git a/packages/signature-controller/package.json b/packages/signature-controller/package.json
index dbd7553ad11..c8f364a1897 100644
--- a/packages/signature-controller/package.json
+++ b/packages/signature-controller/package.json
@@ -46,9 +46,9 @@
     "deepmerge": "^4.2.2",
     "jest": "^27.5.1",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "peerDependencies": {
     "@metamask/approval-controller": "^3.5.1",
diff --git a/packages/transaction-controller/package.json b/packages/transaction-controller/package.json
index 252e8975504..176c547bfc5 100644
--- a/packages/transaction-controller/package.json
+++ b/packages/transaction-controller/package.json
@@ -57,9 +57,9 @@
     "jest": "^27.5.1",
     "sinon": "^9.2.4",
     "ts-jest": "^27.1.4",
-    "typedoc": "^0.23.15",
-    "typedoc-plugin-missing-exports": "^0.23.0",
-    "typescript": "~4.6.3"
+    "typedoc": "^0.24.8",
+    "typedoc-plugin-missing-exports": "^2.0.0",
+    "typescript": "~4.8.4"
   },
   "peerDependencies": {
     "@metamask/approval-controller": "^3.5.1",
diff --git a/yarn.lock b/yarn.lock
index bb678fa8161..451b439e695 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1308,9 +1308,9 @@ __metadata:
     jest: ^27.5.1
     nanoid: ^3.1.31
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
     uuid: ^8.3.2
   peerDependencies:
     "@metamask/keyring-controller": ^8.0.0
@@ -1340,9 +1340,9 @@ __metadata:
     deepmerge: ^4.2.2
     jest: ^27.5.1
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -1357,9 +1357,9 @@ __metadata:
     immer: ^9.0.6
     jest: ^27.5.1
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -1378,9 +1378,9 @@ __metadata:
     nanoid: ^3.1.31
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -1419,9 +1419,9 @@ __metadata:
     single-call-balance-checker-abi: ^1.0.0
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
     uuid: ^8.3.2
   peerDependencies:
     "@metamask/approval-controller": ^3.5.1
@@ -1457,9 +1457,9 @@ __metadata:
     jest: ^27.5.1
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -1482,9 +1482,9 @@ __metadata:
     jest: ^27.5.1
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -1513,9 +1513,9 @@ __metadata:
     jest: ^27.5.1
     nock: ^13.3.1
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -1526,9 +1526,9 @@ __metadata:
     "@lavamoat/allow-scripts": ^2.3.1
     "@metamask/create-release-branch": ^1.1.0
     "@metamask/eslint-config": ^12.2.0
-    "@metamask/eslint-config-jest": ^12.0.0
-    "@metamask/eslint-config-nodejs": ^12.0.0
-    "@metamask/eslint-config-typescript": ^12.0.0
+    "@metamask/eslint-config-jest": ^12.1.0
+    "@metamask/eslint-config-nodejs": ^12.1.0
+    "@metamask/eslint-config-typescript": ^12.1.0
     "@metamask/eth-json-rpc-provider": ^1.0.0
     "@metamask/utils": ^6.2.0
     "@types/node": ^16.18.24
@@ -1553,7 +1553,7 @@ __metadata:
     rimraf: ^3.0.2
     simple-git-hooks: ^2.8.0
     ts-node: ^10.9.1
-    typescript: ~4.6.3
+    typescript: ~4.8.4
     which: ^3.0.0
   languageName: unknown
   linkType: soft
@@ -1593,15 +1593,15 @@ __metadata:
     jest: ^27.5.1
     punycode: ^2.1.1
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   peerDependencies:
     "@metamask/network-controller": ^13.0.0
   languageName: unknown
   linkType: soft
 
-"@metamask/eslint-config-jest@npm:^12.0.0":
+"@metamask/eslint-config-jest@npm:^12.1.0":
   version: 12.1.0
   resolution: "@metamask/eslint-config-jest@npm:12.1.0"
   peerDependencies:
@@ -1612,7 +1612,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@metamask/eslint-config-nodejs@npm:^12.0.0":
+"@metamask/eslint-config-nodejs@npm:^12.1.0":
   version: 12.1.0
   resolution: "@metamask/eslint-config-nodejs@npm:12.1.0"
   peerDependencies:
@@ -1623,7 +1623,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"@metamask/eslint-config-typescript@npm:^12.0.0":
+"@metamask/eslint-config-typescript@npm:^12.1.0":
   version: 12.1.0
   resolution: "@metamask/eslint-config-typescript@npm:12.1.0"
   peerDependencies:
@@ -1821,9 +1821,9 @@ __metadata:
     nock: ^13.3.1
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
     uuid: ^8.3.2
   peerDependencies:
     "@metamask/network-controller": ^13.0.0
@@ -1910,9 +1910,9 @@ __metadata:
     jest: ^27.5.1
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
     uuid: ^8.3.2
   peerDependencies:
     "@metamask/preferences-controller": ^4.4.1
@@ -1930,9 +1930,9 @@ __metadata:
     deepmerge: ^4.2.2
     jest: ^27.5.1
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
     uuid: ^8.3.2
   languageName: unknown
   linkType: soft
@@ -1953,9 +1953,9 @@ __metadata:
     jest: ^27.5.1
     jsonschema: ^1.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
     uuid: ^8.3.2
   languageName: unknown
   linkType: soft
@@ -1980,9 +1980,9 @@ __metadata:
     immer: ^9.0.6
     jest: ^27.5.1
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -2015,9 +2015,9 @@ __metadata:
     nock: ^13.3.1
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
     uuid: ^8.3.2
   languageName: unknown
   linkType: soft
@@ -2035,9 +2035,9 @@ __metadata:
     jest: ^27.5.1
     nanoid: ^3.1.31
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -2091,9 +2091,9 @@ __metadata:
     json-rpc-engine: ^6.1.0
     nanoid: ^3.1.31
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   peerDependencies:
     "@metamask/approval-controller": ^3.5.1
   languageName: unknown
@@ -2115,9 +2115,9 @@ __metadata:
     punycode: ^2.1.1
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -2135,9 +2135,9 @@ __metadata:
     deepmerge: ^4.2.2
     jest: ^27.5.1
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
     uuid: ^8.3.2
   peerDependencies:
     "@metamask/network-controller": ^13.0.0
@@ -2165,9 +2165,9 @@ __metadata:
     deepmerge: ^4.2.2
     jest: ^27.5.1
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -2241,9 +2241,9 @@ __metadata:
     immer: ^9.0.6
     jest: ^27.5.1
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   languageName: unknown
   linkType: soft
 
@@ -2343,9 +2343,9 @@ __metadata:
     nock: ^13.3.1
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   peerDependencies:
     "@metamask/network-controller": ^13.0.0
   languageName: unknown
@@ -2371,9 +2371,9 @@ __metadata:
     jest: ^27.5.1
     lodash: ^4.17.21
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
   peerDependencies:
     "@metamask/approval-controller": ^3.5.1
     "@metamask/logging-controller": ^1.0.2
@@ -2603,9 +2603,9 @@ __metadata:
     nonce-tracker: ^1.1.0
     sinon: ^9.2.4
     ts-jest: ^27.1.4
-    typedoc: ^0.23.15
-    typedoc-plugin-missing-exports: ^0.23.0
-    typescript: ~4.6.3
+    typedoc: ^0.24.8
+    typedoc-plugin-missing-exports: ^2.0.0
+    typescript: ~4.8.4
     uuid: ^8.3.2
   peerDependencies:
     "@metamask/approval-controller": ^3.5.1
@@ -7855,7 +7855,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"marked@npm:^4.2.12":
+"marked@npm:^4.3.0":
   version: 4.3.0
   resolution: "marked@npm:4.3.0"
   bin:
@@ -7959,16 +7959,7 @@ __metadata:
   languageName: node
   linkType: hard
 
-"minimatch@npm:^7.1.3":
-  version: 7.4.6
-  resolution: "minimatch@npm:7.4.6"
-  dependencies:
-    brace-expansion: ^2.0.1
-  checksum: 1a6c8d22618df9d2a88aabeef1de5622eb7b558e9f8010be791cb6b0fa6e102d39b11c28d75b855a1e377b12edc7db8ff12a99c20353441caa6a05e78deb5da9
-  languageName: node
-  linkType: hard
-
-"minimatch@npm:^9.0.1":
+"minimatch@npm:^9.0.0, minimatch@npm:^9.0.1":
   version: 9.0.3
   resolution: "minimatch@npm:9.0.3"
   dependencies:
@@ -10033,48 +10024,48 @@ __metadata:
   languageName: node
   linkType: hard
 
-"typedoc-plugin-missing-exports@npm:^0.23.0":
-  version: 0.23.0
-  resolution: "typedoc-plugin-missing-exports@npm:0.23.0"
+"typedoc-plugin-missing-exports@npm:^2.0.0":
+  version: 2.1.0
+  resolution: "typedoc-plugin-missing-exports@npm:2.1.0"
   peerDependencies:
-    typedoc: 0.22.x || 0.23.x
-  checksum: b3fc9eccca88a9ffb686d1e9ba923178c54b4bb7e496823b7b971b6f6baa957263f7ccff058f5b0e579fee49c93da09dbdc3a4dafd713960d93b2832de8094e1
+    typedoc: 0.24.x || 0.25.x
+  checksum: cb9b324c28a68a4ba621f4e3c15ce3b43f75826bdcb09a073aa51c770bbca47b687eb1c0462ba22a09a316573e29c4f9c4f75763b51f8354cce42989dfa68231
   languageName: node
   linkType: hard
 
-"typedoc@npm:^0.23.15":
-  version: 0.23.28
-  resolution: "typedoc@npm:0.23.28"
+"typedoc@npm:^0.24.8":
+  version: 0.24.8
+  resolution: "typedoc@npm:0.24.8"
   dependencies:
     lunr: ^2.3.9
-    marked: ^4.2.12
-    minimatch: ^7.1.3
+    marked: ^4.3.0
+    minimatch: ^9.0.0
     shiki: ^0.14.1
   peerDependencies:
-    typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x
+    typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x
   bin:
     typedoc: bin/typedoc
-  checksum: 40eb4e207aac1b734e09400cf03f543642cc7b11000895198dd5a0d3166315759ccf4ac30a2915153597c5c186101c72bac2f1fc12b428184a9274d3a0e44c5e
+  checksum: a46a14497f789fb3594e6c3af2e45276934ac46df40b7ed15a504ee51dc7a8013a2ffb3a54fd73abca6a2b71f97d3ec9ad356fa9aa81d29743e4645a965a2ae0
   languageName: node
   linkType: hard
 
-"typescript@npm:~4.6.3":
-  version: 4.6.4
-  resolution: "typescript@npm:4.6.4"
+"typescript@npm:~4.8.4":
+  version: 4.8.4
+  resolution: "typescript@npm:4.8.4"
   bin:
     tsc: bin/tsc
     tsserver: bin/tsserver
-  checksum: e7bfcc39cd4571a63a54e5ea21f16b8445268b9900bf55aee0e02ad981be576acc140eba24f1af5e3c1457767c96cea6d12861768fb386cf3ffb34013718631a
+  checksum: 3e4f061658e0c8f36c820802fa809e0fd812b85687a9a2f5430bc3d0368e37d1c9605c3ce9b39df9a05af2ece67b1d844f9f6ea8ff42819f13bcb80f85629af0
   languageName: node
   linkType: hard
 
-"typescript@patch:typescript@~4.6.3#~builtin<compat/typescript>":
-  version: 4.6.4
-  resolution: "typescript@patch:typescript@npm%3A4.6.4#~builtin<compat/typescript>::version=4.6.4&hash=5d3a66"
+"typescript@patch:typescript@~4.8.4#~builtin<compat/typescript>":
+  version: 4.8.4
+  resolution: "typescript@patch:typescript@npm%3A4.8.4#~builtin<compat/typescript>::version=4.8.4&hash=0102e9"
   bin:
     tsc: bin/tsc
     tsserver: bin/tsserver
-  checksum: 1cb434fbc637d347be90e3a0c6cd05e33c38f941713c8786d3031faf1842c2c148ba91d2fac01e7276b0ae3249b8633f1660e32686cc7a8c6a8fd5361dc52c66
+  checksum: 301459fc3eb3b1a38fe91bf96d98eb55da88a9cb17b4ef80b4d105d620f4d547ba776cc27b44cc2ef58b66eda23fe0a74142feb5e79a6fb99f54fc018a696afa
   languageName: node
   linkType: hard