---
title: "DataTransferItemList | JavaScript maps SDK"
description: "Documentation for MapTiler SDK"
---

# Interface DataTransferItemList

The **`DataTransferItemList`** object is a list of DataTransferItem objects representing items being dragged. During a drag operation, each DragEvent has a dataTransfer property and that property is a DataTransferItemList.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList)

interface DataTransferItemList {  
    [length](#length): number;  
    ["\[iterator\]"](#iterator-1)(): [ArrayIterator](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayIterator/)<[DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/)\>;  
    [add](#add-1)(data: string, type: string): [DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/) | null;  
    [add](#add-2)(data: File): [DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/) | null;  
    [clear](#clear-1)(): void;  
    [remove](#remove-1)(index: number): void;  
    \[index: number\]: [DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/);  
}

#### Indexable

-   \[index: number\]: [DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/)
    

##### Index

### Properties[](#properties)

[length](#length)

### Methods[](#methods)

[\[iterator\]](#iterator) [add](#add) [clear](#clear) [remove](#remove)

## Properties[](#properties-1)

### `Readonly`length[](#length)

length: number

The read-only **`length`** property of the DataTransferItemList interface returns the number of items currently in the drag item list.

[MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/length)

## Methods[](#methods-1)

### \[iterator\][](#iterator)

-   "\[iterator\]"(): [ArrayIterator](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayIterator/)<[DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/)\>[](#iterator-1)
    
    #### Returns [ArrayIterator](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.ArrayIterator/)<[DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/)\>
    

### add[](#add)

-   add(data: string, type: string): [DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/) | null[](#add-1)
    
    The **`DataTransferItemList.add()`** method creates a new DataTransferItem using the specified data and adds it to the drag data list. The item may be a File or a string of a given type. If the item is successfully added to the list, the newly-created DataTransferItem object is returned.
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/add)
    
    #### Parameters
    
    -   data: string
    -   type: string
    
    #### Returns [DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/) | null
    
-   add(data: File): [DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/) | null[](#add-2)
    
    #### Parameters
    
    -   data: File
    
    #### Returns [DataTransferItem](https://docs.maptiler.com/sdk-js/api-reference/interfaces/Externals.DataTransferItem/) | null
    

### clear[](#clear)

-   clear(): void[](#clear-1)
    
    The DataTransferItemList method **`clear()`** removes all DataTransferItem objects from the drag data items list, leaving the list empty.
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/clear)
    
    #### Returns void
    

### remove[](#remove)

-   remove(index: number): void[](#remove-1)
    
    The **`DataTransferItemList.remove()`** method removes the DataTransferItem at the specified index from the list. If the index is less than zero or greater than one less than the length of the list, the list will not be changed.
    
    [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/remove)
    
    #### Parameters
    
    -   index: number
    
    #### Returns void
