Experimentalimport { createDataset } from "@honua/sdk-js/contract";
import { geoparquetResolver } from "@honua/sdk-js/geoparquet";
const geoparquet = geoparquetResolver();
const dataset = createDataset({
id: "overture",
client,
capabilityPolicy: "degraded",
resolveSource: geoparquet,
sources: [{
id: "places",
protocol: "geoparquet",
locator: { url: "https://example.com/overture/places.parquet" },
capabilities: PROTOCOL_DEFAULT_CAPABILITIES.geoparquet,
}],
});
const places = dataset.source("places")!;
const result = await places.query({ spatialFilter: envelope(-158.5, 21.2, -157.6, 21.7) });
// ...later:
await geoparquet.dispose();
Build a resolver for
createDataset({ resolveSource })that handlesprotocol: "geoparquet"descriptors, sharing one GeoparquetRuntime (one DuckDB worker) across every geoparquet source in the dataset — the NFR-001 "single shared worker per client" contract.