import { Operation } from './operation' ; import { Schema } from './schema' ; import { Snapshot } from './snapshot' ; /**
 * The interface for storing document content and schemas.
 */ export interface ContentStore { param schema storeSchema ( schema ) : Promise < void > ; param hash returns loadSchema ( hash ) : Promise < Schema | null > ; param operation storeOperation ( operation ) : Promise < void > ; param type param id param versionStart param versionEnd returns loadOperations ( type , id , versionStart , versionEnd ) : Promise < Operation [ ] > ; param snapshot storeSnapshot ( snapshot ) : Promise < void > ; param type param id param version returns loadSnapshot ( type , id , version ) : Promise < Snapshot > ; }