import { Observable } from 'rxjs'; import { PersistentWorkItemState } from './persistent-work-item-state'; import { PersistentWorkflowSnapshot } from './persistent-workflow-snapshot'; /** * Persistent workflow store class. */ export declare abstract class PersistentWorkflowStore { protected moduleName: string; protected name: string; /** * Initializes a new instance of the PersistentWorkflowStore abstract class. * @param moduleName the module name. * @param name the key name to index the same workflow. */ constructor(moduleName: string, name: string); /** * Save the checkpoint data of work item processing. * * @param version the version number. * @param workItemId the identification id of work item. * @param workItemState the state of work item. * @param workItemData the persistent data to store. * @param instanceId the instance id for indexing. */ abstract save(version: number, workItemId: number, workItemState: PersistentWorkItemState, workItemData: any, instanceId?: number): Observable; /** * Restore all checkpoint data of work items processing. */ abstract restore(): Observable; /** * Clear all or specified instance of checkpoint data of work item. * * @param instanceId the instance id. */ abstract clear(instanceId?: number): Observable; }