# Class: FeatureStoreChanges

## vcs.vcm.layer.FeatureStore.FeatureStoreChanges

do not construct directly, use the layers .changeTracker instead

#### new vcs.vcm.layer.FeatureStore.FeatureStoreChanges(layer)

  Name | Type | Description
  --- | --- | ---
  `layer` | vcs.vcm.layer.FeatureStore |

### Members

#### active

  Whether changes are being tracked or not

### Methods

#### addFeature(feature)

  adds an addition to the tracker. prefer use of .track

  Name | Type | Description
  --- | --- | ---
  `feature` | ol.Feature |

#### commitChanges(url){Promise}

  commits the changes to the provided url. url should contain accessTokens and point to a featureStore layers bulk operation endpoint

  Name | Type | Description
  --- | --- | ---
  `url` | string |

#### editFeature(feature)

  adds an edit to the tracker. prefer use of .track

  Name | Type | Description
  --- | --- | ---
  `feature` | ol.Feature |

#### pauseTracking(event)

  pauses the tracking of the given event, but does not reset features

  Name | Type | Description
  --- | --- | ---
  `event` | string | one of: addfeature, changefeature or removefeature

#### removeFeature(feature)

  tracks the change of removing a static feature

  Name | Type | Description
  --- | --- | ---
  `feature` | ol.Feature |

#### reset(){Promise}

  resets all changes since the last commit or the beginning of tracking

#### track()

  starts tracking changes on the layer starts tracking changes on the feature store layer

#### unTrack()

  stops tracking changes on the feature store layer