import { Operation } from './operation' ; import { Schema , SchemaHash } from './schema' ; import { Snapshot } from './snapshot' ; /**
 * An interface for all functionality which varies by content type.
 */ export interface ContentType { param schema returns validateSchema ( schema ) : Schema ; param schema registerSchema ( schema ) : void ; param hash returns hasSchema ( hash ) : boolean ; param snapshot param operation returns apply ( snapshot , operation ) : Snapshot ; }