import type { SharedWorkflow, User } from '@n8n/db';
import { SharedWorkflowRepository, FolderRepository } from '@n8n/db';
import { type Scope } from '@n8n/permissions';
import type { EntityManager } from '@n8n/typeorm';
import { RoleService } from '../services/role.service';
export declare class WorkflowFinderService {
    private readonly sharedWorkflowRepository;
    private readonly folderRepository;
    private readonly roleService;
    constructor(sharedWorkflowRepository: SharedWorkflowRepository, folderRepository: FolderRepository, roleService: RoleService);
    findWorkflowForUser(workflowId: string, user: User, scopes: Scope[], options?: {
        includeTags?: boolean;
        includeParentFolder?: boolean;
        includeActiveVersion?: boolean;
        em?: EntityManager;
    }): Promise<import("@n8n/db").WorkflowEntity | null>;
    private findAllWhere;
    findWorkflowIdsWithScopeForUser(workflowIds: string[], user: User, scopes: Scope[]): Promise<Set<string>>;
    hasProjectScopeForUser(user: User, scopes: Scope[], projectId: string): Promise<boolean>;
    findProjectIdForFolder(folderId: string): Promise<string | null>;
    findAllWorkflowIdsForUser(user: User, scopes: Scope[], folderId?: string, projectId?: string): Promise<string[]>;
    findAllWorkflowsForUser(user: User, scopes: Scope[], folderId?: string, projectId?: string): Promise<{
        projectId: string;
        name: string;
        description: string | null;
        active: boolean;
        isArchived: boolean;
        nodes: import("n8n-workflow").INode[];
        connections: import("n8n-workflow").IConnections;
        settings?: import("n8n-workflow").IWorkflowSettings;
        staticData?: import("n8n-workflow").IDataObject;
        meta?: import("n8n-workflow").WorkflowFEMeta;
        tags?: import("@n8n/db").TagEntity[];
        tagMappings: import("@n8n/db").WorkflowTagMapping[];
        shared: SharedWorkflow[];
        pinData?: import("@n8n/db").ISimplifiedPinData;
        versionId: string;
        activeVersionId: string | null;
        activeVersion: import("@n8n/db").WorkflowHistory | null;
        versionCounter: number;
        triggerCount: number;
        parentFolder: import("@n8n/db").Folder | null;
        testRuns: import("@n8n/db").TestRun[];
        id: string;
        generateId(): void;
        createdAt: Date;
        updatedAt: Date;
        setUpdateDate(): void;
    }[]>;
}
