Source: bemap-model/bemap-clusterStyle.js

/**
 * BeNomad BeMap JavaScript API - clusterStyle
 */

/**
 * @classdesc
 * Base class for clusterStyle.
 * @public
 * @constructor
 * @param {Object} options See below the available values.
 * @param {bemap.Icon} options.icon Set the style of the non clustered marker.
 * @param {Int} options.size Set the size of the clustered marker marker.
 * @param {bemap.Color} options.borderColor Set the color of the border of the clustered marker.
 * @param {Int} options.borderSize Set the size of the border of the clustered marker.
 * @param {bemap.Color} options.color Set the background color of the clustered marker.
 * @param {bemap.Color} options.textColor Set the color of the text inside the clustered marker.
 * @param {int} options.textSize Set the size of the text inside the clustered marker.
 */
bemap.clusterStyle = function(options) {
    var opts = options || {};

    /**
     * @type {bemap.Icon}
     * @protected
     */
    this.native = null;

    /**
     * @type {bemap.Icon}
     * @protected
     */
    this.icon = opts.icon ? opts.icon : new bemap.Icon();

    /**
     * @type {int}
     * @protected
     */
    this.size = opts.size ? opts.size : 20;

    /**
     * @type {bemap.Color}
     * @protected
     */
    this.borderColor = opts.borderColor ? opts.borderColor : new bemap.Color(255, 255, 255, 1);

    /**
     * @type {int}
     * @protected
     */
    this.borderSize = opts.borderSize ? opts.borderSize : 3;

    /**
     * @type {bemap.Color}
     * @protected
     */
    this.color = opts.color ? opts.color : new bemap.Color(0, 150, 255, 1);

    /**
     * @type {bemap.Color}
     * @protected
     */
    this.textColor = opts.textColor ? opts.textColor : new bemap.Color(255, 255, 255, 1);

    /**
     * @type {int}
     * @protected
     */
    this.textSize = opts.textSize ? opts.textSize : 2;

    /**
     * @type {Object}
     * @protected
     */
    this.properties = opts.properties ? opts.properties : null;
};