# Class LayerExtensionCollectionBase`Abstract`

Backing implementation for mapping/support/_LayerExtensionCollection!LayerExtensionCollection.

#### Hierarchy (view full)

- InitializableCollectionProxy<LayerExtensionProperties, LayerExtension>
  - LayerExtensionCollectionBase
    - GroupLayerExtensionCollection
    - LayerExtensionCollectionImpl

#### Implements

- LayerExtensionCollection

#####
Index

### Constructors

constructor

### Properties

_layerExtensionMap
_parent
_uninitializedLayerExtensions

### Accessors

_collection
_layers
_mapExtension
declaredClass
destroyed
initialized
initializedItems
length

### Methods

_get
_itemIsInitialized
_onAdded
_onRemoved
_set
[iterator]
add
addHandles
addMany
at
clone
concat
destroy
every
filter
find
findById
findByLayerId
findIndex
flatten
forEach
forLayer
get
getItemAt
hasHandles
includes
indexOf
join
lastIndexOf
map
notifyChange
on
onMapExtensionChanged
onParentInitialized
pop
push
reduce
reduceRight
remove
removeAll
removeAt
removeHandles
removeMany
reorder
reverse
set
shift
slice
some
sort
splice
toArray
unshift
watch

##
Constructors

### constructor

- new LayerExtensionCollectionBase(parent, layersProperty): LayerExtensionCollectionBase

- Creates a new instance of LayerExtensionCollectionBase.

  #### Parameters

  - parent: Observable

    The parent object that owns the collection of layers.

  - layersProperty: string

    The name of a property (or property path) on the parent corresponding to the underlying collection of layers.

  #### Returns LayerExtensionCollectionBase

  Overrides InitializableCollectionProxy.constructor

##
Properties

### `Protected`_layerExtensionMap

_layerExtensionMap: WeakMap<Layer, LayerExtension<LayerExtensionProperties>> = ...

Associates layers with layer extensions.

### `Protected` `Readonly`_parent

_parent: Observable

The parent that owns this collection.

### `Protected` `Readonly`_uninitializedLayerExtensions

_uninitializedLayerExtensions: Collection<LayerExtension<LayerExtensionProperties>> = ...

Keeps track of layer extensions that were explicitly added, but whose "layer" property is undefined. This can occur when the layer extension is not yet initialized or represents an offline layer.

##
Accessors

### `Protected`_collection

- get _collection(): Collection<LayerExtension<LayerExtensionProperties>>

- The underlying collection that this class delegates to.

  #### Returns Collection<LayerExtension<LayerExtensionProperties>>

  Overrides InitializableCollectionProxy._collection

### `Protected`_layers

- get _layers(): Collection<Layer>

- The backing collection of layers that this collection is based on.

  #### Returns Collection<Layer>

### `Protected` `Abstract`_mapExtension

- get _mapExtension(): MapExtension

- The parent MapExtension of LayerExtensions in this collection.

  #### Returns MapExtension

### declaredClass

- get declaredClass(): string

- The declared class name. This is always `"esri.core.Collection"` for compatibility with Esri's API.

  #### Returns string

  Implementation of LayerExtensionCollection.declaredClass

  Inherited from InitializableCollectionProxy.declaredClass

### destroyed

- get destroyed(): boolean

- Whether the collection has been destroyed.

  #### Returns boolean

  Implementation of LayerExtensionCollection.destroyed

  Inherited from InitializableCollectionProxy.destroyed

- set destroyed(value): void

- #### Parameters

  - value: boolean

  #### Returns void

  Implementation of LayerExtensionCollection.destroyed

  Inherited from InitializableCollectionProxy.destroyed

### initialized

- get initialized(): boolean

- Whether the collection has been initialized.

  #### Returns boolean

  Implementation of LayerExtensionCollection.initialized

  Inherited from InitializableCollectionProxy.initialized

- set initialized(value): void

- #### Parameters

  - value: boolean

  #### Returns void

  Implementation of LayerExtensionCollection.initialized

  Inherited from InitializableCollectionProxy.initialized

### initializedItems

- get initializedItems(): ReadOnlyCollection<T>

- Returns a collection of the initialized items.

  #### Returns ReadOnlyCollection<T>

  Implementation of LayerExtensionCollection.initializedItems

  Inherited from InitializableCollectionProxy.initializedItems

### length

- get length(): number

- The number of items in the collection.

  #### Returns number

  Implementation of LayerExtensionCollection.length

  Inherited from InitializableCollectionProxy.length

##
Methods

### `Protected`_get

- _get(propertyName): any

- #### Parameters

  - propertyName: string

  #### Returns any

  #### Deprecated

  - Unsupported on CollectionProxy.

  #### Inherit Doc

  Implementation of LayerExtensionCollection._get

  Inherited from InitializableCollectionProxy._get

- _get<T>(propertyName): T

- #### Type Parameters

  - T

  #### Parameters

  - propertyName: string

  #### Returns T

  Implementation of LayerExtensionCollection._get

  Inherited from InitializableCollectionProxy._get

### `Protected`_itemIsInitialized

- _itemIsInitialized(item): boolean

- Returns whether an item in the collection is considered initialized.

  #### Parameters

  - item: LayerExtension<LayerExtensionProperties>

    The item being checked for initialization.

  #### Returns boolean

  Overrides InitializableCollectionProxy._itemIsInitialized

### `Protected`_onAdded

- _onAdded(layerX): void

- Invoked when a layer extension is added.

  #### Parameters

  - layerX: LayerExtension<LayerExtensionProperties>

    The newly added layer extension.

  #### Returns void

### `Protected`_onRemoved

- _onRemoved(layerX): void

- Invoked when a layer extension is removed.

  #### Parameters

  - layerX: LayerExtension<LayerExtensionProperties>

    The layer extension that was removed.

  #### Returns void

### `Protected`_set

- _set<T>(propertyName, value): this

- #### Type Parameters

  - T

  #### Parameters

  - propertyName: string
  - value: T

  #### Returns this

  #### Deprecated

  - Unsupported on CollectionProxy.

  #### Inherit Doc

  Implementation of LayerExtensionCollection._set

  Inherited from InitializableCollectionProxy._set

### [iterator]

- [iterator](): IterableIterator<LayerExtension<LayerExtensionProperties>, any, any>

- #### Returns IterableIterator<LayerExtension<LayerExtensionProperties>, any, any>

  #### Inherit Doc

  Implementation of LayerExtensionCollection.[iterator]

  Inherited from InitializableCollectionProxy.[iterator]

### add

- add(layerX, index?): this

- Adds a single item to the collection.

  #### Parameters

  - layerX: LayerExtension<LayerExtensionProperties>
  - `Optional` index: number

    Zero-based index of where in the collection to add the item. If not specified, the items will be added at the end.

  #### Returns this

  Implementation of LayerExtensionCollection.add

  Overrides InitializableCollectionProxy.add

### addHandles

- addHandles<T>(handles, groupKey?): void

- #### Type Parameters

  - T

  #### Parameters

  - handles: IHandle | IHandle[]
  - `Optional` groupKey: Exclude<T, IHandle>

  #### Returns void

  Implementation of LayerExtensionCollection.addHandles

  Inherited from InitializableCollectionProxy.addHandles

### addMany

- addMany(items, index?): this

- Adds multiple items to the collection.

  #### Parameters

  - items: Collection<LayerExtension<LayerExtensionProperties>> | ArrayLike<LayerExtension<LayerExtensionProperties>>

    An array or collection of items to add.

  - `Optional` index: number

    Zero-based index of where in the collection to add the items. If not specified, the items will be added at the end.

  #### Returns this

  Implementation of LayerExtensionCollection.addMany

  Inherited from InitializableCollectionProxy.addMany

### at

- at(index): LayerExtension<LayerExtensionProperties>

- Returns the item at the specified index.

  #### Parameters

  - index: number

    Zero-based index of the item in the Collection to retrieve.

  #### Returns LayerExtension<LayerExtensionProperties>

  The item in the Collection stored at the specified index.

  Implementation of LayerExtensionCollection.at

  Inherited from InitializableCollectionProxy.at

### clone

- clone(): LayerExtensionCollectionBase

- Creates a deep clone of the Collection. To create a shallow clone of the collection, use slice().

  #### Returns LayerExtensionCollectionBase

  Implementation of LayerExtensionCollection.clone

  Overrides InitializableCollectionProxy.clone

### concat

- concat(value): Collection<LayerExtension<LayerExtensionProperties>>

- Creates a new Collection containing the items in the original Collection joined with the items in the input array or Collection.

  #### Parameters

  - value: Collection<LayerExtension<LayerExtensionProperties>> | LayerExtension<LayerExtensionProperties>[]

    The array or Collection to append to the existing Collection.

  #### Returns Collection<LayerExtension<LayerExtensionProperties>>

  Implementation of LayerExtensionCollection.concat

  Inherited from InitializableCollectionProxy.concat

### destroy

- destroy(): void

- Removes all event listeners and destroys the collection.

  #### Returns void

  Implementation of LayerExtensionCollection.destroy

  Inherited from InitializableCollectionProxy.destroy

### every

- every(callback): boolean

- Determines whether all items in the Collection pass a test defined by callback. Each item in the Collection is passed into the callback until one returns a value of false.

  #### Parameters

  - callback: ItemTestCallback<LayerExtension<LayerExtensionProperties>>

    The function to call for each item in the Collection.

  #### Returns boolean

  Implementation of LayerExtensionCollection.every

  Inherited from InitializableCollectionProxy.every

### filter

- filter(callback): Collection<LayerExtension<LayerExtensionProperties>>

- Filters the Collection's items based on a test defined by the callback function. Each item is passed into the callback function, which returns true if the item passes the test and false if it does not.

  #### Parameters

  - callback: ItemTestCallback<LayerExtension<LayerExtensionProperties>>

    The function that defines a test for determining whether to return the item in a new Collection.

  #### Returns Collection<LayerExtension<LayerExtensionProperties>>

  Implementation of LayerExtensionCollection.filter

  Inherited from InitializableCollectionProxy.filter

### find

- find(callback): LayerExtension<LayerExtensionProperties>

- Returns an item in the Collection if that item passes a test as defined in the callback function. Each item is passed into the callback function, which returns true if the item passes the test and false if it does not.

  #### Parameters

  - callback: ItemTestCallback<LayerExtension<LayerExtensionProperties>>

    The testing function that will assess each item in the Collection. Returns true if an item passes the test and false if it fails.

  #### Returns LayerExtension<LayerExtensionProperties>

  Implementation of LayerExtensionCollection.find

  Inherited from InitializableCollectionProxy.find

### findById

- findById(id): LayerExtension<LayerExtensionProperties>

- Get the layer extension for a given id.

  #### Parameters

  - id: string

    The id of the layer extension.

  #### Returns LayerExtension<LayerExtensionProperties>

  The layer extension.

  Implementation of LayerExtensionCollection.findById

### findByLayerId

- findByLayerId(id): LayerExtension<LayerExtensionProperties>

- Get the corresponding layer extension for a given layer id.

  #### Parameters

  - id: string

    The id of the layer.

  #### Returns LayerExtension<LayerExtensionProperties>

  The corresponding layer extension.

  Implementation of LayerExtensionCollection.findByLayerId

### findIndex

- findIndex(callback): number

- Returns the index of an item in the Collection if that item passes a test as defined in the callback function. Each item is passed into the callback function, which returns true if the item passes the test and false if it does not.

  #### Parameters

  - callback: ItemTestCallback<LayerExtension<LayerExtensionProperties>>

    The testing function that will assess each item in the Collection. Returns true if an item passes the test and false if it fails.

  #### Returns number

  Returns the index of the Collection item that satisfies the test function. If an item fails the test, -1 is returned.

  Implementation of LayerExtensionCollection.findIndex

  Inherited from InitializableCollectionProxy.findIndex

### flatten

- flatten(callback): Collection<LayerExtension<LayerExtensionProperties>>

- Flattens a hierarchical Collection containing at least one child collection. Each item in the collection is passed into the callback function, which should check for child collections specified by the developer. A flat collection of all items (parent and children) is returned.

  #### Parameters

  - callback: ((item: LayerExtension<LayerExtensionProperties>, index: number) => Collection<LayerExtension<LayerExtensionProperties>> | LayerExtension<LayerExtensionProperties>[])

    A function that will assess each item in the Collection.

    - - (item, index): Collection<LayerExtension<LayerExtensionProperties>> | LayerExtension<LayerExtensionProperties>[]

      - #### Parameters

        - item: LayerExtension<LayerExtensionProperties>
        - index: number

        #### Returns Collection<LayerExtension<LayerExtensionProperties>> | LayerExtension<LayerExtensionProperties>[]

  #### Returns Collection<LayerExtension<LayerExtensionProperties>>

  Implementation of LayerExtensionCollection.flatten

  Inherited from InitializableCollectionProxy.flatten

### forEach

- forEach(callback): void

- Executes the input function for each item in the Collection.

  #### Parameters

  - callback: ItemCallback<LayerExtension<LayerExtensionProperties>>

    The function to call for each item in the Collection.

  #### Returns void

  Implementation of LayerExtensionCollection.forEach

  Inherited from InitializableCollectionProxy.forEach

### forLayer

- forLayer(layer): LayerExtension<LayerExtensionProperties>

- Gets the corresponding layer extension for a given layer.

  #### Parameters

  - layer: Layer

    A layer on the map.

  #### Returns LayerExtension<LayerExtensionProperties>

  The corresponding layer extension.

  Implementation of LayerExtensionCollection.forLayer

### get

- get<T>(propertyPath): T

- #### Type Parameters

  - T

  #### Parameters

  - propertyPath: string

  #### Returns T

  #### Deprecated

  - Unsupported on CollectionProxy.

  #### Inherit Doc

  Implementation of LayerExtensionCollection.get

  Inherited from InitializableCollectionProxy.get

- get(propertyPath): unknown

- #### Parameters

  - propertyPath: string

  #### Returns unknown

  #### Deprecated

  - Unsupported on CollectionProxy.

  #### Inherit Doc

  Implementation of LayerExtensionCollection.get

  Inherited from InitializableCollectionProxy.get

### getItemAt

- getItemAt(index): LayerExtension<LayerExtensionProperties>

- Returns the item at the specified index.

  #### Parameters

  - index: number

    Zero-based index of the item in the Collection to retrieve.

  #### Returns LayerExtension<LayerExtensionProperties>

  The item in the Collection stored at the specified index.

  Implementation of LayerExtensionCollection.getItemAt

  Inherited from InitializableCollectionProxy.getItemAt

### hasHandles

- hasHandles<T>(groupKey?): boolean

- #### Type Parameters

  - T

  #### Parameters

  - `Optional` groupKey: Exclude<T, IHandle>

  #### Returns boolean

  Implementation of LayerExtensionCollection.hasHandles

  Inherited from InitializableCollectionProxy.hasHandles

### includes

- includes(searchElement): boolean

- Tests if an item is present in the Collection.

  #### Parameters

  - searchElement: LayerExtension<LayerExtensionProperties>

    The item to search for in the collection.

  #### Returns boolean

  Implementation of LayerExtensionCollection.includes

  Inherited from InitializableCollectionProxy.includes

### indexOf

- indexOf(searchElement, fromIndex?): number

- Returns the index of an element in the collection.

  #### Parameters

  - searchElement: LayerExtension<LayerExtensionProperties>

    Item to search for in the collection.

  - `Optional` fromIndex: number

    Use if you don't want to search the whole collection or you don't want to search from the start.

  #### Returns number

  Implementation of LayerExtensionCollection.indexOf

  Inherited from InitializableCollectionProxy.indexOf

### join

- join(separator?): string

- Creates a string representation of the items in the Collection.

  #### Parameters

  - `Optional` separator: string

    The separator used between each item in the final string. The default is ",".

  #### Returns string

  Implementation of LayerExtensionCollection.join

  Inherited from InitializableCollectionProxy.join

### lastIndexOf

- lastIndexOf(searchElement, fromIndex?): number

- Returns the last index of an element in the collection.

  #### Parameters

  - searchElement: LayerExtension<LayerExtensionProperties>

    Item to search for in the collection.

  - `Optional` fromIndex: number

    Use if you don't want to search the whole collection, or you don't want to search from the end.

  #### Returns number

  The location of the last match found in the collection, or -1 if there is no match.

  Implementation of LayerExtensionCollection.lastIndexOf

  Inherited from InitializableCollectionProxy.lastIndexOf

### map

- map<U>(callback): Collection<U>

- Passes each Collection item into the callback function and returns a new array of the returned values.

  #### Type Parameters

  - U

  #### Parameters

  - callback: ItemMapCallback<LayerExtension<LayerExtensionProperties>, U>

    The function that processes each item in the Collection and returns a new value at the same index of the original item.

  #### Returns Collection<U>

  Implementation of LayerExtensionCollection.map

  Inherited from InitializableCollectionProxy.map

### `Protected` notifyChange

- notifyChange(propertyKey): void

- #### Parameters

  - propertyKey: string

  #### Returns void

  #### Deprecated

  - Unsupported on CollectionProxy.

  #### Inherit Doc

  Implementation of LayerExtensionCollection.notifyChange

  Inherited from InitializableCollectionProxy.notifyChange

- notifyChange(propertyKey): void

- #### Parameters

  - propertyKey: keyof LayerExtensionCollectionBase

  #### Returns void

  Implementation of LayerExtensionCollection.notifyChange

  Inherited from InitializableCollectionProxy.notifyChange

### on

- on(type, listener): IHandle

- #### Parameters

  - type: "after-add"
  - listener: CollectionAfterAddEventHandler<LayerExtension<LayerExtensionProperties>>

  #### Returns IHandle

  #### Inherit Doc

  Implementation of LayerExtensionCollection.on

  Overrides InitializableCollectionProxy.on

- on(type, listener): IHandle

- #### Parameters

  - type: "after-changes"
  - listener: CollectionAfterChangesEventHandler

  #### Returns IHandle

  Implementation of LayerExtensionCollection.on

  Overrides InitializableCollectionProxy.on

- on(type, listener): IHandle

- #### Parameters

  - type: "after-remove"
  - listener: CollectionAfterRemoveEventHandler<LayerExtension<LayerExtensionProperties>>

  #### Returns IHandle

  Implementation of LayerExtensionCollection.on

  Overrides InitializableCollectionProxy.on

- on(type, listener): IHandle

- #### Parameters

  - type: "before-add"
  - listener: CollectionBeforeAddEventHandler<LayerExtension<LayerExtensionProperties>>

  #### Returns IHandle

  Implementation of LayerExtensionCollection.on

  Overrides InitializableCollectionProxy.on

- on(type, listener): IHandle

- #### Parameters

  - type: "before-changes"
  - listener: CollectionBeforeChangesEventHandler

  #### Returns IHandle

  Implementation of LayerExtensionCollection.on

  Overrides InitializableCollectionProxy.on

- on(type, listener): IHandle

- #### Parameters

  - type: "before-remove"
  - listener: CollectionBeforeRemoveEventHandler<LayerExtension<LayerExtensionProperties>>

  #### Returns IHandle

  Implementation of LayerExtensionCollection.on

  Overrides InitializableCollectionProxy.on

- on(type, listener): IHandle

- #### Parameters

  - type: "change"
  - listener: CollectionChangeEventHandler<LayerExtension<LayerExtensionProperties>>

  #### Returns IHandle

  Implementation of LayerExtensionCollection.on

  Overrides InitializableCollectionProxy.on

- on(type, listener): IHandle

- #### Parameters

  - type: string
  - listener: EventHandler

  #### Returns IHandle

  Implementation of LayerExtensionCollection.on

  Overrides InitializableCollectionProxy.on

### onMapExtensionChanged

- onMapExtensionChanged(): void

- Invoked by the parent whenever the associated map extension is updated.

  #### Returns void

### onParentInitialized

- onParentInitialized(): void

- Invoked by the parent object when it is initialized.

  #### Returns void

### pop

- pop(): LayerExtension<LayerExtensionProperties>

- Removes the last item from the collection and returns it.

  #### Returns LayerExtension<LayerExtensionProperties>

  Implementation of LayerExtensionCollection.pop

  Inherited from InitializableCollectionProxy.pop

### push

- push(item): number

- Adds an item to the end of the collection.

  #### Parameters

  - item: LayerExtension<LayerExtensionProperties>

    The item to add.

  #### Returns number

  Implementation of LayerExtensionCollection.push

  Inherited from InitializableCollectionProxy.push

### reduce

- reduce<U>(callback, initialValue?): U

- Reduces all items in the collection (from left to right) into a single variable using callback.

  #### Type Parameters

  - U

  #### Parameters

  - callback: ItemReduceCallback<LayerExtension<LayerExtensionProperties>, U>

    The function that processes each item in the Collection and appends it to the previous item.

  - `Optional` initialValue: U

    Item to use as the first element to process in callback.

  #### Returns U

  Implementation of LayerExtensionCollection.reduce

  Inherited from InitializableCollectionProxy.reduce

### reduceRight

- reduceRight<U>(callback, initialValue?): U

- Reduces all items in the collection (from right to left) into a single variable using callback.

  #### Type Parameters

  - U

  #### Parameters

  - callback: ItemReduceCallback<LayerExtension<LayerExtensionProperties>, U>

    The function that processes each item in the Collection and appends it to the previous item.

  - `Optional` initialValue: U

    Item to use as the first element to process in callback.

  #### Returns U

  Implementation of LayerExtensionCollection.reduceRight

  Inherited from InitializableCollectionProxy.reduceRight

### remove

- remove(item): LayerExtension<LayerExtensionProperties>

- Removes an item from the collection.

  #### Parameters

  - item: LayerExtension<LayerExtensionProperties>

    The item to remove.

  #### Returns LayerExtension<LayerExtensionProperties>

  Implementation of LayerExtensionCollection.remove

  Inherited from InitializableCollectionProxy.remove

### removeAll

- removeAll(): LayerExtension<LayerExtensionProperties>[]

- Removes all items from the collection.

  #### Returns LayerExtension<LayerExtensionProperties>[]

  Implementation of LayerExtensionCollection.removeAll

  Inherited from InitializableCollectionProxy.removeAll

### removeAt

- removeAt(index): LayerExtension<LayerExtensionProperties>

- Removes an item from the collection at a specified index.

  #### Parameters

  - index: number

    The index of the element to remove.

  #### Returns LayerExtension<LayerExtensionProperties>

  Implementation of LayerExtensionCollection.removeAt

  Overrides InitializableCollectionProxy.removeAt

### removeHandles

- removeHandles<T>(groupKey?): void

- #### Type Parameters

  - T

  #### Parameters

  - `Optional` groupKey: Exclude<T, IHandle>

  #### Returns void

  Implementation of LayerExtensionCollection.removeHandles

  Inherited from InitializableCollectionProxy.removeHandles

### removeMany

- removeMany(items): LayerExtension<LayerExtensionProperties>[]

- Removes each item in the input array. If an item is present multiple times in the collection, only the first occurrence is removed.

  #### Parameters

  - items: Collection<LayerExtension<LayerExtensionProperties>> | ArrayLike<LayerExtension<LayerExtensionProperties>>

    The items to remove.

  #### Returns LayerExtension<LayerExtensionProperties>[]

  Implementation of LayerExtensionCollection.removeMany

  Inherited from InitializableCollectionProxy.removeMany

### reorder

- reorder(layerX, index): LayerExtension<LayerExtensionProperties>

- Moves an item in the Collection to a specified index. The change event is fired after an item is moved in the Collection.

  #### Parameters

  - layerX: LayerExtension<LayerExtensionProperties>
  - index: number

    The index to move the item to.

  #### Returns LayerExtension<LayerExtensionProperties>

  Implementation of LayerExtensionCollection.reorder

  Overrides InitializableCollectionProxy.reorder

### reverse

- reverse(): this

- Reverses the collection in place.

  #### Returns this

  Implementation of LayerExtensionCollection.reverse

  Inherited from InitializableCollectionProxy.reverse

### set

- set<T>(propertyPath, value): this

- #### Type Parameters

  - T

  #### Parameters

  - propertyPath: string
  - value: T

  #### Returns this

  #### Deprecated

  - Unsupported on CollectionProxy.

  #### Inherit Doc

  Implementation of LayerExtensionCollection.set

  Inherited from InitializableCollectionProxy.set

- set(properties): this

- #### Parameters

  - properties: HashMap<unknown>

  #### Returns this

  #### Deprecated

  - Unsupported on CollectionProxy.

  #### Inherit Doc

  Implementation of LayerExtensionCollection.set

  Inherited from InitializableCollectionProxy.set

### shift

- shift(): LayerExtension<LayerExtensionProperties>

- Removes the first item from the collection (at index 0), and returns it. The remaining items of the collection are then shifted down one index from their previous location.

  #### Returns LayerExtension<LayerExtensionProperties>

  Implementation of LayerExtensionCollection.shift

  Inherited from InitializableCollectionProxy.shift

### slice

- slice(begin?, end?): Collection<LayerExtension<LayerExtensionProperties>>

- Creates a new Collection comprised of a portion of the original Collection.

  #### Parameters

  - `Optional` begin: number

    The index of the first item to extract.

  - `Optional` end: number

    The index of the last item to extract.

  #### Returns Collection<LayerExtension<LayerExtensionProperties>>

  Implementation of LayerExtensionCollection.slice

  Inherited from InitializableCollectionProxy.slice

### some

- some(callback): boolean

- Determines whether an item in the Collection passes a test defined by callback. Each item in the Collection is passed into the callback until one returns a value of true.

  #### Parameters

  - callback: ItemTestCallback<LayerExtension<LayerExtensionProperties>>

    The function that defines the test for each Collection item.

  #### Returns boolean

  Implementation of LayerExtensionCollection.some

  Inherited from InitializableCollectionProxy.some

### sort

- sort(compareFunction?): this

- Sorts the Collection in place.

  #### Parameters

  - `Optional` compareFunction: ((a: LayerExtension<LayerExtensionProperties>, b: LayerExtension<LayerExtensionProperties>) => number)

    The function that defines a comparison of two items in the collection.

    - - (a, b): number

      - #### Parameters

        - a: LayerExtension<LayerExtensionProperties>
        - b: LayerExtension<LayerExtensionProperties>

        #### Returns number

  #### Returns this

  Implementation of LayerExtensionCollection.sort

  Overrides InitializableCollectionProxy.sort

### splice

- splice(start, deleteCount, ...items): LayerExtension<LayerExtensionProperties>[]

- Removes existing items and/or adds new items to the collection.

  #### Parameters

  - start: number

    Index at which to start changing the collection.

  - deleteCount: number

    Indicates the number of collection items to remove. If 0 is used then no elements are removed and at least one new item should be added in the items parameter.

  - `Rest`...items: LayerExtension<LayerExtensionProperties>[]

    The item or comma-separated list of items to add to the collection.

  #### Returns LayerExtension<LayerExtensionProperties>[]

  An array of the deleted items formerly part of the collection.

  Implementation of LayerExtensionCollection.splice

  Inherited from InitializableCollectionProxy.splice

### toArray

- toArray(): LayerExtension<LayerExtensionProperties>[]

- Returns a new array object containing the Collection's items.

  #### Returns LayerExtension<LayerExtensionProperties>[]

  Implementation of LayerExtensionCollection.toArray

  Inherited from InitializableCollectionProxy.toArray

### unshift

- unshift(item): number

- Adds an item to the beginning of the collection.

  #### Parameters

  - item: LayerExtension<LayerExtensionProperties>

    The item to add.

  #### Returns number

  Implementation of LayerExtensionCollection.unshift

  Inherited from InitializableCollectionProxy.unshift

### watch

- watch(path, callback, sync?): IHandle

- #### Parameters

  - path: string | string[]
  - callback: ((newValue: any, oldValue: any, propertyName: string, target: any) => void)
    - - (newValue, oldValue, propertyName, target): void

      - #### Parameters

        - newValue: any
        - oldValue: any
        - propertyName: string
        - target: any

        #### Returns void

  - `Optional` sync: boolean

  #### Returns IHandle

  #### Deprecated

  - Unsupported on CollectionProxy.

  #### Inherit Doc

  Implementation of LayerExtensionCollection.watch

  Inherited from InitializableCollectionProxy.watch