import { ClsService } from "nestjs-cls"; import { AbstractRepository } from "../../../core/neo4j/abstracts/abstract.repository"; import { Neo4jService } from "../../../core/neo4j/services/neo4j.service"; import { SecurityService } from "../../../core/security/services/security.service"; import { Feature, FeatureDescriptor } from "../entities/feature"; export declare class FeatureRepository extends AbstractRepository { protected readonly descriptor: import("../../..").EntityDescriptor; constructor(neo4j: Neo4jService, securityService: SecurityService, clsService: ClsService); /** * Companies opt into features via a (Company)-[:HAS_FEATURE]->(Feature) edge that * is NOT modelled as a descriptor relationship (Feature.isCompanyScoped is false — * it is a global entity many companies point to, not something a Feature "belongs" * to). The explicit Company MATCH is the intended cross-tenant opt-in for a global * entity, not a bypass of buildDefaultMatch(). Keep the name and signature stable — * external consumers depend on them. */ findByCompany(params: { companyId: string; }): Promise; /** * Case-insensitive exact-name lookup — not the fulltext CONTAINS search the * inherited find({ term }) performs. Feature is a global entity, so the bare * label MATCH is correct here. Keep the name and signature stable — external * consumers depend on them. */ findByName(params: { name: string; }): Promise; } //# sourceMappingURL=feature.repository.d.ts.map