UNPKG

cdn-resolve

Version:

Resolves import paths to their CDN equivalents

23 lines (20 loc) 1.34 kB
import { ESMOptions } from './esm.cjs'; export { buildESMUrl, resolveESMTypes } from './esm.cjs'; import { SkypackOptions } from './skypack.cjs'; export { SkypackHeaders, buildSkypackUrl, resolveSkypackHeaders } from './skypack.cjs'; import { UnpkgOptions } from './unpkg.cjs'; export { buildUnpkgUrl } from './unpkg.cjs'; export { buildJSDelivrUrl } from './jsdelivr.cjs'; export { ParsedPackage, parsePackage } from './parse.cjs'; declare const CDN_URLS: { readonly skypack: "https://cdn.skypack.dev"; readonly esm: "https://esm.sh"; readonly unpkg: "https://unpkg.com"; readonly jsdelivr: "https://cdn.jsdelivr.net/npm"; }; type SupportedCDNS = "skypack" | "esm" | "unpkg" | "jsdelivr"; declare function normalizeCdnUrl(cdn: SupportedCDNS, module: string): string; type Options<TCDN extends Exclude<SupportedCDNS, "jsdelivr">> = TCDN extends "skypack" ? SkypackOptions : TCDN extends "esm" ? ESMOptions : UnpkgOptions; type Builder<TCDN extends SupportedCDNS> = TCDN extends "jsdelivr" ? (module: string) => URL | undefined : (module: string, options?: Options<Exclude<TCDN, "jsdelivr">>) => URL | undefined; declare function buildCDNUrl<TCDN extends SupportedCDNS>(cdn: TCDN): Builder<TCDN>; export { type Builder, CDN_URLS, ESMOptions, SkypackOptions, type SupportedCDNS, UnpkgOptions, buildCDNUrl, normalizeCdnUrl };