/**
 * @hidden
 */
export class Controller {
    /**
     * @param {JQuery} $element Element.
     * @param {angular.IFilterService} $filter Angular filter.
     * @param {angular.IScope} $scope Angular scope.
     * @param {angular.ITimeoutService} $timeout Angular timeout service.
     * @param {import('gmf/datasource/ExternalDataSourcesManager').ExternalDatSourcesManager} gmfExternalDataSourcesManager
     *     GMF service responsible of managing external data sources.
     * @param {import('ngeo/query/Querent').Querent} ngeoQuerent Ngeo querent service.
     * @param {import('gmf/options').gmfExternalOGCServers} gmfExternalOGCServers The options.
     * @param {angular.gettext.gettextCatalog} gettextCatalog The gettextCatalog service.
     * @ngdoc controller
     * @ngname GmfImportdatasourceController
     */
    constructor($element: JQuery, $filter: angular.IFilterService, $scope: angular.IScope, $timeout: angular.ITimeoutService, gmfExternalDataSourcesManager: import("gmf/datasource/ExternalDataSourcesManager").ExternalDatSourcesManager, ngeoQuerent: import("ngeo/query/Querent").Querent, gmfExternalOGCServers: import("gmf/options").gmfExternalOGCServers, gettextCatalog: angular.gettext.gettextCatalog);
    /**
     * @type {?import('ol/Map').default}
     */
    map: import("ol/Map").default | null;
    /**
     * @type {JQuery}
     * @private
     */
    private element_;
    /**
     * @type {angular.IScope}
     * @private
     */
    private scope_;
    /**
     * @type {angular.ITimeoutService}
     * @private
     */
    private timeout_;
    /**
     * @type {import('gmf/datasource/ExternalDataSourcesManager').ExternalDatSourcesManager}
     * @private
     */
    private gmfExternalDataSourcesManager_;
    /**
     * @type {import('ngeo/query/Querent').Querent}
     * @private
     */
    private ngeoQuerent_;
    /**
     * @type {?File}
     */
    file: File | null;
    /**
     * @type {?string}
     */
    searchText: string | null;
    /**
     * @type {?string}
     */
    url: string | null;
    /**
     * @type {JQuery}
     * @private
     */
    private fileInput_;
    /**
     * @type {boolean}
     */
    hasError: boolean;
    /**
     * @type {?angular.IPromise<void>}
     * @private
     */
    private hasErrorPromise_;
    /**
     * @type {string}
     */
    mode: string;
    /**
     * @type {string[]}
     */
    modes: string[];
    /**
     * @type {boolean}
     */
    pending: boolean;
    /**
     * @type {import('ngeo/misc/filters').unitPrefix}
     * @private
     */
    private unitPrefixFormat_;
    /**
     * Current WMS Capabilities that were connected.
     *
     * @type {?any}
     */
    wmsCapabilities: any | null;
    /**
     * Current WTMS Capabilities that were connected.
     *
     * @type {?any}
     */
    wmtsCapabilities: any | null;
    /**
     * @type {?Bloodhound<import('gmf/options').ExternalOGCServer>}
     * @private
     */
    private serversEngine_;
    /**
     * @type {boolean}
     */
    isLoading: boolean;
    /**
     * Called on initialization of the component.
     */
    $onInit(): void;
    /**
     * Connect to given online resource URL.
     */
    connect(): void;
    /**
     * Create data source from file.
     */
    load(): void;
    /**
     * @returns {string} The name of the file and human-readable size.
     */
    get fileNameAndSize(): string;
    /**
     * Apply search on current tree.
     */
    search(): void;
    /**
     * Recursively apply filter on layer, setting some custom properties:
     * - _visible: true if searchText is empty or searchText is found in
     * layer.Title or in any of its ancestors or in any of its descendants.
     * - _expanded: true if searchText is found in any of its descendants.
     * - _searchPrefix: substring before searchText in layer.Title.
     * - _searchMatch: substring matching searchText in layer.Title.
     * - _searchSuffix: substring after searchText in layer.Title.
     *
     * @param {any} layer WMS Capability Layer object.
     * @param {boolean} visible Force layer to be visible.
     */
    filterLayer(layer: any, visible?: boolean): void;
    /**
     * @private
     */
    private startWorking_;
    /**
     * @param {boolean} [opt_hasError] Whether we stopped working because of after
     *     an error.
     * @private
     */
    private stopWorking_;
}
export namespace Controller {
    let $inject: string[];
}
export default myModule;
import angular from 'angular';
/**
 * @type {angular.IModule}
 * @hidden
 */
declare const myModule: angular.IModule;
