import type { NullableCacheDataGeneratorSync, CacheDataGeneratorSync, CacheDirection } from './types'; import { CacheBranch } from './base/CacheBranch'; import { CacheDataSync } from './CacheDataSync'; export declare class CacheBranchSync = Record> extends CacheBranch { protected readonly data: CacheDataSync; protected readonly branches: Map>; protected readonly root: CacheBranchSync; constructor(generator?: NullableCacheDataGeneratorSync, root?: CacheBranchSync); protected ensureBranch(key: K, generator: NullableCacheDataGeneratorSync): CacheBranchSync; protected getBranch(key: K): CacheBranchSync | undefined; cache(key: keyof T, recursive?: CacheDirection): this; ensure(key: K, generator: CacheDataGeneratorSync): CacheDataSync; get(key: K): CacheDataSync | undefined; set(key: K, generator: CacheDataGeneratorSync): this; delete(key: keyof T): this; }