import 'graphile-build'; import 'graphile-build-pg'; import type { GraphileConfig } from 'graphile-config'; import '../types'; /** * PostgisAggregatePlugin * * Registers PostGIS aggregate functions as GraphQL aggregate fields. * * Supported aggregates: * - `stExtent`: ST_Extent — bounding box of all geometries (returns GeoJSON Polygon) * - `stUnion`: ST_Union — union/merge of all geometries (returns GeoJSON) * - `stCollect`: ST_Collect — collect into GeometryCollection (returns GeoJSON) * - `stConvexHull`: ST_ConvexHull(ST_Collect) — convex hull of all geometries (returns GeoJSON Polygon) * * These are added as fields on aggregate types (e.g. RestaurantsAggregates) * for geometry/geography columns. They use SQL-level aggregation. * * Integration: The plugin hooks into PostGraphile's aggregate type system * via the GraphQLObjectType_fields hook, detecting aggregate scope and * adding PostGIS-specific aggregate fields. */ export declare const PostgisAggregatePlugin: GraphileConfig.Plugin;