n8n
Version:
n8n Workflow Automation Tool
45 lines (44 loc) • 3.72 kB
TypeScript
import type { CreateWorkflowReviewRequestDto, GetWorkflowReviewEligibleReviewersQueryDto, ListWorkflowReviewRequestsQueryDto, UpdateWorkflowReviewRequestVersionDto, WorkflowReviewEligibleReviewersList, WorkflowReviewRequestList, WorkflowReviewRequestSummary, ListWorkflowReviewInboxQueryDto, ListWorkflowReviewInboxResponse, GetWorkflowReviewInboxSummaryResponse } from '@n8n/api-types';
import { LicenseState, Logger } from '@n8n/backend-common';
import { DbLockService, SharedWorkflowRepository, UserRepository, WorkflowReviewRequestAuthorRepository, WorkflowReviewRequestRepository, WorkflowReviewRequestReviewerRepository, WorkflowReviewRequestWorkflowRepository, type User } from '@n8n/db';
import { CollaborationService } from '../../collaboration/collaboration.service';
import { ProjectService } from '../../services/project.service.ee';
import { RoleService } from '../../services/role.service';
import { WorkflowReviewPolicyService } from '../../services/workflow-review-policy.service';
import { WorkflowFinderService } from '../../workflows/workflow-finder.service';
import { WorkflowHistoryService } from '../../workflows/workflow-history/workflow-history.service';
export declare class WorkflowReviewRequestService {
private readonly logger;
private readonly workflowReviewPolicyService;
private readonly workflowFinderService;
private readonly workflowHistoryService;
private readonly sharedWorkflowRepository;
private readonly workflowReviewRequestRepository;
private readonly workflowReviewRequestWorkflowRepository;
private readonly workflowReviewRequestAuthorRepository;
private readonly workflowReviewRequestReviewerRepository;
private readonly userRepository;
private readonly roleService;
private readonly projectService;
private readonly licenseState;
private readonly dbLockService;
private readonly collaborationService;
constructor(logger: Logger, workflowReviewPolicyService: WorkflowReviewPolicyService, workflowFinderService: WorkflowFinderService, workflowHistoryService: WorkflowHistoryService, sharedWorkflowRepository: SharedWorkflowRepository, workflowReviewRequestRepository: WorkflowReviewRequestRepository, workflowReviewRequestWorkflowRepository: WorkflowReviewRequestWorkflowRepository, workflowReviewRequestAuthorRepository: WorkflowReviewRequestAuthorRepository, workflowReviewRequestReviewerRepository: WorkflowReviewRequestReviewerRepository, userRepository: UserRepository, roleService: RoleService, projectService: ProjectService, licenseState: LicenseState, dbLockService: DbLockService, collaborationService: CollaborationService);
private findEligibleReviewers;
list(user: User, query: ListWorkflowReviewRequestsQueryDto): Promise<WorkflowReviewRequestList>;
getEligibleReviewers(user: User, query: GetWorkflowReviewEligibleReviewersQueryDto): Promise<WorkflowReviewEligibleReviewersList>;
private toEligibleReviewer;
create(user: User, dto: CreateWorkflowReviewRequestDto): Promise<WorkflowReviewRequestSummary>;
updateVersion(user: User, workflowReviewRequestId: string, dto: UpdateWorkflowReviewRequestVersionDto): Promise<WorkflowReviewRequestSummary>;
private broadcastReviewStateChanged;
private assertRequestUpdatable;
private toSummary;
listForInbox(user: User, query: ListWorkflowReviewInboxQueryDto): Promise<ListWorkflowReviewInboxResponse>;
private hydrateParticipants;
getInboxSummaryForUser(user: User): Promise<GetWorkflowReviewInboxSummaryResponse>;
private assertFeatureAvailable;
resolveAccessibleProjectIds(user: User): Promise<string[] | null>;
private encodeInboxCursor;
private decodeInboxCursor;
private toInboxItem;
}