import { ConfigService } from "@nestjs/config"; import { BaseConfigInterface } from "../../../config/interfaces"; import { JsonApiCursorInterface } from "../../../core/jsonapi/interfaces/jsonapi.cursor.interface"; import { Neo4jService } from "../../../core/neo4j/services/neo4j.service"; import { SecurityService } from "../../../core/security/services/security.service"; import { Content } from "../../content/entities/content"; import { ContentCypherService } from "../../content/services/content.cypher.service"; /** * Content is a virtual, multi-label aggregate (the labels come from * `baseConfig.contentTypes`) with no single Neo4j label of its own, so the * inherited AbstractRepository query builders — which assume one * `${labelName}` match — cannot express these reads. Every method below is * genuinely custom and delegates its Cypher fragments to ContentCypherService. * * ContentCypherService is also handed, as an instance, to * RelevancyService/RelevancyRepository by ContentController (duck-typed as * `cypherService: any`, calling `.userHasAccess()` / `.returnStatement()`) for * the `/contents/:id/relevance` endpoint. Do not delete it. */ export declare class ContentRepository { private readonly neo4j; private readonly contentCypherService; private readonly securityService; private readonly configService; constructor(neo4j: Neo4jService, contentCypherService: ContentCypherService, securityService: SecurityService, configService: ConfigService); private getContentTypes; find(params: { fetchAll?: boolean; term?: string; orderBy?: string; cursor?: JsonApiCursorInterface; }): Promise; findByIds(params: { contentIds: string[]; }): Promise; findByOwner(params: { ownerId: string; term?: string; orderBy?: string; fetchAll?: boolean; cursor?: JsonApiCursorInterface; }): Promise; } //# sourceMappingURL=content.repository.d.ts.map