declare namespace Renovate { interface Cache { get(namespace: string, key: string): Promise; rm(namespace: string, key: string): Promise; rmAll(): Promise; set( namespace: string, key: string, value: T, ttlMinutes?: number ): Promise; } } declare interface Error { configFile?: string; statusCode?: number; validationError?: string; validationMessage?: string; } declare namespace NodeJS { interface Global { appMode?: boolean; gitAuthor?: { name: string; email: string }; renovateVersion: string; renovateCache: Renovate.Cache; repoCache: Record; trustLevel?: string; updateRubyGemsVersions?: Promise; } } declare let renovateCache: Renovate.Cache; // can't use `resolveJsonModule` because it will copy json files and change dist path declare module '*.json' { const value: { version: string } & Record; export = value; }