diff --git a/src/objectliterals.jsdoc b/src/objectliterals.jsdoc
index bc1342026d..8c77219fe1 100644
--- a/src/objectliterals.jsdoc
+++ b/src/objectliterals.jsdoc
@@ -505,6 +505,13 @@
* supported.
*/
+/**
+ * @typedef {Object} olx.render.FeaturesOverlayOptions
+ * @property {Array.
|ol.Collection|undefined} features Features.
+ * @property {ol.Map|undefined} map Map.
+ * @property {ol.style.StyleFunction|undefined} styleFunction Style function.
+ */
+
/**
* @typedef {Object} olx.source.BingMapsOptions
* @property {string|undefined} culture Culture code. Default is `en-us`.
diff --git a/src/ol/render/featuresoverlay.exports b/src/ol/render/featuresoverlay.exports
new file mode 100644
index 0000000000..38cf3f5d98
--- /dev/null
+++ b/src/ol/render/featuresoverlay.exports
@@ -0,0 +1,5 @@
+@exportSymbol ol.render.FeaturesOverlay
+@exportProperty ol.render.FeaturesOverlay.prototype.getFeatures
+@exportProperty ol.render.FeaturesOverlay.prototype.setFeatures
+@exportProperty ol.render.FeaturesOverlay.prototype.setMap
+@exportProperty ol.render.FeaturesOverlay.prototype.setStyleFunction
diff --git a/src/ol/render/featuresoverlay.js b/src/ol/render/featuresoverlay.js
index 4885dcd872..2166e25164 100644
--- a/src/ol/render/featuresoverlay.js
+++ b/src/ol/render/featuresoverlay.js
@@ -15,8 +15,11 @@ goog.require('ol.render.EventType');
/**
* @constructor
+ * @param {olx.render.FeaturesOverlayOptions=} opt_options Options.
*/
-ol.render.FeaturesOverlay = function() {
+ol.render.FeaturesOverlay = function(opt_options) {
+
+ var options = goog.isDef(opt_options) ? opt_options : options;
/**
* @private
@@ -54,6 +57,23 @@ ol.render.FeaturesOverlay = function() {
*/
this.styleFunction_ = undefined;
+ if (goog.isDef(options.features)) {
+ if (goog.isArray(options.features)) {
+ this.setFeatures(new ol.Collection(goog.array.clone(options.features)));
+ } else {
+ goog.asserts.assertInstanceof(options.features, ol.Collection);
+ this.setFeatures(options.features);
+ }
+ }
+
+ if (goog.isDef(options.styleFunction)) {
+ this.setStyleFunction(options.styleFunction);
+ }
+
+ if (goog.isDef(options.map)) {
+ this.setMap(options.map);
+ }
+
};