cnpmcore
Version:
51 lines (50 loc) • 1.87 kB
TypeScript
import { PackageJson, Simplify } from 'type-fest';
import { EggContext } from '@eggjs/tegg';
import { Static } from '@sinclair/typebox';
import { AbstractController } from '../AbstractController';
type PackageVersion = Simplify<PackageJson.PackageJsonStandard & {
name: 'string';
version: 'string';
deprecated?: 'string';
readme?: 'string';
dist?: {
shasum: string;
integrity: string;
[key: string]: string | number;
};
}>;
declare const FullPackageRule: import("@sinclair/typebox").TObject<{
name: import("@sinclair/typebox").TString;
versions: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>;
_attachments: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TAny>;
description: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
'dist-tags': import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TString>>;
readme: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
}>;
type FullPackage = Omit<Static<typeof FullPackageRule>, 'versions' | '_attachments'> & {
versions: {
[key: string]: PackageVersion;
};
} & {
_attachments: {
[key: string]: {
content_type: string;
data: string;
length: number;
};
};
};
export declare class SavePackageVersionController extends AbstractController {
private readonly packageManagerService;
private readonly registryManagerService;
private readonly cacheAdapter;
save(ctx: EggContext, fullname: string, pkg: FullPackage): Promise<{
ok: boolean;
} | {
ok: boolean;
rev: string;
}>;
private saveDeprecatedVersions;
private validateNpmCommand;
}
export {};