@adpt/cli
Version:
AdaptJS command line interface
57 lines • 1.9 kB
TypeScript
import { MaybeArray } from "@adpt/utils";
import { SemVer } from "semver";
export declare const adaptVersionLabelPrefix = "adapt-v";
export declare type LogString = (msg: string) => void;
export interface AdaptStarter {
readonly dest: string;
readonly isLocal: boolean;
readonly name?: string;
readonly spec: string;
readonly args: string[];
init(): Promise<void>;
download(log: LogString): Promise<void>;
run(log: LogString): Promise<void>;
cleanup(): Promise<void>;
}
export declare type StarterValidator = (config: any, propName: string) => void;
export interface StarterValidators {
[propName: string]: StarterValidator;
}
export interface StarterConfig {
adaptDir?: MaybeArray<string>;
files?: MaybeArray<string>;
init?: string;
name?: string;
version?: string;
}
export declare const starterConfigDefaults: {
adaptDir: string;
};
export declare const starterJsonFile = "adapt_starter.json";
interface SpecInfo {
/**
* The spec before tacking on any adapt version labels
*/
base: string;
/**
* The spec to be fetched, which may or may not have version labels
*/
complete: string;
/**
* Adapt version labels only supported for git and registry
*/
type: "git" | "local" | "remote" | "registry";
}
export interface AdaptStarterOptions {
adaptVersion: SemVer;
args: string[];
destDir: string;
spec: string;
}
export declare function createStarter(opts: AdaptStarterOptions): AdaptStarter;
export declare function updateVersions(config: StarterConfig, log: LogString, dest: string, ver: SemVer): Promise<void>;
export declare function tryVersions(orig: SemVer): string[];
export declare function badPackageType(pkgType: never): never;
export declare function trySpecs(specBase: string, adaptVersion: SemVer): SpecInfo[];
export {};
//# sourceMappingURL=new.d.ts.map