> ## 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.

# Typescript: DataTerraformRemoteStateConsulConfig

> CDKTN Core API Reference for DataTerraformRemoteStateConsulConfig in Typescript.

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

```typescript theme={null}
import { DataTerraformRemoteStateConsulConfig } from 'cdktn'

const dataTerraformRemoteStateConsulConfig: DataTerraformRemoteStateConsulConfig = { ... }
```

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

| **Name**                                                                                                | **Type**                              | **Description**                                                                                                                        |
| ------------------------------------------------------------------------------------------------------- | ------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.defaults">defaults</a></code>       | <code>\{\[ key: string ]: any}</code> | *No description.*                                                                                                                      |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.workspace">workspace</a></code>     | <code>string</code>                   | *No description.*                                                                                                                      |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.accessToken">accessToken</a></code> | <code>string</code>                   | (Required) Access token.                                                                                                               |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.path">path</a></code>               | <code>string</code>                   | (Required) Path in the Consul KV store.                                                                                                |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.address">address</a></code>         | <code>string</code>                   | (Optional) DNS name and port of your Consul endpoint specified in the format dnsname:port.                                             |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.caFile">caFile</a></code>           | <code>string</code>                   | (Optional) A path to a PEM-encoded certificate authority used to verify the remote agent's certificate.                                |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.certFile">certFile</a></code>       | <code>string</code>                   | (Optional) A path to a PEM-encoded certificate provided to the remote agent;                                                           |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.datacenter">datacenter</a></code>   | <code>string</code>                   | (Optional) The datacenter to use.                                                                                                      |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.gzip">gzip</a></code>               | <code>boolean</code>                  | (Optional) true to compress the state data using gzip, or false (the default) to leave it uncompressed.                                |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.httpAuth">httpAuth</a></code>       | <code>string</code>                   | (Optional) HTTP Basic Authentication credentials to be used when communicating with Consul, in the format of either user or user:pass. |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.keyFile">keyFile</a></code>         | <code>string</code>                   | (Optional) A path to a PEM-encoded private key, required if cert\_file is specified.                                                   |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.lock">lock</a></code>               | <code>boolean</code>                  | (Optional) false to disable locking.                                                                                                   |
| <code><a href="#cdktn.DataTerraformRemoteStateConsulConfig.property.scheme">scheme</a></code>           | <code>string</code>                   | (Optional) Specifies what protocol to use when talking to the given address,either http or https.                                      |

***

### `defaults`<sup>Optional</sup> <a name="defaults" id="cdktn.DataTerraformRemoteStateConsulConfig.property.defaults" />

```typescript theme={null}
public readonly defaults: {[ key: string ]: any};
```

* *Type:* \{\[ key: string ]: any}

***

### `workspace`<sup>Optional</sup> <a name="workspace" id="cdktn.DataTerraformRemoteStateConsulConfig.property.workspace" />

```typescript theme={null}
public readonly workspace: string;
```

* *Type:* string

***

### `accessToken`<sup>Required</sup> <a name="accessToken" id="cdktn.DataTerraformRemoteStateConsulConfig.property.accessToken" />

```typescript theme={null}
public readonly accessToken: string;
```

* *Type:* string

(Required) Access token.

***

### `path`<sup>Required</sup> <a name="path" id="cdktn.DataTerraformRemoteStateConsulConfig.property.path" />

```typescript theme={null}
public readonly path: string;
```

* *Type:* string

(Required) Path in the Consul KV store.

***

### `address`<sup>Optional</sup> <a name="address" id="cdktn.DataTerraformRemoteStateConsulConfig.property.address" />

```typescript theme={null}
public readonly address: string;
```

* *Type:* string

(Optional) DNS name and port of your Consul endpoint specified in the format dnsname:port.

Defaults to the local agent HTTP listener.

***

### `caFile`<sup>Optional</sup> <a name="caFile" id="cdktn.DataTerraformRemoteStateConsulConfig.property.caFile" />

```typescript theme={null}
public readonly caFile: string;
```

* *Type:* string

(Optional) A path to a PEM-encoded certificate authority used to verify the remote agent's certificate.

***

### `certFile`<sup>Optional</sup> <a name="certFile" id="cdktn.DataTerraformRemoteStateConsulConfig.property.certFile" />

```typescript theme={null}
public readonly certFile: string;
```

* *Type:* string

(Optional) A path to a PEM-encoded certificate provided to the remote agent;

requires use of key\_file.

***

### `datacenter`<sup>Optional</sup> <a name="datacenter" id="cdktn.DataTerraformRemoteStateConsulConfig.property.datacenter" />

```typescript theme={null}
public readonly datacenter: string;
```

* *Type:* string

(Optional) The datacenter to use.

Defaults to that of the agent.

***

### `gzip`<sup>Optional</sup> <a name="gzip" id="cdktn.DataTerraformRemoteStateConsulConfig.property.gzip" />

```typescript theme={null}
public readonly gzip: boolean;
```

* *Type:* boolean

(Optional) true to compress the state data using gzip, or false (the default) to leave it uncompressed.

***

### `httpAuth`<sup>Optional</sup> <a name="httpAuth" id="cdktn.DataTerraformRemoteStateConsulConfig.property.httpAuth" />

```typescript theme={null}
public readonly httpAuth: string;
```

* *Type:* string

(Optional) HTTP Basic Authentication credentials to be used when communicating with Consul, in the format of either user or user:pass.

***

### `keyFile`<sup>Optional</sup> <a name="keyFile" id="cdktn.DataTerraformRemoteStateConsulConfig.property.keyFile" />

```typescript theme={null}
public readonly keyFile: string;
```

* *Type:* string

(Optional) A path to a PEM-encoded private key, required if cert\_file is specified.

***

### `lock`<sup>Optional</sup> <a name="lock" id="cdktn.DataTerraformRemoteStateConsulConfig.property.lock" />

```typescript theme={null}
public readonly lock: boolean;
```

* *Type:* boolean

(Optional) false to disable locking.

This defaults to true, but will require session permissions with Consul and
at least kv write permissions on \$path/.lock to perform locking.

***

### `scheme`<sup>Optional</sup> <a name="scheme" id="cdktn.DataTerraformRemoteStateConsulConfig.property.scheme" />

```typescript theme={null}
public readonly scheme: string;
```

* *Type:* string

(Optional) Specifies what protocol to use when talking to the given address,either http or https.

SSL support can also be triggered by setting then environment variable CONSUL\_HTTP\_SSL to true.

***
