import { RdfQuadIndex } from './RdfQuadIndex'; import { Rdf3xIndex } from './Rdf3xIndex'; import type { RdfQuery, RdfQueryResult, RdfQueryVariable, RdfTextIndexSyncLike, RdfVectorIndexSyncLike } from './types'; export declare class RdfQueryExecutor { private readonly index; private readonly textIndex?; private readonly vectorIndex?; private readonly rdf3xPrimaryIndex?; constructor(index: RdfQuadIndex, textIndex?: RdfTextIndexSyncLike | undefined, vectorIndex?: RdfVectorIndexSyncLike | undefined, rdf3xPrimaryIndex?: Rdf3xIndex | undefined); query(query: RdfQuery): RdfQueryResult; private chooseRequiredSourceIndex; private estimatePatternRows; private estimatePatternRowsByDistinctFanout; private boundPatternSlots; private estimateSource; private estimateUnboundSearchSource; private estimateTuplePatternRows; private searchSourceHasBoundVariables; private estimateSearchRowsByBoundSource; private estimateTextSearchRows; private estimateVectorSearchRows; private boundVariables; private patternRank; private sourceRank; private joinRequiredSource; private joinOptionalGroup; private joinUnionGroup; private applyDependentValues; private applyMinusGroup; private applyExistsGroup; private joinPatternGroupRdf3x; private compileJoinPatternForBinding; private joinPattern; private scanCompiledPattern; private canUseRdf3xPrimaryScan; private requiredBgpPushdown; private requiredBgpValuesPushdown; private requiredBgpDistinctProject; private canPushRequiredBgpFilters; private canPushRequiredBgpOrder; private reorderJoinPatterns; private compileJoinPattern; private canUseRdf3xPrimaryJoin; private tupleValuesForBinding; private joinTextSearch; private joinVectorSearch; private joinTextSearchByBoundSource; private joinVectorSearchByBoundSource; private canUseBoundSourceSearch; private textSearchResults; private vectorSearchResults; private textSearchOptions; private vectorSearchOptions; private applyBinds; private evaluateBindExpression; private evaluateBindNumber; private singleScanPushdown; private countPushdown; private joinCountPushdown; private joinBasicAggregatePushdown; private canPushAggregateFilters; private hasNumericAggregateGuards; private groupAggregatePushdown; private groupAggregateHavingPushdown; private distinctCountKeys; private scanOrderForPattern; private canPushAllFiltersForPattern; private requiredFiltersNeedingPostApply; private canElideRequiredPatternFilterRechecks; private compilePattern; private bindQuad; private countBindings; private aggregateBindings; private groupAggregateBindings; private aggregateLiteral; private numericAggregateValues; private compilePushdownFilter; private compilePushdownFilterWithIndexes; private matchesNewlyBoundFilters; private matchesFilters; private matchesFilter; private compareVariableFilter; } export declare function variable(variableName: string): RdfQueryVariable;