@shockpkg/core
Version:
shockpkg core
53 lines (52 loc) • 1.2 kB
TypeScript
import { IPackagesListPackage } from './types';
/**
* Package constructor.
*
* @param info Package info.
* @param parent Package parent.
*/
export declare class Package extends Object {
/**
* Package name.
*/
readonly name: string;
/**
* File name.
*/
readonly file: string;
/**
* File size.
*/
readonly size: number;
/**
* SHA256 hash of file.
*/
readonly sha256: string;
/**
* Source path, URL for root, file path for child packages.
*/
readonly source: string;
/**
* Child packages.
*/
readonly packages: Package[];
/**
* The parent package this package is found in.
*/
readonly parent: Package | null;
constructor(info: IPackagesListPackage, parent?: Package | null);
/**
* Create child packages list.
*
* @param infos Package infos.
* @returns Package instance.
*/
protected _createPackages(infos?: IPackagesListPackage[]): Package[];
/**
* Create a child package.
*
* @param info Package info.
* @returns Package instance.
*/
protected _createPackage(info: IPackagesListPackage): Package;
}