/** * This package exports several functions to query * the {@link https://www.npmjs.com | npm registry} * (or one of its mirrors) through one of its * {@link https://github.com/npm/registry/blob/master/docs/REGISTRY-API.md | endpoints}. * * @example * Get the metadata for the npm registry: * * ```typescript * import { getRegistryMetadata } from 'query-registry'; * * (async () => { * const metadata = await getRegistryMetadata(); * * // Output: 'registry' * console.log(metadata.db_name); * })(); * ``` * * @example * Get the latest manifest for package `query-registry` from the npm registry: * * ```typescript * import { getPackageManifest } from 'query-registry'; * * (async () => { * const manifest = await getPackageManifest({ name: 'query-registry' }); * * // Output: 'query-registry' * console.log(manifest.name); * })(); * ``` * * @example * Get the abbreviated packument for package `query-registry` from the npm registry: * * ```typescript * import { getAbbreviatedPackument } from 'query-registry'; * * (async () => { * const packument = await getAbbreviatedPackument({ name: 'query-registry' }); * * // Output: 'query-registry' * console.log(manifest.name); * })(); * ``` * * @example * Get the weekly downloads for package `query-registry` from the npm registry: * * ```typescript * import { getPackageDownloads } from 'query-registry'; * * (async () => { * const downloads = await getPackageDownloads({ name: 'query-registry' }); * * // Output: 'query-registry' * console.log(downloads.package); * * // Output: 'number' * console.log(typeof downloads.downloads); * })(); * ``` * * @example * Get the search results for text query `query-registry` from the npm registry: * * ```typescript * import { searchPackages } from 'query-registry'; * * (async () => { * const results = await searchPackages({ query: { text: 'query-registry' } }); * * // Output: 'query-registry' * console.log(results.objects[0].package.name); * })(); * ``` * * @example * Enable {@link https://www.npmjs.com/package/debug | debug messages} * by setting the `DEBUG` environment variable to `query-registry` * (available only in non production environments): * * ```bash * $ DEBUG="query-registry" * ``` * * @packageDocumentation */ export * from './data/registries'; export * from './endpoints/get-abbreviated-packument'; export * from './endpoints/get-daily-package-downloads'; export * from './endpoints/get-daily-registry-downloads'; export * from './endpoints/get-package-downloads'; export * from './endpoints/get-package-manifest'; export * from './endpoints/get-packument'; export * from './endpoints/get-raw-abbreviated-packument'; export * from './endpoints/get-raw-package-manifest'; export * from './endpoints/get-raw-packument'; export * from './endpoints/get-registry-downloads'; export * from './endpoints/get-registry-metadata'; export * from './endpoints/search-packages'; export * from './types/abbreviated-packument'; export * from './types/bug-tracker'; export * from './types/dist-info'; export * from './types/dist-tags'; export * from './types/download-period'; export * from './types/downloads'; export * from './types/git-repository'; export * from './types/npm-operational-internal'; export * from './types/package-json'; export * from './types/package-manifest'; export * from './types/packument'; export * from './types/person'; export * from './types/raw-abbreviated-packument'; export * from './types/raw-package-manifest'; export * from './types/raw-packument'; export * from './types/registry-metadata'; export * from './types/repository'; export * from './types/search-criteria'; export * from './types/search-results'; export * from './types/versions-to-timestamps'; export * from './utils/errors';