GitHubProvider.d.ts 1.3 KB

12345678910111213141516171819202122232425
  1. /// <reference types="node" />
  2. import { GithubOptions, HttpExecutor, ReleaseNoteInfo, UpdateInfo, XElement } from "builder-util-runtime";
  3. import * as semver from "semver";
  4. import { URL } from "url";
  5. import { AppUpdater } from "../AppUpdater";
  6. import { Provider, ResolvedUpdateFileInfo } from "../main";
  7. export declare abstract class BaseGitHubProvider<T extends UpdateInfo> extends Provider<T> {
  8. protected readonly options: GithubOptions;
  9. protected readonly baseUrl: URL;
  10. protected readonly baseApiUrl: URL;
  11. protected constructor(options: GithubOptions, defaultHost: string, executor: HttpExecutor<any>);
  12. protected computeGithubBasePath(result: string): string;
  13. }
  14. export declare class GitHubProvider extends BaseGitHubProvider<UpdateInfo> {
  15. protected readonly options: GithubOptions;
  16. private readonly updater;
  17. constructor(options: GithubOptions, updater: AppUpdater, executor: HttpExecutor<any>);
  18. getLatestVersion(): Promise<UpdateInfo>;
  19. private getLatestVersionString;
  20. private readonly basePath;
  21. resolveFiles(updateInfo: UpdateInfo): Array<ResolvedUpdateFileInfo>;
  22. private getBaseDownloadPath;
  23. }
  24. export declare function computeReleaseNotes(currentVersion: semver.SemVer, isFullChangelog: boolean, feed: XElement, latestRelease: any): string | ReleaseNoteInfo[];