import { Service } from './Service';
import { PorjectSchema, IFileSchema, TemplateDescription } from './types';
import { IFile } from './models';
import { Engine } from './Engine';
export declare class StorageService extends Service {
    loadProject(engine: Engine, project?: PorjectSchema): Promise<PorjectSchema>;
    createFile(engine: Engine, file: IFile): Promise<boolean>;
    getFile(engine: Engine, id: string): Promise<IFileSchema>;
    updateFile(engine: Engine, file: IFile): Promise<boolean>;
    removeFile(engine: Engine, file: IFile): Promise<boolean>;
    updateProject(engine: Engine, project: PorjectSchema): Promise<PorjectSchema>;
    saveHistory(engine: Engine, file: IFile): Promise<boolean>;
    removeHistory(engine: Engine, file: IFile, id: string): Promise<boolean>;
    getFileHistories(engine: Engine, id: string): Promise<string[]>;
    getHistory(engine: Engine, fileId: string, id: string): Promise<IFileSchema>;
    removeTemplate(engine: Engine, name: string): Promise<boolean>;
    addTemplate(engine: Engine, template: TemplateDescription): Promise<boolean>;
    getTemplates(): Promise<TemplateDescription[]>;
}
