import { ProjectSchema, BlockSchema, HistorySchema, HistoryItem, MaterialDescription } from '@vtj/core';
import { BaseService } from './base';
export declare class MemoryService extends BaseService {
    private projects;
    private materials;
    private files;
    private histories;
    private historyItems;
    init(project: ProjectSchema): Promise<ProjectSchema>;
    saveProject(project: ProjectSchema): Promise<boolean>;
    saveMaterials(project: ProjectSchema, materials: Map<string, MaterialDescription>): Promise<boolean>;
    saveFile(file: BlockSchema): Promise<boolean>;
    getFile(id: string): Promise<BlockSchema>;
    removeFile(id: string): Promise<boolean>;
    saveHistory(history: HistorySchema): Promise<boolean>;
    removeHistory(id: string): Promise<boolean>;
    getHistory(id: string): Promise<HistorySchema>;
    getHistoryItem(fId: string, id: string): Promise<HistoryItem>;
    saveHistoryItem(fId: string, item: HistoryItem): Promise<boolean>;
    removeHistoryItem(fId: string, ids: string[]): Promise<boolean>;
}
export declare function createMemoryService(): MemoryService;
