/**
 * The options required to create a `File`.
 *
 * extends DataSourceOptions
 *
 * @typedef {Object} FileOptions
 * @property {import('ol/Collection').default<import('ol/Feature').default<import('ol/geom/Geometry').default>>} [features]
 *    Collection of `import('ol/Feature').default<import('ol/geom/Geometry').default>` objects.
 * @property {import('ngeo/format/Attribute').Attribute[]} [attributes] (DataSourceOptions)
 * @property {import('ngeo/datasource/OGC').DimensionsFiltersConfig} [dimensionsFiltersConfig]
 *    (DataSourceOptions)
 * @property {number} id (DataSourceOptions)
 * @property {string} [identifierAttribute] (DataSourceOptions)
 * @property {boolean} [inRange] (DataSourceOptions)
 * @property {number} [minResolution] (DataSourceOptions)
 * @property {number} [maxResolution] (DataSourceOptions)
 * @property {string} name (DataSourceOptions)
 * @property {boolean} [visible=false] (DataSourceOptions)
 */
/**
 * @hidden
 */
export default class _default extends ngeoDatasourceDataSource {
    /**
     * A data source that contains vector features that were loaded from a file.
     *
     * @param {FileOptions} options Options.
     */
    constructor(options: FileOptions);
    /**
     * @type {import('ol/Collection').default<import('ol/Feature').default<import('ol/geom/Geometry').default>>}
     * @private
     */
    private featuresCollection_;
    /**
     * @type {import('ol/source/Vector').default<import('ol/geom/Geometry').default>}
     * @private
     */
    private source_;
    /**
     * @type {import('ol/layer/Vector').default<import('ol/source/Vector').default<import('ol/geom/Geometry').default>>}
     * @private
     */
    private layer_;
    /**
     * @returns {import('ol/Feature').default<import('ol/geom/Geometry').default>[]} Features
     */
    get features(): import("ol/Feature").default<import("ol/geom/Geometry").default>[];
    /**
     * @returns {import('ol/Collection').default<import('ol/Feature').default<import('ol/geom/Geometry').default>>} Features collection
     */
    get featuresCollection(): olCollection<import("ol/Feature").default<import("ol/geom/Geometry").default>>;
    /**
     * @returns {import('ol/layer/Vector').default<import('ol/source/Vector').default<import('ol/geom/Geometry').default>>} Vector layer.
     */
    get layer(): olLayerVector<olSourceVector<import("ol/geom/Geometry").default>, never>;
    /**
     * @returns {import('ol/extent').Extent} Extent.
     */
    get extent(): import("ol/extent").Extent;
}
/**
 * The options required to create a `File`.
 *
 * extends DataSourceOptions
 */
export type FileOptions = {
    /**
     * Collection of `import('ol/Feature').default<import('ol/geom/Geometry').default>` objects.
     */
    features?: import("ol/Collection").default<import("ol/Feature").default<import("ol/geom/Geometry").default>>;
    /**
     * (DataSourceOptions)
     */
    attributes?: import("ngeo/format/Attribute").Attribute[];
    /**
     * (DataSourceOptions)
     */
    dimensionsFiltersConfig?: import("ngeo/datasource/OGC").DimensionsFiltersConfig;
    /**
     * (DataSourceOptions)
     */
    id: number;
    /**
     * (DataSourceOptions)
     */
    identifierAttribute?: string;
    /**
     * (DataSourceOptions)
     */
    inRange?: boolean;
    /**
     * (DataSourceOptions)
     */
    minResolution?: number;
    /**
     * (DataSourceOptions)
     */
    maxResolution?: number;
    /**
     * (DataSourceOptions)
     */
    name: string;
    /**
     * (DataSourceOptions)
     */
    visible?: boolean;
};
import ngeoDatasourceDataSource from 'ngeo/datasource/DataSource';
import olCollection from 'ol/Collection';
import olSourceVector from 'ol/source/Vector';
import olLayerVector from 'ol/layer/Vector';
