import { Feature } from 'ol';
import { Geometry } from 'ol/geom';
import StateManager from '../state/statemanager';
import OgcApiFeaturesClient, { OgcApiFeaturesClientOptions } from './ogcapifeaturesclient';
import LayerWms from '../../models/layers/layerwms';
import ServerOgcApiFeatures, { OapifLayer } from '../../models/serverogcapifeatures';
import OgcApiFeaturesSchema from './ogcapifeaturesschema';
import ServerOgc from '../../models/serverogc';
import VendorSpecificOgcServerManager from '../vendorspecificogcservermanager';
/**
 * Manages interaction between the GG and an OGC API Features client (OAPIF).
 */
export default class OgcApiFeaturesManager extends VendorSpecificOgcServerManager<OgcApiFeaturesClient, OgcApiFeaturesClientOptions> {
    stateManager: StateManager;
    get state(): import("../main").State;
    getClientId(ogcServer: ServerOgc): string;
    constructor(type: string);
    getSchema(layer: OapifLayer): Promise<OgcApiFeaturesSchema>;
    getItems(layer: OapifLayer, crs?: string, bbox?: number[], limit?: number): Promise<Feature<Geometry>[]>;
    getItem(layer: OapifLayer, featureId: string): Promise<Feature<Geometry> | undefined>;
    createItem(layer: OapifLayer, feature: Feature<Geometry>): Promise<boolean>;
    updateItem(layer: OapifLayer, featureId: string, feature: Feature<Geometry>): Promise<boolean>;
    deleteItem(layer: OapifLayer, featureId: string): Promise<boolean>;
    getServer(ogcServer: ServerOgc): Promise<ServerOgcApiFeatures>;
    getServer(layer: LayerWms): Promise<ServerOgcApiFeatures>;
}
