import * as npmUtil from "@pagedip/util-npm"; export declare namespace Release { type Type = "skip" | "patch" | "minor" | "major"; type Access = "public" | "restricted"; } export declare class Release { filePath: string; _type?: Release.Type; _reason?: string; breaking: string[]; features: string[]; fixes: string[]; chores: string[]; version?: string; prerelease?: boolean | string; gitRef?: string; distTag?: string; access?: Release.Access; static types: Release.Type[]; static isType(t: any): t is Release.Type; static getMaxType(...types: Array): "major" | "minor" | "patch" | "skip" | undefined; static access: Release.Access[]; static isAccess(a: any): a is Release.Access; static getConfigPath(dir?: string): string; static findFiles(dir?: string): Promise; static load(dir?: string): Promise; static merge(...releases: Release[]): Release; constructor(filePath?: string, props?: Record); static isRelease(r: any): r is Release; get __autorelease_release__(): boolean; _changesLevel(): 1 | 0 | 2 | 3; _explicitLevel(): number; hasDeclaredChanges(): boolean; hasExplicitType(): boolean; get type(): Release.Type; set type(t: Release.Type); get reason(): string; set reason(r: string); reset(): Release; toYaml(): string; write(options?: { basedir?: string; dryrun?: boolean; debug?: (msg: string) => any; }): Promise; } export interface VersionChange { type: Release.Type; anchor?: string; pivot?: string; next?: string; prerelease?: string; } export declare function resolveVersionChange({ info, previous, type, prerelease, }: { type: Release.Type; previous?: string; info?: npmUtil.PackageInfo; prerelease?: boolean | string; }): VersionChange;