// Code generated by "mapstructure-to-hcl2 -type VaultAWSEngineOptions,AssumeRoleConfig"; DO NOT EDIT. package common import ( "github.com/hashicorp/hcl/v2/hcldec" "github.com/zclconf/go-cty/cty" ) // FlatAssumeRoleConfig is an auto-generated flat version of AssumeRoleConfig. // Where the contents of a field with a `mapstructure:,squash` tag are bubbled up. type FlatAssumeRoleConfig struct { AssumeRoleARN *string `mapstructure:"role_arn" required:"false" cty:"role_arn" hcl:"role_arn"` AssumeRoleDurationSeconds *int `mapstructure:"duration_seconds" required:"false" cty:"duration_seconds" hcl:"duration_seconds"` AssumeRoleExternalID *string `mapstructure:"external_id" required:"false" cty:"external_id" hcl:"external_id"` AssumeRolePolicy *string `mapstructure:"policy" required:"false" cty:"policy" hcl:"policy"` AssumeRolePolicyARNs []string `mapstructure:"policy_arns" required:"false" cty:"policy_arns" hcl:"policy_arns"` AssumeRoleSessionName *string `mapstructure:"session_name" required:"false" cty:"session_name" hcl:"session_name"` AssumeRoleTags map[string]string `mapstructure:"tags" required:"false" cty:"tags" hcl:"tags"` AssumeRoleTransitiveTagKeys []string `mapstructure:"transitive_tag_keys" required:"false" cty:"transitive_tag_keys" hcl:"transitive_tag_keys"` } // FlatMapstructure returns a new FlatAssumeRoleConfig. // FlatAssumeRoleConfig is an auto-generated flat version of AssumeRoleConfig. // Where the contents a fields with a `mapstructure:,squash` tag are bubbled up. func (*AssumeRoleConfig) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec } { return new(FlatAssumeRoleConfig) } // HCL2Spec returns the hcl spec of a AssumeRoleConfig. // This spec is used by HCL to read the fields of AssumeRoleConfig. // The decoded values from this spec will then be applied to a FlatAssumeRoleConfig. func (*FlatAssumeRoleConfig) HCL2Spec() map[string]hcldec.Spec { s := map[string]hcldec.Spec{ "role_arn": &hcldec.AttrSpec{Name: "role_arn", Type: cty.String, Required: false}, "duration_seconds": &hcldec.AttrSpec{Name: "duration_seconds", Type: cty.Number, Required: false}, "external_id": &hcldec.AttrSpec{Name: "external_id", Type: cty.String, Required: false}, "policy": &hcldec.AttrSpec{Name: "policy", Type: cty.String, Required: false}, "policy_arns": &hcldec.AttrSpec{Name: "policy_arns", Type: cty.List(cty.String), Required: false}, "session_name": &hcldec.AttrSpec{Name: "session_name", Type: cty.String, Required: false}, "tags": &hcldec.AttrSpec{Name: "tags", Type: cty.Map(cty.String), Required: false}, "transitive_tag_keys": &hcldec.AttrSpec{Name: "transitive_tag_keys", Type: cty.List(cty.String), Required: false}, } return s } // FlatVaultAWSEngineOptions is an auto-generated flat version of VaultAWSEngineOptions. // Where the contents of a field with a `mapstructure:,squash` tag are bubbled up. type FlatVaultAWSEngineOptions struct { Name *string `mapstructure:"name" cty:"name" hcl:"name"` RoleARN *string `mapstructure:"role_arn" cty:"role_arn" hcl:"role_arn"` TTL *string `mapstructure:"ttl" required:"false" cty:"ttl" hcl:"ttl"` EngineName *string `mapstructure:"engine_name" cty:"engine_name" hcl:"engine_name"` } // FlatMapstructure returns a new FlatVaultAWSEngineOptions. // FlatVaultAWSEngineOptions is an auto-generated flat version of VaultAWSEngineOptions. // Where the contents a fields with a `mapstructure:,squash` tag are bubbled up. func (*VaultAWSEngineOptions) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec } { return new(FlatVaultAWSEngineOptions) } // HCL2Spec returns the hcl spec of a VaultAWSEngineOptions. // This spec is used by HCL to read the fields of VaultAWSEngineOptions. // The decoded values from this spec will then be applied to a FlatVaultAWSEngineOptions. func (*FlatVaultAWSEngineOptions) HCL2Spec() map[string]hcldec.Spec { s := map[string]hcldec.Spec{ "name": &hcldec.AttrSpec{Name: "name", Type: cty.String, Required: false}, "role_arn": &hcldec.AttrSpec{Name: "role_arn", Type: cty.String, Required: false}, "ttl": &hcldec.AttrSpec{Name: "ttl", Type: cty.String, Required: false}, "engine_name": &hcldec.AttrSpec{Name: "engine_name", Type: cty.String, Required: false}, } return s }