Interface GeoparquetSourceHandleExperimental

Typed escape hatch returned by Source.protocol("geoparquet"). Exposes the DuckDB describe() metadata (REQ-003) and a raw-SQL run for advanced use.

interface GeoparquetSourceHandle {
    runtime: GeoparquetRuntime;
    sources: readonly string[];
    describe(signal?: AbortSignal): Promise<GeoparquetDescription>;
    executeResolvedQuery<T>(input: GeoparquetResolvedQueryInput<T>): Promise<Result<T>>;
    queryColumnar<T>(input: GeoparquetColumnarQueryInput<T>): Promise<GeoparquetColumnarQueryResult>;
    sql(query: string): Promise<DuckRow[]>;
}

Properties

sources: readonly string[]

Methods

  • Experimental

    Execute a query and return a ColumnarBatchV1 instead of feature objects.

    This is the executable producer behind the query planner's representation: "columnar" selection: the geometry column is encoded straight into GeoArrow buffers, so no per-row feature object is materialized on the way out. The identity must come from the accepted plan (columnarBatchIdentityFromPlan), which is what makes the batch admissible to the persistent batch cache without a hand-written identity.

    Refuses with HonuaCapabilityNotSupportedError — never a silent object fallback — when the source's declared geometry encoding is not a 1:1 geoarrow-* native encoding, when the query suppresses geometry, or when the query is an aggregate.

    Type Parameters

    • T = Record<string, unknown>

    Returns Promise<GeoparquetColumnarQueryResult>