graphql-to-sparql
Version:
Converts GraphQL queries to SPARQL queries
29 lines (28 loc) • 1.47 kB
TypeScript
import { Algebra } from '@traqula/algebra-transformations-1-2';
import type { DocumentNode } from 'graphql';
import type { DefinitionNode } from 'graphql/language';
import type { IConvertContext } from '../IConvertContext';
import type { IConvertSettings } from '../IConvertSettings';
import type { Util } from '../Util';
import type { INodeQuadContext } from './NodeHandlerAdapter';
import { NodeHandlerAdapter } from './NodeHandlerAdapter';
/**
* Converts GraphQL documents to joined operations for all its definitions.
*/
export declare class NodeHandlerDocument extends NodeHandlerAdapter<DocumentNode> {
constructor(util: Util, settings: IConvertSettings);
handle(document: DocumentNode, convertContext: IConvertContext): Algebra.Operation;
/**
* Get the quad context of a definition node that should be used for the whole definition node.
* @param {DefinitionNode} definition A definition node.
* @param {IConvertContext} convertContext A convert context.
* @return {INodeQuadContext} The subject and optional auxiliary patterns.
*/
getNodeQuadContextDefinitionNode(definition: DefinitionNode, convertContext: IConvertContext): INodeQuadContext;
/**
* Translates blank nodes inside the query to variables.
* @param {Project} operation The operation to translate.
* @return {Operation} The transformed operation.
*/
translateBlankNodesToVariables(operation: Algebra.Project): Algebra.Operation;
}