/** Kitten Package. */ import Version from './Version.ts'; export type RemoteVersionDetails = { versionStamp: number; gitHash: string; apiVersion: number; nodeVersion: string; exactVersion: string; buildDate: Date; releaseDate: Date; _buildDate: string; _releaseDate: string; upload: import('../types/index.ts').Upload; }; /** Represents the currently-installed Kitten package. Provides information about and manages updates of the package by communicating with Kitten’s deployment site (https://kittens.small-web.org). _Note that this class does NOT manage automatic updates. For that, please see the AutomaticUpdates class._ */ export default class KittenPackage { static instance: KittenPackage; currentVersion: Version; apiVersion: number; limitByApiVersion: boolean; versionCheckUrl: string; latestVersion: RemoteVersionDetails | undefined; compatibleVersion: RemoteVersionDetails | undefined; latestRecommendedVersion: RemoteVersionDetails | undefined; static getInstance(): KittenPackage; constructor(); get hasCompatibleVersion(): boolean; get isLatestReleaseVersion(): boolean; get isMoreRecentThanReleaseVersion(): boolean; get canBeUpgraded(): boolean; /** Upgrades the Kitten package to the latest recommended version. Note that if you’re running a development version, this will actually result in a downgrade to the latest available published package. Make sure your interface detects this state and prompts before downgrading. @throws */ upgrade(apiVersion?: number): void; /** Fetches the latest version information from kittens.small-web.org. */ update(): Promise; }