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

# Go: DataResource

> CDKTN Core API Reference for DataResource in Go.

The DataResource implements the standard resource lifecycle, but does not directly take any other actions.

You can use the DataResource resource without requiring or configuring a provider.

The DataResource resource is useful for storing values which need to follow a manage resource lifecycle, and for triggering provisioners when there is no other logical managed resource in which to place them.

It requires Terraform 1.4 or later.

It is also possible to generate these bindings by adding "terraform.io/builtin/terraform" to the "terraformProviders" key in your cdktf.json file and running "cdktn get".

[https://developer.hashicorp.com/terraform/language/resources/terraform-data](https://developer.hashicorp.com/terraform/language/resources/terraform-data)

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

```go theme={null}
import "github.com/open-constructs/cdk-terrain-go/cdktn"

cdktn.NewDataResource(scope Construct, id *string, config DataConfig) DataResource
```

| **Name**                                                                           | **Type**                                                           | **Description**                              |
| ---------------------------------------------------------------------------------- | ------------------------------------------------------------------ | -------------------------------------------- |
| <code><a href="#cdktn.DataResource.Initializer.parameter.scope">scope</a></code>   | <code>github.com/aws/constructs-go/constructs/v10.Construct</code> | The scope in which to define this construct. |
| <code><a href="#cdktn.DataResource.Initializer.parameter.id">id</a></code>         | <code>\*string</code>                                              | The scoped construct ID.                     |
| <code><a href="#cdktn.DataResource.Initializer.parameter.config">config</a></code> | <code><a href="#cdktn.DataConfig">DataConfig</a></code>            | *No description.*                            |

***

### `scope`<sup>Required</sup> <a name="scope" id="cdktn.DataResource.Initializer.parameter.scope" />

* *Type:* github.com/aws/constructs-go/constructs/v10.Construct

The scope in which to define this construct.

***

### `id`<sup>Required</sup> <a name="id" id="cdktn.DataResource.Initializer.parameter.id" />

* *Type:* \*string

The scoped construct ID.

Must be unique amongst siblings in the same scope

***

### `config`<sup>Optional</sup> <a name="config" id="cdktn.DataResource.Initializer.parameter.config" />

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

***

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

| **Name**                                                                                           | **Description**                                                                                                                     |
| -------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| <code><a href="#cdktn.DataResource.toString">ToString</a></code>                                   | Returns a string representation of this construct.                                                                                  |
| <code><a href="#cdktn.DataResource.with">With</a></code>                                           | Applies one or more mixins to this construct.                                                                                       |
| <code><a href="#cdktn.DataResource.addOverride">AddOverride</a></code>                             | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.overrideLogicalId">OverrideLogicalId</a></code>                 | Overrides the auto-generated logical ID with a specific ID.                                                                         |
| <code><a href="#cdktn.DataResource.resetOverrideLogicalId">ResetOverrideLogicalId</a></code>       | Resets a previously passed logical Id to use the auto-generated logical id again.                                                   |
| <code><a href="#cdktn.DataResource.toHclTerraform">ToHclTerraform</a></code>                       | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.toMetadata">ToMetadata</a></code>                               | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.toTerraform">ToTerraform</a></code>                             | Adds this resource to the terraform JSON output.                                                                                    |
| <code><a href="#cdktn.DataResource.addMoveTarget">AddMoveTarget</a></code>                         | Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move. |
| <code><a href="#cdktn.DataResource.getAnyMapAttribute">GetAnyMapAttribute</a></code>               | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.getBooleanAttribute">GetBooleanAttribute</a></code>             | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.getBooleanMapAttribute">GetBooleanMapAttribute</a></code>       | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.getListAttribute">GetListAttribute</a></code>                   | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.getNumberAttribute">GetNumberAttribute</a></code>               | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.getNumberListAttribute">GetNumberListAttribute</a></code>       | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.getNumberMapAttribute">GetNumberMapAttribute</a></code>         | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.getStringAttribute">GetStringAttribute</a></code>               | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.getStringMapAttribute">GetStringMapAttribute</a></code>         | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.hasResourceMove">HasResourceMove</a></code>                     | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.importFrom">ImportFrom</a></code>                               | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.interpolationForAttribute">InterpolationForAttribute</a></code> | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.moveFromId">MoveFromId</a></code>                               | Move the resource corresponding to "id" to this resource.                                                                           |
| <code><a href="#cdktn.DataResource.moveTo">MoveTo</a></code>                                       | Moves this resource to the target resource given by moveTarget.                                                                     |
| <code><a href="#cdktn.DataResource.moveToId">MoveToId</a></code>                                   | Moves this resource to the resource corresponding to "id".                                                                          |
| <code><a href="#cdktn.DataResource.resetInput">ResetInput</a></code>                               | *No description.*                                                                                                                   |
| <code><a href="#cdktn.DataResource.resetTriggersReplace">ResetTriggersReplace</a></code>           | *No description.*                                                                                                                   |

***

### `ToString` <a name="ToString" id="cdktn.DataResource.toString" />

```go theme={null}
func ToString() *string
```

Returns a string representation of this construct.

### `With` <a name="With" id="cdktn.DataResource.with" />

```go theme={null}
func With(mixins ...IMixin) IConstruct
```

Applies one or more mixins to this construct.

Mixins are applied in order. The list of constructs is captured at the
start of the call, so constructs added by a mixin will not be visited.
Use multiple `with()` calls if subsequent mixins should apply to added
constructs.

#### `mixins`<sup>Required</sup> <a name="mixins" id="cdktn.DataResource.with.parameter.mixins" />

* *Type:* ...github.com/aws/constructs-go/constructs/v10.IMixin

The mixins to apply.

***

### `AddOverride` <a name="AddOverride" id="cdktn.DataResource.addOverride" />

```go theme={null}
func AddOverride(path *string, value interface{})
```

#### `path`<sup>Required</sup> <a name="path" id="cdktn.DataResource.addOverride.parameter.path" />

* *Type:* \*string

***

#### `value`<sup>Required</sup> <a name="value" id="cdktn.DataResource.addOverride.parameter.value" />

* *Type:* interface\{}

***

### `OverrideLogicalId` <a name="OverrideLogicalId" id="cdktn.DataResource.overrideLogicalId" />

```go theme={null}
func OverrideLogicalId(newLogicalId *string)
```

Overrides the auto-generated logical ID with a specific ID.

#### `newLogicalId`<sup>Required</sup> <a name="newLogicalId" id="cdktn.DataResource.overrideLogicalId.parameter.newLogicalId" />

* *Type:* \*string

The new logical ID to use for this stack element.

***

### `ResetOverrideLogicalId` <a name="ResetOverrideLogicalId" id="cdktn.DataResource.resetOverrideLogicalId" />

```go theme={null}
func ResetOverrideLogicalId()
```

Resets a previously passed logical Id to use the auto-generated logical id again.

### `ToHclTerraform` <a name="ToHclTerraform" id="cdktn.DataResource.toHclTerraform" />

```go theme={null}
func ToHclTerraform() interface{}
```

### `ToMetadata` <a name="ToMetadata" id="cdktn.DataResource.toMetadata" />

```go theme={null}
func ToMetadata() interface{}
```

### `ToTerraform` <a name="ToTerraform" id="cdktn.DataResource.toTerraform" />

```go theme={null}
func ToTerraform() interface{}
```

Adds this resource to the terraform JSON output.

### `AddMoveTarget` <a name="AddMoveTarget" id="cdktn.DataResource.addMoveTarget" />

```go theme={null}
func AddMoveTarget(moveTarget *string)
```

Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move.

#### `moveTarget`<sup>Required</sup> <a name="moveTarget" id="cdktn.DataResource.addMoveTarget.parameter.moveTarget" />

* *Type:* \*string

The string move target that will correspond to this resource.

***

### `GetAnyMapAttribute` <a name="GetAnyMapAttribute" id="cdktn.DataResource.getAnyMapAttribute" />

```go theme={null}
func GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.getAnyMapAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `GetBooleanAttribute` <a name="GetBooleanAttribute" id="cdktn.DataResource.getBooleanAttribute" />

```go theme={null}
func GetBooleanAttribute(terraformAttribute *string) IResolvable
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.getBooleanAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `GetBooleanMapAttribute` <a name="GetBooleanMapAttribute" id="cdktn.DataResource.getBooleanMapAttribute" />

```go theme={null}
func GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.getBooleanMapAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `GetListAttribute` <a name="GetListAttribute" id="cdktn.DataResource.getListAttribute" />

```go theme={null}
func GetListAttribute(terraformAttribute *string) *[]*string
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.getListAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `GetNumberAttribute` <a name="GetNumberAttribute" id="cdktn.DataResource.getNumberAttribute" />

```go theme={null}
func GetNumberAttribute(terraformAttribute *string) *f64
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.getNumberAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `GetNumberListAttribute` <a name="GetNumberListAttribute" id="cdktn.DataResource.getNumberListAttribute" />

```go theme={null}
func GetNumberListAttribute(terraformAttribute *string) *[]*f64
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.getNumberListAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `GetNumberMapAttribute` <a name="GetNumberMapAttribute" id="cdktn.DataResource.getNumberMapAttribute" />

```go theme={null}
func GetNumberMapAttribute(terraformAttribute *string) *map[string]*f64
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.getNumberMapAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `GetStringAttribute` <a name="GetStringAttribute" id="cdktn.DataResource.getStringAttribute" />

```go theme={null}
func GetStringAttribute(terraformAttribute *string) *string
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.getStringAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `GetStringMapAttribute` <a name="GetStringMapAttribute" id="cdktn.DataResource.getStringMapAttribute" />

```go theme={null}
func GetStringMapAttribute(terraformAttribute *string) *map[string]*string
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.getStringMapAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `HasResourceMove` <a name="HasResourceMove" id="cdktn.DataResource.hasResourceMove" />

```go theme={null}
func HasResourceMove() interface{}
```

### `ImportFrom` <a name="ImportFrom" id="cdktn.DataResource.importFrom" />

```go theme={null}
func ImportFrom(id *string, provider TerraformProvider)
```

#### `id`<sup>Required</sup> <a name="id" id="cdktn.DataResource.importFrom.parameter.id" />

* *Type:* \*string

***

#### `provider`<sup>Optional</sup> <a name="provider" id="cdktn.DataResource.importFrom.parameter.provider" />

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

***

### `InterpolationForAttribute` <a name="InterpolationForAttribute" id="cdktn.DataResource.interpolationForAttribute" />

```go theme={null}
func InterpolationForAttribute(terraformAttribute *string) IResolvable
```

#### `terraformAttribute`<sup>Required</sup> <a name="terraformAttribute" id="cdktn.DataResource.interpolationForAttribute.parameter.terraformAttribute" />

* *Type:* \*string

***

### `MoveFromId` <a name="MoveFromId" id="cdktn.DataResource.moveFromId" />

```go theme={null}
func MoveFromId(id *string)
```

Move the resource corresponding to "id" to this resource.

Note that the resource being moved from must be marked as moved using it's instance function.

#### `id`<sup>Required</sup> <a name="id" id="cdktn.DataResource.moveFromId.parameter.id" />

* *Type:* \*string

Full id of resource being moved from, e.g. "aws\_s3\_bucket.example".

***

### `MoveTo` <a name="MoveTo" id="cdktn.DataResource.moveTo" />

```go theme={null}
func MoveTo(moveTarget *string, index interface{})
```

Moves this resource to the target resource given by moveTarget.

#### `moveTarget`<sup>Required</sup> <a name="moveTarget" id="cdktn.DataResource.moveTo.parameter.moveTarget" />

* *Type:* \*string

The previously set user defined string set by .addMoveTarget() corresponding to the resource to move to.

***

#### `index`<sup>Optional</sup> <a name="index" id="cdktn.DataResource.moveTo.parameter.index" />

* *Type:* interface\{}

Optional The index corresponding to the key the resource is to appear in the foreach of a resource to move to.

***

### `MoveToId` <a name="MoveToId" id="cdktn.DataResource.moveToId" />

```go theme={null}
func MoveToId(id *string)
```

Moves this resource to the resource corresponding to "id".

#### `id`<sup>Required</sup> <a name="id" id="cdktn.DataResource.moveToId.parameter.id" />

* *Type:* \*string

Full id of resource to move to, e.g. "aws\_s3\_bucket.example".

***

### `ResetInput` <a name="ResetInput" id="cdktn.DataResource.resetInput" />

```go theme={null}
func ResetInput()
```

### `ResetTriggersReplace` <a name="ResetTriggersReplace" id="cdktn.DataResource.resetTriggersReplace" />

```go theme={null}
func ResetTriggersReplace()
```

## Static Functions <a name="Static Functions" id="Static Functions" />

| **Name**                                                                                       | **Description**                                                                               |
| ---------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| <code><a href="#cdktn.DataResource.isConstruct">IsConstruct</a></code>                         | Checks if `x` is a construct.                                                                 |
| <code><a href="#cdktn.DataResource.isTerraformElement">IsTerraformElement</a></code>           | *No description.*                                                                             |
| <code><a href="#cdktn.DataResource.isTerraformResource">IsTerraformResource</a></code>         | *No description.*                                                                             |
| <code><a href="#cdktn.DataResource.generateConfigForImport">GenerateConfigForImport</a></code> | Generates CDKTN code for importing a Data resource upon running "cdktn plan \< stack-name >". |

***

### `IsConstruct` <a name="IsConstruct" id="cdktn.DataResource.isConstruct" />

```go theme={null}
import "github.com/open-constructs/cdk-terrain-go/cdktn"

cdktn.DataResource_IsConstruct(x interface{}) *bool
```

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct`
instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on
disk are seen as independent, completely different libraries. As a
consequence, the class `Construct` in each copy of the `constructs` library
is seen as a different class, and an instance of one class will not test as
`instanceof` the other class. `npm install` will not create installations
like this, but users may manually symlink construct libraries together or
use a monorepo tool: in those cases, multiple copies of the `constructs`
library can be accidentally installed, and `instanceof` will behave
unpredictably. It is safest to avoid using `instanceof`, and using
this type-testing method instead.

#### `x`<sup>Required</sup> <a name="x" id="cdktn.DataResource.isConstruct.parameter.x" />

* *Type:* interface\{}

Any object.

***

### `IsTerraformElement` <a name="IsTerraformElement" id="cdktn.DataResource.isTerraformElement" />

```go theme={null}
import "github.com/open-constructs/cdk-terrain-go/cdktn"

cdktn.DataResource_IsTerraformElement(x interface{}) *bool
```

#### `x`<sup>Required</sup> <a name="x" id="cdktn.DataResource.isTerraformElement.parameter.x" />

* *Type:* interface\{}

***

### `IsTerraformResource` <a name="IsTerraformResource" id="cdktn.DataResource.isTerraformResource" />

```go theme={null}
import "github.com/open-constructs/cdk-terrain-go/cdktn"

cdktn.DataResource_IsTerraformResource(x interface{}) *bool
```

#### `x`<sup>Required</sup> <a name="x" id="cdktn.DataResource.isTerraformResource.parameter.x" />

* *Type:* interface\{}

***

### `GenerateConfigForImport` <a name="GenerateConfigForImport" id="cdktn.DataResource.generateConfigForImport" />

```go theme={null}
import "github.com/open-constructs/cdk-terrain-go/cdktn"

cdktn.DataResource_GenerateConfigForImport(scope Construct, importToId *string, importFromId *string, provider TerraformProvider) ImportableResource
```

Generates CDKTN code for importing a Data resource upon running "cdktn plan \< stack-name >".

#### `scope`<sup>Required</sup> <a name="scope" id="cdktn.DataResource.generateConfigForImport.parameter.scope" />

* *Type:* github.com/aws/constructs-go/constructs/v10.Construct

The scope in which to define this construct.

***

#### `importToId`<sup>Required</sup> <a name="importToId" id="cdktn.DataResource.generateConfigForImport.parameter.importToId" />

* *Type:* \*string

The construct id used in the generated config for the Data to import.

***

#### `importFromId`<sup>Required</sup> <a name="importFromId" id="cdktn.DataResource.generateConfigForImport.parameter.importFromId" />

* *Type:* \*string

The id of the existing Data that should be imported.

Refer to the [import section](https://terraform.io/providers/builtin/terraform/latest/docs/resources/data#import) in the documentation of this resource for the id to use

***

#### `provider`<sup>Optional</sup> <a name="provider" id="cdktn.DataResource.generateConfigForImport.parameter.provider" />

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

? Optional instance of the provider where the Data to import is found.

***

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

| **Name**                                                                                                      | **Type**                                                                                                | **Description**                                                                                                   |
| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| <code><a href="#cdktn.DataResource.property.node">Node</a></code>                                             | <code>github.com/aws/constructs-go/constructs/v10.Node</code>                                           | The tree node.                                                                                                    |
| <code><a href="#cdktn.DataResource.property.cdktfStack">CdktfStack</a></code>                                 | <code><a href="#cdktn.TerraformStack">TerraformStack</a></code>                                         | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.fqn">Fqn</a></code>                                               | <code>\*string</code>                                                                                   | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.friendlyUniqueId">FriendlyUniqueId</a></code>                     | <code>\*string</code>                                                                                   | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.terraformMetaArguments">TerraformMetaArguments</a></code>         | <code>\*map\[string]interface\{}</code>                                                                 | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.terraformResourceType">TerraformResourceType</a></code>           | <code>\*string</code>                                                                                   | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.terraformGeneratorMetadata">TerraformGeneratorMetadata</a></code> | <code><a href="#cdktn.TerraformProviderGeneratorMetadata">TerraformProviderGeneratorMetadata</a></code> | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.connection">Connection</a></code>                                 | <code>interface\{}</code>                                                                               | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.count">Count</a></code>                                           | <code>interface\{}</code>                                                                               | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.dependsOn">DependsOn</a></code>                                   | <code>\*\[]\*string</code>                                                                              | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.forEach">ForEach</a></code>                                       | <code><a href="#cdktn.ITerraformIterator">ITerraformIterator</a></code>                                 | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.lifecycle">Lifecycle</a></code>                                   | <code><a href="#cdktn.TerraformResourceLifecycle">TerraformResourceLifecycle</a></code>                 | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.provider">Provider</a></code>                                     | <code><a href="#cdktn.TerraformProvider">TerraformProvider</a></code>                                   | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.provisioners">Provisioners</a></code>                             | <code>\*\[]interface\{}</code>                                                                          | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.id">Id</a></code>                                                 | <code>\*string</code>                                                                                   | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.output">Output</a></code>                                         | <code><a href="#cdktn.AnyMap">AnyMap</a></code>                                                         | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.inputInput">InputInput</a></code>                                 | <code>\*map\[string]interface\{}</code>                                                                 | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.triggersReplaceInput">TriggersReplaceInput</a></code>             | <code>\*map\[string]interface\{}</code>                                                                 | *No description.*                                                                                                 |
| <code><a href="#cdktn.DataResource.property.input">Input</a></code>                                           | <code>\*map\[string]interface\{}</code>                                                                 | (Optional) A value which will be stored in the instance state, and reflected in the output attribute after apply. |
| <code><a href="#cdktn.DataResource.property.triggersReplace">TriggersReplace</a></code>                       | <code>\*map\[string]interface\{}</code>                                                                 | (Optional) A value which is stored in the instance state, and will force replacement when the value changes.      |

***

### `Node`<sup>Required</sup> <a name="Node" id="cdktn.DataResource.property.node" />

```go theme={null}
func Node() Node
```

* *Type:* github.com/aws/constructs-go/constructs/v10.Node

The tree node.

***

### `CdktfStack`<sup>Required</sup> <a name="CdktfStack" id="cdktn.DataResource.property.cdktfStack" />

```go theme={null}
func CdktfStack() TerraformStack
```

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

***

### `Fqn`<sup>Required</sup> <a name="Fqn" id="cdktn.DataResource.property.fqn" />

```go theme={null}
func Fqn() *string
```

* *Type:* \*string

***

### `FriendlyUniqueId`<sup>Required</sup> <a name="FriendlyUniqueId" id="cdktn.DataResource.property.friendlyUniqueId" />

```go theme={null}
func FriendlyUniqueId() *string
```

* *Type:* \*string

***

### `TerraformMetaArguments`<sup>Required</sup> <a name="TerraformMetaArguments" id="cdktn.DataResource.property.terraformMetaArguments" />

```go theme={null}
func TerraformMetaArguments() *map[string]interface{}
```

* *Type:* \*map\[string]interface\{}

***

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

```go theme={null}
func TerraformResourceType() *string
```

* *Type:* \*string

***

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

```go theme={null}
func TerraformGeneratorMetadata() TerraformProviderGeneratorMetadata
```

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

***

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

```go theme={null}
func Connection() interface{}
```

* *Type:* interface\{}

***

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

```go theme={null}
func Count() interface{}
```

* *Type:* interface\{}

***

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

```go theme={null}
func DependsOn() *[]*string
```

* *Type:* \*\[]\*string

***

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

```go theme={null}
func ForEach() ITerraformIterator
```

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

***

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

```go theme={null}
func Lifecycle() TerraformResourceLifecycle
```

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

***

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

```go theme={null}
func Provider() TerraformProvider
```

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

***

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

```go theme={null}
func Provisioners() *[]interface{}
```

* *Type:* \*\[]interface\{}

***

### `Id`<sup>Required</sup> <a name="Id" id="cdktn.DataResource.property.id" />

```go theme={null}
func Id() *string
```

* *Type:* \*string

***

### `Output`<sup>Required</sup> <a name="Output" id="cdktn.DataResource.property.output" />

```go theme={null}
func Output() AnyMap
```

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

***

### `InputInput`<sup>Optional</sup> <a name="InputInput" id="cdktn.DataResource.property.inputInput" />

```go theme={null}
func InputInput() *map[string]interface{}
```

* *Type:* \*map\[string]interface\{}

***

### `TriggersReplaceInput`<sup>Optional</sup> <a name="TriggersReplaceInput" id="cdktn.DataResource.property.triggersReplaceInput" />

```go theme={null}
func TriggersReplaceInput() *map[string]interface{}
```

* *Type:* \*map\[string]interface\{}

***

### `Input`<sup>Required</sup> <a name="Input" id="cdktn.DataResource.property.input" />

```go theme={null}
func Input() *map[string]interface{}
```

* *Type:* \*map\[string]interface\{}

(Optional) A value which will be stored in the instance state, and reflected in the output attribute after apply.

[https://developer.hashicorp.com/terraform/language/resources/terraform-data#input](https://developer.hashicorp.com/terraform/language/resources/terraform-data#input)

***

### `TriggersReplace`<sup>Required</sup> <a name="TriggersReplace" id="cdktn.DataResource.property.triggersReplace" />

```go theme={null}
func TriggersReplace() *map[string]interface{}
```

* *Type:* \*map\[string]interface\{}

(Optional) A value which is stored in the instance state, and will force replacement when the value changes.

[https://developer.hashicorp.com/terraform/language/resources/terraform-data#triggers\\\_replace](https://developer.hashicorp.com/terraform/language/resources/terraform-data#triggers\\_replace)

***

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

| **Name**                                                                              | **Type**              | **Description**   |
| ------------------------------------------------------------------------------------- | --------------------- | ----------------- |
| <code><a href="#cdktn.DataResource.property.tfResourceType">TfResourceType</a></code> | <code>\*string</code> | *No description.* |

***

### `TfResourceType`<sup>Required</sup> <a name="TfResourceType" id="cdktn.DataResource.property.tfResourceType" />

```go theme={null}
func TfResourceType() *string
```

* *Type:* \*string

***
