You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
603 B
22 lines
603 B
import type { ESLintSettings } from "./types"; |
|
|
|
export type CacheKey = unknown; |
|
export type CacheObject = { |
|
result: unknown; |
|
lastSeen: ReturnType<typeof process.hrtime>; |
|
}; |
|
|
|
declare class ModuleCache { |
|
map: Map<CacheKey, CacheObject>; |
|
|
|
constructor(map?: Map<CacheKey, CacheObject>); |
|
|
|
get<T>(cacheKey: CacheKey, settings: ESLintSettings): T | undefined; |
|
|
|
set<T>(cacheKey: CacheKey, result: T): T; |
|
|
|
static getSettings(settings: ESLintSettings): { lifetime: number } & Omit<ESLintSettings['import/cache'], 'lifetime'>; |
|
} |
|
export default ModuleCache; |
|
|
|
export type { ModuleCache }
|
|
|