@eljs/release
Version:
Release npm package easily.
105 lines • 2.71 kB
TypeScript
import { type AppData, type Config } from "./types";
import { Pluggable, type ApplyEvent, type ApplyGet, type ApplyModify, type PluggablePluginApi } from '@eljs/pluggable';
import { type RequiredRecursive } from '@eljs/utils';
import type { ReleaseType } from 'semver';
import { parseVersion } from './utils';
/**
* Runner class
*/
export declare class Runner extends Pluggable<Config> {
/**
* 配置项
*/
config: RequiredRecursive<Config>;
/**
* 应用数据
*/
appData: AppData;
constructor(options?: Config);
run(releaseTypeOrVersion?: ReleaseType | string): Promise<void>;
/**
* 发布步骤打印
* @param message 信息
*/
step(message: string): void;
private _resolveConfig;
}
/**
* 运行器插件 Api
*/
export interface RunnerPluginApi extends PluggablePluginApi {
/**
* 应用配置项,可通过 `modifyConfig` 方法修改
*/
config: typeof Runner.prototype.config;
/**
* 应用数据,可通过 `modifyAppData` 方法修改
*/
appData: typeof Runner.prototype.appData;
/**
* 修改应用数据
*/
modifyConfig: ApplyModify<typeof Runner.prototype.config, null>;
/**
* 修改应用数据
*/
modifyAppData: ApplyModify<typeof Runner.prototype.appData, {
cwd: string;
}>;
/**
* 应用检查事件
*/
onCheck: ApplyEvent<{
releaseTypeOrVersion: ReleaseType | string;
}>;
/**
* 应用启动事件
*/
onStart: ApplyEvent<null>;
/**
* 获取需要升级的版本
*/
getIncrementVersion: ApplyGet<{
releaseTypeOrVersion: ReleaseType | string;
}, string>;
/**
* 写版本前事件
*/
onBeforeBumpVersion: ApplyEvent<ReturnType<typeof parseVersion>>;
/**
* 写版本事件
*/
onBumpVersion: ApplyEvent<ReturnType<typeof parseVersion>>;
/**
* 写版本前后事件
*/
onAfterBumpVersion: ApplyEvent<ReturnType<typeof parseVersion>>;
/**
* 获取更新日志
*/
getChangelog: ApplyGet<ReturnType<typeof parseVersion>, string>;
/**
* 发布前事件
*/
onBeforeRelease: ApplyEvent<ReturnType<typeof parseVersion> & {
changelog: string;
}>;
/**
* 发布事件
*/
onRelease: ApplyEvent<ReturnType<typeof parseVersion> & {
changelog: string;
}>;
/**
* 发布前后事件
*/
onAfterRelease: ApplyEvent<ReturnType<typeof parseVersion> & {
changelog: string;
}>;
/**
* 发布步骤打印
* @param message 信息
*/
step: (message: string) => void;
}
//# sourceMappingURL=runner.d.ts.map