n8n
Version:
n8n Workflow Automation Tool
27 lines (26 loc) • 1.76 kB
TypeScript
import { FolderRepository, ProjectRepository, SharedWorkflowRepository, WorkflowRepository, type User } from '@n8n/db';
import { UserFavoriteRepository } from './database/repositories/user-favorite.repository';
import { DataTableRepository } from '../../modules/data-table/data-table.repository';
import type { FavoriteResourceType } from '@n8n/api-types';
export declare class FavoritesService {
private readonly userFavoriteRepository;
private readonly workflowRepository;
private readonly projectRepository;
private readonly sharedWorkflowRepository;
private readonly dataTableRepository;
private readonly folderRepository;
private readonly MAX_FAVORITES;
constructor(userFavoriteRepository: UserFavoriteRepository, workflowRepository: WorkflowRepository, projectRepository: ProjectRepository, sharedWorkflowRepository: SharedWorkflowRepository, dataTableRepository: DataTableRepository, folderRepository: FolderRepository);
getEnrichedFavorites(user: User): Promise<(import("./database/entities/user-favorite.entity").UserFavorite & {
resourceName: string;
})[]>;
private enrichWorkflowFavorites;
private enrichProjectFavorites;
private enrichDataTableFavorites;
private enrichFolderFavorites;
addFavorite(userId: string, resourceId: string, resourceType: FavoriteResourceType): Promise<import("./database/entities/user-favorite.entity").UserFavorite>;
private assertResourceExists;
removeFavorite(userId: string, resourceId: string, resourceType: FavoriteResourceType): Promise<void>;
deleteByResource(resourceId: string, resourceType: FavoriteResourceType): Promise<void>;
deleteByResourceIds(resourceIds: string[], resourceType: FavoriteResourceType): Promise<void>;
}