UNPKG

npm-pkgbuild

Version:

create ArchLinux, RPM and Debian packages from npm packages

111 lines (110 loc) 3.26 kB
/** * @typedef {import('../publish.mjs').PublishingDetail} PublishingDetail */ /** * @typedef {Object} Field * @property {string} alias interchangeable field name * @property {string} type * @property {any} default * @property {boolean} mandatory */ /** * Base Packager * @param {Object} properties */ export class Packager { static get fields(): {}; /** * @return {{named:object,others:string[]}} */ static get workspaceLayout(): { named: object; others: string[]; }; /** * @param {Object} options * @param {Object} variant * @return {Promise<boolean>} */ static prepare(options: any, variant: any): Promise<boolean>; /** * Base Packager * @param {Object} properties */ constructor(properties: any); /** * What is the package name in the package eco-system. * @param {string} name * @return {string} package name in the target eco-system */ packageName(name: string): string; get hookMapping(): {}; hookContent(): AsyncGenerator<StringContentEntry, void, unknown>; dependencyExpression(name: any, expression: any): any; makeDepends(dependencies: any): any[]; get fileNameExtension(): any; get fields(): any; get properties(): any; /** * Create tmp directory. * @return {Promise<string>} directory path */ get tmpdir(): Promise<string>; /** * Prepares artifact generation. * @param {Object} options * @param {Object} [publishingDetail] * @returns {Promise<{properties:Object, destination:string, tmpdir:string, staging:string}>} */ prepare(options: any, publishingDetail?: any): Promise<{ properties: any; destination: string; tmpdir: string; staging: string; }>; /** * Execute package generation. * @param {Object} sources * @param {Object[]} transformer * @param {PublishingDetail[]} publishingDetails * @param {Object} options * @param {function(string):string?} expander * @return {Promise<string>} identifier of the resulting package */ create(sources: any, transformer: any[], publishingDetails: PublishingDetail[], options: any, expander: (arg0: string) => string | null): Promise<string>; publish(artifact: any, publishingDetails: any, logger: any): Promise<void>; #private; } export namespace NAME_FIELD { let alias: string; let type: string; let mandatory: boolean; } export namespace VERSION_FIELD { let alias_1: string; export { alias_1 as alias }; let type_1: string; export { type_1 as type }; let mandatory_1: boolean; export { mandatory_1 as mandatory }; export function set(v: any): any; } export namespace DESCRIPTION_FIELD { let alias_2: string; export { alias_2 as alias }; let type_2: string; export { type_2 as type }; let mandatory_2: boolean; export { mandatory_2 as mandatory }; } export type PublishingDetail = import("../publish.mjs").PublishingDetail; export type Field = { /** * interchangeable field name */ alias: string; type: string; default: any; mandatory: boolean; }; import { StringContentEntry } from "content-entry";