import { EntityOperation, RelationshipOperation, BulkOperation } from './persister-incoming'; import { PersistedEntity } from './entity'; import { PersistedRelationship } from './relationship'; /** * Payload that is sent from the query service to the persister for * create/update/delete operations on entities/relationship */ export interface PersisterAPIPayload { correlationId: string; accountId: string; entityOperation?: EntityOperation; relationshipOperation?: RelationshipOperation; bulkOperation?: BulkOperation; } /** * Response data from the persister to the query service when performing an API * operation on an entity */ export interface EntityOperationResponse { entity: PersistedEntity; } /** * Response data from the persister to the query service when performing an API * operation on a relationship */ export interface RelationshipOperationResponse { relationship: PersistedRelationship; } /** * Response data from the persister to the query service when performing an API * deleteIntegrationOperation */ export interface DeleteIntegrationOperationResponse { integrationInstanceId: string; } export declare type EmptyOperationResponse = {}; /** * The `PersisterAPIResponse` describes the interface for the API response * after handling an entity or relationship operation. */ export declare type PersisterAPIResponse = EntityOperationResponse | RelationshipOperationResponse | DeleteIntegrationOperationResponse | EmptyOperationResponse;