function ModelFeatureTable(options) {
  const model = options.model;
  const propertyTable = options.propertyTable;

  //>>includeStart('debug', pragmas.debug);
  Check.typeOf.object("propertyTable", propertyTable);
  Check.typeOf.object("model", model);
  //>>includeEnd('debug');

  this._propertyTable = propertyTable;
  this._model = model;

  this._features = undefined;
  this._featuresLength = 0;

  this._batchTexture = undefined;

  this._styleCommandsNeededDirty = false;
  this._styleCommandsNeeded = StyleCommandsNeeded.ALL_OPAQUE;

  initialize(this);
}
Manages the {@link ModelFeature}s in a {@link Model}.
Extracts the properties from a {@link PropertyTable}.

@param {object} options An object containing the following options:
@param {Model} options.model The model that owns this feature table.
@param {PropertyTable} options.propertyTable The property table from the model used to initialize the model.

@alias ModelFeatureTable
@constructor

@private
@experimental This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy.