> For the complete documentation index, see [llms.txt](https://goreng-studios.gitbook.io/goreng-studios/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://goreng-studios.gitbook.io/goreng-studios/api-reference/scene-management/idataservice.md).

# IDataService

### Members

***

### Methods

* **`LoadList<T>(string key)`**
  * **Description:** Loads a list of assets of type `T` associated with the specified key.
  * **Type Parameters:**
    * `T`: The type of assets to load.
  * **Parameters:**
    * `key`: The key associated with the assets to load.
  * **Returns:** A task representing the asynchronous operation. The task result contains a list of loaded assets of type `T`.
* **`LoadAssetAsync<T>(string key)`**
  * **Description:** Loads a single asset of type `T` associated with the specified key.
  * **Type Parameters:**
    * `T`: The type of the asset to load.
  * **Parameters:**
    * `key`: The key associated with the asset to load.
  * **Returns:** A task representing the asynchronous operation. The task result contains the loaded asset of type `T`.
* **`LoadAndInstantiateAsync<T>(string key)`**
  * **Description:** Asynchronously loads an asset by key, instantiates it, and retrieves a component of type `T` from the instantiated GameObject.
  * **Type Parameters:**
    * `T`: The type of the component to retrieve from the instantiated asset.
  * **Parameters:**
    * `key`: The key of the asset to load and instantiate.
  * **Returns:** A task representing the asynchronous operation. The task result contains the component of type `T` from the instantiated asset. Returns `null` if the asset fails to load, instantiate, or does not contain the component.

***
