import type { OASDocument } from 'oas/dist/rmoas.types'; import 'isomorphic-fetch'; import Fetcher from './fetcher'; type CacheStore = Record; export default class Cache { static dir: string; static cacheStore: string; static specsCache: string; uri: string | OASDocument; uriHash: string; cached: false | CacheStore; fetcher: Fetcher; constructor(uri: string | OASDocument, cacheDir?: string | false); static getCacheHash(file: string | OASDocument): string; static setCacheDir(dir?: string | false): void; static reset(): Promise; isCached(): boolean; getCache(): CacheStore; get(): any; load(): Promise | (Omit, "paths" | "components">, "paths" | "components" | "info" | "servers" | "webhooks" | "jsonSchemaDialect"> & { info: import("openapi-types").OpenAPIV3_1.InfoObject; jsonSchemaDialect?: string; servers?: import("openapi-types").OpenAPIV3_1.ServerObject[]; } & Pick<{ paths: import("openapi-types").OpenAPIV3_1.PathsObject<{}, {}>; webhooks: Record>; components: import("openapi-types").OpenAPIV3_1.ComponentsObject; }, "paths"> & Omit; webhooks: Record>; components: import("openapi-types").OpenAPIV3_1.ComponentsObject; }>, "paths">) | (Omit, "paths" | "components">, "paths" | "components" | "info" | "servers" | "webhooks" | "jsonSchemaDialect"> & { info: import("openapi-types").OpenAPIV3_1.InfoObject; jsonSchemaDialect?: string; servers?: import("openapi-types").OpenAPIV3_1.ServerObject[]; } & Pick<{ paths: import("openapi-types").OpenAPIV3_1.PathsObject<{}, {}>; webhooks: Record>; components: import("openapi-types").OpenAPIV3_1.ComponentsObject; }, "webhooks"> & Omit; webhooks: Record>; components: import("openapi-types").OpenAPIV3_1.ComponentsObject; }>, "webhooks">) | (Omit, "paths" | "components">, "paths" | "components" | "info" | "servers" | "webhooks" | "jsonSchemaDialect"> & { info: import("openapi-types").OpenAPIV3_1.InfoObject; jsonSchemaDialect?: string; servers?: import("openapi-types").OpenAPIV3_1.ServerObject[]; } & Pick<{ paths: import("openapi-types").OpenAPIV3_1.PathsObject<{}, {}>; webhooks: Record>; components: import("openapi-types").OpenAPIV3_1.ComponentsObject; }, "components"> & Omit; webhooks: Record>; components: import("openapi-types").OpenAPIV3_1.ComponentsObject; }>, "components">) | import("openapi-types").OpenAPIV2.Document<{}>>; save(spec: OASDocument): OASDocument; } export {};