import { ProcessDefinition, ProcessDefinitionList } from '@5minds/processcube_engine_sdk'; import { InternalIdentity as Identity } from '../../Contracts/index'; import { CoreAccessService } from '../../Core/index'; import { ProxyConfiguration } from '../../Setups/EngineRouter'; import { ProcessInstanceDatabaseAdapter } from '../../Tools/DatabaseAdaptersSequelize/index'; import { IamService, IdentityService } from '../../Tools/Iam/index'; import { ProcessDefinitionMediator } from '../../Tools/ProcessDefinitionMediator'; import { NotificationService } from './NotificationService'; export declare class ProcessDefinitionApiService { private readonly coreAccessService; private readonly iamService; private readonly identityService; private readonly logger; private readonly notificationService; private readonly processDefinitionMediator; private readonly processInstanceDatabaseAdapter; private internalIdentity; private readonly config; constructor(coreAccessService: CoreAccessService, iamService: IamService, identityService: IdentityService, notificationService: NotificationService, processDefinitionMediator: ProcessDefinitionMediator, processInstanceDatabaseAdapter: ProcessInstanceDatabaseAdapter); initialize(): void; getAll(identity: Identity, offset?: number, limit?: number): Promise; getById(identity: Identity, processDefinitionId: string): Promise; getByProcessModelId(identity: Identity, processModelId: string): Promise; persistProcessDefinitions(identity: Identity, xml: string | Array, overwriteExisting?: boolean): Promise; deleteById(identity: Identity, processDefinitionId: string, deleteAllRelatedData: boolean): Promise; private stopRunningProcessInstancesForProcessDefinition; private ensureProcessDefinitionIsNotInUse; private terminateProcessInstance; private ensureHasClaim; } export interface ProcessDefinitionApiServiceProxy { getAll(identity: Identity, offset?: number, limit?: number): Promise; getById(identity: Identity, processDefinitionId: string): Promise; getByProcessModelId(identity: Identity, processModelId: string): Promise; persistProcessDefinitions(identity: Identity, xml: string | Array, overwriteExisting?: boolean): Promise; deleteById(identity: Identity, processDefinitionId: string, deleteAllRelatedData: boolean): Promise; } export declare const ProcessDefinitionApiServiceProxyConfiguration: ProxyConfiguration;