UNPKG

changelog-guru

Version:
61 lines (60 loc) 1.88 kB
import { ICommit } from './Commit.js'; import Entity, { Compare, IEntity, Priority } from './Entity.js'; import { IMessage } from './Message.js'; export declare enum SectionPosition { None = 0, Subsection = 1, Details = 2, Group = 3, Footer = 4, Body = 5, Header = 6 } export declare enum SectionOrder { Default = 0, Max, Min } export interface ISection extends IEntity { readonly commits: ICommit[]; readonly isDetails: boolean; readonly isEmpty: boolean; readonly isGroup: boolean; readonly isSubsection: boolean; readonly messages: IMessage[]; order: number; position: SectionPosition; readonly sections: ISection[]; readonly title: string; add(entity: ICommit | ISection | IMessage): void; assign(relations: Map<string, ISection>, type?: SectionPosition.Subsection): void; remove(entity: ICommit | ISection | IMessage): void; } export interface ISectionOptions { emoji?: string; name: string; order?: number; position?: SectionPosition; } export default class Section extends Entity implements ISection { #private; constructor({ name, position, order, emoji }: ISectionOptions); static compare(a: ISection, b: ISection): Compare; get title(): string; get sections(): ISection[]; get commits(): ICommit[]; get messages(): IMessage[]; get priority(): Priority; get position(): SectionPosition; set position(position: SectionPosition); get order(): number; set order(order: number); get isSubsection(): boolean; get isDetails(): boolean; get isGroup(): boolean; get isEmpty(): boolean; add(entity: ICommit | ISection | IMessage): void; assign(relations: Map<string, ISection>, type?: SectionPosition.Subsection): void; remove(entity: ICommit | ISection | IMessage): void; private listOf; }