/**
 * @hidden
 */
export class Controller {
    /**
     * @param {angular.IScope} $scope Angular scope.
     * @param {import('ngeo/datasource/DataSources').DataSource} ngeoDataSources Ngeo data sources service.
     * @param {import('ngeo/map/LayerHelper').LayerHelper} ngeoLayerHelper Ngeo data sources service.
     * @ngdoc controller
     * @ngname GmfDatasourcegrouptreeController
     */
    constructor($scope: angular.IScope, ngeoDataSources: import("ngeo/datasource/DataSources").DataSource, ngeoLayerHelper: import("ngeo/map/LayerHelper").LayerHelper);
    /**
     * @type {?import('ngeo/datasource/Group').default}
     */
    group: import("ngeo/datasource/Group").default | null;
    /**
     * @type {angular.IScope}
     * @private
     */
    private scope_;
    /**
     * @type {import('ngeo/datasource/DataSource').DataSources}
     * @private
     */
    private dataSources_;
    /**
     * @type {import('ngeo/map/LayerHelper').LayerHelper}
     * @private
     */
    private layerHelper_;
    /**
     * method of layertree to get the present map scale
     */
    getScale: any;
    /**
     * @returns {string} Group uid.
     */
    getGroupUid(): string;
    /**
     * Toggle visibility of the group itself, i.e. its visibility state.
     */
    toggle(): void;
    /**
     * Toggle visible property of a data source.
     *
     * @param {import('ngeo/datasource/DataSource').default} dataSource Data source to toggle the
     * visibility
     */
    toggleDataSource(dataSource: import("ngeo/datasource/DataSource").default): void;
    /**
     * Remove all data sources from the `import('ngeo/datasource/DataSource').DataSources` collection, which
     * will automatically remove them from the Group. The group itself
     * is going to be removed as well, destroying this component in the process.
     */
    remove(): void;
    /**
     * @param {import('ngeo/datasource/DataSource').default} dataSource Data source to remove from
     *     the `import('ngeo/datasource/DataSource').DataSources` collection.
     */
    removeDataSource(dataSource: import("ngeo/datasource/DataSource").default): void;
    /**
     * Toggle the legend for a node
     *
     * @param {string} legendNodeId The DOM node legend id to toggle
     */
    toggleNodeLegend(legendNodeId: string): void;
    /**
     * Get legendUrl
     *
     * @param {import('gmf/datasource/ExternalOGC').Legend}  legend The legend for which to get the legend url
     * @returns {string}
     */
    getLegendUrl(legend: import("gmf/datasource/ExternalOGC").Legend): string;
    /**
     * Set legend visibility
     *
     * @param {boolean} show The DOM node legend id to toggle
     * @param {string} legendNodeId The DOM node legend id to toggle
     */
    setLegendVisibility(show: boolean, legendNodeId: string): void;
}
export namespace Controller {
    let $inject: string[];
}
export default myModule;
import angular from 'angular';
/**
 * @type {angular.IModule}
 * @hidden
 */
declare const myModule: angular.IModule;
