import VectorTileSource from 'ol/source/VectorTile.js';
import { FeatureLike } from 'ol/Feature.js';
import RenderFeature from 'ol/render/Feature.js';
import { MBTilesVectorOptions, SQLOptions } from './mbtiles.js';
/**
 * A tile source in a remote .mbtiles file accessible by HTTP
 *
 * WARNING
 * If your application continuously creates and removes MBTilesSource
 * objects, special care must be taken to properly dispose of them.
 * An MBTilesSource creates a thread pool that the JS engine is unable to
 * automatically garbage-collect unless the dispose() method
 * is invoked.
 * If you need to dispose a map that can potentially contain
 * MBTilesSource objects, check loadExample() in
 * https://github.com/mmomtchev/ol-mbtiles/blob/main/examples/index.ts#L15
 */
export declare class MBTilesVectorSource<F extends FeatureLike = RenderFeature> extends VectorTileSource<F> {
    private pool;
    /**
     * @param {MBTilesVectorOptions} options options
     */
    constructor(options: MBTilesVectorOptions & SQLOptions);
    private tileLoader;
    disposeInternal(): Promise<void>;
}
