@nodesecure/contact
Version:
Utilities to extract/fetch data on NPM contacts (author, maintainers ..)
35 lines • 1.42 kB
TypeScript
import type { Contact, PackumentVersion, Packument } from "@nodesecure/npm-types";
import { type EnforcedContact, type IlluminatedContact } from "./UnlitContact.class.ts";
export type { IlluminatedContact, EnforcedContact };
export interface ContactExtractorPackageMetadata {
author?: Contact | null;
maintainers: Contact[];
}
type ContactPackageMetaData = Partial<ContactExtractorPackageMetadata>;
export interface ContactExtractorFromDependenciesResult {
illuminated: IlluminatedContact[];
/**
* List of email domains that are expired
*/
expired: string[];
}
export interface ContactExtractorOptions {
highlight: EnforcedContact[];
}
export declare class ContactExtractor {
private highlighted;
constructor(options: ContactExtractorOptions);
fromDependencies(dependencies: Record<string, ContactExtractorPackageMetadata>): Promise<ContactExtractorFromDependenciesResult>;
fromManifest(manifest: PackumentVersion): Promise<{
expired: string[];
illuminated: IlluminatedContact[];
}>;
fromPackument(packument: Packument): Promise<{
expired: string[];
illuminated: IlluminatedContact[];
}>;
private addDependencyToUnlitContacts;
private processIlluminatedAndExpired;
}
export declare function extractMetadataContacts(metadata: ContactPackageMetaData): Contact[];
//# sourceMappingURL=ContactExtractor.class.d.ts.map