function TerrainProviderBuilder(options) {
  this.requestVertexNormals = options.requestVertexNormals ?? false;
  this.requestWaterMask = options.requestWaterMask ?? false;
  this.requestMetadata = options.requestMetadata ?? true;
  this.ellipsoid = options.ellipsoid ?? Ellipsoid.default;

  this.heightmapWidth = 65;
  this.heightmapStructure = undefined;
  this.hasWaterMask = false;
  this.hasMetadata = false;
  this.hasVertexNormals = false;
  this.scheme = undefined;

  this.lastResource = undefined;
  this.layerJsonResource = undefined;
  this.previousError = undefined;
  this.availability = undefined;
  this.tilingScheme = undefined;
  this.levelZeroMaximumGeometricError = undefined;
  this.heightmapStructure = undefined;
  this.layers = [];
  this.attribution = "";
  this.overallAvailability = [];
  this.overallMaxZoom = 0;
  this.tileCredits = [];
}
Used to track creation details while fetching initial metadata

@constructor
@private

@param {CesiumTerrainProvider.ConstructorOptions} options An object describing initialization options