import { DataModels, IManualTaskExtensionAdapter, Identity, Messages, Subscription } from '@5minds/processcube_engine_sdk';
import { FlowNodeInstanceService, NotificationService } from '../../../Api/Services';
import { IdentityService } from '../../Iam';
type ManualTaskList = DataModels.FlowNodeInstances.ManualTaskList;
export declare class ManualTaskExtensionAdapter implements IManualTaskExtensionAdapter {
    private readonly flowNodeInstanceService;
    private readonly identityService;
    private readonly logger;
    private readonly notificationService;
    constructor(flowNodeInstanceService: FlowNodeInstanceService, notificationService: NotificationService, identityService: IdentityService);
    query(query: DataModels.FlowNodeInstances.ManualTaskQuery, options?: {
        identity?: Identity;
        offset?: number;
        limit?: number;
        sortSettings?: DataModels.FlowNodeInstances.FlowNodeInstanceSortSettings;
        includeCount?: boolean;
    }): Promise<ManualTaskList>;
    finishManualTask(manualTaskInstanceId: string, identity?: Identity): Promise<void>;
    onManualTaskWaiting(callback: Messages.CallbackTypes.OnManualTaskWaitingCallback, options?: {
        subscribeOnce?: boolean;
        identity?: Identity;
    }): Promise<Subscription>;
    onManualTaskFinished(callback: Messages.CallbackTypes.OnManualTaskFinishedCallback, options?: {
        subscribeOnce?: boolean;
        identity?: Identity;
    }): Promise<Subscription>;
    removeSubscription(subscription: Subscription): void;
}
export {};
