@atomist/sdm-pack-changelog
Version:
Extension Pack for an Atomist SDM to manage changelogs
50 lines • 2.16 kB
TypeScript
import { GitProject, HandlerResult } from "@atomist/automation-client";
import { ClosedIssueWithChangelogLabel, PushWithChangelogLabel } from "../typings/types";
export declare const ChangelogTemplate = "# Changelog\n\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](http://keepachangelog.com/)\nand this project adheres to [Semantic Versioning](http://semver.org/).\n\n## [0.0.0]\n";
export interface ChangelogEntry {
category?: string;
title: string;
label: string;
url: string;
qualifiers: string[];
}
/**
* Add entry to changelog for closed label or pull request
* @param {ClosedIssueWithChangelogLabel.Issue} issue
* @param {string} token
* @returns {Promise<HandlerResult>}
*/
export declare function addChangelogEntryForClosedIssue(issue: ClosedIssueWithChangelogLabel.Issue, token: string): Promise<HandlerResult>;
/**
* Add entry to changelog for commits
* @param {PushWithChangelogLabel.Push} commit
* @param {string} token
* @returns {Promise<HandlerResult>}
*/
export declare function addChangelogEntryForCommit(push: PushWithChangelogLabel.Push, token: string): Promise<HandlerResult>;
/**
* Read and parse the project changelog. If the changelog has
* reference links, this function will rewrite the file with inline
* links. If the project does not have a changelog, one will be
* added.
*
* @param p project with changelog file, or not
* @return an object representing the parsed changelog
*/
export declare function readChangelog(p: GitProject): Promise<any>;
export declare function addEntryToChangelog(entry: ChangelogEntry, cl: any, p: GitProject): any;
/**
* Convert changelog object back to a string.
*
* @param changelog parsed changelog object
* @return markdown formatted changelog file contents
*/
export declare function changelogToString(changelog: any): string;
/**
* Write changelog back out to the CHANGELOG.md file
* @param changelog
* @param {GitProject} p
* @returns {Promise<void>}
*/
export declare function writeChangelog(changelog: any, p: GitProject): Promise<void>;
//# sourceMappingURL=changelog.d.ts.map