import { ISerberPlugin } from '@berish/serber'; import { FileEntity } from '../../entity'; import { IRaw, RawTypeEnum } from '../abstract'; /** * Параметр, в котором мы указываем пустой массив на входе. * В него будут подгружены все FileEntity в момент десериализации. * Они будут пустые, но ссылочными. * Нужно, чтобы мы в одном месте смогли разом подгрузить всю информацию для них. * Если параметр не указан, но указан менеджер, при асинхронной десериализации каждый объект самостоятельно подгрузиться * (Подгрузка только name, data мы можем подгрузить только конкретно) */ export declare const SYMBOL_SERBER_CACHE_FILE_ENTITIES: unique symbol; export declare const SYMBOL_SERBER_FOR_LOAD_FILE_ENTITIES: unique symbol; export interface IFilePointer extends IRaw { /** Ссылка на оригинальный объект, имеет следующий вид '${id:string}' */ link: string; } export interface IFileEntityToFilePointerPluginOptions { [SYMBOL_SERBER_CACHE_FILE_ENTITIES]?: FileEntity[]; [SYMBOL_SERBER_FOR_LOAD_FILE_ENTITIES]?: FileEntity[]; } export declare const fileEntityToFileEntityPointerPlugin: ISerberPlugin;