
# IRequiredModelList interface

*No description yet.*

```csharp
public interface IRequiredModelList : IAbstractObjectList
```

**Namespace:** ComponentLib · **Assembly:** Altium.SDK.Interfaces

**Inherits:** [IAbstractObject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IAbstractObject.md) → [IAbstractObjectList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IAbstractObjectList.md)

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [Add](#add) | `int` |  |
| [AddForModelKind](#addformodelkind) | [IRequiredModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IRequiredModel.md) |  |
| [Delete](#delete) | `void` |  |
| [Find](#find) | [IRequiredModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IRequiredModel.md) |  |
| [FindOrCreate](#findorcreate) | [IRequiredModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IRequiredModel.md) |  |
| [Get](#get) | [IRequiredModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IRequiredModel.md) |  |

### Add

*No description yet.*

```csharp
int Add(IRequiredModel argItem);
int Add(object argItem);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argItem` | [IRequiredModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IRequiredModel.md) | value |

**Returns:** `int`

The first overload is an extension method of `IRequiredModelListHelper` (`using ComponentLib;`) with typed parameters; the second is declared by the interface.

### AddForModelKind

*No description yet.*

```csharp
IRequiredModel AddForModelKind(string argModelKind);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argModelKind` | `string` | value |

**Returns:** [IRequiredModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IRequiredModel.md)

Extension method of `IRequiredModelListHelper` (`using ComponentLib;`).

### Delete

*No description yet.*

```csharp
void Delete(int argI);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argI` | `int` | value |

**Returns:** nothing (`void`)

### Find

*No description yet.*

```csharp
IRequiredModel Find(string argModelID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argModelID` | `string` | value |

**Returns:** [IRequiredModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IRequiredModel.md)

Extension method of `IRequiredModelListHelper` (`using ComponentLib;`).

### FindOrCreate

*No description yet.*

```csharp
IRequiredModel FindOrCreate(string argModelID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argModelID` | `string` | value |

**Returns:** [IRequiredModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IRequiredModel.md)

Extension method of `IRequiredModelListHelper` (`using ComponentLib;`).

### Get

*No description yet.*

```csharp
IRequiredModel Get(int argI);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argI` | `int` | value |

**Returns:** [IRequiredModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IRequiredModel.md)

Extension method of `IRequiredModelListHelper` (`using ComponentLib;`).

## Inherited members

- From [IAbstractObjectList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IAbstractObjectList.md): [Count](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IAbstractObjectList.md#count)

## Returned by

[IComponentSet.RequiredModels](https://altiumdeveloper.github.io/ad-sdk-docs/reference/componentlib/IComponentSet.md#requiredmodels)
