@honua/sdk-js
    Preparing search index...

    Variable queryFilterConst

    queryFilter: Readonly<
        {
            after: (field: string, instant: string) => QueryFilterTemporalNode;
            and: (...args: readonly QueryFilterExpression[]) => QueryFilterBooleanNode;
            before: (field: string, instant: string) => QueryFilterTemporalNode;
            between: (
                field: string,
                lower: QueryFilterScalar,
                upper: QueryFilterScalar,
            ) => QueryFilterRangeNode;
            during: (
                field: string,
                start: string,
                end: string,
            ) => QueryFilterTemporalNode;
            eq: (field: string, value: QueryFilterScalar) => QueryFilterComparisonNode;
            gt: (field: string, value: QueryFilterScalar) => QueryFilterComparisonNode;
            gte: (
                field: string,
                value: QueryFilterScalar,
            ) => QueryFilterComparisonNode;
            isIn: (
                field: string,
                values: readonly QueryFilterScalar[],
            ) => QueryFilterListNode;
            isNotNull: (field: string) => QueryFilterNullNode;
            isNull: (field: string) => QueryFilterNullNode;
            like: (
                field: string,
                pattern: string,
                options?: { caseSensitive?: boolean },
            ) => QueryFilterPatternNode;
            lt: (field: string, value: QueryFilterScalar) => QueryFilterComparisonNode;
            lte: (
                field: string,
                value: QueryFilterScalar,
            ) => QueryFilterComparisonNode;
            ne: (field: string, value: QueryFilterScalar) => QueryFilterComparisonNode;
            not: (arg: QueryFilterExpression) => QueryFilterNotNode;
            or: (...args: readonly QueryFilterExpression[]) => QueryFilterBooleanNode;
            spatial: (
                operator: QueryFilterSpatialPredicate,
                geometry: QueryFilterGeometryOperand,
                options?: { property?: string },
            ) => QueryFilterSpatialNode;
            timeIntersects: (
                field: string,
                start: string,
                end: string,
            ) => QueryFilterTemporalNode;
        },
    > = ...

    Ergonomic constructors for QueryFilterExpression. Every helper returns plain data, so a filter can equally be written as an object literal, stored as JSON, or produced by the experimental semantic builder.

    import { envelope, queryFilter } from "@honua/sdk-js";

    const filter = queryFilter.and(
    queryFilter.eq("STATUS", "open"),
    queryFilter.gt("SEVERITY", 3),
    queryFilter.spatial("intersects", envelope(-158.5, 21.2, -157.6, 21.7)),
    );