import { TypeDescriptor, FieldDescriptor, Item } from 'ozone-type'; import { TypeCache } from './typeCache'; import { TypeClient } from './typeClient'; export declare type TypeDescriptorCollection = Map>; export declare class TypeCacheImpl implements TypeCache { private _typeClient; private _cache; constructor(_typeClient: TypeClient, typeDescriptors: TypeDescriptor[]); getAllFields(identifier: string, withEmbeddedFields?: boolean): FieldDescriptor[]; static getEmbeddedType(fieldType: string): string | undefined; isTypeInstanceOf(identifier: string, instance: string): boolean; isType(data: Item, instance: string): data is T; asInstanceOf(data: Item, instance: string): T | null; get(identifier: string): TypeDescriptor | undefined; has(identifier: string): boolean; getAllCachedTypeIdentifiers(): string[]; refresh(): Promise; private updateCache; }