NsisVersionInfo.d.ts 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. export interface IInstaller {
  2. arch: string;
  3. path: string;
  4. hash: string;
  5. created: number;
  6. }
  7. export interface IUpdater {
  8. arch: string;
  9. fromVersion: string;
  10. path: string;
  11. hash: string;
  12. created: number;
  13. }
  14. export interface IVersion {
  15. version: string;
  16. changelog: string;
  17. source: string;
  18. installers: IInstaller[];
  19. updaters: IUpdater[];
  20. }
  21. export interface IVersionInfoData {
  22. latest: string;
  23. versions: IVersion[];
  24. }
  25. export declare class NsisVersionInfo {
  26. protected path: string;
  27. protected outputDir: string;
  28. protected data: IVersionInfoData;
  29. constructor(path: string);
  30. addVersion(version: string, changelog: string, source: string): Promise<void>;
  31. getVersions(): Promise<string[]>;
  32. getVersion(version: string): Promise<IVersion>;
  33. addInstaller(version: string, arch: string, path: string): Promise<void>;
  34. addUpdater(version: string, fromVersion: string, arch: string, path: string): Promise<void>;
  35. save(): Promise<void>;
  36. protected getData(): Promise<IVersionInfoData>;
  37. protected updateLatestVersion(): void;
  38. protected hashFile(type: string, path: string): Promise<string>;
  39. }