import type { SourceLocation, SubTyped } from '@traqula/core'; import { AstFactory as Sparql11Factory } from '@traqula/rules-sparql-1-1'; import type * as T11 from '@traqula/rules-sparql-1-1'; import type { Annotation, ContextDefinitionVersion, TermBlank, TermIri, TermTriple, TermVariable, TripleCollectionReifiedTriple, TripleNesting } from './sparql12Types.js'; /** * A factory that helps you create, and check types for AST nodes for SPARQL 1.2 */ export declare class AstFactory extends Sparql11Factory { termTriple(subject: TermTriple['subject'], predicate: TermTriple['predicate'], object: TermTriple['object'], loc: SourceLocation): TermTriple; isTermTriple(obj: object): obj is SubTyped<'term', 'triple'>; tripleCollectionReifiedTriple(loc: SourceLocation, subject: TripleNesting['subject'], predicate: TripleNesting['predicate'], object: TripleNesting['object'], reifier?: TripleCollectionReifiedTriple['identifier']): TripleCollectionReifiedTriple; isTripleCollectionReifiedTriple(obj: object): obj is SubTyped<'tripleCollection', 'reifiedTriple'>; tripleCollectionBlankNodeProperties(identifier: TermBlank | TermVariable | TermIri, triples: TripleNesting[], loc: SourceLocation): T11.TripleCollectionBlankNodeProperties; /** * Overwritten triple constructor to always contain an empty annotations list */ triple: Sparql11Factory['triple']; annotatedTriple(subject: TripleNesting['subject'], predicate: TripleNesting['predicate'], object: TripleNesting['object'], annotations?: Annotation[], loc?: SourceLocation): TripleNesting; contextDefinitionVersion(version: string, loc: SourceLocation): ContextDefinitionVersion; isContextDefinitionVersion(obj: object): obj is SubTyped<'contextDef', 'version'>; }