import { Entity, Model, Schema, IEntityDatum } from '@alephdata/followthemoney';
export interface IEntityManagerProps {
    model?: Model;
    createEntity?: (entityData: IEntityDatum) => Promise<Entity>;
    updateEntity?: (entity: Entity) => void;
    deleteEntity?: (entityId: string) => void;
    getEntitySuggestions?: (queryText: string, schema?: Schema) => Promise<Entity[]>;
}
export declare class EntityManager {
    readonly model: Model;
    private overload;
    constructor(props?: IEntityManagerProps);
    createEntity(entityData: any): Promise<Entity>;
    updateEntity(entity: Entity): void;
    deleteEntity(entityId: string): void;
    getEntitySuggestions(queryText: string, schema?: Schema): Promise<any>;
    applyEntityChanges(entityChanges: any, factor: number): void;
}
