cnpmcore
Version:
23 lines (22 loc) • 1.48 kB
TypeScript
import { Task as TaskEntity, TaskUpdateCondition } from '../core/entity/Task';
import { AbstractRepository } from './AbstractRepository';
import { TaskType, TaskState } from '../../app/common/enum/Task';
export declare class TaskRepository extends AbstractRepository {
private readonly Task;
private readonly HistoryTask;
saveTask(task: TaskEntity): Promise<void>;
idempotentSaveTask(task: TaskEntity, condition: TaskUpdateCondition): Promise<boolean>;
saveTaskToHistory(task: TaskEntity): Promise<void>;
updateSpecificVersionsOfWaitingTask(task: TaskEntity, specificVersions?: Array<string>): Promise<void>;
findTask(taskId: string): Promise<TaskEntity<import("../core/entity/Task").TaskBaseData> | null>;
findTaskByBizId(bizId: string): Promise<TaskEntity<import("../core/entity/Task").TaskBaseData> | null>;
findTasks(taskIds: Array<string>): Promise<Array<TaskEntity>>;
findTasksByCondition(where: {
targetName?: string;
state?: TaskState;
type: TaskType;
}): Promise<Array<TaskEntity>>;
findTaskByTargetName(targetName: string, type: TaskType, state?: TaskState): Promise<TaskEntity<import("../core/entity/Task").TaskBaseData> | null>;
findTimeoutTasks(taskState: TaskState, timeout: number): Promise<TaskEntity<import("../core/entity/Task").TaskBaseData>[]>;
findTaskByAuthorIpAndType(authorIp: string, type: TaskType): Promise<TaskEntity<import("../core/entity/Task").TaskBaseData>[]>;
}