Interface SemanticQueryBuilder<TRecord, TProtocol, TSpatiality>Experimental

interface SemanticQueryBuilder<TRecord, TProtocol, TSpatiality> {
    aggregate<const TGroupBy, const TMetrics>(query: Omit<SemanticAggregateQuery<TRecord, TProtocol, TSpatiality, TGroupBy, TMetrics>, "kind">): SemanticAggregateQuery<TRecord, TProtocol, TSpatiality, TGroupBy, TMetrics>;
    and(...args: readonly [SemanticFilter<TRecord, TSpatiality>, SemanticFilter<TRecord, TSpatiality>]): SemanticFilter<TRecord, TSpatiality>;
    between<TKey>(operand: PropertyNode<TKey>, lower: QueryLiteral<TRecord[TKey]> | LiteralNode<QueryLiteral<TRecord[TKey]>>, upper: QueryLiteral<TRecord[TKey]> | LiteralNode<QueryLiteral<TRecord[TKey]>>): RangeNode<TRecord>;
    comparison<TKey>(operator: EqualityOperator, left: PropertyNode<TKey>, right: QueryLiteral<TRecord[TKey]> | LiteralNode<QueryLiteral<TRecord[TKey]>>): ComparisonNode<TRecord>;
    comparison<TKey>(operator: OrderedComparisonOperator, left: PropertyNode<TKey>, right: QueryLiteral<TRecord[TKey]> | LiteralNode<QueryLiteral<TRecord[TKey]>>): ComparisonNode<TRecord>;
    features<const TSelect, const TGeometry>(query?: Omit<SemanticFeatureQuery<TRecord, TProtocol, TSpatiality, TSelect, TGeometry>, "kind">): SemanticFeatureQuery<TRecord, TProtocol, TSpatiality, TSelect, TGeometry>;
    inList<TKey>(operand: PropertyNode<TKey>, values: readonly [QueryLiteral<TRecord[TKey]> | LiteralNode<QueryLiteral<TRecord[TKey]>>, QueryLiteral<TRecord[TKey]> | LiteralNode<QueryLiteral<TRecord[TKey]>>]): SemanticFilter<TRecord, TSpatiality>;
    isNull<TKey>(operand: PropertyNode<TKey>, operator?: "is-null" | "is-not-null"): NullNode<TKey>;
    like<TKey>(operand: PropertyNode<TKey>, pattern: string, options?: {
        caseSensitive?: boolean;
    }): PatternNode<TKey>;
    literal<const TValue>(value: TValue): LiteralNode<TValue>;
    native<TDialect>(dialect: TDialect, payload: NativePayloadFor<TDialect>): NativeFilter<TDialect>;
    not(arg: SemanticFilter<TRecord, TSpatiality>): SemanticFilter<TRecord, TSpatiality>;
    or(...args: readonly [SemanticFilter<TRecord, TSpatiality>, SemanticFilter<TRecord, TSpatiality>]): SemanticFilter<TRecord, TSpatiality>;
    property<TKey>(name: TKey): PropertyNode<TKey>;
    temporal<TKey>(operator: TemporalPredicate, operand: PropertyNode<TKey>, value: TemporalLiteralNode): TemporalNode<TRecord>;
}

Type Parameters

Methods