@neo4j/graphql
Version:
A GraphQL to Cypher query execution layer for Neo4j and JavaScript GraphQL implementations
35 lines • 1.98 kB
TypeScript
import type Cypher from "@neo4j/cypher-builder";
import type { AuthorizationAnnotation, AuthorizationOperation, ValidateWhen } from "../../../schema-model/annotation/AuthorizationAnnotation";
import type { AttributeAdapter } from "../../../schema-model/attribute/model-adapters/AttributeAdapter";
import type { ConcreteEntityAdapter } from "../../../schema-model/entity/model-adapters/ConcreteEntityAdapter";
import type { Neo4jGraphQLTranslationContext } from "../../../types/neo4j-graphql-translation-context";
import { AuthorizationFiltersDeprecated } from "../ast/filters/authorization-filters/AuthorizationFiltersDeprecated";
import type { AuthFilterFactory } from "./AuthFilterFactory";
type AuthParams = {
entity: ConcreteEntityAdapter;
operations: AuthorizationOperation[];
context: Neo4jGraphQLTranslationContext;
};
type AuthFilterParams = AuthParams & {
authAnnotation: AuthorizationAnnotation | undefined;
};
type AuthValidateParams = AuthParams & {
when: ValidateWhen;
conditionForEvaluation?: Cypher.Predicate;
authAnnotation: AuthorizationAnnotation | undefined;
};
/**
* @deprecated This class is deprecated and superseded by `AuthorizationFactory`, this is to due to kept compatibility with the old `AuthorizationFilters` class, still used by the legacy translation code.
**/
export declare class AuthorizationFactoryDeprecated {
private filterFactory;
constructor(filterFactory: AuthFilterFactory);
getAuthFilters({ attributes, ...params }: AuthParams & {
attributes?: AttributeAdapter[];
}): AuthorizationFiltersDeprecated[];
createAuthFilterRule({ authAnnotation, ...params }: AuthFilterParams): AuthorizationFiltersDeprecated | undefined;
createAuthValidateRule({ authAnnotation, when, conditionForEvaluation, ...params }: AuthValidateParams): AuthorizationFiltersDeprecated | undefined;
private createAuthRuleFilter;
}
export {};
//# sourceMappingURL=AuthorizationFactoryDeprecated.d.ts.map