The id Property is the button identifier.
The leafletClasses Property is a boolean that signifies whether to render with leaflet css classes.
The position property is a string that signifies button display location. ('topright', 'topleft', 'bottomright', 'bottomleft')
The states Property is an array of MapButtonState.
The type Property is a string that signifies button type. ('replace', 'animate')
The LeafletMapButtonOptions interface is used to specify content, behavior, states and location of buttons.
var editFunc = () => { };
var cancelFunc = () => { };
var notEditing = { title: 'Edit', icon: 'fa-edit', stateName: 'notEditing', onClick: editFunc };
var editing = { title: 'Cancel Edit', icon: 'fa-undo', stateName: 'Editing', onClick: cancelFunc };
var editButtonOptions = { position: 'topright', id: 'Edit', type: 'replace', leafletClasses: true, states: [ notEditing, editing ] };