framework/engine/suspense.test.tsx:16:8 - error TS2786: 'Suspense' cannot be used as a JSX component. Its type '({ children, fallback }: SuspenseProps) => Node' is not a valid JSX element type. Type '({ children, fallback }: SuspenseProps) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Property 'children' is missing in type 'Record' but required in type 'SuspenseProps'. 16    ~~~~~~~~ framework/engine/suspense.ts:13:3 - 'children' is declared here. 13 children: ssr.Node;    ~~~~~~~~ src/file-viewer/backend.tsx:3:41 - error TS2307: Cannot find module '../assets.ts' or its corresponding type declarations. 3 import { etagMatches, serveAsset } from "../assets.ts";    ~~~~~~~~~~~~~~ src/file-viewer/backend.tsx:4:44 - error TS2307: Cannot find module '../db.ts' or its corresponding type declarations. 4 import { FilePermissions, MediaFile } from "../db.ts";    ~~~~~~~~~~ src/file-viewer/backend.tsx:5:35 - error TS2307: Cannot find module '../framework/dynamic-pages.ts' or its corresponding type declarations. 5 import { renderDynamicPage } from "../framework/dynamic-pages.ts";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/backend.tsx:6:36 - error TS2307: Cannot find module '../framework/render-to-string.ts' or its corresponding type declarations. 6 import { renderToStringSync } from "../framework/render-to-string.ts";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/backend.tsx:7:28 - error TS2307: Cannot find module '../pages-dynamic/file_viewer.tsx' or its corresponding type declarations. 7 import { MediaPanel } from "../pages-dynamic/file_viewer.tsx";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/backend.tsx:8:24 - error TS2732: Cannot find module './mime.json'. Consider using '--resolveJsonModule' to import module with '.json' extension. 8 import mimeTypeDb from "./mime.json" with { type: "json" };    ~~~~~~~~~~~~~ src/file-viewer/backend.tsx:10:26 - error TS2307: Cannot find module '../assets.ts' or its corresponding type declarations. 10 import { hasAsset } from "../assets.ts";    ~~~~~~~~~~~~~~ src/file-viewer/backend.tsx:11:10 - error TS1484: 'CompressionFormat' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled. 11 import { CompressionFormat, fetchFile, prefetchFile } from "./cache.ts";    ~~~~~~~~~~~~~~~~~ src/file-viewer/backend.tsx:12:35 - error TS2307: Cannot find module '../journal/backend.ts' or its corresponding type declarations. 12 import { requireFriendAuth } from "../journal/backend.ts";    ~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/backend.tsx:93:46 - error TS7006: Parameter 'f' implicitly has an 'any' type. 93 files: file.getPublicChildren().map((f) => ({    ~ src/file-viewer/backend.tsx:391:14 - error TS18049: 'root' is possibly 'null' or 'undefined'. 391 root = root.props.children;    ~~~~ src/file-viewer/backend.tsx:391:19 - error TS2339: Property 'props' does not exist on type 'string | number | boolean | Node[] | DirectHtml | Element | Promise'. Property 'props' does not exist on type 'string'. 391 root = root.props.children;    ~~~~~ src/file-viewer/cache.ts:6:26 - error TS7016: Could not find a declaration file for module 'lru-cache'. 'C:/code/paperclover.net/node_modules/lru-cache/index.js' implicitly has an 'any' type. Try `npm i --save-dev @types/lru-cache` if it exists or add a new declaration (.d.ts) file containing `declare module 'lru-cache';` 6 import { LRUCache } from "lru-cache";    ~~~~~~~~~~~ src/file-viewer/cache.ts:30:21 - error TS7006: Parameter 'value' implicitly has an 'any' type. 30 sizeCalculation: (value) => value,    ~~~~~ src/file-viewer/cache.ts:31:13 - error TS7006: Parameter '_' implicitly has an 'any' type. 31 dispose: (_, key) => {    ~ src/file-viewer/cache.ts:31:16 - error TS7006: Parameter 'key' implicitly has an 'any' type. 31 dispose: (_, key) => {    ~~~ src/file-viewer/cache.ts:34:14 - error TS7006: Parameter 'size' implicitly has an 'any' type. 34 onInsert: (size, key) => {    ~~~~ src/file-viewer/cache.ts:34:20 - error TS7006: Parameter 'key' implicitly has an 'any' type. 34 onInsert: (size, key) => {    ~~~ src/file-viewer/cache.ts:41:21 - error TS7006: Parameter 'value' implicitly has an 'any' type. 41 sizeCalculation: (value) => value.byteLength,    ~~~~~ src/file-viewer/cache.ts:233:33 - error TS2504: Type 'ReadableStream' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. 233 for await (const chunk of stream2) {    ~~~~~~~ src/file-viewer/cache.ts:241:31 - error TS2504: Type 'ReadableStream' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. 241 for await (const chunk of stream2) {    ~~~~~~~ src/file-viewer/cache.ts:336:27 - error TS2867: Cannot find name 'Bun'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`. 336 const agent: any = typeof Bun !== "undefined"    ~~~ src/file-viewer/cache.ts:403:10 - error TS2867: Cannot find name 'Bun'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`. 403 typeof Bun !== "undefined" || typeof Deno !== "undefined"    ~~~ src/file-viewer/cache.ts:414:29 - error TS2504: Type 'ReadableStream' must have a '[Symbol.asyncIterator]()' method that returns an async iterator. 414 for await (const chunk of stream) {    ~~~~~~ src/file-viewer/extension-stats.ts:2:34 - error TS2834: Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path. 2 import { cache, MediaFile } from "../db";    ~~~~~~~ src/file-viewer/highlight.ts:1:27 - error TS2307: Cannot find module '../lib.ts' or its corresponding type declarations. 1 import { onceAsync } from "../lib.ts";    ~~~~~~~~~~~ src/file-viewer/highlight.ts:4:28 - error TS2307: Cannot find module 'vscode-oniguruma' or its corresponding type declarations. 4 import * as oniguruma from "vscode-oniguruma";    ~~~~~~~~~~~~~~~~~~ src/file-viewer/highlight.ts:5:27 - error TS2307: Cannot find module 'vscode-textmate' or its corresponding type declarations. 5 import * as textmate from "vscode-textmate";    ~~~~~~~~~~~~~~~~~ src/file-viewer/highlight.ts:6:28 - error TS2307: Cannot find module '../framework/bun-polyfill.ts' or its corresponding type declarations. 6 import { escapeHTML } from "../framework/bun-polyfill.ts";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/highlight.ts:91:19 - error TS2339: Property 'main' does not exist on type 'ImportMeta'. 91 if (import.meta.main) console.log(scopesToCheck);    ~~~~ src/file-viewer/highlight.ts:154:27 - error TS7006: Parameter 'patterns' implicitly has an 'any' type. 154 createOnigScanner: (patterns) => new oniguruma.OnigScanner(patterns),    ~~~~~~~~ src/file-viewer/highlight.ts:155:26 - error TS7006: Parameter 's' implicitly has an 'any' type. 155 createOnigString: (s) => new oniguruma.OnigString(s),    ~ src/file-viewer/highlight.ts:191:17 - error TS2339: Property 'main' does not exist on type 'ImportMeta'. 191 if (import.meta.main) {    ~~~~ src/file-viewer/pages/file.cotyledon_enterance.tsx:1:27 - error TS2834: Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path. 1 import { MediaFile } from "../db";    ~~~~~~~ src/file-viewer/pages/file.cotyledon_enterance.tsx:2:33 - error TS2834: Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path. 2 import { useInlineScript } from "../framework/page-resources";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/pages/file.cotyledon_enterance.tsx:3:24 - error TS2834: Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path. 3 import { Readme } from "../media/cotyledon";    ~~~~~~~~~~~~~~~~~~~~ src/file-viewer/pages/file.cotyledon_enterance.tsx:4:28 - error TS2834: Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path. 4 import { MediaPanel } from "../pages-dynamic/file_viewer";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/pages/file.cotyledon_speedbump.tsx:1:27 - error TS2834: Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path. 1 import { MediaFile } from "../db";    ~~~~~~~ src/file-viewer/pages/file.cotyledon_speedbump.tsx:2:33 - error TS2834: Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path. 2 import { useInlineScript } from "../framework/page-resources";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/pages/file.cotyledon_speedbump.tsx:3:27 - error TS2834: Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path. 3 import { Speedbump } from "../media/cotyledon";    ~~~~~~~~~~~~~~~~~~~~ src/file-viewer/pages/file.cotyledon_speedbump.tsx:4:28 - error TS2834: Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path. 4 import { MediaPanel } from "../pages-dynamic/file_viewer";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/scan.ts:11:62 - error TS2307: Cannot find module '../db.ts' or its corresponding type declarations. 11 import { BlobAsset, cache, FilePermissions, MediaFile } from "../db.ts";    ~~~~~~~~~~ src/file-viewer/scan.ts:694:27 - error TS2867: Cannot find name 'Bun'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`. 694 const gzipProcess = Bun.spawn(["gzip", "-c", filePath, "-9"], {    ~~~ src/file-viewer/scan.ts:695:17 - error TS2867: Cannot find name 'Bun'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`. 695 stdout: Bun.file(compressPath + ".gz"),    ~~~ src/file-viewer/scan.ts:697:27 - error TS2867: Cannot find name 'Bun'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`. 697 const zstdProcess = Bun.spawn(["zstd", "-c", filePath, "-9"], {    ~~~ src/file-viewer/scan.ts:698:17 - error TS2867: Cannot find name 'Bun'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`. 698 stdout: Bun.file(compressPath + ".zstd"),    ~~~ src/file-viewer/scan.ts:801:19 - error TS2339: Property 'exists' does not exist on type 'typeof import("node:fs/promises")'. 801 if (await fsp.exists(path.join(dirPath, ".friends"))) {    ~~~~~~ src/file-viewer/scan.ts:819:25 - error TS2867: Cannot find name 'Bun'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`. 819 const dirHash = new Bun.CryptoHasher("sha1")    ~~~ src/file-viewer/text-formatting.ts:1:32 - error TS2307: Cannot find module '../db.ts' or its corresponding type declarations. 1 import type { MediaFile } from "../db.ts";    ~~~~~~~~~~ src/file-viewer/text-formatting.ts:2:28 - error TS2307: Cannot find module '../framework/bun-polyfill.ts' or its corresponding type declarations. 2 import { escapeHTML } from "../framework/bun-polyfill.ts";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:4:27 - error TS2307: Cannot find module '../db.ts' or its corresponding type declarations. 4 import { MediaFile } from "../db.ts";    ~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:5:33 - error TS2307: Cannot find module '../framework/page-resources.ts' or its corresponding type declarations. 5 import { useInlineScript } from "../framework/page-resources.ts";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:6:55 - error TS2307: Cannot find module '../media/share.ts' or its corresponding type declarations. 6 import { escapeUri, formatDuration, formatSize } from "../media/share.ts";    ~~~~~~~~~~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:11:8 - error TS2307: Cannot find module '../media/text-formatting.ts' or its corresponding type declarations. 11 } from "../media/text-formatting.ts";    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:12:24 - error TS2307: Cannot find module '../test/id.ts' or its corresponding type declarations. 12 import { TestID } from "../test/id.ts";    ~~~~~~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:13:29 - error TS2307: Cannot find module '../media/cotyledon.tsx' or its corresponding type declarations. 13 import { ForEveryone } from "../media/cotyledon.tsx";    ~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:99:12 - error TS2786: 'MediaPanel' cannot be used as a JSX component. Its type '({ file, isLast, activeFilename, hasCotyledonCookie, }: { file: MediaFile; isLast: boolean; activeFilename: string | null; hasCotyledonCookie: boolean; }) => Node' is not a valid JSX element type. Type '({ file, isLast, activeFilename, hasCotyledonCookie, }: { file: MediaFile; isLast: boolean; activeFilename: string | null; hasCotyledonCookie: boolean; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ file: MediaFile; isLast: boolean; activeFilename: string | null; hasCotyledonCookie: boolean; }': file, isLast, activeFilename, hasCotyledonCookie 99 Node' is not a valid JSX element type. Type '({ dir, activeFilename, isLast, hasCotyledonCookie, }: { dir: MediaFile; activeFilename: string | null; isLast: boolean; hasCotyledonCookie: boolean; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ dir: MediaFile; activeFilename: string | null; isLast: boolean; hasCotyledonCookie: boolean; }': dir, activeFilename, isLast, hasCotyledonCookie 215 Node' is not a valid JSX element type. Type '({ dir, activeFilename, isLast, hasCotyledonCookie, }: { dir: MediaFile; activeFilename: string | null; isLast: boolean; hasCotyledonCookie: boolean; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ dir: MediaFile; activeFilename: string | null; isLast: boolean; hasCotyledonCookie: boolean; }': dir, activeFilename, isLast, hasCotyledonCookie 358 !f.basenameWithoutExt.startsWith("_unlisted"));    ~ src/file-viewer/views/file-viewer.tsx:378:36 - error TS7006: Parameter 'f' implicitly has an 'any' type. 378 const readme = sortedFiles.find((f) => f.basename === readmeFile);    ~ src/file-viewer/views/file-viewer.tsx:383:27 - error TS7006: Parameter 'file' implicitly has an 'any' type. 383 {sortedFiles.map((file) => {    ~~~~ src/file-viewer/views/file-viewer.tsx:385:14 - error TS2786: 'ListItem' cannot be used as a JSX component. Its type '({ file, active, noDate, }: { file: MediaFile; active: boolean; noDate?: boolean | undefined; }) => Node' is not a valid JSX element type. Type '({ file, active, noDate, }: { file: MediaFile; active: boolean; noDate?: boolean | undefined; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ file: MediaFile; active: boolean; noDate?: boolean | undefined; }': file, active 385    ~~~~~~~~ src/file-viewer/views/file-viewer.tsx:395:10 - error TS2786: 'ReadmeView' cannot be used as a JSX component. Its type '({ file, siblingFiles, extra, }: { file: MediaFile; siblingFiles: MediaFile[]; extra?: any; }) => Node' is not a valid JSX element type. Type '({ file, siblingFiles, extra, }: { file: MediaFile; siblingFiles: MediaFile[]; extra?: any; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ file: MediaFile; siblingFiles: MediaFile[]; extra?: any; }': file, siblingFiles 395    ~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:617:12 - error TS2786: 'ListItem' cannot be used as a JSX component. Its type '({ file, active, noDate, }: { file: MediaFile; active: boolean; noDate?: boolean | undefined; }) => Node' is not a valid JSX element type. Type '({ file, active, noDate, }: { file: MediaFile; active: boolean; noDate?: boolean | undefined; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ file: MediaFile; active: boolean; noDate?: boolean | undefined; }': file, active 617 Node' is not a valid JSX element type. Type '({ file, active, noDate, }: { file: MediaFile; active: boolean; noDate?: boolean | undefined; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ file: MediaFile; active: boolean; noDate?: boolean | undefined; }': file, active 644 Node' is not a valid JSX element type. Type '({ file, siblingFiles, extra, }: { file: MediaFile; siblingFiles: MediaFile[]; extra?: any; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ file: MediaFile; siblingFiles: MediaFile[]; extra?: any; }': file, siblingFiles 660 Node' is not a valid JSX element type. Type '({ file }: { file: MediaFile; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Property 'file' is missing in type 'Record' but required in type '{ file: MediaFile; }'. 740 return ;    ~~~~~~~~~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:921:41 - 'file' is declared here. 921 function DownloadViewTooBig({ file }: { file: MediaFile }) {    ~~~~ src/file-viewer/views/file-viewer.tsx:742:13 - error TS2786: 'DownloadViewCodeNotComputed' cannot be used as a JSX component. Its type '({ file }: { file: MediaFile; }) => Node' is not a valid JSX element type. Type '({ file }: { file: MediaFile; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Property 'file' is missing in type 'Record' but required in type '{ file: MediaFile; }'. 742 return ;    ~~~~~~~~~~~~~~~~~~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:940:50 - 'file' is declared here. 940 function DownloadViewCodeNotComputed({ file }: { file: MediaFile }) {    ~~~~ src/file-viewer/views/file-viewer.tsx:793:8 - error TS7006: Parameter 'f' implicitly has an 'any' type. 793 (f) =>    ~ src/file-viewer/views/file-viewer.tsx:799:22 - error TS7006: Parameter 'f' implicitly has an 'any' type. 799 siblings.find((f) => f.basename === "lyrics.txt")    ~ src/file-viewer/views/file-viewer.tsx:801:35 - error TS7006: Parameter 'f' implicitly has an 'any' type. 801 lyricsFile = siblings.find((f) => f.basename === "lyrics.txt")!;    ~ src/file-viewer/views/file-viewer.tsx:817:12 - error TS2786: 'TextView' cannot be used as a JSX component. Its type '{ ({ file, siblingFiles, }: { file: MediaFile; siblingFiles?: MediaFile[] | undefined; }): Node; class: string; }' is not a valid JSX element type. Type '{ ({ file, siblingFiles, }: { file: MediaFile; siblingFiles?: MediaFile[] | undefined; }): Node; class: string; }' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Property 'file' is missing in type 'Record' but required in type '{ file: MediaFile; siblingFiles?: MediaFile[] | undefined; }'. 817    ~~~~~~~~ src/file-viewer/views/file-viewer.tsx:690:3 - 'file' is declared here. 690 file: MediaFile;    ~~~~ src/file-viewer/views/file-viewer.tsx:855:13 - error TS2786: 'FusionHelp' cannot be used as a JSX component. Its type '({ ext, name }: { ext: string; name: string; }) => Node' is not a valid JSX element type. Type '({ ext, name }: { ext: string; name: string; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ ext: string; name: string; }': ext, name 855 ".comp": ,    ~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:856:16 - error TS2786: 'FusionHelp' cannot be used as a JSX component. Its type '({ ext, name }: { ext: string; name: string; }) => Node' is not a valid JSX element type. Type '({ ext, name }: { ext: string; name: string; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ ext: string; name: string; }': ext, name 856 ".setting": ,    ~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:857:13 - error TS2786: 'FusionHelp' cannot be used as a JSX component. Its type '({ ext, name }: { ext: string; name: string; }) => Node' is not a valid JSX element type. Type '({ ext, name }: { ext: string; name: string; }) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type '{ ext: string; name: string; }': ext, name 857 ".fuse": ,    ~~~~~~~~~~ src/file-viewer/views/file-viewer.tsx:977:8 - error TS2786: 'TextView' cannot be used as a JSX component. Its type '{ ({ file, siblingFiles, }: { file: MediaFile; siblingFiles?: MediaFile[] | undefined; }): Node; class: string; }' is not a valid JSX element type. Type '{ ({ file, siblingFiles, }: { file: MediaFile; siblingFiles?: MediaFile[] | undefined; }): Node; class: string; }' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Property 'file' is missing in type 'Record' but required in type '{ file: MediaFile; siblingFiles?: MediaFile[] | undefined; }'. 977    ~~~~~~~~ src/file-viewer/views/file-viewer.tsx:690:3 - 'file' is declared here. 690 file: MediaFile;    ~~~~ src/pages/waterfalls.tsx:14:8 - error TS2786: 'Video' cannot be used as a JSX component. Its type '({ title, sources, height, poster, posterHash, width, borderless }: Props) => Node' is not a valid JSX element type. Type '({ title, sources, height, poster, posterHash, width, borderless }: Props) => Node' is not assignable to type 'Component'. Types of parameters '__0' and 'props' are incompatible. Type 'Record' is missing the following properties from type 'Props': title, width, height, sources, downloads 14