/**
 * @param {angular.gettext.gettextCatalog} gettextCatalog Gettext catalog.
 * @param {angular.ICompileService} $compile Angular compile service.
 * @param {angular.IFilterService} $filter Angular filter
 * @param {angular.auto.IInjectorService} $injector Angular injector service.
 * @param {angular.IScope} $scope Scope.
 * @param {angular.ITimeoutService} $timeout Angular timeout service.
 * @param {import('ngeo/misc/EventHelper').EventHelper} ngeoEventHelper Ngeo event helper service
 * @param {import('ngeo/options').ngeoSnappingTolerance} ngeoSnappingTolerance The tolerance.
 * @class
 * @hidden
 * @ngdoc controller
 * @ngname ngeoCreatefeatureController
 */
export function Controller(gettextCatalog: angular.gettext.gettextCatalog, $compile: angular.ICompileService, $filter: angular.IFilterService, $injector: angular.auto.IInjectorService, $scope: angular.IScope, $timeout: angular.ITimeoutService, ngeoEventHelper: import("ngeo/misc/EventHelper").EventHelper, ngeoSnappingTolerance: import("ngeo/options").ngeoSnappingTolerance): void;
export class Controller {
    /**
     * @param {angular.gettext.gettextCatalog} gettextCatalog Gettext catalog.
     * @param {angular.ICompileService} $compile Angular compile service.
     * @param {angular.IFilterService} $filter Angular filter
     * @param {angular.auto.IInjectorService} $injector Angular injector service.
     * @param {angular.IScope} $scope Scope.
     * @param {angular.ITimeoutService} $timeout Angular timeout service.
     * @param {import('ngeo/misc/EventHelper').EventHelper} ngeoEventHelper Ngeo event helper service
     * @param {import('ngeo/options').ngeoSnappingTolerance} ngeoSnappingTolerance The tolerance.
     * @class
     * @hidden
     * @ngdoc controller
     * @ngname ngeoCreatefeatureController
     */
    constructor(gettextCatalog: angular.gettext.gettextCatalog, $compile: angular.ICompileService, $filter: angular.IFilterService, $injector: angular.auto.IInjectorService, $scope: angular.IScope, $timeout: angular.ITimeoutService, ngeoEventHelper: import("ngeo/misc/EventHelper").EventHelper, ngeoSnappingTolerance: import("ngeo/options").ngeoSnappingTolerance);
    /**
     * @type {boolean}
     */
    active: boolean;
    /**
     * @type {?import('ol/Collection').default<olFeature<import('ol/geom/Geometry').default>>|import('ol/source/Vector').default<import('ol/geom/Geometry').default>}
     */
    features: (import("ol/Collection").default<olFeature<import("ol/geom/Geometry").default>> | import("ol/source/Vector").default<import("ol/geom/Geometry").default>) | null;
    /**
     * @type {string}
     */
    geomType: string;
    /**
     * @type {?import('ol/Map').default}
     */
    map: import("ol/Map").default | null;
    /**
     * @type {angular.gettext.gettextCatalog}
     */
    gettextCatalog_: angular.gettext.gettextCatalog;
    /**
     * @type {angular.ICompileService}
     */
    compile_: angular.ICompileService;
    /**
     * @type {angular.IFilterService}
     */
    filter_: angular.IFilterService;
    /**
     * @type {angular.IScope}
     */
    scope_: angular.IScope;
    /**
     * @type {angular.ITimeoutService}
     */
    timeout_: angular.ITimeoutService;
    /**
     * @type {import('ngeo/misc/EventHelper').EventHelper}
     */
    ngeoEventHelper_: import("ngeo/misc/EventHelper").EventHelper;
    /**
     * @type {angular.auto.IInjectorService}
     */
    injector_: angular.auto.IInjectorService;
    /**
     * @type {import('ngeo/options').ngeoSnappingTolerance}
     */
    ngeoSnappingTolerance_: import("ngeo/options").ngeoSnappingTolerance;
    /**
     * The draw or measure interaction responsible of drawing the vector feature.
     * The actual type depends on the geometry type.
     *
     * @type {?import('ol/interaction/Interaction').default}
     */
    interaction_: import("ol/interaction/Interaction").default | null;
    /**
     * Initialize the directive.
     */
    $onInit(): void;
    /**
     * Called when a feature is finished being drawn. Add the feature to the
     * collection.
     *
     * @param {import('lib/ol.interaction.Draw').DrawEvent|import('ngeo/CustomEvent').default<import('lib/ol.interaction.Draw').DrawEvent>} evt
     *    Event.
     */
    handleDrawEnd_(evt: import("lib/ol.interaction.Draw").DrawEvent | import("ngeo/CustomEvent").default<import("lib/ol.interaction.Draw").DrawEvent>): void;
    /**
     * Cleanup event listeners and remove the interaction from the map.
     */
    $onDestroy(): void;
}
export namespace Controller {
    let $inject: string[];
}
export default myModule;
import angular from 'angular';
import olFeature from 'ol/Feature';
/**
 * @type {angular.IModule}
 * @hidden
 */
declare const myModule: angular.IModule;
