import { AnyProperty } from "./properties"; import { EntitySchema } from "./entities"; import { EntityCollection } from "./collections"; /** * Use to resolve the schema properties for specific path, entity id or values. * @category Models */ export declare type PartialProperties = Record>; /** * Use to resolve the schema properties for specific path, entity id or values. * @category Models */ export declare type PartialEntitySchema = Omit>, "properties"> & { properties: PartialProperties; }; /** * Use to resolve the schema properties for specific path, entity id or values. * @category Models */ export declare type PartialEntityCollection = Omit>, "schema"> & { schema?: PartialEntitySchema; }; /** * This interface is in charge of defining the controller that persists * modifications to a collection or schema, and retrieves them back from * a data source, such as local storage or Firestore. */ export interface ConfigurationPersistence { onCollectionModified: (path: string, partialCollection: PartialEntityCollection) => void; getCollectionConfig: (path: string) => PartialEntityCollection; }