UNPKG

website-validator

Version:
103 lines (102 loc) 3.74 kB
import crypto from "node:crypto"; import { EpubcheckError, FoundPageFetchResult, VnuReportedError } from "."; import { DeepReadonly } from "ts-essentials"; export declare const sha: (x: crypto.BinaryLike) => string; export declare const addFileCache: <F extends (...args: any[]) => any>(fn: F, { calcCacheKey, serialize, deserialize }: { calcCacheKey: (...params: Parameters<F>) => import("ts-essentials").AsyncOrSync<Array<import("ts-essentials").AsyncOrSync<string | number | Buffer | (() => import("ts-essentials").AsyncOrSync<string | number | Buffer>)>> | (string | number | Buffer | (() => import("ts-essentials").AsyncOrSync<string | number | Buffer>))>; serialize?: undefined; deserialize?: undefined; } | { calcCacheKey: (...params: Parameters<F>) => import("ts-essentials").AsyncOrSync<Array<import("ts-essentials").AsyncOrSync<string | number | Buffer | (() => import("ts-essentials").AsyncOrSync<string | number | Buffer>)>> | (string | number | Buffer | (() => import("ts-essentials").AsyncOrSync<string | number | Buffer>))>; serialize: (result: Awaited<ReturnType<F>>, writeable: import("stream/web").WritableStream) => Promise<unknown>; deserialize: (stream: import("stream/web").ReadableStream) => Awaited<ReturnType<F>> | Promise<Awaited<ReturnType<F>>>; }) => (...args: Parameters<F>) => Promise<Awaited<ReturnType<F>>>; export declare const withTempDir: <T>(fn: (dir: string) => T) => Promise<T>; export declare const getElementLocation: (element: Element) => string; export declare const extractAllUrlsFromCss: (css: string) => Promise<{ url: string; parent: string | undefined; prop?: string; position: string; }[]>; export declare const getInterestingPageElements: (page: { path: string; mtime: number; }) => Promise<{ ids: { outerHTML: string; id: string; selector: string; }[]; tagCollections: { img: { attrs: { [k: string]: string | undefined; }; outerHTML: string; selector: string; innerHTML: string; }[]; link: { attrs: { [k: string]: string | undefined; }; outerHTML: string; selector: string; innerHTML: string; }[]; meta: { attrs: { [k: string]: string | undefined; }; outerHTML: string; selector: string; innerHTML: string; }[]; script: { attrs: { [k: string]: string | undefined; }; outerHTML: string; selector: string; innerHTML: string; }[]; video: { attrs: { [k: string]: string | undefined; }; outerHTML: string; selector: string; innerHTML: string; }[]; a: { attrs: { [k: string]: string | undefined; }; outerHTML: string; selector: string; innerHTML: string; }[]; }; }>; export declare const vnuValidates: (files: DeepReadonly<Array<{ data: FoundPageFetchResult["data"]; type: "html" | "css" | "svg"; }>>) => Promise<{ [url: string]: VnuReportedError[]; }>; export declare const validateEpub: (data: { path: string; mtime: number; }) => Promise<EpubcheckError[]>; export declare const validatePdf: (data: { path: string; mtime: number; }) => Promise<any[]>; export declare const getImageDimensions: (data: { path: string; mtime: number; }) => Promise<{ width: number | undefined; height: number | undefined; }>;