Skip to content

Instantly share code, notes, and snippets.

@DanielMSchmidt
Created November 30, 2022 15:33
Show Gist options
  • Save DanielMSchmidt/e871aed648219d3045ce0cc2f298d3f5 to your computer and use it in GitHub Desktop.
Save DanielMSchmidt/e871aed648219d3045ce0cc2f298d3f5 to your computer and use it in GitHub Desktop.
#!/usr/bin/env python
import os
from constructs import Construct
from cdktf import App, Fn, TerraformStack, Token, TerraformOutput, TerraformIterator, Token
import imports.edge as edge
class ReferenceStack(TerraformStack):
def __init__(self, scope, id):
super().__init__(scope, id)
edge.provider.EdgeProvider(self, "edge",
reqstr="reqstr",
reqnum=123,
reqbool=True
)
edge.optional_attribute_resource.OptionalAttributeResource(
self, "null", bool=Token.null_value())
res = edge.optional_attribute_resource.OptionalAttributeResource(
self, "test")
print(res.bool)
print(res.str)
print(res.num)
# plain values
edge.required_attribute_resource.RequiredAttributeResource(self, "plain",
bool=res.bool,
str=res.str,
num=res.num,
str_list=res.str_list,
num_list=res.num_list,
bool_list=res.bool_list
)
app = App()
ReferenceStack(app, "reference")
app.synth()
'''
# `optional_attribute_resource`
Refer to the Terraform Registory for docs: [`optional_attribute_resource`](https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource).
'''
import abc
import builtins
import datetime
import enum
import typing
import jsii
import publication
import typing_extensions
from typeguard import check_type
from .._jsii import *
import cdktf
import constructs
class OptionalAttributeResource(
cdktf.TerraformResource,
metaclass=jsii.JSIIMeta,
jsii_type="edge.optionalAttributeResource.OptionalAttributeResource",
):
'''Represents a {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource optional_attribute_resource}.'''
def __init__(
self,
scope: constructs.Construct,
id: builtins.str,
*,
bool: typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]] = None,
bool_list: typing.Optional[typing.Union[cdktf.IResolvable, typing.Sequence[typing.Union[builtins.bool, cdktf.IResolvable]]]] = None,
num: typing.Optional[jsii.Number] = None,
num_list: typing.Optional[typing.Sequence[jsii.Number]] = None,
str: typing.Optional[builtins.str] = None,
str_list: typing.Optional[typing.Sequence[builtins.str]] = None,
connection: typing.Optional[typing.Union[typing.Union[cdktf.SSHProvisionerConnection, typing.Dict[str, typing.Any]], typing.Union[cdktf.WinrmProvisionerConnection, typing.Dict[str, typing.Any]]]] = None,
count: typing.Optional[jsii.Number] = None,
depends_on: typing.Optional[typing.Sequence[cdktf.ITerraformDependable]] = None,
for_each: typing.Optional[cdktf.ITerraformIterator] = None,
lifecycle: typing.Optional[typing.Union[cdktf.TerraformResourceLifecycle, typing.Dict[str, typing.Any]]] = None,
provider: typing.Optional[cdktf.TerraformProvider] = None,
provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[cdktf.FileProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.LocalExecProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.RemoteExecProvisioner, typing.Dict[str, typing.Any]]]]] = None,
) -> None:
'''Create a new {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource optional_attribute_resource} Resource.
:param scope: The scope in which to define this construct.
:param id: The scoped construct ID. Must be unique amongst siblings in the same scope
:param bool: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#bool OptionalAttributeResource#bool}.
:param bool_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#boolList OptionalAttributeResource#boolList}.
:param num: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#num OptionalAttributeResource#num}.
:param num_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#numList OptionalAttributeResource#numList}.
:param str: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#str OptionalAttributeResource#str}.
:param str_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#strList OptionalAttributeResource#strList}.
:param connection:
:param count:
:param depends_on:
:param for_each:
:param lifecycle:
:param provider:
:param provisioners:
'''
if __debug__:
def stub(
scope: constructs.Construct,
id: builtins.str,
*,
bool: typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]] = None,
bool_list: typing.Optional[typing.Union[cdktf.IResolvable, typing.Sequence[typing.Union[builtins.bool, cdktf.IResolvable]]]] = None,
num: typing.Optional[jsii.Number] = None,
num_list: typing.Optional[typing.Sequence[jsii.Number]] = None,
str: typing.Optional[builtins.str] = None,
str_list: typing.Optional[typing.Sequence[builtins.str]] = None,
connection: typing.Optional[typing.Union[typing.Union[cdktf.SSHProvisionerConnection, typing.Dict[str, typing.Any]], typing.Union[cdktf.WinrmProvisionerConnection, typing.Dict[str, typing.Any]]]] = None,
count: typing.Optional[jsii.Number] = None,
depends_on: typing.Optional[typing.Sequence[cdktf.ITerraformDependable]] = None,
for_each: typing.Optional[cdktf.ITerraformIterator] = None,
lifecycle: typing.Optional[typing.Union[cdktf.TerraformResourceLifecycle, typing.Dict[str, typing.Any]]] = None,
provider: typing.Optional[cdktf.TerraformProvider] = None,
provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[cdktf.FileProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.LocalExecProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.RemoteExecProvisioner, typing.Dict[str, typing.Any]]]]] = None,
) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
config = OptionalAttributeResourceConfig(
bool=bool,
bool_list=bool_list,
num=num,
num_list=num_list,
str=str,
str_list=str_list,
connection=connection,
count=count,
depends_on=depends_on,
for_each=for_each,
lifecycle=lifecycle,
provider=provider,
provisioners=provisioners,
)
jsii.create(self.__class__, self, [scope, id, config])
@jsii.member(jsii_name="resetBool")
def reset_bool(self) -> None:
return typing.cast(None, jsii.invoke(self, "resetBool", []))
@jsii.member(jsii_name="resetBoolList")
def reset_bool_list(self) -> None:
return typing.cast(None, jsii.invoke(self, "resetBoolList", []))
@jsii.member(jsii_name="resetNum")
def reset_num(self) -> None:
return typing.cast(None, jsii.invoke(self, "resetNum", []))
@jsii.member(jsii_name="resetNumList")
def reset_num_list(self) -> None:
return typing.cast(None, jsii.invoke(self, "resetNumList", []))
@jsii.member(jsii_name="resetStr")
def reset_str(self) -> None:
return typing.cast(None, jsii.invoke(self, "resetStr", []))
@jsii.member(jsii_name="resetStrList")
def reset_str_list(self) -> None:
return typing.cast(None, jsii.invoke(self, "resetStrList", []))
@jsii.member(jsii_name="synthesizeAttributes")
def _synthesize_attributes(self) -> typing.Mapping[builtins.str, typing.Any]:
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "synthesizeAttributes", []))
@jsii.python.classproperty
@jsii.member(jsii_name="tfResourceType")
def TF_RESOURCE_TYPE(cls) -> builtins.str:
return typing.cast(builtins.str, jsii.sget(cls, "tfResourceType"))
@builtins.property
@jsii.member(jsii_name="boolInput")
def bool_input(
self,
) -> typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]]:
return typing.cast(typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]], jsii.get(self, "boolInput"))
@builtins.property
@jsii.member(jsii_name="boolListInput")
def bool_list_input(
self,
) -> typing.Optional[typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]]]:
return typing.cast(typing.Optional[typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]]], jsii.get(self, "boolListInput"))
@builtins.property
@jsii.member(jsii_name="numInput")
def num_input(self) -> typing.Optional[jsii.Number]:
return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "numInput"))
@builtins.property
@jsii.member(jsii_name="numListInput")
def num_list_input(self) -> typing.Optional[typing.List[jsii.Number]]:
return typing.cast(typing.Optional[typing.List[jsii.Number]], jsii.get(self, "numListInput"))
@builtins.property
@jsii.member(jsii_name="strInput")
def str_input(self) -> typing.Optional[builtins.str]:
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "strInput"))
@builtins.property
@jsii.member(jsii_name="strListInput")
def str_list_input(self) -> typing.Optional[typing.List[builtins.str]]:
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "strListInput"))
@builtins.property
@jsii.member(jsii_name="bool")
def bool(self) -> typing.Union[builtins.bool, cdktf.IResolvable]:
return typing.cast(typing.Union[builtins.bool, cdktf.IResolvable], jsii.get(self, "bool"))
@bool.setter
def bool(self, value: typing.Union[builtins.bool, cdktf.IResolvable]) -> None:
if __debug__:
def stub(value: typing.Union[builtins.bool, cdktf.IResolvable]) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "bool", value)
@builtins.property
@jsii.member(jsii_name="boolList")
def bool_list(
self,
) -> typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]]:
return typing.cast(typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]], jsii.get(self, "boolList"))
@bool_list.setter
def bool_list(
self,
value: typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]],
) -> None:
if __debug__:
def stub(
value: typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]],
) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "boolList", value)
@builtins.property
@jsii.member(jsii_name="num")
def num(self) -> jsii.Number:
return typing.cast(jsii.Number, jsii.get(self, "num"))
@num.setter
def num(self, value: jsii.Number) -> None:
if __debug__:
def stub(value: jsii.Number) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "num", value)
@builtins.property
@jsii.member(jsii_name="numList")
def num_list(self) -> typing.List[jsii.Number]:
return typing.cast(typing.List[jsii.Number], jsii.get(self, "numList"))
@num_list.setter
def num_list(self, value: typing.List[jsii.Number]) -> None:
if __debug__:
def stub(value: typing.List[jsii.Number]) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "numList", value)
@builtins.property
@jsii.member(jsii_name="str")
def str(self) -> builtins.str:
return typing.cast(builtins.str, jsii.get(self, "str"))
@str.setter
def str(self, value: builtins.str) -> None:
if __debug__:
def stub(value: builtins.str) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "str", value)
@builtins.property
@jsii.member(jsii_name="strList")
def str_list(self) -> typing.List[builtins.str]:
return typing.cast(typing.List[builtins.str], jsii.get(self, "strList"))
@str_list.setter
def str_list(self, value: typing.List[builtins.str]) -> None:
if __debug__:
def stub(value: typing.List[builtins.str]) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "strList", value)
@jsii.data_type(
jsii_type="edge.optionalAttributeResource.OptionalAttributeResourceConfig",
jsii_struct_bases=[cdktf.TerraformMetaArguments],
name_mapping={
"connection": "connection",
"count": "count",
"depends_on": "dependsOn",
"for_each": "forEach",
"lifecycle": "lifecycle",
"provider": "provider",
"provisioners": "provisioners",
"bool": "bool",
"bool_list": "boolList",
"num": "num",
"num_list": "numList",
"str": "str",
"str_list": "strList",
},
)
class OptionalAttributeResourceConfig(cdktf.TerraformMetaArguments):
def __init__(
self,
*,
connection: typing.Optional[typing.Union[typing.Union[cdktf.SSHProvisionerConnection, typing.Dict[str, typing.Any]], typing.Union[cdktf.WinrmProvisionerConnection, typing.Dict[str, typing.Any]]]] = None,
count: typing.Optional[jsii.Number] = None,
depends_on: typing.Optional[typing.Sequence[cdktf.ITerraformDependable]] = None,
for_each: typing.Optional[cdktf.ITerraformIterator] = None,
lifecycle: typing.Optional[typing.Union[cdktf.TerraformResourceLifecycle, typing.Dict[str, typing.Any]]] = None,
provider: typing.Optional[cdktf.TerraformProvider] = None,
provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[cdktf.FileProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.LocalExecProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.RemoteExecProvisioner, typing.Dict[str, typing.Any]]]]] = None,
bool: typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]] = None,
bool_list: typing.Optional[typing.Union[cdktf.IResolvable, typing.Sequence[typing.Union[builtins.bool, cdktf.IResolvable]]]] = None,
num: typing.Optional[jsii.Number] = None,
num_list: typing.Optional[typing.Sequence[jsii.Number]] = None,
str: typing.Optional[builtins.str] = None,
str_list: typing.Optional[typing.Sequence[builtins.str]] = None,
) -> None:
'''
:param connection:
:param count:
:param depends_on:
:param for_each:
:param lifecycle:
:param provider:
:param provisioners:
:param bool: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#bool OptionalAttributeResource#bool}.
:param bool_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#boolList OptionalAttributeResource#boolList}.
:param num: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#num OptionalAttributeResource#num}.
:param num_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#numList OptionalAttributeResource#numList}.
:param str: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#str OptionalAttributeResource#str}.
:param str_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#strList OptionalAttributeResource#strList}.
'''
if isinstance(lifecycle, dict):
lifecycle = cdktf.TerraformResourceLifecycle(**lifecycle)
if __debug__:
def stub(
*,
connection: typing.Optional[typing.Union[typing.Union[cdktf.SSHProvisionerConnection, typing.Dict[str, typing.Any]], typing.Union[cdktf.WinrmProvisionerConnection, typing.Dict[str, typing.Any]]]] = None,
count: typing.Optional[jsii.Number] = None,
depends_on: typing.Optional[typing.Sequence[cdktf.ITerraformDependable]] = None,
for_each: typing.Optional[cdktf.ITerraformIterator] = None,
lifecycle: typing.Optional[typing.Union[cdktf.TerraformResourceLifecycle, typing.Dict[str, typing.Any]]] = None,
provider: typing.Optional[cdktf.TerraformProvider] = None,
provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[cdktf.FileProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.LocalExecProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.RemoteExecProvisioner, typing.Dict[str, typing.Any]]]]] = None,
bool: typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]] = None,
bool_list: typing.Optional[typing.Union[cdktf.IResolvable, typing.Sequence[typing.Union[builtins.bool, cdktf.IResolvable]]]] = None,
num: typing.Optional[jsii.Number] = None,
num_list: typing.Optional[typing.Sequence[jsii.Number]] = None,
str: typing.Optional[builtins.str] = None,
str_list: typing.Optional[typing.Sequence[builtins.str]] = None,
) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument connection", value=connection, expected_type=type_hints["connection"])
check_type(argname="argument count", value=count, expected_type=type_hints["count"])
check_type(argname="argument depends_on", value=depends_on, expected_type=type_hints["depends_on"])
check_type(argname="argument for_each", value=for_each, expected_type=type_hints["for_each"])
check_type(argname="argument lifecycle", value=lifecycle, expected_type=type_hints["lifecycle"])
check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
check_type(argname="argument provisioners", value=provisioners, expected_type=type_hints["provisioners"])
check_type(argname="argument bool", value=bool, expected_type=type_hints["bool"])
check_type(argname="argument bool_list", value=bool_list, expected_type=type_hints["bool_list"])
check_type(argname="argument num", value=num, expected_type=type_hints["num"])
check_type(argname="argument num_list", value=num_list, expected_type=type_hints["num_list"])
check_type(argname="argument str", value=str, expected_type=type_hints["str"])
check_type(argname="argument str_list", value=str_list, expected_type=type_hints["str_list"])
self._values: typing.Dict[str, typing.Any] = {}
if connection is not None:
self._values["connection"] = connection
if count is not None:
self._values["count"] = count
if depends_on is not None:
self._values["depends_on"] = depends_on
if for_each is not None:
self._values["for_each"] = for_each
if lifecycle is not None:
self._values["lifecycle"] = lifecycle
if provider is not None:
self._values["provider"] = provider
if provisioners is not None:
self._values["provisioners"] = provisioners
if bool is not None:
self._values["bool"] = bool
if bool_list is not None:
self._values["bool_list"] = bool_list
if num is not None:
self._values["num"] = num
if num_list is not None:
self._values["num_list"] = num_list
if str is not None:
self._values["str"] = str
if str_list is not None:
self._values["str_list"] = str_list
@builtins.property
def connection(
self,
) -> typing.Optional[typing.Union[cdktf.SSHProvisionerConnection, cdktf.WinrmProvisionerConnection]]:
'''
:stability: experimental
'''
result = self._values.get("connection")
return typing.cast(typing.Optional[typing.Union[cdktf.SSHProvisionerConnection, cdktf.WinrmProvisionerConnection]], result)
@builtins.property
def count(self) -> typing.Optional[jsii.Number]:
'''
:stability: experimental
'''
result = self._values.get("count")
return typing.cast(typing.Optional[jsii.Number], result)
@builtins.property
def depends_on(self) -> typing.Optional[typing.List[cdktf.ITerraformDependable]]:
'''
:stability: experimental
'''
result = self._values.get("depends_on")
return typing.cast(typing.Optional[typing.List[cdktf.ITerraformDependable]], result)
@builtins.property
def for_each(self) -> typing.Optional[cdktf.ITerraformIterator]:
'''
:stability: experimental
'''
result = self._values.get("for_each")
return typing.cast(typing.Optional[cdktf.ITerraformIterator], result)
@builtins.property
def lifecycle(self) -> typing.Optional[cdktf.TerraformResourceLifecycle]:
'''
:stability: experimental
'''
result = self._values.get("lifecycle")
return typing.cast(typing.Optional[cdktf.TerraformResourceLifecycle], result)
@builtins.property
def provider(self) -> typing.Optional[cdktf.TerraformProvider]:
'''
:stability: experimental
'''
result = self._values.get("provider")
return typing.cast(typing.Optional[cdktf.TerraformProvider], result)
@builtins.property
def provisioners(
self,
) -> typing.Optional[typing.List[typing.Union[cdktf.FileProvisioner, cdktf.LocalExecProvisioner, cdktf.RemoteExecProvisioner]]]:
'''
:stability: experimental
'''
result = self._values.get("provisioners")
return typing.cast(typing.Optional[typing.List[typing.Union[cdktf.FileProvisioner, cdktf.LocalExecProvisioner, cdktf.RemoteExecProvisioner]]], result)
@builtins.property
def bool(self) -> typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#bool OptionalAttributeResource#bool}.'''
result = self._values.get("bool")
return typing.cast(typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]], result)
@builtins.property
def bool_list(
self,
) -> typing.Optional[typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]]]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#boolList OptionalAttributeResource#boolList}.'''
result = self._values.get("bool_list")
return typing.cast(typing.Optional[typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]]], result)
@builtins.property
def num(self) -> typing.Optional[jsii.Number]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#num OptionalAttributeResource#num}.'''
result = self._values.get("num")
return typing.cast(typing.Optional[jsii.Number], result)
@builtins.property
def num_list(self) -> typing.Optional[typing.List[jsii.Number]]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#numList OptionalAttributeResource#numList}.'''
result = self._values.get("num_list")
return typing.cast(typing.Optional[typing.List[jsii.Number]], result)
@builtins.property
def str(self) -> typing.Optional[builtins.str]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#str OptionalAttributeResource#str}.'''
result = self._values.get("str")
return typing.cast(typing.Optional[builtins.str], result)
@builtins.property
def str_list(self) -> typing.Optional[typing.List[builtins.str]]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/optional_attribute_resource#strList OptionalAttributeResource#strList}.'''
result = self._values.get("str_list")
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
def __eq__(self, rhs: typing.Any) -> builtins.bool:
return isinstance(rhs, self.__class__) and rhs._values == self._values
def __ne__(self, rhs: typing.Any) -> builtins.bool:
return not (rhs == self)
def __repr__(self) -> str:
return "OptionalAttributeResourceConfig(%s)" % ", ".join(
k + "=" + repr(v) for k, v in self._values.items()
)
__all__ = [
"OptionalAttributeResource",
"OptionalAttributeResourceConfig",
]
publication.publish()
'''
# `required_attribute_resource`
Refer to the Terraform Registory for docs: [`required_attribute_resource`](https://www.terraform.io/docs/providers/edge/r/required_attribute_resource).
'''
import abc
import builtins
import datetime
import enum
import typing
import jsii
import publication
import typing_extensions
from typeguard import check_type
from .._jsii import *
import cdktf
import constructs
class RequiredAttributeResource(
cdktf.TerraformResource,
metaclass=jsii.JSIIMeta,
jsii_type="edge.requiredAttributeResource.RequiredAttributeResource",
):
'''Represents a {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource required_attribute_resource}.'''
def __init__(
self,
scope: constructs.Construct,
id: builtins.str,
*,
bool: typing.Union[builtins.bool, cdktf.IResolvable],
bool_list: typing.Union[cdktf.IResolvable, typing.Sequence[typing.Union[builtins.bool, cdktf.IResolvable]]],
num: jsii.Number,
num_list: typing.Sequence[jsii.Number],
str: builtins.str,
str_list: typing.Sequence[builtins.str],
connection: typing.Optional[typing.Union[typing.Union[cdktf.SSHProvisionerConnection, typing.Dict[str, typing.Any]], typing.Union[cdktf.WinrmProvisionerConnection, typing.Dict[str, typing.Any]]]] = None,
count: typing.Optional[jsii.Number] = None,
depends_on: typing.Optional[typing.Sequence[cdktf.ITerraformDependable]] = None,
for_each: typing.Optional[cdktf.ITerraformIterator] = None,
lifecycle: typing.Optional[typing.Union[cdktf.TerraformResourceLifecycle, typing.Dict[str, typing.Any]]] = None,
provider: typing.Optional[cdktf.TerraformProvider] = None,
provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[cdktf.FileProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.LocalExecProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.RemoteExecProvisioner, typing.Dict[str, typing.Any]]]]] = None,
) -> None:
'''Create a new {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource required_attribute_resource} Resource.
:param scope: The scope in which to define this construct.
:param id: The scoped construct ID. Must be unique amongst siblings in the same scope
:param bool: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#bool RequiredAttributeResource#bool}.
:param bool_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#boolList RequiredAttributeResource#boolList}.
:param num: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#num RequiredAttributeResource#num}.
:param num_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#numList RequiredAttributeResource#numList}.
:param str: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#str RequiredAttributeResource#str}.
:param str_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#strList RequiredAttributeResource#strList}.
:param connection:
:param count:
:param depends_on:
:param for_each:
:param lifecycle:
:param provider:
:param provisioners:
'''
if __debug__:
def stub(
scope: constructs.Construct,
id: builtins.str,
*,
bool: typing.Union[builtins.bool, cdktf.IResolvable],
bool_list: typing.Union[cdktf.IResolvable, typing.Sequence[typing.Union[builtins.bool, cdktf.IResolvable]]],
num: jsii.Number,
num_list: typing.Sequence[jsii.Number],
str: builtins.str,
str_list: typing.Sequence[builtins.str],
connection: typing.Optional[typing.Union[typing.Union[cdktf.SSHProvisionerConnection, typing.Dict[str, typing.Any]], typing.Union[cdktf.WinrmProvisionerConnection, typing.Dict[str, typing.Any]]]] = None,
count: typing.Optional[jsii.Number] = None,
depends_on: typing.Optional[typing.Sequence[cdktf.ITerraformDependable]] = None,
for_each: typing.Optional[cdktf.ITerraformIterator] = None,
lifecycle: typing.Optional[typing.Union[cdktf.TerraformResourceLifecycle, typing.Dict[str, typing.Any]]] = None,
provider: typing.Optional[cdktf.TerraformProvider] = None,
provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[cdktf.FileProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.LocalExecProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.RemoteExecProvisioner, typing.Dict[str, typing.Any]]]]] = None,
) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
config = RequiredAttributeResourceConfig(
bool=bool,
bool_list=bool_list,
num=num,
num_list=num_list,
str=str,
str_list=str_list,
connection=connection,
count=count,
depends_on=depends_on,
for_each=for_each,
lifecycle=lifecycle,
provider=provider,
provisioners=provisioners,
)
jsii.create(self.__class__, self, [scope, id, config])
@jsii.member(jsii_name="synthesizeAttributes")
def _synthesize_attributes(self) -> typing.Mapping[builtins.str, typing.Any]:
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "synthesizeAttributes", []))
@jsii.python.classproperty
@jsii.member(jsii_name="tfResourceType")
def TF_RESOURCE_TYPE(cls) -> builtins.str:
return typing.cast(builtins.str, jsii.sget(cls, "tfResourceType"))
@builtins.property
@jsii.member(jsii_name="boolInput")
def bool_input(
self,
) -> typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]]:
return typing.cast(typing.Optional[typing.Union[builtins.bool, cdktf.IResolvable]], jsii.get(self, "boolInput"))
@builtins.property
@jsii.member(jsii_name="boolListInput")
def bool_list_input(
self,
) -> typing.Optional[typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]]]:
return typing.cast(typing.Optional[typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]]], jsii.get(self, "boolListInput"))
@builtins.property
@jsii.member(jsii_name="numInput")
def num_input(self) -> typing.Optional[jsii.Number]:
return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "numInput"))
@builtins.property
@jsii.member(jsii_name="numListInput")
def num_list_input(self) -> typing.Optional[typing.List[jsii.Number]]:
return typing.cast(typing.Optional[typing.List[jsii.Number]], jsii.get(self, "numListInput"))
@builtins.property
@jsii.member(jsii_name="strInput")
def str_input(self) -> typing.Optional[builtins.str]:
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "strInput"))
@builtins.property
@jsii.member(jsii_name="strListInput")
def str_list_input(self) -> typing.Optional[typing.List[builtins.str]]:
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "strListInput"))
@builtins.property
@jsii.member(jsii_name="bool")
def bool(self) -> typing.Union[builtins.bool, cdktf.IResolvable]:
return typing.cast(typing.Union[builtins.bool, cdktf.IResolvable], jsii.get(self, "bool"))
@bool.setter
def bool(self, value: typing.Union[builtins.bool, cdktf.IResolvable]) -> None:
if __debug__:
def stub(value: typing.Union[builtins.bool, cdktf.IResolvable]) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "bool", value)
@builtins.property
@jsii.member(jsii_name="boolList")
def bool_list(
self,
) -> typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]]:
return typing.cast(typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]], jsii.get(self, "boolList"))
@bool_list.setter
def bool_list(
self,
value: typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]],
) -> None:
if __debug__:
def stub(
value: typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]],
) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "boolList", value)
@builtins.property
@jsii.member(jsii_name="num")
def num(self) -> jsii.Number:
return typing.cast(jsii.Number, jsii.get(self, "num"))
@num.setter
def num(self, value: jsii.Number) -> None:
if __debug__:
def stub(value: jsii.Number) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "num", value)
@builtins.property
@jsii.member(jsii_name="numList")
def num_list(self) -> typing.List[jsii.Number]:
return typing.cast(typing.List[jsii.Number], jsii.get(self, "numList"))
@num_list.setter
def num_list(self, value: typing.List[jsii.Number]) -> None:
if __debug__:
def stub(value: typing.List[jsii.Number]) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "numList", value)
@builtins.property
@jsii.member(jsii_name="str")
def str(self) -> builtins.str:
return typing.cast(builtins.str, jsii.get(self, "str"))
@str.setter
def str(self, value: builtins.str) -> None:
if __debug__:
def stub(value: builtins.str) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "str", value)
@builtins.property
@jsii.member(jsii_name="strList")
def str_list(self) -> typing.List[builtins.str]:
return typing.cast(typing.List[builtins.str], jsii.get(self, "strList"))
@str_list.setter
def str_list(self, value: typing.List[builtins.str]) -> None:
if __debug__:
def stub(value: typing.List[builtins.str]) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
jsii.set(self, "strList", value)
@jsii.data_type(
jsii_type="edge.requiredAttributeResource.RequiredAttributeResourceConfig",
jsii_struct_bases=[cdktf.TerraformMetaArguments],
name_mapping={
"connection": "connection",
"count": "count",
"depends_on": "dependsOn",
"for_each": "forEach",
"lifecycle": "lifecycle",
"provider": "provider",
"provisioners": "provisioners",
"bool": "bool",
"bool_list": "boolList",
"num": "num",
"num_list": "numList",
"str": "str",
"str_list": "strList",
},
)
class RequiredAttributeResourceConfig(cdktf.TerraformMetaArguments):
def __init__(
self,
*,
connection: typing.Optional[typing.Union[typing.Union[cdktf.SSHProvisionerConnection, typing.Dict[str, typing.Any]], typing.Union[cdktf.WinrmProvisionerConnection, typing.Dict[str, typing.Any]]]] = None,
count: typing.Optional[jsii.Number] = None,
depends_on: typing.Optional[typing.Sequence[cdktf.ITerraformDependable]] = None,
for_each: typing.Optional[cdktf.ITerraformIterator] = None,
lifecycle: typing.Optional[typing.Union[cdktf.TerraformResourceLifecycle, typing.Dict[str, typing.Any]]] = None,
provider: typing.Optional[cdktf.TerraformProvider] = None,
provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[cdktf.FileProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.LocalExecProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.RemoteExecProvisioner, typing.Dict[str, typing.Any]]]]] = None,
bool: typing.Union[builtins.bool, cdktf.IResolvable],
bool_list: typing.Union[cdktf.IResolvable, typing.Sequence[typing.Union[builtins.bool, cdktf.IResolvable]]],
num: jsii.Number,
num_list: typing.Sequence[jsii.Number],
str: builtins.str,
str_list: typing.Sequence[builtins.str],
) -> None:
'''
:param connection:
:param count:
:param depends_on:
:param for_each:
:param lifecycle:
:param provider:
:param provisioners:
:param bool: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#bool RequiredAttributeResource#bool}.
:param bool_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#boolList RequiredAttributeResource#boolList}.
:param num: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#num RequiredAttributeResource#num}.
:param num_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#numList RequiredAttributeResource#numList}.
:param str: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#str RequiredAttributeResource#str}.
:param str_list: Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#strList RequiredAttributeResource#strList}.
'''
if isinstance(lifecycle, dict):
lifecycle = cdktf.TerraformResourceLifecycle(**lifecycle)
if __debug__:
def stub(
*,
connection: typing.Optional[typing.Union[typing.Union[cdktf.SSHProvisionerConnection, typing.Dict[str, typing.Any]], typing.Union[cdktf.WinrmProvisionerConnection, typing.Dict[str, typing.Any]]]] = None,
count: typing.Optional[jsii.Number] = None,
depends_on: typing.Optional[typing.Sequence[cdktf.ITerraformDependable]] = None,
for_each: typing.Optional[cdktf.ITerraformIterator] = None,
lifecycle: typing.Optional[typing.Union[cdktf.TerraformResourceLifecycle, typing.Dict[str, typing.Any]]] = None,
provider: typing.Optional[cdktf.TerraformProvider] = None,
provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[cdktf.FileProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.LocalExecProvisioner, typing.Dict[str, typing.Any]], typing.Union[cdktf.RemoteExecProvisioner, typing.Dict[str, typing.Any]]]]] = None,
bool: typing.Union[builtins.bool, cdktf.IResolvable],
bool_list: typing.Union[cdktf.IResolvable, typing.Sequence[typing.Union[builtins.bool, cdktf.IResolvable]]],
num: jsii.Number,
num_list: typing.Sequence[jsii.Number],
str: builtins.str,
str_list: typing.Sequence[builtins.str],
) -> None:
...
type_hints = typing.get_type_hints(stub)
check_type(argname="argument connection", value=connection, expected_type=type_hints["connection"])
check_type(argname="argument count", value=count, expected_type=type_hints["count"])
check_type(argname="argument depends_on", value=depends_on, expected_type=type_hints["depends_on"])
check_type(argname="argument for_each", value=for_each, expected_type=type_hints["for_each"])
check_type(argname="argument lifecycle", value=lifecycle, expected_type=type_hints["lifecycle"])
check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
check_type(argname="argument provisioners", value=provisioners, expected_type=type_hints["provisioners"])
check_type(argname="argument bool", value=bool, expected_type=type_hints["bool"])
check_type(argname="argument bool_list", value=bool_list, expected_type=type_hints["bool_list"])
check_type(argname="argument num", value=num, expected_type=type_hints["num"])
check_type(argname="argument num_list", value=num_list, expected_type=type_hints["num_list"])
check_type(argname="argument str", value=str, expected_type=type_hints["str"])
check_type(argname="argument str_list", value=str_list, expected_type=type_hints["str_list"])
self._values: typing.Dict[str, typing.Any] = {
"bool": bool,
"bool_list": bool_list,
"num": num,
"num_list": num_list,
"str": str,
"str_list": str_list,
}
if connection is not None:
self._values["connection"] = connection
if count is not None:
self._values["count"] = count
if depends_on is not None:
self._values["depends_on"] = depends_on
if for_each is not None:
self._values["for_each"] = for_each
if lifecycle is not None:
self._values["lifecycle"] = lifecycle
if provider is not None:
self._values["provider"] = provider
if provisioners is not None:
self._values["provisioners"] = provisioners
@builtins.property
def connection(
self,
) -> typing.Optional[typing.Union[cdktf.SSHProvisionerConnection, cdktf.WinrmProvisionerConnection]]:
'''
:stability: experimental
'''
result = self._values.get("connection")
return typing.cast(typing.Optional[typing.Union[cdktf.SSHProvisionerConnection, cdktf.WinrmProvisionerConnection]], result)
@builtins.property
def count(self) -> typing.Optional[jsii.Number]:
'''
:stability: experimental
'''
result = self._values.get("count")
return typing.cast(typing.Optional[jsii.Number], result)
@builtins.property
def depends_on(self) -> typing.Optional[typing.List[cdktf.ITerraformDependable]]:
'''
:stability: experimental
'''
result = self._values.get("depends_on")
return typing.cast(typing.Optional[typing.List[cdktf.ITerraformDependable]], result)
@builtins.property
def for_each(self) -> typing.Optional[cdktf.ITerraformIterator]:
'''
:stability: experimental
'''
result = self._values.get("for_each")
return typing.cast(typing.Optional[cdktf.ITerraformIterator], result)
@builtins.property
def lifecycle(self) -> typing.Optional[cdktf.TerraformResourceLifecycle]:
'''
:stability: experimental
'''
result = self._values.get("lifecycle")
return typing.cast(typing.Optional[cdktf.TerraformResourceLifecycle], result)
@builtins.property
def provider(self) -> typing.Optional[cdktf.TerraformProvider]:
'''
:stability: experimental
'''
result = self._values.get("provider")
return typing.cast(typing.Optional[cdktf.TerraformProvider], result)
@builtins.property
def provisioners(
self,
) -> typing.Optional[typing.List[typing.Union[cdktf.FileProvisioner, cdktf.LocalExecProvisioner, cdktf.RemoteExecProvisioner]]]:
'''
:stability: experimental
'''
result = self._values.get("provisioners")
return typing.cast(typing.Optional[typing.List[typing.Union[cdktf.FileProvisioner, cdktf.LocalExecProvisioner, cdktf.RemoteExecProvisioner]]], result)
@builtins.property
def bool(self) -> typing.Union[builtins.bool, cdktf.IResolvable]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#bool RequiredAttributeResource#bool}.'''
result = self._values.get("bool")
assert result is not None, "Required property 'bool' is missing"
return typing.cast(typing.Union[builtins.bool, cdktf.IResolvable], result)
@builtins.property
def bool_list(
self,
) -> typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#boolList RequiredAttributeResource#boolList}.'''
result = self._values.get("bool_list")
assert result is not None, "Required property 'bool_list' is missing"
return typing.cast(typing.Union[cdktf.IResolvable, typing.List[typing.Union[builtins.bool, cdktf.IResolvable]]], result)
@builtins.property
def num(self) -> jsii.Number:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#num RequiredAttributeResource#num}.'''
result = self._values.get("num")
assert result is not None, "Required property 'num' is missing"
return typing.cast(jsii.Number, result)
@builtins.property
def num_list(self) -> typing.List[jsii.Number]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#numList RequiredAttributeResource#numList}.'''
result = self._values.get("num_list")
assert result is not None, "Required property 'num_list' is missing"
return typing.cast(typing.List[jsii.Number], result)
@builtins.property
def str(self) -> builtins.str:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#str RequiredAttributeResource#str}.'''
result = self._values.get("str")
assert result is not None, "Required property 'str' is missing"
return typing.cast(builtins.str, result)
@builtins.property
def str_list(self) -> typing.List[builtins.str]:
'''Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/edge/r/required_attribute_resource#strList RequiredAttributeResource#strList}.'''
result = self._values.get("str_list")
assert result is not None, "Required property 'str_list' is missing"
return typing.cast(typing.List[builtins.str], result)
def __eq__(self, rhs: typing.Any) -> builtins.bool:
return isinstance(rhs, self.__class__) and rhs._values == self._values
def __ne__(self, rhs: typing.Any) -> builtins.bool:
return not (rhs == self)
def __repr__(self) -> str:
return "RequiredAttributeResourceConfig(%s)" % ", ".join(
k + "=" + repr(v) for k, v in self._values.items()
)
__all__ = [
"RequiredAttributeResource",
"RequiredAttributeResourceConfig",
]
publication.publish()
[2022-11-30T16:33:17.749] [ERROR] default - /usr/local/Cellar/pipenv/2022.9.24/libexec/lib/python3.11/site-packages/pipenv/vendor/attr/_make.py:876: RuntimeWarning: Running interpreter doesn't sufficiently support code object introspection. Some features like bare super() or accessing __class__ will not work with slotted classes.
set_closure_cell(cell, cls)
[2022-11-30T16:33:18.936] [ERROR] default - Traceback (most recent call last):
File "/usr/local/Cellar/python@3.10/3.10.8/Frameworks/Python.framework/Versions/3.10/lib/python3.10/typing.py", line 668, in __init__
code = compile(arg, '<string>', 'eval')
File "<string>", line 1
${TfToken[TOKEN.0]}
^
SyntaxError: invalid syntax
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/private/var/folders/z_/v03l33d55fb57nrr3b1q03ch0000gq/T/testUod9Kr/main.py", line 276, in <module>
ReferenceStack(app, "reference")
File "/Users/danielschmidt/.local/share/virtualenvs/testUod9Kr-4HUFHlOi/lib/python3.10/site-packages/jsii/_runtime.py", line 109, in __call__
inst = super().__call__(*args, **kwargs)
File "/private/var/folders/z_/v03l33d55fb57nrr3b1q03ch0000gq/T/testUod9Kr/main.py", line 40, in __init__
edge.required_attribute_resource.RequiredAttributeResource(self, "plain",
File "/Users/danielschmidt/.local/share/virtualenvs/testUod9Kr-4HUFHlOi/lib/python3.10/site-packages/jsii/_runtime.py", line 109, in __call__
inst = super().__call__(*args, **kwargs)
File "/private/var/folders/z_/v03l33d55fb57nrr3b1q03ch0000gq/T/testUod9Kr/imports/edge/required_attribute_resource/__init__.py", line 79, in __init__
connection: typing.Optional[typing.Union[typing.Union[cdktf.SSHProvisionerConnection, typing.Dict[str, typing.Any]], typing.Union[cdktf.WinrmProvisionerConnection, typing.Dict[str, typing.Any]]]] = None,
File "/usr/local/Cellar/python@3.10/3.10.8/Frameworks/Python.framework/Versions/3.10/lib/python3.10/typing.py", line 309, in inner
return cached(*args, **kwds)
File "/usr/local/Cellar/python@3.10/3.10.8/Frameworks/Python.framework/Versions/3.10/lib/python3.10/typing.py", line 1143, in __getitem__
params = tuple(_type_check(p, msg) for p in params)
File "/usr/local/Cellar/python@3.10/3.10.8/Frameworks/Python.framework/Versions/3.10/lib/python3.10/typing.py", line 1143, in <genexpr>
params = tuple(_type_check(p, msg) for p in params)
File "/usr/local/Cellar/python@3.10/3.10.8/Frameworks/Python.framework/Versions/3.10/lib/python3.10/typing.py", line 164, in _type_check
arg = _type_convert(arg, module=module, allow_special_forms=allow_special_forms)
File "/usr/local/Cellar/python@3.10/3.10.8/Frameworks/Python.framework/Versions/3.10/lib/python3.10/typing.py", line 142, in _type_convert
return ForwardRef(arg, module=module, is_class=allow_special_forms)
File "/usr/local/Cellar/python@3.10/3.10.8/Frameworks/Python.framework/Versions/3.10/lib/python3.10/typing.py", line 670, in __init__
raise SyntaxError(f"Forward reference must be an expression -- got {arg!r}")
SyntaxError: Forward reference must be an expression -- got '${TfToken[TOKEN.0]}'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment