> ## Documentation Index
> Fetch the complete documentation index at: https://cdktn.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Java: TerraformResourceConfig

> CDKTN Core API Reference for TerraformResourceConfig in Java.

## Initializer <a name="Initializer" id="cdktn.TerraformResourceConfig.Initializer" />

```java theme={null}
import io.cdktn.cdktn.TerraformResourceConfig;

TerraformResourceConfig.builder()
//  .connection(SSHProvisionerConnection|WinrmProvisionerConnection)
//  .count(java.lang.Number|TerraformCount)
//  .dependsOn(java.util.List<ITerraformDependable>)
//  .forEach(ITerraformIterator)
//  .lifecycle(TerraformResourceLifecycle)
//  .provider(TerraformProvider)
//  .provisioners(java.util.List<FileProvisioner|LocalExecProvisioner|RemoteExecProvisioner>)
    .terraformResourceType(java.lang.String)
//  .terraformGeneratorMetadata(TerraformProviderGeneratorMetadata)
    .build();
```

## Properties <a name="Properties" id="Properties" />

| **Name**                                                                                                                 | **Type**                                                                                                                                                                                                             | **Description**   |
| ------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------- |
| <code><a href="#cdktn.TerraformResourceConfig.property.connection">connection</a></code>                                 | <code><a href="#cdktn.SSHProvisionerConnection">SSHProvisionerConnection</a>\|<a href="#cdktn.WinrmProvisionerConnection">WinrmProvisionerConnection</a></code>                                                      | *No description.* |
| <code><a href="#cdktn.TerraformResourceConfig.property.count">count</a></code>                                           | <code>java.lang.Number\|<a href="#cdktn.TerraformCount">TerraformCount</a></code>                                                                                                                                    | *No description.* |
| <code><a href="#cdktn.TerraformResourceConfig.property.dependsOn">dependsOn</a></code>                                   | <code>java.util.List\<<a href="#cdktn.ITerraformDependable">ITerraformDependable</a>></code>                                                                                                                         | *No description.* |
| <code><a href="#cdktn.TerraformResourceConfig.property.forEach">forEach</a></code>                                       | <code><a href="#cdktn.ITerraformIterator">ITerraformIterator</a></code>                                                                                                                                              | *No description.* |
| <code><a href="#cdktn.TerraformResourceConfig.property.lifecycle">lifecycle</a></code>                                   | <code><a href="#cdktn.TerraformResourceLifecycle">TerraformResourceLifecycle</a></code>                                                                                                                              | *No description.* |
| <code><a href="#cdktn.TerraformResourceConfig.property.provider">provider</a></code>                                     | <code><a href="#cdktn.TerraformProvider">TerraformProvider</a></code>                                                                                                                                                | *No description.* |
| <code><a href="#cdktn.TerraformResourceConfig.property.provisioners">provisioners</a></code>                             | <code>java.util.List\<<a href="#cdktn.FileProvisioner">FileProvisioner</a>\|<a href="#cdktn.LocalExecProvisioner">LocalExecProvisioner</a>\|<a href="#cdktn.RemoteExecProvisioner">RemoteExecProvisioner</a>></code> | *No description.* |
| <code><a href="#cdktn.TerraformResourceConfig.property.terraformResourceType">terraformResourceType</a></code>           | <code>java.lang.String</code>                                                                                                                                                                                        | *No description.* |
| <code><a href="#cdktn.TerraformResourceConfig.property.terraformGeneratorMetadata">terraformGeneratorMetadata</a></code> | <code><a href="#cdktn.TerraformProviderGeneratorMetadata">TerraformProviderGeneratorMetadata</a></code>                                                                                                              | *No description.* |

***

### `connection`<sup>Optional</sup> <a name="connection" id="cdktn.TerraformResourceConfig.property.connection" />

```java theme={null}
public SSHProvisionerConnection|WinrmProvisionerConnection getConnection();
```

* *Type:* <a href="#cdktn.SSHProvisionerConnection">SSHProvisionerConnection</a>|<a href="#cdktn.WinrmProvisionerConnection">WinrmProvisionerConnection</a>

***

### `count`<sup>Optional</sup> <a name="count" id="cdktn.TerraformResourceConfig.property.count" />

```java theme={null}
public java.lang.Number|TerraformCount getCount();
```

* *Type:* java.lang.Number|<a href="#cdktn.TerraformCount">TerraformCount</a>

***

### `dependsOn`<sup>Optional</sup> <a name="dependsOn" id="cdktn.TerraformResourceConfig.property.dependsOn" />

```java theme={null}
public java.util.List<ITerraformDependable> getDependsOn();
```

* *Type:* java.util.List\<<a href="#cdktn.ITerraformDependable">ITerraformDependable</a>>

***

### `forEach`<sup>Optional</sup> <a name="forEach" id="cdktn.TerraformResourceConfig.property.forEach" />

```java theme={null}
public ITerraformIterator getForEach();
```

* *Type:* <a href="#cdktn.ITerraformIterator">ITerraformIterator</a>

***

### `lifecycle`<sup>Optional</sup> <a name="lifecycle" id="cdktn.TerraformResourceConfig.property.lifecycle" />

```java theme={null}
public TerraformResourceLifecycle getLifecycle();
```

* *Type:* <a href="#cdktn.TerraformResourceLifecycle">TerraformResourceLifecycle</a>

***

### `provider`<sup>Optional</sup> <a name="provider" id="cdktn.TerraformResourceConfig.property.provider" />

```java theme={null}
public TerraformProvider getProvider();
```

* *Type:* <a href="#cdktn.TerraformProvider">TerraformProvider</a>

***

### `provisioners`<sup>Optional</sup> <a name="provisioners" id="cdktn.TerraformResourceConfig.property.provisioners" />

```java theme={null}
public java.util.List<FileProvisioner|LocalExecProvisioner|RemoteExecProvisioner> getProvisioners();
```

* *Type:* java.util.List\<<a href="#cdktn.FileProvisioner">FileProvisioner</a>|<a href="#cdktn.LocalExecProvisioner">LocalExecProvisioner</a>|<a href="#cdktn.RemoteExecProvisioner">RemoteExecProvisioner</a>>

***

### `terraformResourceType`<sup>Required</sup> <a name="terraformResourceType" id="cdktn.TerraformResourceConfig.property.terraformResourceType" />

```java theme={null}
public java.lang.String getTerraformResourceType();
```

* *Type:* java.lang.String

***

### `terraformGeneratorMetadata`<sup>Optional</sup> <a name="terraformGeneratorMetadata" id="cdktn.TerraformResourceConfig.property.terraformGeneratorMetadata" />

```java theme={null}
public TerraformProviderGeneratorMetadata getTerraformGeneratorMetadata();
```

* *Type:* <a href="#cdktn.TerraformProviderGeneratorMetadata">TerraformProviderGeneratorMetadata</a>

***
