import type { RequestInfo, Response, Request } from './fetch'
|
|
export interface CacheStorage {
|
match (request: RequestInfo, options?: MultiCacheQueryOptions): Promise<Response | undefined>,
|
has (cacheName: string): Promise<boolean>,
|
open (cacheName: string): Promise<Cache>,
|
delete (cacheName: string): Promise<boolean>,
|
keys (): Promise<string[]>
|
}
|
|
declare const CacheStorage: {
|
prototype: CacheStorage
|
new(): CacheStorage
|
}
|
|
export interface Cache {
|
match (request: RequestInfo, options?: CacheQueryOptions): Promise<Response | undefined>,
|
matchAll (request?: RequestInfo, options?: CacheQueryOptions): Promise<readonly Response[]>,
|
add (request: RequestInfo): Promise<undefined>,
|
addAll (requests: RequestInfo[]): Promise<undefined>,
|
put (request: RequestInfo, response: Response): Promise<undefined>,
|
delete (request: RequestInfo, options?: CacheQueryOptions): Promise<boolean>,
|
keys (request?: RequestInfo, options?: CacheQueryOptions): Promise<readonly Request[]>
|
}
|
|
export interface CacheQueryOptions {
|
ignoreSearch?: boolean,
|
ignoreMethod?: boolean,
|
ignoreVary?: boolean
|
}
|
|
export interface MultiCacheQueryOptions extends CacheQueryOptions {
|
cacheName?: string
|
}
|
|
export declare const caches: CacheStorage
|