import type { Feature } from "../../data/Feature.js";
import type { FeatureSource } from "../../data/FeatureSource.js";
import type { CountResult } from "../CountResult.js";
import type { QueryOptions } from "./QueryOptions.js";
import { QueryProviderBase } from "./QueryProviderBase.js";
/**
 * A query provider for GeoJSON layers.
 */
export declare class GeoJSONLayerClientSideQueryProvider extends QueryProviderBase {
    /**
     * @inheritDoc
     */
    isSupported(source: FeatureSource): boolean;
    /**
     * Currently will only query visible points on the map, as we don't have
     * access to all the graphics on a 2D map.
     *
     * @param source @inheritDoc.
     * @param where @inheritDoc.
     * @param options @inheritDoc.
     */
    protected _query(source: FeatureSource, where: string, options: QueryOptions): AsyncIterable<Feature>;
    /**
     * @inheritDoc
     */
    protected _count(source: FeatureSource, where: string, options: QueryOptions): Promise<CountResult>;
}
