route53

package
v6.38.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 5, 2024 License: Apache-2.0 Imports: 7 Imported by: 10

Documentation

Index

Constants

View Source
const (
	RecordTypeA     = RecordType("A")
	RecordTypeAAAA  = RecordType("AAAA")
	RecordTypeCNAME = RecordType("CNAME")
	RecordTypeCAA   = RecordType("CAA")
	RecordTypeMX    = RecordType("MX")
	RecordTypeNAPTR = RecordType("NAPTR")
	RecordTypeNS    = RecordType("NS")
	RecordTypePTR   = RecordType("PTR")
	RecordTypeSOA   = RecordType("SOA")
	RecordTypeSPF   = RecordType("SPF")
	RecordTypeSRV   = RecordType("SRV")
	RecordTypeTXT   = RecordType("TXT")
)

Variables

This section is empty.

Functions

This section is empty.

Types

type CidrCollection

type CidrCollection struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the CIDR collection.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// Unique name for the CIDR collection.
	Name pulumi.StringOutput `pulumi:"name"`
	// The lastest version of the CIDR collection.
	Version pulumi.IntOutput `pulumi:"version"`
}

Provides a Route53 CIDR collection resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewCidrCollection(ctx, "example", &route53.CidrCollectionArgs{
			Name: pulumi.String("collection-1"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import CIDR collections using their ID. For example:

```sh $ pulumi import aws:route53/cidrCollection:CidrCollection example 9ac32814-3e67-0932-6048-8d779cc6f511 ```

func GetCidrCollection

func GetCidrCollection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CidrCollectionState, opts ...pulumi.ResourceOption) (*CidrCollection, error)

GetCidrCollection gets an existing CidrCollection resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCidrCollection

func NewCidrCollection(ctx *pulumi.Context,
	name string, args *CidrCollectionArgs, opts ...pulumi.ResourceOption) (*CidrCollection, error)

NewCidrCollection registers a new resource with the given unique name, arguments, and options.

func (*CidrCollection) ElementType

func (*CidrCollection) ElementType() reflect.Type

func (*CidrCollection) ToCidrCollectionOutput

func (i *CidrCollection) ToCidrCollectionOutput() CidrCollectionOutput

func (*CidrCollection) ToCidrCollectionOutputWithContext

func (i *CidrCollection) ToCidrCollectionOutputWithContext(ctx context.Context) CidrCollectionOutput

type CidrCollectionArgs

type CidrCollectionArgs struct {
	// Unique name for the CIDR collection.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a CidrCollection resource.

func (CidrCollectionArgs) ElementType

func (CidrCollectionArgs) ElementType() reflect.Type

type CidrCollectionArray

type CidrCollectionArray []CidrCollectionInput

func (CidrCollectionArray) ElementType

func (CidrCollectionArray) ElementType() reflect.Type

func (CidrCollectionArray) ToCidrCollectionArrayOutput

func (i CidrCollectionArray) ToCidrCollectionArrayOutput() CidrCollectionArrayOutput

func (CidrCollectionArray) ToCidrCollectionArrayOutputWithContext

func (i CidrCollectionArray) ToCidrCollectionArrayOutputWithContext(ctx context.Context) CidrCollectionArrayOutput

type CidrCollectionArrayInput

type CidrCollectionArrayInput interface {
	pulumi.Input

	ToCidrCollectionArrayOutput() CidrCollectionArrayOutput
	ToCidrCollectionArrayOutputWithContext(context.Context) CidrCollectionArrayOutput
}

CidrCollectionArrayInput is an input type that accepts CidrCollectionArray and CidrCollectionArrayOutput values. You can construct a concrete instance of `CidrCollectionArrayInput` via:

CidrCollectionArray{ CidrCollectionArgs{...} }

type CidrCollectionArrayOutput

type CidrCollectionArrayOutput struct{ *pulumi.OutputState }

func (CidrCollectionArrayOutput) ElementType

func (CidrCollectionArrayOutput) ElementType() reflect.Type

func (CidrCollectionArrayOutput) Index

func (CidrCollectionArrayOutput) ToCidrCollectionArrayOutput

func (o CidrCollectionArrayOutput) ToCidrCollectionArrayOutput() CidrCollectionArrayOutput

func (CidrCollectionArrayOutput) ToCidrCollectionArrayOutputWithContext

func (o CidrCollectionArrayOutput) ToCidrCollectionArrayOutputWithContext(ctx context.Context) CidrCollectionArrayOutput

type CidrCollectionInput

type CidrCollectionInput interface {
	pulumi.Input

	ToCidrCollectionOutput() CidrCollectionOutput
	ToCidrCollectionOutputWithContext(ctx context.Context) CidrCollectionOutput
}

type CidrCollectionMap

type CidrCollectionMap map[string]CidrCollectionInput

func (CidrCollectionMap) ElementType

func (CidrCollectionMap) ElementType() reflect.Type

func (CidrCollectionMap) ToCidrCollectionMapOutput

func (i CidrCollectionMap) ToCidrCollectionMapOutput() CidrCollectionMapOutput

func (CidrCollectionMap) ToCidrCollectionMapOutputWithContext

func (i CidrCollectionMap) ToCidrCollectionMapOutputWithContext(ctx context.Context) CidrCollectionMapOutput

type CidrCollectionMapInput

type CidrCollectionMapInput interface {
	pulumi.Input

	ToCidrCollectionMapOutput() CidrCollectionMapOutput
	ToCidrCollectionMapOutputWithContext(context.Context) CidrCollectionMapOutput
}

CidrCollectionMapInput is an input type that accepts CidrCollectionMap and CidrCollectionMapOutput values. You can construct a concrete instance of `CidrCollectionMapInput` via:

CidrCollectionMap{ "key": CidrCollectionArgs{...} }

type CidrCollectionMapOutput

type CidrCollectionMapOutput struct{ *pulumi.OutputState }

func (CidrCollectionMapOutput) ElementType

func (CidrCollectionMapOutput) ElementType() reflect.Type

func (CidrCollectionMapOutput) MapIndex

func (CidrCollectionMapOutput) ToCidrCollectionMapOutput

func (o CidrCollectionMapOutput) ToCidrCollectionMapOutput() CidrCollectionMapOutput

func (CidrCollectionMapOutput) ToCidrCollectionMapOutputWithContext

func (o CidrCollectionMapOutput) ToCidrCollectionMapOutputWithContext(ctx context.Context) CidrCollectionMapOutput

type CidrCollectionOutput

type CidrCollectionOutput struct{ *pulumi.OutputState }

func (CidrCollectionOutput) Arn

The Amazon Resource Name (ARN) of the CIDR collection.

func (CidrCollectionOutput) ElementType

func (CidrCollectionOutput) ElementType() reflect.Type

func (CidrCollectionOutput) Name

Unique name for the CIDR collection.

func (CidrCollectionOutput) ToCidrCollectionOutput

func (o CidrCollectionOutput) ToCidrCollectionOutput() CidrCollectionOutput

func (CidrCollectionOutput) ToCidrCollectionOutputWithContext

func (o CidrCollectionOutput) ToCidrCollectionOutputWithContext(ctx context.Context) CidrCollectionOutput

func (CidrCollectionOutput) Version

The lastest version of the CIDR collection.

type CidrCollectionState

type CidrCollectionState struct {
	// The Amazon Resource Name (ARN) of the CIDR collection.
	Arn pulumi.StringPtrInput
	// Unique name for the CIDR collection.
	Name pulumi.StringPtrInput
	// The lastest version of the CIDR collection.
	Version pulumi.IntPtrInput
}

func (CidrCollectionState) ElementType

func (CidrCollectionState) ElementType() reflect.Type

type CidrLocation

type CidrLocation struct {
	pulumi.CustomResourceState

	// CIDR blocks for the location.
	CidrBlocks pulumi.StringArrayOutput `pulumi:"cidrBlocks"`
	// The ID of the CIDR collection to update.
	CidrCollectionId pulumi.StringOutput `pulumi:"cidrCollectionId"`
	// Name for the CIDR location.
	Name pulumi.StringOutput `pulumi:"name"`
}

Provides a Route53 CIDR location resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := route53.NewCidrCollection(ctx, "example", &route53.CidrCollectionArgs{
			Name: pulumi.String("collection-1"),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewCidrLocation(ctx, "example", &route53.CidrLocationArgs{
			CidrCollectionId: example.ID(),
			Name:             pulumi.String("office"),
			CidrBlocks: pulumi.StringArray{
				pulumi.String("200.5.3.0/24"),
				pulumi.String("200.6.3.0/24"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import CIDR locations using their the CIDR collection ID and location name. For example:

```sh $ pulumi import aws:route53/cidrLocation:CidrLocation example 9ac32814-3e67-0932-6048-8d779cc6f511,office ```

func GetCidrLocation

func GetCidrLocation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *CidrLocationState, opts ...pulumi.ResourceOption) (*CidrLocation, error)

GetCidrLocation gets an existing CidrLocation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewCidrLocation

func NewCidrLocation(ctx *pulumi.Context,
	name string, args *CidrLocationArgs, opts ...pulumi.ResourceOption) (*CidrLocation, error)

NewCidrLocation registers a new resource with the given unique name, arguments, and options.

func (*CidrLocation) ElementType

func (*CidrLocation) ElementType() reflect.Type

func (*CidrLocation) ToCidrLocationOutput

func (i *CidrLocation) ToCidrLocationOutput() CidrLocationOutput

func (*CidrLocation) ToCidrLocationOutputWithContext

func (i *CidrLocation) ToCidrLocationOutputWithContext(ctx context.Context) CidrLocationOutput

type CidrLocationArgs

type CidrLocationArgs struct {
	// CIDR blocks for the location.
	CidrBlocks pulumi.StringArrayInput
	// The ID of the CIDR collection to update.
	CidrCollectionId pulumi.StringInput
	// Name for the CIDR location.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a CidrLocation resource.

func (CidrLocationArgs) ElementType

func (CidrLocationArgs) ElementType() reflect.Type

type CidrLocationArray

type CidrLocationArray []CidrLocationInput

func (CidrLocationArray) ElementType

func (CidrLocationArray) ElementType() reflect.Type

func (CidrLocationArray) ToCidrLocationArrayOutput

func (i CidrLocationArray) ToCidrLocationArrayOutput() CidrLocationArrayOutput

func (CidrLocationArray) ToCidrLocationArrayOutputWithContext

func (i CidrLocationArray) ToCidrLocationArrayOutputWithContext(ctx context.Context) CidrLocationArrayOutput

type CidrLocationArrayInput

type CidrLocationArrayInput interface {
	pulumi.Input

	ToCidrLocationArrayOutput() CidrLocationArrayOutput
	ToCidrLocationArrayOutputWithContext(context.Context) CidrLocationArrayOutput
}

CidrLocationArrayInput is an input type that accepts CidrLocationArray and CidrLocationArrayOutput values. You can construct a concrete instance of `CidrLocationArrayInput` via:

CidrLocationArray{ CidrLocationArgs{...} }

type CidrLocationArrayOutput

type CidrLocationArrayOutput struct{ *pulumi.OutputState }

func (CidrLocationArrayOutput) ElementType

func (CidrLocationArrayOutput) ElementType() reflect.Type

func (CidrLocationArrayOutput) Index

func (CidrLocationArrayOutput) ToCidrLocationArrayOutput

func (o CidrLocationArrayOutput) ToCidrLocationArrayOutput() CidrLocationArrayOutput

func (CidrLocationArrayOutput) ToCidrLocationArrayOutputWithContext

func (o CidrLocationArrayOutput) ToCidrLocationArrayOutputWithContext(ctx context.Context) CidrLocationArrayOutput

type CidrLocationInput

type CidrLocationInput interface {
	pulumi.Input

	ToCidrLocationOutput() CidrLocationOutput
	ToCidrLocationOutputWithContext(ctx context.Context) CidrLocationOutput
}

type CidrLocationMap

type CidrLocationMap map[string]CidrLocationInput

func (CidrLocationMap) ElementType

func (CidrLocationMap) ElementType() reflect.Type

func (CidrLocationMap) ToCidrLocationMapOutput

func (i CidrLocationMap) ToCidrLocationMapOutput() CidrLocationMapOutput

func (CidrLocationMap) ToCidrLocationMapOutputWithContext

func (i CidrLocationMap) ToCidrLocationMapOutputWithContext(ctx context.Context) CidrLocationMapOutput

type CidrLocationMapInput

type CidrLocationMapInput interface {
	pulumi.Input

	ToCidrLocationMapOutput() CidrLocationMapOutput
	ToCidrLocationMapOutputWithContext(context.Context) CidrLocationMapOutput
}

CidrLocationMapInput is an input type that accepts CidrLocationMap and CidrLocationMapOutput values. You can construct a concrete instance of `CidrLocationMapInput` via:

CidrLocationMap{ "key": CidrLocationArgs{...} }

type CidrLocationMapOutput

type CidrLocationMapOutput struct{ *pulumi.OutputState }

func (CidrLocationMapOutput) ElementType

func (CidrLocationMapOutput) ElementType() reflect.Type

func (CidrLocationMapOutput) MapIndex

func (CidrLocationMapOutput) ToCidrLocationMapOutput

func (o CidrLocationMapOutput) ToCidrLocationMapOutput() CidrLocationMapOutput

func (CidrLocationMapOutput) ToCidrLocationMapOutputWithContext

func (o CidrLocationMapOutput) ToCidrLocationMapOutputWithContext(ctx context.Context) CidrLocationMapOutput

type CidrLocationOutput

type CidrLocationOutput struct{ *pulumi.OutputState }

func (CidrLocationOutput) CidrBlocks

CIDR blocks for the location.

func (CidrLocationOutput) CidrCollectionId

func (o CidrLocationOutput) CidrCollectionId() pulumi.StringOutput

The ID of the CIDR collection to update.

func (CidrLocationOutput) ElementType

func (CidrLocationOutput) ElementType() reflect.Type

func (CidrLocationOutput) Name

Name for the CIDR location.

func (CidrLocationOutput) ToCidrLocationOutput

func (o CidrLocationOutput) ToCidrLocationOutput() CidrLocationOutput

func (CidrLocationOutput) ToCidrLocationOutputWithContext

func (o CidrLocationOutput) ToCidrLocationOutputWithContext(ctx context.Context) CidrLocationOutput

type CidrLocationState

type CidrLocationState struct {
	// CIDR blocks for the location.
	CidrBlocks pulumi.StringArrayInput
	// The ID of the CIDR collection to update.
	CidrCollectionId pulumi.StringPtrInput
	// Name for the CIDR location.
	Name pulumi.StringPtrInput
}

func (CidrLocationState) ElementType

func (CidrLocationState) ElementType() reflect.Type

type DelegationSet

type DelegationSet struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the Delegation Set.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A list of authoritative name servers for the hosted zone
	// (effectively a list of NS records).
	NameServers pulumi.StringArrayOutput `pulumi:"nameServers"`
	// This is a reference name used in Caller Reference
	// (helpful for identifying single delegation set amongst others)
	ReferenceName pulumi.StringPtrOutput `pulumi:"referenceName"`
}

Provides a [Route53 Delegation Set](https://docs.aws.amazon.com/Route53/latest/APIReference/API-actions-by-function.html#actions-by-function-reusable-delegation-sets) resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := route53.NewDelegationSet(ctx, "main", &route53.DelegationSetArgs{
			ReferenceName: pulumi.String("DynDNS"),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewZone(ctx, "primary", &route53.ZoneArgs{
			Name:            pulumi.String("mydomain.com"),
			DelegationSetId: main.ID(),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewZone(ctx, "secondary", &route53.ZoneArgs{
			Name:            pulumi.String("coolcompany.io"),
			DelegationSetId: main.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route53 Delegation Sets using the delegation set `id`. For example:

```sh $ pulumi import aws:route53/delegationSet:DelegationSet set1 N1PA6795SAMPLE ```

func GetDelegationSet

func GetDelegationSet(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DelegationSetState, opts ...pulumi.ResourceOption) (*DelegationSet, error)

GetDelegationSet gets an existing DelegationSet resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDelegationSet

func NewDelegationSet(ctx *pulumi.Context,
	name string, args *DelegationSetArgs, opts ...pulumi.ResourceOption) (*DelegationSet, error)

NewDelegationSet registers a new resource with the given unique name, arguments, and options.

func (*DelegationSet) ElementType

func (*DelegationSet) ElementType() reflect.Type

func (*DelegationSet) ToDelegationSetOutput

func (i *DelegationSet) ToDelegationSetOutput() DelegationSetOutput

func (*DelegationSet) ToDelegationSetOutputWithContext

func (i *DelegationSet) ToDelegationSetOutputWithContext(ctx context.Context) DelegationSetOutput

type DelegationSetArgs

type DelegationSetArgs struct {
	// This is a reference name used in Caller Reference
	// (helpful for identifying single delegation set amongst others)
	ReferenceName pulumi.StringPtrInput
}

The set of arguments for constructing a DelegationSet resource.

func (DelegationSetArgs) ElementType

func (DelegationSetArgs) ElementType() reflect.Type

type DelegationSetArray

type DelegationSetArray []DelegationSetInput

func (DelegationSetArray) ElementType

func (DelegationSetArray) ElementType() reflect.Type

func (DelegationSetArray) ToDelegationSetArrayOutput

func (i DelegationSetArray) ToDelegationSetArrayOutput() DelegationSetArrayOutput

func (DelegationSetArray) ToDelegationSetArrayOutputWithContext

func (i DelegationSetArray) ToDelegationSetArrayOutputWithContext(ctx context.Context) DelegationSetArrayOutput

type DelegationSetArrayInput

type DelegationSetArrayInput interface {
	pulumi.Input

	ToDelegationSetArrayOutput() DelegationSetArrayOutput
	ToDelegationSetArrayOutputWithContext(context.Context) DelegationSetArrayOutput
}

DelegationSetArrayInput is an input type that accepts DelegationSetArray and DelegationSetArrayOutput values. You can construct a concrete instance of `DelegationSetArrayInput` via:

DelegationSetArray{ DelegationSetArgs{...} }

type DelegationSetArrayOutput

type DelegationSetArrayOutput struct{ *pulumi.OutputState }

func (DelegationSetArrayOutput) ElementType

func (DelegationSetArrayOutput) ElementType() reflect.Type

func (DelegationSetArrayOutput) Index

func (DelegationSetArrayOutput) ToDelegationSetArrayOutput

func (o DelegationSetArrayOutput) ToDelegationSetArrayOutput() DelegationSetArrayOutput

func (DelegationSetArrayOutput) ToDelegationSetArrayOutputWithContext

func (o DelegationSetArrayOutput) ToDelegationSetArrayOutputWithContext(ctx context.Context) DelegationSetArrayOutput

type DelegationSetInput

type DelegationSetInput interface {
	pulumi.Input

	ToDelegationSetOutput() DelegationSetOutput
	ToDelegationSetOutputWithContext(ctx context.Context) DelegationSetOutput
}

type DelegationSetMap

type DelegationSetMap map[string]DelegationSetInput

func (DelegationSetMap) ElementType

func (DelegationSetMap) ElementType() reflect.Type

func (DelegationSetMap) ToDelegationSetMapOutput

func (i DelegationSetMap) ToDelegationSetMapOutput() DelegationSetMapOutput

func (DelegationSetMap) ToDelegationSetMapOutputWithContext

func (i DelegationSetMap) ToDelegationSetMapOutputWithContext(ctx context.Context) DelegationSetMapOutput

type DelegationSetMapInput

type DelegationSetMapInput interface {
	pulumi.Input

	ToDelegationSetMapOutput() DelegationSetMapOutput
	ToDelegationSetMapOutputWithContext(context.Context) DelegationSetMapOutput
}

DelegationSetMapInput is an input type that accepts DelegationSetMap and DelegationSetMapOutput values. You can construct a concrete instance of `DelegationSetMapInput` via:

DelegationSetMap{ "key": DelegationSetArgs{...} }

type DelegationSetMapOutput

type DelegationSetMapOutput struct{ *pulumi.OutputState }

func (DelegationSetMapOutput) ElementType

func (DelegationSetMapOutput) ElementType() reflect.Type

func (DelegationSetMapOutput) MapIndex

func (DelegationSetMapOutput) ToDelegationSetMapOutput

func (o DelegationSetMapOutput) ToDelegationSetMapOutput() DelegationSetMapOutput

func (DelegationSetMapOutput) ToDelegationSetMapOutputWithContext

func (o DelegationSetMapOutput) ToDelegationSetMapOutputWithContext(ctx context.Context) DelegationSetMapOutput

type DelegationSetOutput

type DelegationSetOutput struct{ *pulumi.OutputState }

func (DelegationSetOutput) Arn

The Amazon Resource Name (ARN) of the Delegation Set.

func (DelegationSetOutput) ElementType

func (DelegationSetOutput) ElementType() reflect.Type

func (DelegationSetOutput) NameServers

A list of authoritative name servers for the hosted zone (effectively a list of NS records).

func (DelegationSetOutput) ReferenceName

func (o DelegationSetOutput) ReferenceName() pulumi.StringPtrOutput

This is a reference name used in Caller Reference (helpful for identifying single delegation set amongst others)

func (DelegationSetOutput) ToDelegationSetOutput

func (o DelegationSetOutput) ToDelegationSetOutput() DelegationSetOutput

func (DelegationSetOutput) ToDelegationSetOutputWithContext

func (o DelegationSetOutput) ToDelegationSetOutputWithContext(ctx context.Context) DelegationSetOutput

type DelegationSetState

type DelegationSetState struct {
	// The Amazon Resource Name (ARN) of the Delegation Set.
	Arn pulumi.StringPtrInput
	// A list of authoritative name servers for the hosted zone
	// (effectively a list of NS records).
	NameServers pulumi.StringArrayInput
	// This is a reference name used in Caller Reference
	// (helpful for identifying single delegation set amongst others)
	ReferenceName pulumi.StringPtrInput
}

func (DelegationSetState) ElementType

func (DelegationSetState) ElementType() reflect.Type

type GetQueryLogConfigArgs

type GetQueryLogConfigArgs struct {
	// One or more name/value pairs to use as filters. There are
	// several valid keys, for a full reference, check out
	// [Route53resolver Filter value in the AWS API reference][1].
	//
	// In addition to all arguments above, the following attributes are exported:
	Filters []GetQueryLogConfigFilter `pulumi:"filters"`
	// The name of the query logging configuration.
	Name *string `pulumi:"name"`
	// ID of the Route53 Resolver Query Logging Configuration.
	ResolverQueryLogConfigId *string `pulumi:"resolverQueryLogConfigId"`
	// Map of tags to assign to the service.
	//
	// [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_Filter.html
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getQueryLogConfig.

type GetQueryLogConfigFilter

type GetQueryLogConfigFilter struct {
	// The name of the query logging configuration.
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetQueryLogConfigFilterArgs

type GetQueryLogConfigFilterArgs struct {
	// The name of the query logging configuration.
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetQueryLogConfigFilterArgs) ElementType

func (GetQueryLogConfigFilterArgs) ToGetQueryLogConfigFilterOutput

func (i GetQueryLogConfigFilterArgs) ToGetQueryLogConfigFilterOutput() GetQueryLogConfigFilterOutput

func (GetQueryLogConfigFilterArgs) ToGetQueryLogConfigFilterOutputWithContext

func (i GetQueryLogConfigFilterArgs) ToGetQueryLogConfigFilterOutputWithContext(ctx context.Context) GetQueryLogConfigFilterOutput

type GetQueryLogConfigFilterArray

type GetQueryLogConfigFilterArray []GetQueryLogConfigFilterInput

func (GetQueryLogConfigFilterArray) ElementType

func (GetQueryLogConfigFilterArray) ToGetQueryLogConfigFilterArrayOutput

func (i GetQueryLogConfigFilterArray) ToGetQueryLogConfigFilterArrayOutput() GetQueryLogConfigFilterArrayOutput

func (GetQueryLogConfigFilterArray) ToGetQueryLogConfigFilterArrayOutputWithContext

func (i GetQueryLogConfigFilterArray) ToGetQueryLogConfigFilterArrayOutputWithContext(ctx context.Context) GetQueryLogConfigFilterArrayOutput

type GetQueryLogConfigFilterArrayInput

type GetQueryLogConfigFilterArrayInput interface {
	pulumi.Input

	ToGetQueryLogConfigFilterArrayOutput() GetQueryLogConfigFilterArrayOutput
	ToGetQueryLogConfigFilterArrayOutputWithContext(context.Context) GetQueryLogConfigFilterArrayOutput
}

GetQueryLogConfigFilterArrayInput is an input type that accepts GetQueryLogConfigFilterArray and GetQueryLogConfigFilterArrayOutput values. You can construct a concrete instance of `GetQueryLogConfigFilterArrayInput` via:

GetQueryLogConfigFilterArray{ GetQueryLogConfigFilterArgs{...} }

type GetQueryLogConfigFilterArrayOutput

type GetQueryLogConfigFilterArrayOutput struct{ *pulumi.OutputState }

func (GetQueryLogConfigFilterArrayOutput) ElementType

func (GetQueryLogConfigFilterArrayOutput) Index

func (GetQueryLogConfigFilterArrayOutput) ToGetQueryLogConfigFilterArrayOutput

func (o GetQueryLogConfigFilterArrayOutput) ToGetQueryLogConfigFilterArrayOutput() GetQueryLogConfigFilterArrayOutput

func (GetQueryLogConfigFilterArrayOutput) ToGetQueryLogConfigFilterArrayOutputWithContext

func (o GetQueryLogConfigFilterArrayOutput) ToGetQueryLogConfigFilterArrayOutputWithContext(ctx context.Context) GetQueryLogConfigFilterArrayOutput

type GetQueryLogConfigFilterInput

type GetQueryLogConfigFilterInput interface {
	pulumi.Input

	ToGetQueryLogConfigFilterOutput() GetQueryLogConfigFilterOutput
	ToGetQueryLogConfigFilterOutputWithContext(context.Context) GetQueryLogConfigFilterOutput
}

GetQueryLogConfigFilterInput is an input type that accepts GetQueryLogConfigFilterArgs and GetQueryLogConfigFilterOutput values. You can construct a concrete instance of `GetQueryLogConfigFilterInput` via:

GetQueryLogConfigFilterArgs{...}

type GetQueryLogConfigFilterOutput

type GetQueryLogConfigFilterOutput struct{ *pulumi.OutputState }

func (GetQueryLogConfigFilterOutput) ElementType

func (GetQueryLogConfigFilterOutput) Name

The name of the query logging configuration.

func (GetQueryLogConfigFilterOutput) ToGetQueryLogConfigFilterOutput

func (o GetQueryLogConfigFilterOutput) ToGetQueryLogConfigFilterOutput() GetQueryLogConfigFilterOutput

func (GetQueryLogConfigFilterOutput) ToGetQueryLogConfigFilterOutputWithContext

func (o GetQueryLogConfigFilterOutput) ToGetQueryLogConfigFilterOutputWithContext(ctx context.Context) GetQueryLogConfigFilterOutput

func (GetQueryLogConfigFilterOutput) Values

type GetQueryLogConfigOutputArgs

type GetQueryLogConfigOutputArgs struct {
	// One or more name/value pairs to use as filters. There are
	// several valid keys, for a full reference, check out
	// [Route53resolver Filter value in the AWS API reference][1].
	//
	// In addition to all arguments above, the following attributes are exported:
	Filters GetQueryLogConfigFilterArrayInput `pulumi:"filters"`
	// The name of the query logging configuration.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// ID of the Route53 Resolver Query Logging Configuration.
	ResolverQueryLogConfigId pulumi.StringPtrInput `pulumi:"resolverQueryLogConfigId"`
	// Map of tags to assign to the service.
	//
	// [1]: https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_Filter.html
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getQueryLogConfig.

func (GetQueryLogConfigOutputArgs) ElementType

type GetQueryLogConfigResult

type GetQueryLogConfigResult struct {
	Arn            string                    `pulumi:"arn"`
	DestinationArn string                    `pulumi:"destinationArn"`
	Filters        []GetQueryLogConfigFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                       string            `pulumi:"id"`
	Name                     *string           `pulumi:"name"`
	OwnerId                  string            `pulumi:"ownerId"`
	ResolverQueryLogConfigId *string           `pulumi:"resolverQueryLogConfigId"`
	ShareStatus              string            `pulumi:"shareStatus"`
	Tags                     map[string]string `pulumi:"tags"`
}

A collection of values returned by getQueryLogConfig.

func GetQueryLogConfig

func GetQueryLogConfig(ctx *pulumi.Context, args *GetQueryLogConfigArgs, opts ...pulumi.InvokeOption) (*GetQueryLogConfigResult, error)

`route53.ResolverQueryLogConfig` provides details about a specific Route53 Resolver Query Logging Configuration.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.GetQueryLogConfig(ctx, &route53.GetQueryLogConfigArgs{
			ResolverQueryLogConfigId: pulumi.StringRef("rqlc-1abc2345ef678g91h"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.GetQueryLogConfig(ctx, &route53.GetQueryLogConfigArgs{
			Filters: []route53.GetQueryLogConfigFilter{
				{
					Name: "Name",
					Values: []string{
						"shared-query-log-config",
					},
				},
				{
					Name: "ShareStatus",
					Values: []string{
						"SHARED_WITH_ME",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetQueryLogConfigResultOutput

type GetQueryLogConfigResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getQueryLogConfig.

func (GetQueryLogConfigResultOutput) Arn

func (GetQueryLogConfigResultOutput) DestinationArn

func (GetQueryLogConfigResultOutput) ElementType

func (GetQueryLogConfigResultOutput) Filters

func (GetQueryLogConfigResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetQueryLogConfigResultOutput) Name

func (GetQueryLogConfigResultOutput) OwnerId

func (GetQueryLogConfigResultOutput) ResolverQueryLogConfigId

func (o GetQueryLogConfigResultOutput) ResolverQueryLogConfigId() pulumi.StringPtrOutput

func (GetQueryLogConfigResultOutput) ShareStatus

func (GetQueryLogConfigResultOutput) Tags

func (GetQueryLogConfigResultOutput) ToGetQueryLogConfigResultOutput

func (o GetQueryLogConfigResultOutput) ToGetQueryLogConfigResultOutput() GetQueryLogConfigResultOutput

func (GetQueryLogConfigResultOutput) ToGetQueryLogConfigResultOutputWithContext

func (o GetQueryLogConfigResultOutput) ToGetQueryLogConfigResultOutputWithContext(ctx context.Context) GetQueryLogConfigResultOutput

type GetResolverEndpointFilter

type GetResolverEndpointFilter struct {
	Name   string   `pulumi:"name"`
	Values []string `pulumi:"values"`
}

type GetResolverEndpointFilterArgs

type GetResolverEndpointFilterArgs struct {
	Name   pulumi.StringInput      `pulumi:"name"`
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (GetResolverEndpointFilterArgs) ElementType

func (GetResolverEndpointFilterArgs) ToGetResolverEndpointFilterOutput

func (i GetResolverEndpointFilterArgs) ToGetResolverEndpointFilterOutput() GetResolverEndpointFilterOutput

func (GetResolverEndpointFilterArgs) ToGetResolverEndpointFilterOutputWithContext

func (i GetResolverEndpointFilterArgs) ToGetResolverEndpointFilterOutputWithContext(ctx context.Context) GetResolverEndpointFilterOutput

type GetResolverEndpointFilterArray

type GetResolverEndpointFilterArray []GetResolverEndpointFilterInput

func (GetResolverEndpointFilterArray) ElementType

func (GetResolverEndpointFilterArray) ToGetResolverEndpointFilterArrayOutput

func (i GetResolverEndpointFilterArray) ToGetResolverEndpointFilterArrayOutput() GetResolverEndpointFilterArrayOutput

func (GetResolverEndpointFilterArray) ToGetResolverEndpointFilterArrayOutputWithContext

func (i GetResolverEndpointFilterArray) ToGetResolverEndpointFilterArrayOutputWithContext(ctx context.Context) GetResolverEndpointFilterArrayOutput

type GetResolverEndpointFilterArrayInput

type GetResolverEndpointFilterArrayInput interface {
	pulumi.Input

	ToGetResolverEndpointFilterArrayOutput() GetResolverEndpointFilterArrayOutput
	ToGetResolverEndpointFilterArrayOutputWithContext(context.Context) GetResolverEndpointFilterArrayOutput
}

GetResolverEndpointFilterArrayInput is an input type that accepts GetResolverEndpointFilterArray and GetResolverEndpointFilterArrayOutput values. You can construct a concrete instance of `GetResolverEndpointFilterArrayInput` via:

GetResolverEndpointFilterArray{ GetResolverEndpointFilterArgs{...} }

type GetResolverEndpointFilterArrayOutput

type GetResolverEndpointFilterArrayOutput struct{ *pulumi.OutputState }

func (GetResolverEndpointFilterArrayOutput) ElementType

func (GetResolverEndpointFilterArrayOutput) Index

func (GetResolverEndpointFilterArrayOutput) ToGetResolverEndpointFilterArrayOutput

func (o GetResolverEndpointFilterArrayOutput) ToGetResolverEndpointFilterArrayOutput() GetResolverEndpointFilterArrayOutput

func (GetResolverEndpointFilterArrayOutput) ToGetResolverEndpointFilterArrayOutputWithContext

func (o GetResolverEndpointFilterArrayOutput) ToGetResolverEndpointFilterArrayOutputWithContext(ctx context.Context) GetResolverEndpointFilterArrayOutput

type GetResolverEndpointFilterInput

type GetResolverEndpointFilterInput interface {
	pulumi.Input

	ToGetResolverEndpointFilterOutput() GetResolverEndpointFilterOutput
	ToGetResolverEndpointFilterOutputWithContext(context.Context) GetResolverEndpointFilterOutput
}

GetResolverEndpointFilterInput is an input type that accepts GetResolverEndpointFilterArgs and GetResolverEndpointFilterOutput values. You can construct a concrete instance of `GetResolverEndpointFilterInput` via:

GetResolverEndpointFilterArgs{...}

type GetResolverEndpointFilterOutput

type GetResolverEndpointFilterOutput struct{ *pulumi.OutputState }

func (GetResolverEndpointFilterOutput) ElementType

func (GetResolverEndpointFilterOutput) Name

func (GetResolverEndpointFilterOutput) ToGetResolverEndpointFilterOutput

func (o GetResolverEndpointFilterOutput) ToGetResolverEndpointFilterOutput() GetResolverEndpointFilterOutput

func (GetResolverEndpointFilterOutput) ToGetResolverEndpointFilterOutputWithContext

func (o GetResolverEndpointFilterOutput) ToGetResolverEndpointFilterOutputWithContext(ctx context.Context) GetResolverEndpointFilterOutput

func (GetResolverEndpointFilterOutput) Values

type GetResolverFirewallRulesArgs

type GetResolverFirewallRulesArgs struct {
	// The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list.
	Action *string `pulumi:"action"`
	// The unique identifier of the firewall rule group that you want to retrieve the rules for.
	FirewallRuleGroupId string `pulumi:"firewallRuleGroupId"`
	// The setting that determines the processing order of the rules in a rule group.
	Priority *int `pulumi:"priority"`
}

A collection of arguments for invoking getResolverFirewallRules.

type GetResolverFirewallRulesFirewallRule

type GetResolverFirewallRulesFirewallRule struct {
	// The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list.
	Action string `pulumi:"action"`
	// The DNS record's type.
	BlockOverrideDnsType string `pulumi:"blockOverrideDnsType"`
	// The custom DNS record to send back in response to the query.
	BlockOverrideDomain string `pulumi:"blockOverrideDomain"`
	// The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record.
	BlockOverrideTtl int `pulumi:"blockOverrideTtl"`
	// The way that you want DNS Firewall to block the request.
	BlockResponse string `pulumi:"blockResponse"`
	// The date and time that the rule was created, in Unix time format and Coordinated Universal Time (UTC).
	CreationTime string `pulumi:"creationTime"`
	// A unique string defined by you to identify the request.
	CreatorRequestId string `pulumi:"creatorRequestId"`
	// The ID of the domain list that's used in the rule.
	FirewallDomainListId string `pulumi:"firewallDomainListId"`
	// The unique identifier of the firewall rule group that you want to retrieve the rules for.
	FirewallRuleGroupId string `pulumi:"firewallRuleGroupId"`
	// The date and time that the rule was last modified, in Unix time format and Coordinated Universal Time (UTC).
	ModificationTime string `pulumi:"modificationTime"`
	// The name of the rule.
	Name string `pulumi:"name"`
	// The setting that determines the processing order of the rules in a rule group.
	Priority int `pulumi:"priority"`
}

type GetResolverFirewallRulesFirewallRuleArgs

type GetResolverFirewallRulesFirewallRuleArgs struct {
	// The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list.
	Action pulumi.StringInput `pulumi:"action"`
	// The DNS record's type.
	BlockOverrideDnsType pulumi.StringInput `pulumi:"blockOverrideDnsType"`
	// The custom DNS record to send back in response to the query.
	BlockOverrideDomain pulumi.StringInput `pulumi:"blockOverrideDomain"`
	// The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record.
	BlockOverrideTtl pulumi.IntInput `pulumi:"blockOverrideTtl"`
	// The way that you want DNS Firewall to block the request.
	BlockResponse pulumi.StringInput `pulumi:"blockResponse"`
	// The date and time that the rule was created, in Unix time format and Coordinated Universal Time (UTC).
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// A unique string defined by you to identify the request.
	CreatorRequestId pulumi.StringInput `pulumi:"creatorRequestId"`
	// The ID of the domain list that's used in the rule.
	FirewallDomainListId pulumi.StringInput `pulumi:"firewallDomainListId"`
	// The unique identifier of the firewall rule group that you want to retrieve the rules for.
	FirewallRuleGroupId pulumi.StringInput `pulumi:"firewallRuleGroupId"`
	// The date and time that the rule was last modified, in Unix time format and Coordinated Universal Time (UTC).
	ModificationTime pulumi.StringInput `pulumi:"modificationTime"`
	// The name of the rule.
	Name pulumi.StringInput `pulumi:"name"`
	// The setting that determines the processing order of the rules in a rule group.
	Priority pulumi.IntInput `pulumi:"priority"`
}

func (GetResolverFirewallRulesFirewallRuleArgs) ElementType

func (GetResolverFirewallRulesFirewallRuleArgs) ToGetResolverFirewallRulesFirewallRuleOutput

func (i GetResolverFirewallRulesFirewallRuleArgs) ToGetResolverFirewallRulesFirewallRuleOutput() GetResolverFirewallRulesFirewallRuleOutput

func (GetResolverFirewallRulesFirewallRuleArgs) ToGetResolverFirewallRulesFirewallRuleOutputWithContext

func (i GetResolverFirewallRulesFirewallRuleArgs) ToGetResolverFirewallRulesFirewallRuleOutputWithContext(ctx context.Context) GetResolverFirewallRulesFirewallRuleOutput

type GetResolverFirewallRulesFirewallRuleArray

type GetResolverFirewallRulesFirewallRuleArray []GetResolverFirewallRulesFirewallRuleInput

func (GetResolverFirewallRulesFirewallRuleArray) ElementType

func (GetResolverFirewallRulesFirewallRuleArray) ToGetResolverFirewallRulesFirewallRuleArrayOutput

func (i GetResolverFirewallRulesFirewallRuleArray) ToGetResolverFirewallRulesFirewallRuleArrayOutput() GetResolverFirewallRulesFirewallRuleArrayOutput

func (GetResolverFirewallRulesFirewallRuleArray) ToGetResolverFirewallRulesFirewallRuleArrayOutputWithContext

func (i GetResolverFirewallRulesFirewallRuleArray) ToGetResolverFirewallRulesFirewallRuleArrayOutputWithContext(ctx context.Context) GetResolverFirewallRulesFirewallRuleArrayOutput

type GetResolverFirewallRulesFirewallRuleArrayInput

type GetResolverFirewallRulesFirewallRuleArrayInput interface {
	pulumi.Input

	ToGetResolverFirewallRulesFirewallRuleArrayOutput() GetResolverFirewallRulesFirewallRuleArrayOutput
	ToGetResolverFirewallRulesFirewallRuleArrayOutputWithContext(context.Context) GetResolverFirewallRulesFirewallRuleArrayOutput
}

GetResolverFirewallRulesFirewallRuleArrayInput is an input type that accepts GetResolverFirewallRulesFirewallRuleArray and GetResolverFirewallRulesFirewallRuleArrayOutput values. You can construct a concrete instance of `GetResolverFirewallRulesFirewallRuleArrayInput` via:

GetResolverFirewallRulesFirewallRuleArray{ GetResolverFirewallRulesFirewallRuleArgs{...} }

type GetResolverFirewallRulesFirewallRuleArrayOutput

type GetResolverFirewallRulesFirewallRuleArrayOutput struct{ *pulumi.OutputState }

func (GetResolverFirewallRulesFirewallRuleArrayOutput) ElementType

func (GetResolverFirewallRulesFirewallRuleArrayOutput) Index

func (GetResolverFirewallRulesFirewallRuleArrayOutput) ToGetResolverFirewallRulesFirewallRuleArrayOutput

func (o GetResolverFirewallRulesFirewallRuleArrayOutput) ToGetResolverFirewallRulesFirewallRuleArrayOutput() GetResolverFirewallRulesFirewallRuleArrayOutput

func (GetResolverFirewallRulesFirewallRuleArrayOutput) ToGetResolverFirewallRulesFirewallRuleArrayOutputWithContext

func (o GetResolverFirewallRulesFirewallRuleArrayOutput) ToGetResolverFirewallRulesFirewallRuleArrayOutputWithContext(ctx context.Context) GetResolverFirewallRulesFirewallRuleArrayOutput

type GetResolverFirewallRulesFirewallRuleInput

type GetResolverFirewallRulesFirewallRuleInput interface {
	pulumi.Input

	ToGetResolverFirewallRulesFirewallRuleOutput() GetResolverFirewallRulesFirewallRuleOutput
	ToGetResolverFirewallRulesFirewallRuleOutputWithContext(context.Context) GetResolverFirewallRulesFirewallRuleOutput
}

GetResolverFirewallRulesFirewallRuleInput is an input type that accepts GetResolverFirewallRulesFirewallRuleArgs and GetResolverFirewallRulesFirewallRuleOutput values. You can construct a concrete instance of `GetResolverFirewallRulesFirewallRuleInput` via:

GetResolverFirewallRulesFirewallRuleArgs{...}

type GetResolverFirewallRulesFirewallRuleOutput

type GetResolverFirewallRulesFirewallRuleOutput struct{ *pulumi.OutputState }

func (GetResolverFirewallRulesFirewallRuleOutput) Action

The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list.

func (GetResolverFirewallRulesFirewallRuleOutput) BlockOverrideDnsType

The DNS record's type.

func (GetResolverFirewallRulesFirewallRuleOutput) BlockOverrideDomain

The custom DNS record to send back in response to the query.

func (GetResolverFirewallRulesFirewallRuleOutput) BlockOverrideTtl

The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record.

func (GetResolverFirewallRulesFirewallRuleOutput) BlockResponse

The way that you want DNS Firewall to block the request.

func (GetResolverFirewallRulesFirewallRuleOutput) CreationTime

The date and time that the rule was created, in Unix time format and Coordinated Universal Time (UTC).

func (GetResolverFirewallRulesFirewallRuleOutput) CreatorRequestId

A unique string defined by you to identify the request.

func (GetResolverFirewallRulesFirewallRuleOutput) ElementType

func (GetResolverFirewallRulesFirewallRuleOutput) FirewallDomainListId

The ID of the domain list that's used in the rule.

func (GetResolverFirewallRulesFirewallRuleOutput) FirewallRuleGroupId

The unique identifier of the firewall rule group that you want to retrieve the rules for.

func (GetResolverFirewallRulesFirewallRuleOutput) ModificationTime

The date and time that the rule was last modified, in Unix time format and Coordinated Universal Time (UTC).

func (GetResolverFirewallRulesFirewallRuleOutput) Name

The name of the rule.

func (GetResolverFirewallRulesFirewallRuleOutput) Priority

The setting that determines the processing order of the rules in a rule group.

func (GetResolverFirewallRulesFirewallRuleOutput) ToGetResolverFirewallRulesFirewallRuleOutput

func (o GetResolverFirewallRulesFirewallRuleOutput) ToGetResolverFirewallRulesFirewallRuleOutput() GetResolverFirewallRulesFirewallRuleOutput

func (GetResolverFirewallRulesFirewallRuleOutput) ToGetResolverFirewallRulesFirewallRuleOutputWithContext

func (o GetResolverFirewallRulesFirewallRuleOutput) ToGetResolverFirewallRulesFirewallRuleOutputWithContext(ctx context.Context) GetResolverFirewallRulesFirewallRuleOutput

type GetResolverFirewallRulesOutputArgs

type GetResolverFirewallRulesOutputArgs struct {
	// The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list.
	Action pulumi.StringPtrInput `pulumi:"action"`
	// The unique identifier of the firewall rule group that you want to retrieve the rules for.
	FirewallRuleGroupId pulumi.StringInput `pulumi:"firewallRuleGroupId"`
	// The setting that determines the processing order of the rules in a rule group.
	Priority pulumi.IntPtrInput `pulumi:"priority"`
}

A collection of arguments for invoking getResolverFirewallRules.

func (GetResolverFirewallRulesOutputArgs) ElementType

type GetResolverFirewallRulesResult

type GetResolverFirewallRulesResult struct {
	Action              *string `pulumi:"action"`
	FirewallRuleGroupId string  `pulumi:"firewallRuleGroupId"`
	// List with information about the firewall rules. See details below.
	FirewallRules []GetResolverFirewallRulesFirewallRule `pulumi:"firewallRules"`
	// The provider-assigned unique ID for this managed resource.
	Id       string `pulumi:"id"`
	Priority *int   `pulumi:"priority"`
}

A collection of values returned by getResolverFirewallRules.

func GetResolverFirewallRules

func GetResolverFirewallRules(ctx *pulumi.Context, args *GetResolverFirewallRulesArgs, opts ...pulumi.InvokeOption) (*GetResolverFirewallRulesResult, error)

`route53.getResolverFirewallRules` Provides details about rules in a specific Route53 Resolver Firewall rule group.

## Example Usage

The following example shows how to get Route53 Resolver Firewall rules based on its associated firewall group id.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.GetResolverFirewallRules(ctx, &route53.GetResolverFirewallRulesArgs{
			FirewallRuleGroupId: exampleAwsRoute53ResolverFirewallRuleGroup.Id,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetResolverFirewallRulesResultOutput

type GetResolverFirewallRulesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResolverFirewallRules.

func (GetResolverFirewallRulesResultOutput) Action

func (GetResolverFirewallRulesResultOutput) ElementType

func (GetResolverFirewallRulesResultOutput) FirewallRuleGroupId

func (GetResolverFirewallRulesResultOutput) FirewallRules

List with information about the firewall rules. See details below.

func (GetResolverFirewallRulesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetResolverFirewallRulesResultOutput) Priority

func (GetResolverFirewallRulesResultOutput) ToGetResolverFirewallRulesResultOutput

func (o GetResolverFirewallRulesResultOutput) ToGetResolverFirewallRulesResultOutput() GetResolverFirewallRulesResultOutput

func (GetResolverFirewallRulesResultOutput) ToGetResolverFirewallRulesResultOutputWithContext

func (o GetResolverFirewallRulesResultOutput) ToGetResolverFirewallRulesResultOutputWithContext(ctx context.Context) GetResolverFirewallRulesResultOutput

type GetResolverRulesArgs

type GetResolverRulesArgs struct {
	// Regex string to filter resolver rule names.
	// The filtering is done locally, so could have a performance impact if the result is large.
	// This argument should be used along with other arguments to limit the number of results returned.
	NameRegex *string `pulumi:"nameRegex"`
	// When the desired resolver rules are shared with another AWS account, the account ID of the account that the rules are shared with.
	OwnerId *string `pulumi:"ownerId"`
	// ID of the outbound resolver endpoint for the desired resolver rules.
	ResolverEndpointId *string `pulumi:"resolverEndpointId"`
	// Rule type of the desired resolver rules. Valid values are `FORWARD`, `SYSTEM` and `RECURSIVE`.
	RuleType *string `pulumi:"ruleType"`
	// Whether the desired resolver rules are shared and, if so, whether the current account is sharing the rules with another account, or another account is sharing the rules with the current account. Valid values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`
	ShareStatus *string `pulumi:"shareStatus"`
}

A collection of arguments for invoking getResolverRules.

type GetResolverRulesOutputArgs

type GetResolverRulesOutputArgs struct {
	// Regex string to filter resolver rule names.
	// The filtering is done locally, so could have a performance impact if the result is large.
	// This argument should be used along with other arguments to limit the number of results returned.
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// When the desired resolver rules are shared with another AWS account, the account ID of the account that the rules are shared with.
	OwnerId pulumi.StringPtrInput `pulumi:"ownerId"`
	// ID of the outbound resolver endpoint for the desired resolver rules.
	ResolverEndpointId pulumi.StringPtrInput `pulumi:"resolverEndpointId"`
	// Rule type of the desired resolver rules. Valid values are `FORWARD`, `SYSTEM` and `RECURSIVE`.
	RuleType pulumi.StringPtrInput `pulumi:"ruleType"`
	// Whether the desired resolver rules are shared and, if so, whether the current account is sharing the rules with another account, or another account is sharing the rules with the current account. Valid values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`
	ShareStatus pulumi.StringPtrInput `pulumi:"shareStatus"`
}

A collection of arguments for invoking getResolverRules.

func (GetResolverRulesOutputArgs) ElementType

func (GetResolverRulesOutputArgs) ElementType() reflect.Type

type GetResolverRulesResult

type GetResolverRulesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id                 string  `pulumi:"id"`
	NameRegex          *string `pulumi:"nameRegex"`
	OwnerId            *string `pulumi:"ownerId"`
	ResolverEndpointId *string `pulumi:"resolverEndpointId"`
	// IDs of the matched resolver rules.
	ResolverRuleIds []string `pulumi:"resolverRuleIds"`
	RuleType        *string  `pulumi:"ruleType"`
	ShareStatus     *string  `pulumi:"shareStatus"`
}

A collection of values returned by getResolverRules.

func GetResolverRules

func GetResolverRules(ctx *pulumi.Context, args *GetResolverRulesArgs, opts ...pulumi.InvokeOption) (*GetResolverRulesResult, error)

`route53.getResolverRules` provides details about a set of Route53 Resolver rules.

## Example Usage

### Retrieving the default resolver rule

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.GetResolverRules(ctx, &route53.GetResolverRulesArgs{
			OwnerId:     pulumi.StringRef("Route 53 Resolver"),
			RuleType:    pulumi.StringRef("RECURSIVE"),
			ShareStatus: pulumi.StringRef("NOT_SHARED"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Retrieving forward rules shared with me

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.GetResolverRules(ctx, &route53.GetResolverRulesArgs{
			RuleType:    pulumi.StringRef("FORWARD"),
			ShareStatus: pulumi.StringRef("SHARED_WITH_ME"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Retrieving rules by name regex

Resolver rules whose name contains `abc`.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.GetResolverRules(ctx, &route53.GetResolverRulesArgs{
			NameRegex: pulumi.StringRef(".*abc.*"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetResolverRulesResultOutput

type GetResolverRulesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResolverRules.

func (GetResolverRulesResultOutput) ElementType

func (GetResolverRulesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetResolverRulesResultOutput) NameRegex

func (GetResolverRulesResultOutput) OwnerId

func (GetResolverRulesResultOutput) ResolverEndpointId

func (o GetResolverRulesResultOutput) ResolverEndpointId() pulumi.StringPtrOutput

func (GetResolverRulesResultOutput) ResolverRuleIds

IDs of the matched resolver rules.

func (GetResolverRulesResultOutput) RuleType

func (GetResolverRulesResultOutput) ShareStatus

func (GetResolverRulesResultOutput) ToGetResolverRulesResultOutput

func (o GetResolverRulesResultOutput) ToGetResolverRulesResultOutput() GetResolverRulesResultOutput

func (GetResolverRulesResultOutput) ToGetResolverRulesResultOutputWithContext

func (o GetResolverRulesResultOutput) ToGetResolverRulesResultOutputWithContext(ctx context.Context) GetResolverRulesResultOutput

type GetTrafficPolicyDocumentArgs

type GetTrafficPolicyDocumentArgs struct {
	// Configuration block for the definitions of the endpoints that you want to use in this traffic policy. See below
	Endpoints []GetTrafficPolicyDocumentEndpoint `pulumi:"endpoints"`
	// DNS type of all of the resource record sets that Amazon Route 53 will create based on this traffic policy.
	RecordType *string `pulumi:"recordType"`
	// Configuration block for definitions of the rules that you want to use in this traffic policy. See below
	Rules []GetTrafficPolicyDocumentRule `pulumi:"rules"`
	// An endpoint to be as the starting point for the traffic policy.
	StartEndpoint *string `pulumi:"startEndpoint"`
	// A rule to be as the starting point for the traffic policy.
	StartRule *string `pulumi:"startRule"`
	// Version of the traffic policy format.
	Version *string `pulumi:"version"`
}

A collection of arguments for invoking getTrafficPolicyDocument.

type GetTrafficPolicyDocumentEndpoint

type GetTrafficPolicyDocumentEndpoint struct {
	// ID of an endpoint you want to assign.
	Id string `pulumi:"id"`
	// To route traffic to an Amazon S3 bucket that is configured as a website endpoint, specify the region in which you created the bucket for `region`.
	Region *string `pulumi:"region"`
	// Type of the endpoint. Valid values are `value`, `cloudfront`, `elastic-load-balancer`, `s3-website`, `application-load-balancer`, `network-load-balancer` and `elastic-beanstalk`
	Type *string `pulumi:"type"`
	// Value of the `type`.
	Value *string `pulumi:"value"`
}

type GetTrafficPolicyDocumentEndpointArgs

type GetTrafficPolicyDocumentEndpointArgs struct {
	// ID of an endpoint you want to assign.
	Id pulumi.StringInput `pulumi:"id"`
	// To route traffic to an Amazon S3 bucket that is configured as a website endpoint, specify the region in which you created the bucket for `region`.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// Type of the endpoint. Valid values are `value`, `cloudfront`, `elastic-load-balancer`, `s3-website`, `application-load-balancer`, `network-load-balancer` and `elastic-beanstalk`
	Type pulumi.StringPtrInput `pulumi:"type"`
	// Value of the `type`.
	Value pulumi.StringPtrInput `pulumi:"value"`
}

func (GetTrafficPolicyDocumentEndpointArgs) ElementType

func (GetTrafficPolicyDocumentEndpointArgs) ToGetTrafficPolicyDocumentEndpointOutput

func (i GetTrafficPolicyDocumentEndpointArgs) ToGetTrafficPolicyDocumentEndpointOutput() GetTrafficPolicyDocumentEndpointOutput

func (GetTrafficPolicyDocumentEndpointArgs) ToGetTrafficPolicyDocumentEndpointOutputWithContext

func (i GetTrafficPolicyDocumentEndpointArgs) ToGetTrafficPolicyDocumentEndpointOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentEndpointOutput

type GetTrafficPolicyDocumentEndpointArray

type GetTrafficPolicyDocumentEndpointArray []GetTrafficPolicyDocumentEndpointInput

func (GetTrafficPolicyDocumentEndpointArray) ElementType

func (GetTrafficPolicyDocumentEndpointArray) ToGetTrafficPolicyDocumentEndpointArrayOutput

func (i GetTrafficPolicyDocumentEndpointArray) ToGetTrafficPolicyDocumentEndpointArrayOutput() GetTrafficPolicyDocumentEndpointArrayOutput

func (GetTrafficPolicyDocumentEndpointArray) ToGetTrafficPolicyDocumentEndpointArrayOutputWithContext

func (i GetTrafficPolicyDocumentEndpointArray) ToGetTrafficPolicyDocumentEndpointArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentEndpointArrayOutput

type GetTrafficPolicyDocumentEndpointArrayInput

type GetTrafficPolicyDocumentEndpointArrayInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentEndpointArrayOutput() GetTrafficPolicyDocumentEndpointArrayOutput
	ToGetTrafficPolicyDocumentEndpointArrayOutputWithContext(context.Context) GetTrafficPolicyDocumentEndpointArrayOutput
}

GetTrafficPolicyDocumentEndpointArrayInput is an input type that accepts GetTrafficPolicyDocumentEndpointArray and GetTrafficPolicyDocumentEndpointArrayOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentEndpointArrayInput` via:

GetTrafficPolicyDocumentEndpointArray{ GetTrafficPolicyDocumentEndpointArgs{...} }

type GetTrafficPolicyDocumentEndpointArrayOutput

type GetTrafficPolicyDocumentEndpointArrayOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentEndpointArrayOutput) ElementType

func (GetTrafficPolicyDocumentEndpointArrayOutput) Index

func (GetTrafficPolicyDocumentEndpointArrayOutput) ToGetTrafficPolicyDocumentEndpointArrayOutput

func (o GetTrafficPolicyDocumentEndpointArrayOutput) ToGetTrafficPolicyDocumentEndpointArrayOutput() GetTrafficPolicyDocumentEndpointArrayOutput

func (GetTrafficPolicyDocumentEndpointArrayOutput) ToGetTrafficPolicyDocumentEndpointArrayOutputWithContext

func (o GetTrafficPolicyDocumentEndpointArrayOutput) ToGetTrafficPolicyDocumentEndpointArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentEndpointArrayOutput

type GetTrafficPolicyDocumentEndpointInput

type GetTrafficPolicyDocumentEndpointInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentEndpointOutput() GetTrafficPolicyDocumentEndpointOutput
	ToGetTrafficPolicyDocumentEndpointOutputWithContext(context.Context) GetTrafficPolicyDocumentEndpointOutput
}

GetTrafficPolicyDocumentEndpointInput is an input type that accepts GetTrafficPolicyDocumentEndpointArgs and GetTrafficPolicyDocumentEndpointOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentEndpointInput` via:

GetTrafficPolicyDocumentEndpointArgs{...}

type GetTrafficPolicyDocumentEndpointOutput

type GetTrafficPolicyDocumentEndpointOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentEndpointOutput) ElementType

func (GetTrafficPolicyDocumentEndpointOutput) Id

ID of an endpoint you want to assign.

func (GetTrafficPolicyDocumentEndpointOutput) Region

To route traffic to an Amazon S3 bucket that is configured as a website endpoint, specify the region in which you created the bucket for `region`.

func (GetTrafficPolicyDocumentEndpointOutput) ToGetTrafficPolicyDocumentEndpointOutput

func (o GetTrafficPolicyDocumentEndpointOutput) ToGetTrafficPolicyDocumentEndpointOutput() GetTrafficPolicyDocumentEndpointOutput

func (GetTrafficPolicyDocumentEndpointOutput) ToGetTrafficPolicyDocumentEndpointOutputWithContext

func (o GetTrafficPolicyDocumentEndpointOutput) ToGetTrafficPolicyDocumentEndpointOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentEndpointOutput

func (GetTrafficPolicyDocumentEndpointOutput) Type

Type of the endpoint. Valid values are `value`, `cloudfront`, `elastic-load-balancer`, `s3-website`, `application-load-balancer`, `network-load-balancer` and `elastic-beanstalk`

func (GetTrafficPolicyDocumentEndpointOutput) Value

Value of the `type`.

type GetTrafficPolicyDocumentOutputArgs

type GetTrafficPolicyDocumentOutputArgs struct {
	// Configuration block for the definitions of the endpoints that you want to use in this traffic policy. See below
	Endpoints GetTrafficPolicyDocumentEndpointArrayInput `pulumi:"endpoints"`
	// DNS type of all of the resource record sets that Amazon Route 53 will create based on this traffic policy.
	RecordType pulumi.StringPtrInput `pulumi:"recordType"`
	// Configuration block for definitions of the rules that you want to use in this traffic policy. See below
	Rules GetTrafficPolicyDocumentRuleArrayInput `pulumi:"rules"`
	// An endpoint to be as the starting point for the traffic policy.
	StartEndpoint pulumi.StringPtrInput `pulumi:"startEndpoint"`
	// A rule to be as the starting point for the traffic policy.
	StartRule pulumi.StringPtrInput `pulumi:"startRule"`
	// Version of the traffic policy format.
	Version pulumi.StringPtrInput `pulumi:"version"`
}

A collection of arguments for invoking getTrafficPolicyDocument.

func (GetTrafficPolicyDocumentOutputArgs) ElementType

type GetTrafficPolicyDocumentResult

type GetTrafficPolicyDocumentResult struct {
	Endpoints []GetTrafficPolicyDocumentEndpoint `pulumi:"endpoints"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// Standard JSON policy document rendered based on the arguments above.
	Json          string                         `pulumi:"json"`
	RecordType    *string                        `pulumi:"recordType"`
	Rules         []GetTrafficPolicyDocumentRule `pulumi:"rules"`
	StartEndpoint *string                        `pulumi:"startEndpoint"`
	StartRule     *string                        `pulumi:"startRule"`
	Version       *string                        `pulumi:"version"`
}

A collection of values returned by getTrafficPolicyDocument.

func GetTrafficPolicyDocument

func GetTrafficPolicyDocument(ctx *pulumi.Context, args *GetTrafficPolicyDocumentArgs, opts ...pulumi.InvokeOption) (*GetTrafficPolicyDocumentResult, error)

Generates an Route53 traffic policy document in JSON format for use with resources that expect policy documents such as `route53.TrafficPolicy`.

## Example Usage

### Basic Example

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := aws.GetRegion(ctx, nil, nil)
		if err != nil {
			return err
		}
		example, err := route53.GetTrafficPolicyDocument(ctx, &route53.GetTrafficPolicyDocumentArgs{
			RecordType: pulumi.StringRef("A"),
			StartRule:  pulumi.StringRef("site_switch"),
			Endpoints: []route53.GetTrafficPolicyDocumentEndpoint{
				{
					Id:    "my_elb",
					Type:  pulumi.StringRef("elastic-load-balancer"),
					Value: pulumi.StringRef(fmt.Sprintf("elb-111111.%v.elb.amazonaws.com", current.Name)),
				},
				{
					Id:     "site_down_banner",
					Type:   pulumi.StringRef("s3-website"),
					Region: pulumi.StringRef(current.Name),
					Value:  pulumi.StringRef("www.example.com"),
				},
			},
			Rules: []route53.GetTrafficPolicyDocumentRule{
				{
					Id:   "site_switch",
					Type: pulumi.StringRef("failover"),
					Primary: {
						EndpointReference: pulumi.StringRef("my_elb"),
					},
					Secondary: {
						EndpointReference: pulumi.StringRef("site_down_banner"),
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = route53.NewTrafficPolicy(ctx, "example", &route53.TrafficPolicyArgs{
			Name:     pulumi.String("example"),
			Comment:  pulumi.String("example comment"),
			Document: pulumi.String(example.Json),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Complex Example

The following example showcases the use of nested rules within the traffic policy document and introduces the `geoproximity` rule type.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := route53.GetTrafficPolicyDocument(ctx, &route53.GetTrafficPolicyDocumentArgs{
			RecordType: pulumi.StringRef("A"),
			StartRule:  pulumi.StringRef("geoproximity_rule"),
			Endpoints: []route53.GetTrafficPolicyDocumentEndpoint{
				{
					Id:    "na_endpoint_a",
					Type:  pulumi.StringRef("elastic-load-balancer"),
					Value: pulumi.StringRef("elb-111111.us-west-1.elb.amazonaws.com"),
				},
				{
					Id:    "na_endpoint_b",
					Type:  pulumi.StringRef("elastic-load-balancer"),
					Value: pulumi.StringRef("elb-222222.us-west-1.elb.amazonaws.com"),
				},
				{
					Id:    "eu_endpoint",
					Type:  pulumi.StringRef("elastic-load-balancer"),
					Value: pulumi.StringRef("elb-333333.eu-west-1.elb.amazonaws.com"),
				},
				{
					Id:    "ap_endpoint",
					Type:  pulumi.StringRef("elastic-load-balancer"),
					Value: pulumi.StringRef("elb-444444.ap-northeast-2.elb.amazonaws.com"),
				},
			},
			Rules: pulumi.Array{
				route53.GetTrafficPolicyDocumentRule{
					Id:   "na_rule",
					Type: pulumi.StringRef("failover"),
					Primary: route53.GetTrafficPolicyDocumentRulePrimary{
						EndpointReference: pulumi.StringRef("na_endpoint_a"),
					},
					Secondary: route53.GetTrafficPolicyDocumentRuleSecondary{
						EndpointReference: pulumi.StringRef("na_endpoint_b"),
					},
				},
				route53.GetTrafficPolicyDocumentRule{
					Id:   "geoproximity_rule",
					Type: pulumi.StringRef("geoproximity"),
					GeoProximityLocations: []route53.GetTrafficPolicyDocumentRuleGeoProximityLocation{
						{
							Region:               pulumi.StringRef("aws:route53:us-west-1"),
							Bias:                 pulumi.StringRef("10"),
							EvaluateTargetHealth: pulumi.BoolRef(true),
							RuleReference:        pulumi.StringRef("na_rule"),
						},
						{
							Region:               pulumi.StringRef("aws:route53:eu-west-1"),
							Bias:                 pulumi.StringRef("10"),
							EvaluateTargetHealth: pulumi.BoolRef(true),
							EndpointReference:    pulumi.StringRef("eu_endpoint"),
						},
						{
							Region:               pulumi.StringRef("aws:route53:ap-northeast-2"),
							Bias:                 pulumi.StringRef("0"),
							EvaluateTargetHealth: pulumi.BoolRef(true),
							EndpointReference:    pulumi.StringRef("ap_endpoint"),
						},
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = route53.NewTrafficPolicy(ctx, "example", &route53.TrafficPolicyArgs{
			Name:     pulumi.String("example"),
			Comment:  pulumi.String("example comment"),
			Document: pulumi.String(example.Json),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetTrafficPolicyDocumentResultOutput

type GetTrafficPolicyDocumentResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getTrafficPolicyDocument.

func (GetTrafficPolicyDocumentResultOutput) ElementType

func (GetTrafficPolicyDocumentResultOutput) Endpoints

func (GetTrafficPolicyDocumentResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetTrafficPolicyDocumentResultOutput) Json

Standard JSON policy document rendered based on the arguments above.

func (GetTrafficPolicyDocumentResultOutput) RecordType

func (GetTrafficPolicyDocumentResultOutput) Rules

func (GetTrafficPolicyDocumentResultOutput) StartEndpoint

func (GetTrafficPolicyDocumentResultOutput) StartRule

func (GetTrafficPolicyDocumentResultOutput) ToGetTrafficPolicyDocumentResultOutput

func (o GetTrafficPolicyDocumentResultOutput) ToGetTrafficPolicyDocumentResultOutput() GetTrafficPolicyDocumentResultOutput

func (GetTrafficPolicyDocumentResultOutput) ToGetTrafficPolicyDocumentResultOutputWithContext

func (o GetTrafficPolicyDocumentResultOutput) ToGetTrafficPolicyDocumentResultOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentResultOutput

func (GetTrafficPolicyDocumentResultOutput) Version

type GetTrafficPolicyDocumentRule

type GetTrafficPolicyDocumentRule struct {
	// Configuration block for when you add a geoproximity rule, you configure Amazon Route 53 to route traffic to your resources based on the geographic location of your resources. Only valid for `geoproximity` type. See below
	GeoProximityLocations []GetTrafficPolicyDocumentRuleGeoProximityLocation `pulumi:"geoProximityLocations"`
	// ID of a rule you want to assign.
	Id string `pulumi:"id"`
	// Configuration block for when you add a multivalue answer rule, you configure your traffic policy to route traffic approximately randomly to your healthy resources.  Only valid for `multivalue` type. See below
	Items []GetTrafficPolicyDocumentRuleItem `pulumi:"items"`
	// Configuration block for when you add a geolocation rule, you configure your traffic policy to route your traffic based on the geographic location of your users.  Only valid for `geo` type. See below
	Locations []GetTrafficPolicyDocumentRuleLocation `pulumi:"locations"`
	// Configuration block for the settings for the rule or endpoint that you want to route traffic to whenever the corresponding resources are available. Only valid for `failover` type. See below
	Primary *GetTrafficPolicyDocumentRulePrimary `pulumi:"primary"`
	Regions []GetTrafficPolicyDocumentRuleRegion `pulumi:"regions"`
	// Configuration block for the rule or endpoint that you want to route traffic to whenever the primary resources are not available. Only valid for `failover` type. See below
	Secondary *GetTrafficPolicyDocumentRuleSecondary `pulumi:"secondary"`
	// Type of the rule.
	Type *string `pulumi:"type"`
}

type GetTrafficPolicyDocumentRuleArgs

type GetTrafficPolicyDocumentRuleArgs struct {
	// Configuration block for when you add a geoproximity rule, you configure Amazon Route 53 to route traffic to your resources based on the geographic location of your resources. Only valid for `geoproximity` type. See below
	GeoProximityLocations GetTrafficPolicyDocumentRuleGeoProximityLocationArrayInput `pulumi:"geoProximityLocations"`
	// ID of a rule you want to assign.
	Id pulumi.StringInput `pulumi:"id"`
	// Configuration block for when you add a multivalue answer rule, you configure your traffic policy to route traffic approximately randomly to your healthy resources.  Only valid for `multivalue` type. See below
	Items GetTrafficPolicyDocumentRuleItemArrayInput `pulumi:"items"`
	// Configuration block for when you add a geolocation rule, you configure your traffic policy to route your traffic based on the geographic location of your users.  Only valid for `geo` type. See below
	Locations GetTrafficPolicyDocumentRuleLocationArrayInput `pulumi:"locations"`
	// Configuration block for the settings for the rule or endpoint that you want to route traffic to whenever the corresponding resources are available. Only valid for `failover` type. See below
	Primary GetTrafficPolicyDocumentRulePrimaryPtrInput  `pulumi:"primary"`
	Regions GetTrafficPolicyDocumentRuleRegionArrayInput `pulumi:"regions"`
	// Configuration block for the rule or endpoint that you want to route traffic to whenever the primary resources are not available. Only valid for `failover` type. See below
	Secondary GetTrafficPolicyDocumentRuleSecondaryPtrInput `pulumi:"secondary"`
	// Type of the rule.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (GetTrafficPolicyDocumentRuleArgs) ElementType

func (GetTrafficPolicyDocumentRuleArgs) ToGetTrafficPolicyDocumentRuleOutput

func (i GetTrafficPolicyDocumentRuleArgs) ToGetTrafficPolicyDocumentRuleOutput() GetTrafficPolicyDocumentRuleOutput

func (GetTrafficPolicyDocumentRuleArgs) ToGetTrafficPolicyDocumentRuleOutputWithContext

func (i GetTrafficPolicyDocumentRuleArgs) ToGetTrafficPolicyDocumentRuleOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleOutput

type GetTrafficPolicyDocumentRuleArray

type GetTrafficPolicyDocumentRuleArray []GetTrafficPolicyDocumentRuleInput

func (GetTrafficPolicyDocumentRuleArray) ElementType

func (GetTrafficPolicyDocumentRuleArray) ToGetTrafficPolicyDocumentRuleArrayOutput

func (i GetTrafficPolicyDocumentRuleArray) ToGetTrafficPolicyDocumentRuleArrayOutput() GetTrafficPolicyDocumentRuleArrayOutput

func (GetTrafficPolicyDocumentRuleArray) ToGetTrafficPolicyDocumentRuleArrayOutputWithContext

func (i GetTrafficPolicyDocumentRuleArray) ToGetTrafficPolicyDocumentRuleArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleArrayOutput

type GetTrafficPolicyDocumentRuleArrayInput

type GetTrafficPolicyDocumentRuleArrayInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleArrayOutput() GetTrafficPolicyDocumentRuleArrayOutput
	ToGetTrafficPolicyDocumentRuleArrayOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleArrayOutput
}

GetTrafficPolicyDocumentRuleArrayInput is an input type that accepts GetTrafficPolicyDocumentRuleArray and GetTrafficPolicyDocumentRuleArrayOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleArrayInput` via:

GetTrafficPolicyDocumentRuleArray{ GetTrafficPolicyDocumentRuleArgs{...} }

type GetTrafficPolicyDocumentRuleArrayOutput

type GetTrafficPolicyDocumentRuleArrayOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleArrayOutput) ElementType

func (GetTrafficPolicyDocumentRuleArrayOutput) Index

func (GetTrafficPolicyDocumentRuleArrayOutput) ToGetTrafficPolicyDocumentRuleArrayOutput

func (o GetTrafficPolicyDocumentRuleArrayOutput) ToGetTrafficPolicyDocumentRuleArrayOutput() GetTrafficPolicyDocumentRuleArrayOutput

func (GetTrafficPolicyDocumentRuleArrayOutput) ToGetTrafficPolicyDocumentRuleArrayOutputWithContext

func (o GetTrafficPolicyDocumentRuleArrayOutput) ToGetTrafficPolicyDocumentRuleArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleArrayOutput

type GetTrafficPolicyDocumentRuleGeoProximityLocation

type GetTrafficPolicyDocumentRuleGeoProximityLocation struct {
	// Specify a value for `bias` if you want to route more traffic to an endpoint from nearby endpoints (positive values) or route less traffic to an endpoint (negative values).
	Bias *string `pulumi:"bias"`
	// References to an endpoint.
	EndpointReference *string `pulumi:"endpointReference"`
	// Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.
	EvaluateTargetHealth *bool `pulumi:"evaluateTargetHealth"`
	// If you want to associate a health check with the endpoint or rule.
	HealthCheck *string `pulumi:"healthCheck"`
	// Represents the location south (negative) or north (positive) of the equator. Valid values are -90 degrees to 90 degrees.
	Latitude *string `pulumi:"latitude"`
	// Represents the location west (negative) or east (positive) of the prime meridian. Valid values are -180 degrees to 180 degrees.
	Longitude *string `pulumi:"longitude"`
	// If your endpoint is an AWS resource, specify the AWS Region that you created the resource in.
	Region *string `pulumi:"region"`
	// References to a rule.
	RuleReference *string `pulumi:"ruleReference"`
}

type GetTrafficPolicyDocumentRuleGeoProximityLocationArgs

type GetTrafficPolicyDocumentRuleGeoProximityLocationArgs struct {
	// Specify a value for `bias` if you want to route more traffic to an endpoint from nearby endpoints (positive values) or route less traffic to an endpoint (negative values).
	Bias pulumi.StringPtrInput `pulumi:"bias"`
	// References to an endpoint.
	EndpointReference pulumi.StringPtrInput `pulumi:"endpointReference"`
	// Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.
	EvaluateTargetHealth pulumi.BoolPtrInput `pulumi:"evaluateTargetHealth"`
	// If you want to associate a health check with the endpoint or rule.
	HealthCheck pulumi.StringPtrInput `pulumi:"healthCheck"`
	// Represents the location south (negative) or north (positive) of the equator. Valid values are -90 degrees to 90 degrees.
	Latitude pulumi.StringPtrInput `pulumi:"latitude"`
	// Represents the location west (negative) or east (positive) of the prime meridian. Valid values are -180 degrees to 180 degrees.
	Longitude pulumi.StringPtrInput `pulumi:"longitude"`
	// If your endpoint is an AWS resource, specify the AWS Region that you created the resource in.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// References to a rule.
	RuleReference pulumi.StringPtrInput `pulumi:"ruleReference"`
}

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArgs) ElementType

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArgs) ToGetTrafficPolicyDocumentRuleGeoProximityLocationOutput

func (i GetTrafficPolicyDocumentRuleGeoProximityLocationArgs) ToGetTrafficPolicyDocumentRuleGeoProximityLocationOutput() GetTrafficPolicyDocumentRuleGeoProximityLocationOutput

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArgs) ToGetTrafficPolicyDocumentRuleGeoProximityLocationOutputWithContext

func (i GetTrafficPolicyDocumentRuleGeoProximityLocationArgs) ToGetTrafficPolicyDocumentRuleGeoProximityLocationOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleGeoProximityLocationOutput

type GetTrafficPolicyDocumentRuleGeoProximityLocationArray

type GetTrafficPolicyDocumentRuleGeoProximityLocationArray []GetTrafficPolicyDocumentRuleGeoProximityLocationInput

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArray) ElementType

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArray) ToGetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput

func (i GetTrafficPolicyDocumentRuleGeoProximityLocationArray) ToGetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput() GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArray) ToGetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutputWithContext

func (i GetTrafficPolicyDocumentRuleGeoProximityLocationArray) ToGetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput

type GetTrafficPolicyDocumentRuleGeoProximityLocationArrayInput

type GetTrafficPolicyDocumentRuleGeoProximityLocationArrayInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput() GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput
	ToGetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput
}

GetTrafficPolicyDocumentRuleGeoProximityLocationArrayInput is an input type that accepts GetTrafficPolicyDocumentRuleGeoProximityLocationArray and GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleGeoProximityLocationArrayInput` via:

GetTrafficPolicyDocumentRuleGeoProximityLocationArray{ GetTrafficPolicyDocumentRuleGeoProximityLocationArgs{...} }

type GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput

type GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput) ElementType

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput) Index

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput) ToGetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput

func (GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput) ToGetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutputWithContext

func (o GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput) ToGetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleGeoProximityLocationArrayOutput

type GetTrafficPolicyDocumentRuleGeoProximityLocationInput

type GetTrafficPolicyDocumentRuleGeoProximityLocationInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleGeoProximityLocationOutput() GetTrafficPolicyDocumentRuleGeoProximityLocationOutput
	ToGetTrafficPolicyDocumentRuleGeoProximityLocationOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleGeoProximityLocationOutput
}

GetTrafficPolicyDocumentRuleGeoProximityLocationInput is an input type that accepts GetTrafficPolicyDocumentRuleGeoProximityLocationArgs and GetTrafficPolicyDocumentRuleGeoProximityLocationOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleGeoProximityLocationInput` via:

GetTrafficPolicyDocumentRuleGeoProximityLocationArgs{...}

type GetTrafficPolicyDocumentRuleGeoProximityLocationOutput

type GetTrafficPolicyDocumentRuleGeoProximityLocationOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) Bias

Specify a value for `bias` if you want to route more traffic to an endpoint from nearby endpoints (positive values) or route less traffic to an endpoint (negative values).

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) ElementType

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) EndpointReference

References to an endpoint.

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) EvaluateTargetHealth

Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) HealthCheck

If you want to associate a health check with the endpoint or rule.

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) Latitude

Represents the location south (negative) or north (positive) of the equator. Valid values are -90 degrees to 90 degrees.

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) Longitude

Represents the location west (negative) or east (positive) of the prime meridian. Valid values are -180 degrees to 180 degrees.

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) Region

If your endpoint is an AWS resource, specify the AWS Region that you created the resource in.

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) RuleReference

References to a rule.

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) ToGetTrafficPolicyDocumentRuleGeoProximityLocationOutput

func (GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) ToGetTrafficPolicyDocumentRuleGeoProximityLocationOutputWithContext

func (o GetTrafficPolicyDocumentRuleGeoProximityLocationOutput) ToGetTrafficPolicyDocumentRuleGeoProximityLocationOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleGeoProximityLocationOutput

type GetTrafficPolicyDocumentRuleInput

type GetTrafficPolicyDocumentRuleInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleOutput() GetTrafficPolicyDocumentRuleOutput
	ToGetTrafficPolicyDocumentRuleOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleOutput
}

GetTrafficPolicyDocumentRuleInput is an input type that accepts GetTrafficPolicyDocumentRuleArgs and GetTrafficPolicyDocumentRuleOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleInput` via:

GetTrafficPolicyDocumentRuleArgs{...}

type GetTrafficPolicyDocumentRuleItem

type GetTrafficPolicyDocumentRuleItem struct {
	EndpointReference *string `pulumi:"endpointReference"`
	HealthCheck       *string `pulumi:"healthCheck"`
}

type GetTrafficPolicyDocumentRuleItemArgs

type GetTrafficPolicyDocumentRuleItemArgs struct {
	EndpointReference pulumi.StringPtrInput `pulumi:"endpointReference"`
	HealthCheck       pulumi.StringPtrInput `pulumi:"healthCheck"`
}

func (GetTrafficPolicyDocumentRuleItemArgs) ElementType

func (GetTrafficPolicyDocumentRuleItemArgs) ToGetTrafficPolicyDocumentRuleItemOutput

func (i GetTrafficPolicyDocumentRuleItemArgs) ToGetTrafficPolicyDocumentRuleItemOutput() GetTrafficPolicyDocumentRuleItemOutput

func (GetTrafficPolicyDocumentRuleItemArgs) ToGetTrafficPolicyDocumentRuleItemOutputWithContext

func (i GetTrafficPolicyDocumentRuleItemArgs) ToGetTrafficPolicyDocumentRuleItemOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleItemOutput

type GetTrafficPolicyDocumentRuleItemArray

type GetTrafficPolicyDocumentRuleItemArray []GetTrafficPolicyDocumentRuleItemInput

func (GetTrafficPolicyDocumentRuleItemArray) ElementType

func (GetTrafficPolicyDocumentRuleItemArray) ToGetTrafficPolicyDocumentRuleItemArrayOutput

func (i GetTrafficPolicyDocumentRuleItemArray) ToGetTrafficPolicyDocumentRuleItemArrayOutput() GetTrafficPolicyDocumentRuleItemArrayOutput

func (GetTrafficPolicyDocumentRuleItemArray) ToGetTrafficPolicyDocumentRuleItemArrayOutputWithContext

func (i GetTrafficPolicyDocumentRuleItemArray) ToGetTrafficPolicyDocumentRuleItemArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleItemArrayOutput

type GetTrafficPolicyDocumentRuleItemArrayInput

type GetTrafficPolicyDocumentRuleItemArrayInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleItemArrayOutput() GetTrafficPolicyDocumentRuleItemArrayOutput
	ToGetTrafficPolicyDocumentRuleItemArrayOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleItemArrayOutput
}

GetTrafficPolicyDocumentRuleItemArrayInput is an input type that accepts GetTrafficPolicyDocumentRuleItemArray and GetTrafficPolicyDocumentRuleItemArrayOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleItemArrayInput` via:

GetTrafficPolicyDocumentRuleItemArray{ GetTrafficPolicyDocumentRuleItemArgs{...} }

type GetTrafficPolicyDocumentRuleItemArrayOutput

type GetTrafficPolicyDocumentRuleItemArrayOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleItemArrayOutput) ElementType

func (GetTrafficPolicyDocumentRuleItemArrayOutput) Index

func (GetTrafficPolicyDocumentRuleItemArrayOutput) ToGetTrafficPolicyDocumentRuleItemArrayOutput

func (o GetTrafficPolicyDocumentRuleItemArrayOutput) ToGetTrafficPolicyDocumentRuleItemArrayOutput() GetTrafficPolicyDocumentRuleItemArrayOutput

func (GetTrafficPolicyDocumentRuleItemArrayOutput) ToGetTrafficPolicyDocumentRuleItemArrayOutputWithContext

func (o GetTrafficPolicyDocumentRuleItemArrayOutput) ToGetTrafficPolicyDocumentRuleItemArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleItemArrayOutput

type GetTrafficPolicyDocumentRuleItemInput

type GetTrafficPolicyDocumentRuleItemInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleItemOutput() GetTrafficPolicyDocumentRuleItemOutput
	ToGetTrafficPolicyDocumentRuleItemOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleItemOutput
}

GetTrafficPolicyDocumentRuleItemInput is an input type that accepts GetTrafficPolicyDocumentRuleItemArgs and GetTrafficPolicyDocumentRuleItemOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleItemInput` via:

GetTrafficPolicyDocumentRuleItemArgs{...}

type GetTrafficPolicyDocumentRuleItemOutput

type GetTrafficPolicyDocumentRuleItemOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleItemOutput) ElementType

func (GetTrafficPolicyDocumentRuleItemOutput) EndpointReference

func (GetTrafficPolicyDocumentRuleItemOutput) HealthCheck

func (GetTrafficPolicyDocumentRuleItemOutput) ToGetTrafficPolicyDocumentRuleItemOutput

func (o GetTrafficPolicyDocumentRuleItemOutput) ToGetTrafficPolicyDocumentRuleItemOutput() GetTrafficPolicyDocumentRuleItemOutput

func (GetTrafficPolicyDocumentRuleItemOutput) ToGetTrafficPolicyDocumentRuleItemOutputWithContext

func (o GetTrafficPolicyDocumentRuleItemOutput) ToGetTrafficPolicyDocumentRuleItemOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleItemOutput

type GetTrafficPolicyDocumentRuleLocation

type GetTrafficPolicyDocumentRuleLocation struct {
	// Value of a continent.
	Continent *string `pulumi:"continent"`
	// Value of a country.
	Country *string `pulumi:"country"`
	// References to an endpoint.
	EndpointReference *string `pulumi:"endpointReference"`
	// Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.
	EvaluateTargetHealth *bool `pulumi:"evaluateTargetHealth"`
	// If you want to associate a health check with the endpoint or rule.
	HealthCheck *string `pulumi:"healthCheck"`
	// Indicates whether this set of values represents the default location.
	IsDefault *bool `pulumi:"isDefault"`
	// References to a rule.
	RuleReference *string `pulumi:"ruleReference"`
	// Value of a subdivision.
	Subdivision *string `pulumi:"subdivision"`
}

type GetTrafficPolicyDocumentRuleLocationArgs

type GetTrafficPolicyDocumentRuleLocationArgs struct {
	// Value of a continent.
	Continent pulumi.StringPtrInput `pulumi:"continent"`
	// Value of a country.
	Country pulumi.StringPtrInput `pulumi:"country"`
	// References to an endpoint.
	EndpointReference pulumi.StringPtrInput `pulumi:"endpointReference"`
	// Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.
	EvaluateTargetHealth pulumi.BoolPtrInput `pulumi:"evaluateTargetHealth"`
	// If you want to associate a health check with the endpoint or rule.
	HealthCheck pulumi.StringPtrInput `pulumi:"healthCheck"`
	// Indicates whether this set of values represents the default location.
	IsDefault pulumi.BoolPtrInput `pulumi:"isDefault"`
	// References to a rule.
	RuleReference pulumi.StringPtrInput `pulumi:"ruleReference"`
	// Value of a subdivision.
	Subdivision pulumi.StringPtrInput `pulumi:"subdivision"`
}

func (GetTrafficPolicyDocumentRuleLocationArgs) ElementType

func (GetTrafficPolicyDocumentRuleLocationArgs) ToGetTrafficPolicyDocumentRuleLocationOutput

func (i GetTrafficPolicyDocumentRuleLocationArgs) ToGetTrafficPolicyDocumentRuleLocationOutput() GetTrafficPolicyDocumentRuleLocationOutput

func (GetTrafficPolicyDocumentRuleLocationArgs) ToGetTrafficPolicyDocumentRuleLocationOutputWithContext

func (i GetTrafficPolicyDocumentRuleLocationArgs) ToGetTrafficPolicyDocumentRuleLocationOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleLocationOutput

type GetTrafficPolicyDocumentRuleLocationArray

type GetTrafficPolicyDocumentRuleLocationArray []GetTrafficPolicyDocumentRuleLocationInput

func (GetTrafficPolicyDocumentRuleLocationArray) ElementType

func (GetTrafficPolicyDocumentRuleLocationArray) ToGetTrafficPolicyDocumentRuleLocationArrayOutput

func (i GetTrafficPolicyDocumentRuleLocationArray) ToGetTrafficPolicyDocumentRuleLocationArrayOutput() GetTrafficPolicyDocumentRuleLocationArrayOutput

func (GetTrafficPolicyDocumentRuleLocationArray) ToGetTrafficPolicyDocumentRuleLocationArrayOutputWithContext

func (i GetTrafficPolicyDocumentRuleLocationArray) ToGetTrafficPolicyDocumentRuleLocationArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleLocationArrayOutput

type GetTrafficPolicyDocumentRuleLocationArrayInput

type GetTrafficPolicyDocumentRuleLocationArrayInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleLocationArrayOutput() GetTrafficPolicyDocumentRuleLocationArrayOutput
	ToGetTrafficPolicyDocumentRuleLocationArrayOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleLocationArrayOutput
}

GetTrafficPolicyDocumentRuleLocationArrayInput is an input type that accepts GetTrafficPolicyDocumentRuleLocationArray and GetTrafficPolicyDocumentRuleLocationArrayOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleLocationArrayInput` via:

GetTrafficPolicyDocumentRuleLocationArray{ GetTrafficPolicyDocumentRuleLocationArgs{...} }

type GetTrafficPolicyDocumentRuleLocationArrayOutput

type GetTrafficPolicyDocumentRuleLocationArrayOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleLocationArrayOutput) ElementType

func (GetTrafficPolicyDocumentRuleLocationArrayOutput) Index

func (GetTrafficPolicyDocumentRuleLocationArrayOutput) ToGetTrafficPolicyDocumentRuleLocationArrayOutput

func (o GetTrafficPolicyDocumentRuleLocationArrayOutput) ToGetTrafficPolicyDocumentRuleLocationArrayOutput() GetTrafficPolicyDocumentRuleLocationArrayOutput

func (GetTrafficPolicyDocumentRuleLocationArrayOutput) ToGetTrafficPolicyDocumentRuleLocationArrayOutputWithContext

func (o GetTrafficPolicyDocumentRuleLocationArrayOutput) ToGetTrafficPolicyDocumentRuleLocationArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleLocationArrayOutput

type GetTrafficPolicyDocumentRuleLocationInput

type GetTrafficPolicyDocumentRuleLocationInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleLocationOutput() GetTrafficPolicyDocumentRuleLocationOutput
	ToGetTrafficPolicyDocumentRuleLocationOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleLocationOutput
}

GetTrafficPolicyDocumentRuleLocationInput is an input type that accepts GetTrafficPolicyDocumentRuleLocationArgs and GetTrafficPolicyDocumentRuleLocationOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleLocationInput` via:

GetTrafficPolicyDocumentRuleLocationArgs{...}

type GetTrafficPolicyDocumentRuleLocationOutput

type GetTrafficPolicyDocumentRuleLocationOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleLocationOutput) Continent

Value of a continent.

func (GetTrafficPolicyDocumentRuleLocationOutput) Country

Value of a country.

func (GetTrafficPolicyDocumentRuleLocationOutput) ElementType

func (GetTrafficPolicyDocumentRuleLocationOutput) EndpointReference

References to an endpoint.

func (GetTrafficPolicyDocumentRuleLocationOutput) EvaluateTargetHealth

Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.

func (GetTrafficPolicyDocumentRuleLocationOutput) HealthCheck

If you want to associate a health check with the endpoint or rule.

func (GetTrafficPolicyDocumentRuleLocationOutput) IsDefault

Indicates whether this set of values represents the default location.

func (GetTrafficPolicyDocumentRuleLocationOutput) RuleReference

References to a rule.

func (GetTrafficPolicyDocumentRuleLocationOutput) Subdivision

Value of a subdivision.

func (GetTrafficPolicyDocumentRuleLocationOutput) ToGetTrafficPolicyDocumentRuleLocationOutput

func (o GetTrafficPolicyDocumentRuleLocationOutput) ToGetTrafficPolicyDocumentRuleLocationOutput() GetTrafficPolicyDocumentRuleLocationOutput

func (GetTrafficPolicyDocumentRuleLocationOutput) ToGetTrafficPolicyDocumentRuleLocationOutputWithContext

func (o GetTrafficPolicyDocumentRuleLocationOutput) ToGetTrafficPolicyDocumentRuleLocationOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleLocationOutput

type GetTrafficPolicyDocumentRuleOutput

type GetTrafficPolicyDocumentRuleOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleOutput) ElementType

func (GetTrafficPolicyDocumentRuleOutput) GeoProximityLocations

Configuration block for when you add a geoproximity rule, you configure Amazon Route 53 to route traffic to your resources based on the geographic location of your resources. Only valid for `geoproximity` type. See below

func (GetTrafficPolicyDocumentRuleOutput) Id

ID of a rule you want to assign.

func (GetTrafficPolicyDocumentRuleOutput) Items

Configuration block for when you add a multivalue answer rule, you configure your traffic policy to route traffic approximately randomly to your healthy resources. Only valid for `multivalue` type. See below

func (GetTrafficPolicyDocumentRuleOutput) Locations

Configuration block for when you add a geolocation rule, you configure your traffic policy to route your traffic based on the geographic location of your users. Only valid for `geo` type. See below

func (GetTrafficPolicyDocumentRuleOutput) Primary

Configuration block for the settings for the rule or endpoint that you want to route traffic to whenever the corresponding resources are available. Only valid for `failover` type. See below

func (GetTrafficPolicyDocumentRuleOutput) Regions

func (GetTrafficPolicyDocumentRuleOutput) Secondary

Configuration block for the rule or endpoint that you want to route traffic to whenever the primary resources are not available. Only valid for `failover` type. See below

func (GetTrafficPolicyDocumentRuleOutput) ToGetTrafficPolicyDocumentRuleOutput

func (o GetTrafficPolicyDocumentRuleOutput) ToGetTrafficPolicyDocumentRuleOutput() GetTrafficPolicyDocumentRuleOutput

func (GetTrafficPolicyDocumentRuleOutput) ToGetTrafficPolicyDocumentRuleOutputWithContext

func (o GetTrafficPolicyDocumentRuleOutput) ToGetTrafficPolicyDocumentRuleOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleOutput

func (GetTrafficPolicyDocumentRuleOutput) Type

Type of the rule.

type GetTrafficPolicyDocumentRulePrimary

type GetTrafficPolicyDocumentRulePrimary struct {
	// References to an endpoint.
	EndpointReference *string `pulumi:"endpointReference"`
	// Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.
	EvaluateTargetHealth *bool `pulumi:"evaluateTargetHealth"`
	// If you want to associate a health check with the endpoint or rule.
	HealthCheck *string `pulumi:"healthCheck"`
	// References to a rule.
	RuleReference *string `pulumi:"ruleReference"`
}

type GetTrafficPolicyDocumentRulePrimaryArgs

type GetTrafficPolicyDocumentRulePrimaryArgs struct {
	// References to an endpoint.
	EndpointReference pulumi.StringPtrInput `pulumi:"endpointReference"`
	// Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.
	EvaluateTargetHealth pulumi.BoolPtrInput `pulumi:"evaluateTargetHealth"`
	// If you want to associate a health check with the endpoint or rule.
	HealthCheck pulumi.StringPtrInput `pulumi:"healthCheck"`
	// References to a rule.
	RuleReference pulumi.StringPtrInput `pulumi:"ruleReference"`
}

func (GetTrafficPolicyDocumentRulePrimaryArgs) ElementType

func (GetTrafficPolicyDocumentRulePrimaryArgs) ToGetTrafficPolicyDocumentRulePrimaryOutput

func (i GetTrafficPolicyDocumentRulePrimaryArgs) ToGetTrafficPolicyDocumentRulePrimaryOutput() GetTrafficPolicyDocumentRulePrimaryOutput

func (GetTrafficPolicyDocumentRulePrimaryArgs) ToGetTrafficPolicyDocumentRulePrimaryOutputWithContext

func (i GetTrafficPolicyDocumentRulePrimaryArgs) ToGetTrafficPolicyDocumentRulePrimaryOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRulePrimaryOutput

func (GetTrafficPolicyDocumentRulePrimaryArgs) ToGetTrafficPolicyDocumentRulePrimaryPtrOutput

func (i GetTrafficPolicyDocumentRulePrimaryArgs) ToGetTrafficPolicyDocumentRulePrimaryPtrOutput() GetTrafficPolicyDocumentRulePrimaryPtrOutput

func (GetTrafficPolicyDocumentRulePrimaryArgs) ToGetTrafficPolicyDocumentRulePrimaryPtrOutputWithContext

func (i GetTrafficPolicyDocumentRulePrimaryArgs) ToGetTrafficPolicyDocumentRulePrimaryPtrOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRulePrimaryPtrOutput

type GetTrafficPolicyDocumentRulePrimaryInput

type GetTrafficPolicyDocumentRulePrimaryInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRulePrimaryOutput() GetTrafficPolicyDocumentRulePrimaryOutput
	ToGetTrafficPolicyDocumentRulePrimaryOutputWithContext(context.Context) GetTrafficPolicyDocumentRulePrimaryOutput
}

GetTrafficPolicyDocumentRulePrimaryInput is an input type that accepts GetTrafficPolicyDocumentRulePrimaryArgs and GetTrafficPolicyDocumentRulePrimaryOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRulePrimaryInput` via:

GetTrafficPolicyDocumentRulePrimaryArgs{...}

type GetTrafficPolicyDocumentRulePrimaryOutput

type GetTrafficPolicyDocumentRulePrimaryOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRulePrimaryOutput) ElementType

func (GetTrafficPolicyDocumentRulePrimaryOutput) EndpointReference

References to an endpoint.

func (GetTrafficPolicyDocumentRulePrimaryOutput) EvaluateTargetHealth

Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.

func (GetTrafficPolicyDocumentRulePrimaryOutput) HealthCheck

If you want to associate a health check with the endpoint or rule.

func (GetTrafficPolicyDocumentRulePrimaryOutput) RuleReference

References to a rule.

func (GetTrafficPolicyDocumentRulePrimaryOutput) ToGetTrafficPolicyDocumentRulePrimaryOutput

func (o GetTrafficPolicyDocumentRulePrimaryOutput) ToGetTrafficPolicyDocumentRulePrimaryOutput() GetTrafficPolicyDocumentRulePrimaryOutput

func (GetTrafficPolicyDocumentRulePrimaryOutput) ToGetTrafficPolicyDocumentRulePrimaryOutputWithContext

func (o GetTrafficPolicyDocumentRulePrimaryOutput) ToGetTrafficPolicyDocumentRulePrimaryOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRulePrimaryOutput

func (GetTrafficPolicyDocumentRulePrimaryOutput) ToGetTrafficPolicyDocumentRulePrimaryPtrOutput

func (o GetTrafficPolicyDocumentRulePrimaryOutput) ToGetTrafficPolicyDocumentRulePrimaryPtrOutput() GetTrafficPolicyDocumentRulePrimaryPtrOutput

func (GetTrafficPolicyDocumentRulePrimaryOutput) ToGetTrafficPolicyDocumentRulePrimaryPtrOutputWithContext

func (o GetTrafficPolicyDocumentRulePrimaryOutput) ToGetTrafficPolicyDocumentRulePrimaryPtrOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRulePrimaryPtrOutput

type GetTrafficPolicyDocumentRulePrimaryPtrInput

type GetTrafficPolicyDocumentRulePrimaryPtrInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRulePrimaryPtrOutput() GetTrafficPolicyDocumentRulePrimaryPtrOutput
	ToGetTrafficPolicyDocumentRulePrimaryPtrOutputWithContext(context.Context) GetTrafficPolicyDocumentRulePrimaryPtrOutput
}

GetTrafficPolicyDocumentRulePrimaryPtrInput is an input type that accepts GetTrafficPolicyDocumentRulePrimaryArgs, GetTrafficPolicyDocumentRulePrimaryPtr and GetTrafficPolicyDocumentRulePrimaryPtrOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRulePrimaryPtrInput` via:

        GetTrafficPolicyDocumentRulePrimaryArgs{...}

or:

        nil

type GetTrafficPolicyDocumentRulePrimaryPtrOutput

type GetTrafficPolicyDocumentRulePrimaryPtrOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRulePrimaryPtrOutput) Elem

func (GetTrafficPolicyDocumentRulePrimaryPtrOutput) ElementType

func (GetTrafficPolicyDocumentRulePrimaryPtrOutput) EndpointReference

References to an endpoint.

func (GetTrafficPolicyDocumentRulePrimaryPtrOutput) EvaluateTargetHealth

Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.

func (GetTrafficPolicyDocumentRulePrimaryPtrOutput) HealthCheck

If you want to associate a health check with the endpoint or rule.

func (GetTrafficPolicyDocumentRulePrimaryPtrOutput) RuleReference

References to a rule.

func (GetTrafficPolicyDocumentRulePrimaryPtrOutput) ToGetTrafficPolicyDocumentRulePrimaryPtrOutput

func (o GetTrafficPolicyDocumentRulePrimaryPtrOutput) ToGetTrafficPolicyDocumentRulePrimaryPtrOutput() GetTrafficPolicyDocumentRulePrimaryPtrOutput

func (GetTrafficPolicyDocumentRulePrimaryPtrOutput) ToGetTrafficPolicyDocumentRulePrimaryPtrOutputWithContext

func (o GetTrafficPolicyDocumentRulePrimaryPtrOutput) ToGetTrafficPolicyDocumentRulePrimaryPtrOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRulePrimaryPtrOutput

type GetTrafficPolicyDocumentRuleRegion

type GetTrafficPolicyDocumentRuleRegion struct {
	// References to an endpoint.
	EndpointReference *string `pulumi:"endpointReference"`
	// Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.
	EvaluateTargetHealth *bool `pulumi:"evaluateTargetHealth"`
	// If you want to associate a health check with the endpoint or rule.
	HealthCheck *string `pulumi:"healthCheck"`
	// Region code for the AWS Region that you created the resource in.
	Region *string `pulumi:"region"`
	// References to a rule.
	RuleReference *string `pulumi:"ruleReference"`
}

type GetTrafficPolicyDocumentRuleRegionArgs

type GetTrafficPolicyDocumentRuleRegionArgs struct {
	// References to an endpoint.
	EndpointReference pulumi.StringPtrInput `pulumi:"endpointReference"`
	// Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.
	EvaluateTargetHealth pulumi.BoolPtrInput `pulumi:"evaluateTargetHealth"`
	// If you want to associate a health check with the endpoint or rule.
	HealthCheck pulumi.StringPtrInput `pulumi:"healthCheck"`
	// Region code for the AWS Region that you created the resource in.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// References to a rule.
	RuleReference pulumi.StringPtrInput `pulumi:"ruleReference"`
}

func (GetTrafficPolicyDocumentRuleRegionArgs) ElementType

func (GetTrafficPolicyDocumentRuleRegionArgs) ToGetTrafficPolicyDocumentRuleRegionOutput

func (i GetTrafficPolicyDocumentRuleRegionArgs) ToGetTrafficPolicyDocumentRuleRegionOutput() GetTrafficPolicyDocumentRuleRegionOutput

func (GetTrafficPolicyDocumentRuleRegionArgs) ToGetTrafficPolicyDocumentRuleRegionOutputWithContext

func (i GetTrafficPolicyDocumentRuleRegionArgs) ToGetTrafficPolicyDocumentRuleRegionOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleRegionOutput

type GetTrafficPolicyDocumentRuleRegionArray

type GetTrafficPolicyDocumentRuleRegionArray []GetTrafficPolicyDocumentRuleRegionInput

func (GetTrafficPolicyDocumentRuleRegionArray) ElementType

func (GetTrafficPolicyDocumentRuleRegionArray) ToGetTrafficPolicyDocumentRuleRegionArrayOutput

func (i GetTrafficPolicyDocumentRuleRegionArray) ToGetTrafficPolicyDocumentRuleRegionArrayOutput() GetTrafficPolicyDocumentRuleRegionArrayOutput

func (GetTrafficPolicyDocumentRuleRegionArray) ToGetTrafficPolicyDocumentRuleRegionArrayOutputWithContext

func (i GetTrafficPolicyDocumentRuleRegionArray) ToGetTrafficPolicyDocumentRuleRegionArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleRegionArrayOutput

type GetTrafficPolicyDocumentRuleRegionArrayInput

type GetTrafficPolicyDocumentRuleRegionArrayInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleRegionArrayOutput() GetTrafficPolicyDocumentRuleRegionArrayOutput
	ToGetTrafficPolicyDocumentRuleRegionArrayOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleRegionArrayOutput
}

GetTrafficPolicyDocumentRuleRegionArrayInput is an input type that accepts GetTrafficPolicyDocumentRuleRegionArray and GetTrafficPolicyDocumentRuleRegionArrayOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleRegionArrayInput` via:

GetTrafficPolicyDocumentRuleRegionArray{ GetTrafficPolicyDocumentRuleRegionArgs{...} }

type GetTrafficPolicyDocumentRuleRegionArrayOutput

type GetTrafficPolicyDocumentRuleRegionArrayOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleRegionArrayOutput) ElementType

func (GetTrafficPolicyDocumentRuleRegionArrayOutput) Index

func (GetTrafficPolicyDocumentRuleRegionArrayOutput) ToGetTrafficPolicyDocumentRuleRegionArrayOutput

func (o GetTrafficPolicyDocumentRuleRegionArrayOutput) ToGetTrafficPolicyDocumentRuleRegionArrayOutput() GetTrafficPolicyDocumentRuleRegionArrayOutput

func (GetTrafficPolicyDocumentRuleRegionArrayOutput) ToGetTrafficPolicyDocumentRuleRegionArrayOutputWithContext

func (o GetTrafficPolicyDocumentRuleRegionArrayOutput) ToGetTrafficPolicyDocumentRuleRegionArrayOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleRegionArrayOutput

type GetTrafficPolicyDocumentRuleRegionInput

type GetTrafficPolicyDocumentRuleRegionInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleRegionOutput() GetTrafficPolicyDocumentRuleRegionOutput
	ToGetTrafficPolicyDocumentRuleRegionOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleRegionOutput
}

GetTrafficPolicyDocumentRuleRegionInput is an input type that accepts GetTrafficPolicyDocumentRuleRegionArgs and GetTrafficPolicyDocumentRuleRegionOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleRegionInput` via:

GetTrafficPolicyDocumentRuleRegionArgs{...}

type GetTrafficPolicyDocumentRuleRegionOutput

type GetTrafficPolicyDocumentRuleRegionOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleRegionOutput) ElementType

func (GetTrafficPolicyDocumentRuleRegionOutput) EndpointReference

References to an endpoint.

func (GetTrafficPolicyDocumentRuleRegionOutput) EvaluateTargetHealth

Indicates whether you want Amazon Route 53 to evaluate the health of the endpoint and route traffic only to healthy endpoints.

func (GetTrafficPolicyDocumentRuleRegionOutput) HealthCheck

If you want to associate a health check with the endpoint or rule.

func (GetTrafficPolicyDocumentRuleRegionOutput) Region

Region code for the AWS Region that you created the resource in.

func (GetTrafficPolicyDocumentRuleRegionOutput) RuleReference

References to a rule.

func (GetTrafficPolicyDocumentRuleRegionOutput) ToGetTrafficPolicyDocumentRuleRegionOutput

func (o GetTrafficPolicyDocumentRuleRegionOutput) ToGetTrafficPolicyDocumentRuleRegionOutput() GetTrafficPolicyDocumentRuleRegionOutput

func (GetTrafficPolicyDocumentRuleRegionOutput) ToGetTrafficPolicyDocumentRuleRegionOutputWithContext

func (o GetTrafficPolicyDocumentRuleRegionOutput) ToGetTrafficPolicyDocumentRuleRegionOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleRegionOutput

type GetTrafficPolicyDocumentRuleSecondary

type GetTrafficPolicyDocumentRuleSecondary struct {
	EndpointReference    *string `pulumi:"endpointReference"`
	EvaluateTargetHealth *bool   `pulumi:"evaluateTargetHealth"`
	HealthCheck          *string `pulumi:"healthCheck"`
	RuleReference        *string `pulumi:"ruleReference"`
}

type GetTrafficPolicyDocumentRuleSecondaryArgs

type GetTrafficPolicyDocumentRuleSecondaryArgs struct {
	EndpointReference    pulumi.StringPtrInput `pulumi:"endpointReference"`
	EvaluateTargetHealth pulumi.BoolPtrInput   `pulumi:"evaluateTargetHealth"`
	HealthCheck          pulumi.StringPtrInput `pulumi:"healthCheck"`
	RuleReference        pulumi.StringPtrInput `pulumi:"ruleReference"`
}

func (GetTrafficPolicyDocumentRuleSecondaryArgs) ElementType

func (GetTrafficPolicyDocumentRuleSecondaryArgs) ToGetTrafficPolicyDocumentRuleSecondaryOutput

func (i GetTrafficPolicyDocumentRuleSecondaryArgs) ToGetTrafficPolicyDocumentRuleSecondaryOutput() GetTrafficPolicyDocumentRuleSecondaryOutput

func (GetTrafficPolicyDocumentRuleSecondaryArgs) ToGetTrafficPolicyDocumentRuleSecondaryOutputWithContext

func (i GetTrafficPolicyDocumentRuleSecondaryArgs) ToGetTrafficPolicyDocumentRuleSecondaryOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleSecondaryOutput

func (GetTrafficPolicyDocumentRuleSecondaryArgs) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutput

func (i GetTrafficPolicyDocumentRuleSecondaryArgs) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutput() GetTrafficPolicyDocumentRuleSecondaryPtrOutput

func (GetTrafficPolicyDocumentRuleSecondaryArgs) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutputWithContext

func (i GetTrafficPolicyDocumentRuleSecondaryArgs) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleSecondaryPtrOutput

type GetTrafficPolicyDocumentRuleSecondaryInput

type GetTrafficPolicyDocumentRuleSecondaryInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleSecondaryOutput() GetTrafficPolicyDocumentRuleSecondaryOutput
	ToGetTrafficPolicyDocumentRuleSecondaryOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleSecondaryOutput
}

GetTrafficPolicyDocumentRuleSecondaryInput is an input type that accepts GetTrafficPolicyDocumentRuleSecondaryArgs and GetTrafficPolicyDocumentRuleSecondaryOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleSecondaryInput` via:

GetTrafficPolicyDocumentRuleSecondaryArgs{...}

type GetTrafficPolicyDocumentRuleSecondaryOutput

type GetTrafficPolicyDocumentRuleSecondaryOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleSecondaryOutput) ElementType

func (GetTrafficPolicyDocumentRuleSecondaryOutput) EndpointReference

func (GetTrafficPolicyDocumentRuleSecondaryOutput) EvaluateTargetHealth

func (GetTrafficPolicyDocumentRuleSecondaryOutput) HealthCheck

func (GetTrafficPolicyDocumentRuleSecondaryOutput) RuleReference

func (GetTrafficPolicyDocumentRuleSecondaryOutput) ToGetTrafficPolicyDocumentRuleSecondaryOutput

func (o GetTrafficPolicyDocumentRuleSecondaryOutput) ToGetTrafficPolicyDocumentRuleSecondaryOutput() GetTrafficPolicyDocumentRuleSecondaryOutput

func (GetTrafficPolicyDocumentRuleSecondaryOutput) ToGetTrafficPolicyDocumentRuleSecondaryOutputWithContext

func (o GetTrafficPolicyDocumentRuleSecondaryOutput) ToGetTrafficPolicyDocumentRuleSecondaryOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleSecondaryOutput

func (GetTrafficPolicyDocumentRuleSecondaryOutput) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutput

func (o GetTrafficPolicyDocumentRuleSecondaryOutput) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutput() GetTrafficPolicyDocumentRuleSecondaryPtrOutput

func (GetTrafficPolicyDocumentRuleSecondaryOutput) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutputWithContext

func (o GetTrafficPolicyDocumentRuleSecondaryOutput) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleSecondaryPtrOutput

type GetTrafficPolicyDocumentRuleSecondaryPtrInput

type GetTrafficPolicyDocumentRuleSecondaryPtrInput interface {
	pulumi.Input

	ToGetTrafficPolicyDocumentRuleSecondaryPtrOutput() GetTrafficPolicyDocumentRuleSecondaryPtrOutput
	ToGetTrafficPolicyDocumentRuleSecondaryPtrOutputWithContext(context.Context) GetTrafficPolicyDocumentRuleSecondaryPtrOutput
}

GetTrafficPolicyDocumentRuleSecondaryPtrInput is an input type that accepts GetTrafficPolicyDocumentRuleSecondaryArgs, GetTrafficPolicyDocumentRuleSecondaryPtr and GetTrafficPolicyDocumentRuleSecondaryPtrOutput values. You can construct a concrete instance of `GetTrafficPolicyDocumentRuleSecondaryPtrInput` via:

        GetTrafficPolicyDocumentRuleSecondaryArgs{...}

or:

        nil

type GetTrafficPolicyDocumentRuleSecondaryPtrOutput

type GetTrafficPolicyDocumentRuleSecondaryPtrOutput struct{ *pulumi.OutputState }

func (GetTrafficPolicyDocumentRuleSecondaryPtrOutput) Elem

func (GetTrafficPolicyDocumentRuleSecondaryPtrOutput) ElementType

func (GetTrafficPolicyDocumentRuleSecondaryPtrOutput) EndpointReference

func (GetTrafficPolicyDocumentRuleSecondaryPtrOutput) EvaluateTargetHealth

func (GetTrafficPolicyDocumentRuleSecondaryPtrOutput) HealthCheck

func (GetTrafficPolicyDocumentRuleSecondaryPtrOutput) RuleReference

func (GetTrafficPolicyDocumentRuleSecondaryPtrOutput) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutput

func (o GetTrafficPolicyDocumentRuleSecondaryPtrOutput) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutput() GetTrafficPolicyDocumentRuleSecondaryPtrOutput

func (GetTrafficPolicyDocumentRuleSecondaryPtrOutput) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutputWithContext

func (o GetTrafficPolicyDocumentRuleSecondaryPtrOutput) ToGetTrafficPolicyDocumentRuleSecondaryPtrOutputWithContext(ctx context.Context) GetTrafficPolicyDocumentRuleSecondaryPtrOutput

type HealthCheck

type HealthCheck struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the Health Check.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The minimum number of child health checks that must be healthy for Route 53 to consider the parent health check to be healthy. Valid values are integers between 0 and 256, inclusive
	ChildHealthThreshold pulumi.IntPtrOutput `pulumi:"childHealthThreshold"`
	// For a specified parent health check, a list of HealthCheckId values for the associated child health checks.
	ChildHealthchecks pulumi.StringArrayOutput `pulumi:"childHealthchecks"`
	// The name of the CloudWatch alarm.
	CloudwatchAlarmName pulumi.StringPtrOutput `pulumi:"cloudwatchAlarmName"`
	// The CloudWatchRegion that the CloudWatch alarm was created in.
	CloudwatchAlarmRegion pulumi.StringPtrOutput `pulumi:"cloudwatchAlarmRegion"`
	// A boolean value that stops Route 53 from performing health checks. When set to true, Route 53 will do the following depending on the type of health check:
	// * For health checks that check the health of endpoints, Route5 53 stops submitting requests to your application, server, or other resource.
	// * For calculated health checks, Route 53 stops aggregating the status of the referenced health checks.
	// * For health checks that monitor CloudWatch alarms, Route 53 stops monitoring the corresponding CloudWatch metrics.
	//
	// > **Note:** After you disable a health check, Route 53 considers the status of the health check to always be healthy. If you configured DNS failover, Route 53 continues to route traffic to the corresponding resources. If you want to stop routing traffic to a resource, change the value of `invertHealthcheck`.
	Disabled pulumi.BoolPtrOutput `pulumi:"disabled"`
	// A boolean value that indicates whether Route53 should send the `fqdn` to the endpoint when performing the health check. This defaults to AWS' defaults: when the `type` is "HTTPS" `enableSni` defaults to `true`, when `type` is anything else `enableSni` defaults to `false`.
	EnableSni pulumi.BoolOutput `pulumi:"enableSni"`
	// The number of consecutive health checks that an endpoint must pass or fail.
	FailureThreshold pulumi.IntOutput `pulumi:"failureThreshold"`
	// The fully qualified domain name of the endpoint to be checked. If a value is set for `ipAddress`, the value set for `fqdn` will be passed in the `Host` header.
	Fqdn pulumi.StringPtrOutput `pulumi:"fqdn"`
	// The status of the health check when CloudWatch has insufficient data about the state of associated alarm. Valid values are `Healthy` , `Unhealthy` and `LastKnownStatus`.
	InsufficientDataHealthStatus pulumi.StringPtrOutput `pulumi:"insufficientDataHealthStatus"`
	// A boolean value that indicates whether the status of health check should be inverted. For example, if a health check is healthy but Inverted is True , then Route 53 considers the health check to be unhealthy.
	InvertHealthcheck pulumi.BoolPtrOutput `pulumi:"invertHealthcheck"`
	// The IP address of the endpoint to be checked.
	IpAddress pulumi.StringPtrOutput `pulumi:"ipAddress"`
	// A Boolean value that indicates whether you want Route 53 to measure the latency between health checkers in multiple AWS regions and your endpoint and to display CloudWatch latency graphs in the Route 53 console.
	MeasureLatency pulumi.BoolPtrOutput `pulumi:"measureLatency"`
	// The port of the endpoint to be checked.
	Port pulumi.IntPtrOutput `pulumi:"port"`
	// This is a reference name used in Caller Reference
	// (helpful for identifying single healthCheck set amongst others)
	ReferenceName pulumi.StringPtrOutput `pulumi:"referenceName"`
	// A list of AWS regions that you want Amazon Route 53 health checkers to check the specified endpoint from.
	Regions pulumi.StringArrayOutput `pulumi:"regions"`
	// The number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request.
	RequestInterval pulumi.IntPtrOutput `pulumi:"requestInterval"`
	// The path that you want Amazon Route 53 to request when performing health checks.
	ResourcePath pulumi.StringPtrOutput `pulumi:"resourcePath"`
	// The Amazon Resource Name (ARN) for the Route 53 Application Recovery Controller routing control. This is used when health check type is `RECOVERY_CONTROL`
	RoutingControlArn pulumi.StringPtrOutput `pulumi:"routingControlArn"`
	// String searched in the first 5120 bytes of the response body for check to be considered healthy. Only valid with `HTTP_STR_MATCH` and `HTTPS_STR_MATCH`.
	SearchString pulumi.StringPtrOutput `pulumi:"searchString"`
	// A map of tags to assign to the health check. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The protocol to use when performing health checks. Valid values are `HTTP`, `HTTPS`, `HTTP_STR_MATCH`, `HTTPS_STR_MATCH`, `TCP`, `CALCULATED`, `CLOUDWATCH_METRIC` and `RECOVERY_CONTROL`.
	Type pulumi.StringOutput `pulumi:"type"`
}

Provides a Route53 health check.

## Example Usage

### Connectivity and HTTP Status Code Check

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewHealthCheck(ctx, "example", &route53.HealthCheckArgs{
			Fqdn:             pulumi.String("example.com"),
			Port:             pulumi.Int(80),
			Type:             pulumi.String("HTTP"),
			ResourcePath:     pulumi.String("/"),
			FailureThreshold: pulumi.Int(5),
			RequestInterval:  pulumi.Int(30),
			Tags: pulumi.StringMap{
				"Name": pulumi.String("tf-test-health-check"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Connectivity and String Matching Check

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewHealthCheck(ctx, "example", &route53.HealthCheckArgs{
			FailureThreshold: pulumi.Int(5),
			Fqdn:             pulumi.String("example.com"),
			Port:             pulumi.Int(443),
			RequestInterval:  pulumi.Int(30),
			ResourcePath:     pulumi.String("/"),
			SearchString:     pulumi.String("example"),
			Type:             pulumi.String("HTTPS_STR_MATCH"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Aggregate Check

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewHealthCheck(ctx, "parent", &route53.HealthCheckArgs{
			Type:                 pulumi.String("CALCULATED"),
			ChildHealthThreshold: pulumi.Int(1),
			ChildHealthchecks: pulumi.StringArray{
				child.Id,
			},
			Tags: pulumi.StringMap{
				"Name": pulumi.String("tf-test-calculated-health-check"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### CloudWatch Alarm Check

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		foobar, err := cloudwatch.NewMetricAlarm(ctx, "foobar", &cloudwatch.MetricAlarmArgs{
			Name:               pulumi.String("test-foobar5"),
			ComparisonOperator: pulumi.String("GreaterThanOrEqualToThreshold"),
			EvaluationPeriods:  pulumi.Int(2),
			MetricName:         pulumi.String("CPUUtilization"),
			Namespace:          pulumi.String("AWS/EC2"),
			Period:             pulumi.Int(120),
			Statistic:          pulumi.String("Average"),
			Threshold:          pulumi.Float64(80),
			AlarmDescription:   pulumi.String("This metric monitors ec2 cpu utilization"),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewHealthCheck(ctx, "foo", &route53.HealthCheckArgs{
			Type:                         pulumi.String("CLOUDWATCH_METRIC"),
			CloudwatchAlarmName:          foobar.Name,
			CloudwatchAlarmRegion:        pulumi.String("us-west-2"),
			InsufficientDataHealthStatus: pulumi.String("Healthy"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route53 Health Checks using the health check `id`. For example:

```sh $ pulumi import aws:route53/healthCheck:HealthCheck http_check abcdef11-2222-3333-4444-555555fedcba ```

func GetHealthCheck

func GetHealthCheck(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HealthCheckState, opts ...pulumi.ResourceOption) (*HealthCheck, error)

GetHealthCheck gets an existing HealthCheck resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHealthCheck

func NewHealthCheck(ctx *pulumi.Context,
	name string, args *HealthCheckArgs, opts ...pulumi.ResourceOption) (*HealthCheck, error)

NewHealthCheck registers a new resource with the given unique name, arguments, and options.

func (*HealthCheck) ElementType

func (*HealthCheck) ElementType() reflect.Type

func (*HealthCheck) ToHealthCheckOutput

func (i *HealthCheck) ToHealthCheckOutput() HealthCheckOutput

func (*HealthCheck) ToHealthCheckOutputWithContext

func (i *HealthCheck) ToHealthCheckOutputWithContext(ctx context.Context) HealthCheckOutput

type HealthCheckArgs

type HealthCheckArgs struct {
	// The minimum number of child health checks that must be healthy for Route 53 to consider the parent health check to be healthy. Valid values are integers between 0 and 256, inclusive
	ChildHealthThreshold pulumi.IntPtrInput
	// For a specified parent health check, a list of HealthCheckId values for the associated child health checks.
	ChildHealthchecks pulumi.StringArrayInput
	// The name of the CloudWatch alarm.
	CloudwatchAlarmName pulumi.StringPtrInput
	// The CloudWatchRegion that the CloudWatch alarm was created in.
	CloudwatchAlarmRegion pulumi.StringPtrInput
	// A boolean value that stops Route 53 from performing health checks. When set to true, Route 53 will do the following depending on the type of health check:
	// * For health checks that check the health of endpoints, Route5 53 stops submitting requests to your application, server, or other resource.
	// * For calculated health checks, Route 53 stops aggregating the status of the referenced health checks.
	// * For health checks that monitor CloudWatch alarms, Route 53 stops monitoring the corresponding CloudWatch metrics.
	//
	// > **Note:** After you disable a health check, Route 53 considers the status of the health check to always be healthy. If you configured DNS failover, Route 53 continues to route traffic to the corresponding resources. If you want to stop routing traffic to a resource, change the value of `invertHealthcheck`.
	Disabled pulumi.BoolPtrInput
	// A boolean value that indicates whether Route53 should send the `fqdn` to the endpoint when performing the health check. This defaults to AWS' defaults: when the `type` is "HTTPS" `enableSni` defaults to `true`, when `type` is anything else `enableSni` defaults to `false`.
	EnableSni pulumi.BoolPtrInput
	// The number of consecutive health checks that an endpoint must pass or fail.
	FailureThreshold pulumi.IntPtrInput
	// The fully qualified domain name of the endpoint to be checked. If a value is set for `ipAddress`, the value set for `fqdn` will be passed in the `Host` header.
	Fqdn pulumi.StringPtrInput
	// The status of the health check when CloudWatch has insufficient data about the state of associated alarm. Valid values are `Healthy` , `Unhealthy` and `LastKnownStatus`.
	InsufficientDataHealthStatus pulumi.StringPtrInput
	// A boolean value that indicates whether the status of health check should be inverted. For example, if a health check is healthy but Inverted is True , then Route 53 considers the health check to be unhealthy.
	InvertHealthcheck pulumi.BoolPtrInput
	// The IP address of the endpoint to be checked.
	IpAddress pulumi.StringPtrInput
	// A Boolean value that indicates whether you want Route 53 to measure the latency between health checkers in multiple AWS regions and your endpoint and to display CloudWatch latency graphs in the Route 53 console.
	MeasureLatency pulumi.BoolPtrInput
	// The port of the endpoint to be checked.
	Port pulumi.IntPtrInput
	// This is a reference name used in Caller Reference
	// (helpful for identifying single healthCheck set amongst others)
	ReferenceName pulumi.StringPtrInput
	// A list of AWS regions that you want Amazon Route 53 health checkers to check the specified endpoint from.
	Regions pulumi.StringArrayInput
	// The number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request.
	RequestInterval pulumi.IntPtrInput
	// The path that you want Amazon Route 53 to request when performing health checks.
	ResourcePath pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) for the Route 53 Application Recovery Controller routing control. This is used when health check type is `RECOVERY_CONTROL`
	RoutingControlArn pulumi.StringPtrInput
	// String searched in the first 5120 bytes of the response body for check to be considered healthy. Only valid with `HTTP_STR_MATCH` and `HTTPS_STR_MATCH`.
	SearchString pulumi.StringPtrInput
	// A map of tags to assign to the health check. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// The protocol to use when performing health checks. Valid values are `HTTP`, `HTTPS`, `HTTP_STR_MATCH`, `HTTPS_STR_MATCH`, `TCP`, `CALCULATED`, `CLOUDWATCH_METRIC` and `RECOVERY_CONTROL`.
	Type pulumi.StringInput
}

The set of arguments for constructing a HealthCheck resource.

func (HealthCheckArgs) ElementType

func (HealthCheckArgs) ElementType() reflect.Type

type HealthCheckArray

type HealthCheckArray []HealthCheckInput

func (HealthCheckArray) ElementType

func (HealthCheckArray) ElementType() reflect.Type

func (HealthCheckArray) ToHealthCheckArrayOutput

func (i HealthCheckArray) ToHealthCheckArrayOutput() HealthCheckArrayOutput

func (HealthCheckArray) ToHealthCheckArrayOutputWithContext

func (i HealthCheckArray) ToHealthCheckArrayOutputWithContext(ctx context.Context) HealthCheckArrayOutput

type HealthCheckArrayInput

type HealthCheckArrayInput interface {
	pulumi.Input

	ToHealthCheckArrayOutput() HealthCheckArrayOutput
	ToHealthCheckArrayOutputWithContext(context.Context) HealthCheckArrayOutput
}

HealthCheckArrayInput is an input type that accepts HealthCheckArray and HealthCheckArrayOutput values. You can construct a concrete instance of `HealthCheckArrayInput` via:

HealthCheckArray{ HealthCheckArgs{...} }

type HealthCheckArrayOutput

type HealthCheckArrayOutput struct{ *pulumi.OutputState }

func (HealthCheckArrayOutput) ElementType

func (HealthCheckArrayOutput) ElementType() reflect.Type

func (HealthCheckArrayOutput) Index

func (HealthCheckArrayOutput) ToHealthCheckArrayOutput

func (o HealthCheckArrayOutput) ToHealthCheckArrayOutput() HealthCheckArrayOutput

func (HealthCheckArrayOutput) ToHealthCheckArrayOutputWithContext

func (o HealthCheckArrayOutput) ToHealthCheckArrayOutputWithContext(ctx context.Context) HealthCheckArrayOutput

type HealthCheckInput

type HealthCheckInput interface {
	pulumi.Input

	ToHealthCheckOutput() HealthCheckOutput
	ToHealthCheckOutputWithContext(ctx context.Context) HealthCheckOutput
}

type HealthCheckMap

type HealthCheckMap map[string]HealthCheckInput

func (HealthCheckMap) ElementType

func (HealthCheckMap) ElementType() reflect.Type

func (HealthCheckMap) ToHealthCheckMapOutput

func (i HealthCheckMap) ToHealthCheckMapOutput() HealthCheckMapOutput

func (HealthCheckMap) ToHealthCheckMapOutputWithContext

func (i HealthCheckMap) ToHealthCheckMapOutputWithContext(ctx context.Context) HealthCheckMapOutput

type HealthCheckMapInput

type HealthCheckMapInput interface {
	pulumi.Input

	ToHealthCheckMapOutput() HealthCheckMapOutput
	ToHealthCheckMapOutputWithContext(context.Context) HealthCheckMapOutput
}

HealthCheckMapInput is an input type that accepts HealthCheckMap and HealthCheckMapOutput values. You can construct a concrete instance of `HealthCheckMapInput` via:

HealthCheckMap{ "key": HealthCheckArgs{...} }

type HealthCheckMapOutput

type HealthCheckMapOutput struct{ *pulumi.OutputState }

func (HealthCheckMapOutput) ElementType

func (HealthCheckMapOutput) ElementType() reflect.Type

func (HealthCheckMapOutput) MapIndex

func (HealthCheckMapOutput) ToHealthCheckMapOutput

func (o HealthCheckMapOutput) ToHealthCheckMapOutput() HealthCheckMapOutput

func (HealthCheckMapOutput) ToHealthCheckMapOutputWithContext

func (o HealthCheckMapOutput) ToHealthCheckMapOutputWithContext(ctx context.Context) HealthCheckMapOutput

type HealthCheckOutput

type HealthCheckOutput struct{ *pulumi.OutputState }

func (HealthCheckOutput) Arn

The Amazon Resource Name (ARN) of the Health Check.

func (HealthCheckOutput) ChildHealthThreshold

func (o HealthCheckOutput) ChildHealthThreshold() pulumi.IntPtrOutput

The minimum number of child health checks that must be healthy for Route 53 to consider the parent health check to be healthy. Valid values are integers between 0 and 256, inclusive

func (HealthCheckOutput) ChildHealthchecks

func (o HealthCheckOutput) ChildHealthchecks() pulumi.StringArrayOutput

For a specified parent health check, a list of HealthCheckId values for the associated child health checks.

func (HealthCheckOutput) CloudwatchAlarmName

func (o HealthCheckOutput) CloudwatchAlarmName() pulumi.StringPtrOutput

The name of the CloudWatch alarm.

func (HealthCheckOutput) CloudwatchAlarmRegion

func (o HealthCheckOutput) CloudwatchAlarmRegion() pulumi.StringPtrOutput

The CloudWatchRegion that the CloudWatch alarm was created in.

func (HealthCheckOutput) Disabled

func (o HealthCheckOutput) Disabled() pulumi.BoolPtrOutput

A boolean value that stops Route 53 from performing health checks. When set to true, Route 53 will do the following depending on the type of health check: * For health checks that check the health of endpoints, Route5 53 stops submitting requests to your application, server, or other resource. * For calculated health checks, Route 53 stops aggregating the status of the referenced health checks. * For health checks that monitor CloudWatch alarms, Route 53 stops monitoring the corresponding CloudWatch metrics.

> **Note:** After you disable a health check, Route 53 considers the status of the health check to always be healthy. If you configured DNS failover, Route 53 continues to route traffic to the corresponding resources. If you want to stop routing traffic to a resource, change the value of `invertHealthcheck`.

func (HealthCheckOutput) ElementType

func (HealthCheckOutput) ElementType() reflect.Type

func (HealthCheckOutput) EnableSni

func (o HealthCheckOutput) EnableSni() pulumi.BoolOutput

A boolean value that indicates whether Route53 should send the `fqdn` to the endpoint when performing the health check. This defaults to AWS' defaults: when the `type` is "HTTPS" `enableSni` defaults to `true`, when `type` is anything else `enableSni` defaults to `false`.

func (HealthCheckOutput) FailureThreshold

func (o HealthCheckOutput) FailureThreshold() pulumi.IntOutput

The number of consecutive health checks that an endpoint must pass or fail.

func (HealthCheckOutput) Fqdn

The fully qualified domain name of the endpoint to be checked. If a value is set for `ipAddress`, the value set for `fqdn` will be passed in the `Host` header.

func (HealthCheckOutput) InsufficientDataHealthStatus

func (o HealthCheckOutput) InsufficientDataHealthStatus() pulumi.StringPtrOutput

The status of the health check when CloudWatch has insufficient data about the state of associated alarm. Valid values are `Healthy` , `Unhealthy` and `LastKnownStatus`.

func (HealthCheckOutput) InvertHealthcheck

func (o HealthCheckOutput) InvertHealthcheck() pulumi.BoolPtrOutput

A boolean value that indicates whether the status of health check should be inverted. For example, if a health check is healthy but Inverted is True , then Route 53 considers the health check to be unhealthy.

func (HealthCheckOutput) IpAddress

The IP address of the endpoint to be checked.

func (HealthCheckOutput) MeasureLatency

func (o HealthCheckOutput) MeasureLatency() pulumi.BoolPtrOutput

A Boolean value that indicates whether you want Route 53 to measure the latency between health checkers in multiple AWS regions and your endpoint and to display CloudWatch latency graphs in the Route 53 console.

func (HealthCheckOutput) Port

The port of the endpoint to be checked.

func (HealthCheckOutput) ReferenceName

func (o HealthCheckOutput) ReferenceName() pulumi.StringPtrOutput

This is a reference name used in Caller Reference (helpful for identifying single healthCheck set amongst others)

func (HealthCheckOutput) Regions

A list of AWS regions that you want Amazon Route 53 health checkers to check the specified endpoint from.

func (HealthCheckOutput) RequestInterval

func (o HealthCheckOutput) RequestInterval() pulumi.IntPtrOutput

The number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request.

func (HealthCheckOutput) ResourcePath

func (o HealthCheckOutput) ResourcePath() pulumi.StringPtrOutput

The path that you want Amazon Route 53 to request when performing health checks.

func (HealthCheckOutput) RoutingControlArn

func (o HealthCheckOutput) RoutingControlArn() pulumi.StringPtrOutput

The Amazon Resource Name (ARN) for the Route 53 Application Recovery Controller routing control. This is used when health check type is `RECOVERY_CONTROL`

func (HealthCheckOutput) SearchString

func (o HealthCheckOutput) SearchString() pulumi.StringPtrOutput

String searched in the first 5120 bytes of the response body for check to be considered healthy. Only valid with `HTTP_STR_MATCH` and `HTTPS_STR_MATCH`.

func (HealthCheckOutput) Tags

A map of tags to assign to the health check. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (HealthCheckOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (HealthCheckOutput) ToHealthCheckOutput

func (o HealthCheckOutput) ToHealthCheckOutput() HealthCheckOutput

func (HealthCheckOutput) ToHealthCheckOutputWithContext

func (o HealthCheckOutput) ToHealthCheckOutputWithContext(ctx context.Context) HealthCheckOutput

func (HealthCheckOutput) Type

The protocol to use when performing health checks. Valid values are `HTTP`, `HTTPS`, `HTTP_STR_MATCH`, `HTTPS_STR_MATCH`, `TCP`, `CALCULATED`, `CLOUDWATCH_METRIC` and `RECOVERY_CONTROL`.

type HealthCheckState

type HealthCheckState struct {
	// The Amazon Resource Name (ARN) of the Health Check.
	Arn pulumi.StringPtrInput
	// The minimum number of child health checks that must be healthy for Route 53 to consider the parent health check to be healthy. Valid values are integers between 0 and 256, inclusive
	ChildHealthThreshold pulumi.IntPtrInput
	// For a specified parent health check, a list of HealthCheckId values for the associated child health checks.
	ChildHealthchecks pulumi.StringArrayInput
	// The name of the CloudWatch alarm.
	CloudwatchAlarmName pulumi.StringPtrInput
	// The CloudWatchRegion that the CloudWatch alarm was created in.
	CloudwatchAlarmRegion pulumi.StringPtrInput
	// A boolean value that stops Route 53 from performing health checks. When set to true, Route 53 will do the following depending on the type of health check:
	// * For health checks that check the health of endpoints, Route5 53 stops submitting requests to your application, server, or other resource.
	// * For calculated health checks, Route 53 stops aggregating the status of the referenced health checks.
	// * For health checks that monitor CloudWatch alarms, Route 53 stops monitoring the corresponding CloudWatch metrics.
	//
	// > **Note:** After you disable a health check, Route 53 considers the status of the health check to always be healthy. If you configured DNS failover, Route 53 continues to route traffic to the corresponding resources. If you want to stop routing traffic to a resource, change the value of `invertHealthcheck`.
	Disabled pulumi.BoolPtrInput
	// A boolean value that indicates whether Route53 should send the `fqdn` to the endpoint when performing the health check. This defaults to AWS' defaults: when the `type` is "HTTPS" `enableSni` defaults to `true`, when `type` is anything else `enableSni` defaults to `false`.
	EnableSni pulumi.BoolPtrInput
	// The number of consecutive health checks that an endpoint must pass or fail.
	FailureThreshold pulumi.IntPtrInput
	// The fully qualified domain name of the endpoint to be checked. If a value is set for `ipAddress`, the value set for `fqdn` will be passed in the `Host` header.
	Fqdn pulumi.StringPtrInput
	// The status of the health check when CloudWatch has insufficient data about the state of associated alarm. Valid values are `Healthy` , `Unhealthy` and `LastKnownStatus`.
	InsufficientDataHealthStatus pulumi.StringPtrInput
	// A boolean value that indicates whether the status of health check should be inverted. For example, if a health check is healthy but Inverted is True , then Route 53 considers the health check to be unhealthy.
	InvertHealthcheck pulumi.BoolPtrInput
	// The IP address of the endpoint to be checked.
	IpAddress pulumi.StringPtrInput
	// A Boolean value that indicates whether you want Route 53 to measure the latency between health checkers in multiple AWS regions and your endpoint and to display CloudWatch latency graphs in the Route 53 console.
	MeasureLatency pulumi.BoolPtrInput
	// The port of the endpoint to be checked.
	Port pulumi.IntPtrInput
	// This is a reference name used in Caller Reference
	// (helpful for identifying single healthCheck set amongst others)
	ReferenceName pulumi.StringPtrInput
	// A list of AWS regions that you want Amazon Route 53 health checkers to check the specified endpoint from.
	Regions pulumi.StringArrayInput
	// The number of seconds between the time that Amazon Route 53 gets a response from your endpoint and the time that it sends the next health-check request.
	RequestInterval pulumi.IntPtrInput
	// The path that you want Amazon Route 53 to request when performing health checks.
	ResourcePath pulumi.StringPtrInput
	// The Amazon Resource Name (ARN) for the Route 53 Application Recovery Controller routing control. This is used when health check type is `RECOVERY_CONTROL`
	RoutingControlArn pulumi.StringPtrInput
	// String searched in the first 5120 bytes of the response body for check to be considered healthy. Only valid with `HTTP_STR_MATCH` and `HTTPS_STR_MATCH`.
	SearchString pulumi.StringPtrInput
	// A map of tags to assign to the health check. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// The protocol to use when performing health checks. Valid values are `HTTP`, `HTTPS`, `HTTP_STR_MATCH`, `HTTPS_STR_MATCH`, `TCP`, `CALCULATED`, `CLOUDWATCH_METRIC` and `RECOVERY_CONTROL`.
	Type pulumi.StringPtrInput
}

func (HealthCheckState) ElementType

func (HealthCheckState) ElementType() reflect.Type

type HostedZoneDnsSec

type HostedZoneDnsSec struct {
	pulumi.CustomResourceState

	// Identifier of the Route 53 Hosted Zone.
	//
	// The following arguments are optional:
	HostedZoneId pulumi.StringOutput `pulumi:"hostedZoneId"`
	// Hosted Zone signing status. Valid values: `SIGNING`, `NOT_SIGNING`. Defaults to `SIGNING`.
	SigningStatus pulumi.StringPtrOutput `pulumi:"signingStatus"`
}

Manages Route 53 Hosted Zone Domain Name System Security Extensions (DNSSEC). For more information about managing DNSSEC in Route 53, see the [Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring-dnssec.html).

!> **WARNING:** If you disable DNSSEC signing for your hosted zone before the DNS changes have propagated, your domain could become unavailable on the internet. When you remove the DS records, you must wait until the longest TTL for the DS records that you remove has expired before you complete the step to disable DNSSEC signing. Please refer to the [Route 53 Developer Guide - Disable DNSSEC](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring-dnssec-disable.html) for a detailed breakdown on the steps required to disable DNSSEC safely for a hosted zone.

> **Note:** Route53 hosted zones are global resources, and as such any `kms.Key` that you use as part of a signing key needs to be located in the `us-east-1` region. In the example below, the main AWS provider declaration is for `us-east-1`, however if you are provisioning your AWS resources in a different region, you will need to specify a provider alias and use that attached to the `kms.Key` resource as described in the provider alias documentation.

## Example Usage

```go package main

import (

"encoding/json"
"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/kms"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"Statement": []interface{}{
				map[string]interface{}{
					"Action": []string{
						"kms:DescribeKey",
						"kms:GetPublicKey",
						"kms:Sign",
						"kms:Verify",
					},
					"Effect": "Allow",
					"Principal": map[string]interface{}{
						"Service": "dnssec-route53.amazonaws.com",
					},
					"Resource": "*",
					"Sid":      "Allow Route 53 DNSSEC Service",
				},
				map[string]interface{}{
					"Action": "kms:*",
					"Effect": "Allow",
					"Principal": map[string]interface{}{
						"AWS": fmt.Sprintf("arn:aws:iam::%v:root", current.AccountId),
					},
					"Resource": "*",
					"Sid":      "Enable IAM User Permissions",
				},
			},
			"Version": "2012-10-17",
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		example, err := kms.NewKey(ctx, "example", &kms.KeyArgs{
			CustomerMasterKeySpec: pulumi.String("ECC_NIST_P256"),
			DeletionWindowInDays:  pulumi.Int(7),
			KeyUsage:              pulumi.String("SIGN_VERIFY"),
			Policy:                pulumi.String(json0),
		})
		if err != nil {
			return err
		}
		exampleZone, err := route53.NewZone(ctx, "example", &route53.ZoneArgs{
			Name: pulumi.String("example.com"),
		})
		if err != nil {
			return err
		}
		exampleKeySigningKey, err := route53.NewKeySigningKey(ctx, "example", &route53.KeySigningKeyArgs{
			HostedZoneId:            exampleZone.ID(),
			KeyManagementServiceArn: example.Arn,
			Name:                    pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewHostedZoneDnsSec(ctx, "example", &route53.HostedZoneDnsSecArgs{
			HostedZoneId: exampleKeySigningKey.HostedZoneId,
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleKeySigningKey,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_route53_hosted_zone_dnssec` resources using the Route 53 Hosted Zone identifier. For example:

```sh $ pulumi import aws:route53/hostedZoneDnsSec:HostedZoneDnsSec example Z1D633PJN98FT9 ```

func GetHostedZoneDnsSec

func GetHostedZoneDnsSec(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *HostedZoneDnsSecState, opts ...pulumi.ResourceOption) (*HostedZoneDnsSec, error)

GetHostedZoneDnsSec gets an existing HostedZoneDnsSec resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewHostedZoneDnsSec

func NewHostedZoneDnsSec(ctx *pulumi.Context,
	name string, args *HostedZoneDnsSecArgs, opts ...pulumi.ResourceOption) (*HostedZoneDnsSec, error)

NewHostedZoneDnsSec registers a new resource with the given unique name, arguments, and options.

func (*HostedZoneDnsSec) ElementType

func (*HostedZoneDnsSec) ElementType() reflect.Type

func (*HostedZoneDnsSec) ToHostedZoneDnsSecOutput

func (i *HostedZoneDnsSec) ToHostedZoneDnsSecOutput() HostedZoneDnsSecOutput

func (*HostedZoneDnsSec) ToHostedZoneDnsSecOutputWithContext

func (i *HostedZoneDnsSec) ToHostedZoneDnsSecOutputWithContext(ctx context.Context) HostedZoneDnsSecOutput

type HostedZoneDnsSecArgs

type HostedZoneDnsSecArgs struct {
	// Identifier of the Route 53 Hosted Zone.
	//
	// The following arguments are optional:
	HostedZoneId pulumi.StringInput
	// Hosted Zone signing status. Valid values: `SIGNING`, `NOT_SIGNING`. Defaults to `SIGNING`.
	SigningStatus pulumi.StringPtrInput
}

The set of arguments for constructing a HostedZoneDnsSec resource.

func (HostedZoneDnsSecArgs) ElementType

func (HostedZoneDnsSecArgs) ElementType() reflect.Type

type HostedZoneDnsSecArray

type HostedZoneDnsSecArray []HostedZoneDnsSecInput

func (HostedZoneDnsSecArray) ElementType

func (HostedZoneDnsSecArray) ElementType() reflect.Type

func (HostedZoneDnsSecArray) ToHostedZoneDnsSecArrayOutput

func (i HostedZoneDnsSecArray) ToHostedZoneDnsSecArrayOutput() HostedZoneDnsSecArrayOutput

func (HostedZoneDnsSecArray) ToHostedZoneDnsSecArrayOutputWithContext

func (i HostedZoneDnsSecArray) ToHostedZoneDnsSecArrayOutputWithContext(ctx context.Context) HostedZoneDnsSecArrayOutput

type HostedZoneDnsSecArrayInput

type HostedZoneDnsSecArrayInput interface {
	pulumi.Input

	ToHostedZoneDnsSecArrayOutput() HostedZoneDnsSecArrayOutput
	ToHostedZoneDnsSecArrayOutputWithContext(context.Context) HostedZoneDnsSecArrayOutput
}

HostedZoneDnsSecArrayInput is an input type that accepts HostedZoneDnsSecArray and HostedZoneDnsSecArrayOutput values. You can construct a concrete instance of `HostedZoneDnsSecArrayInput` via:

HostedZoneDnsSecArray{ HostedZoneDnsSecArgs{...} }

type HostedZoneDnsSecArrayOutput

type HostedZoneDnsSecArrayOutput struct{ *pulumi.OutputState }

func (HostedZoneDnsSecArrayOutput) ElementType

func (HostedZoneDnsSecArrayOutput) Index

func (HostedZoneDnsSecArrayOutput) ToHostedZoneDnsSecArrayOutput

func (o HostedZoneDnsSecArrayOutput) ToHostedZoneDnsSecArrayOutput() HostedZoneDnsSecArrayOutput

func (HostedZoneDnsSecArrayOutput) ToHostedZoneDnsSecArrayOutputWithContext

func (o HostedZoneDnsSecArrayOutput) ToHostedZoneDnsSecArrayOutputWithContext(ctx context.Context) HostedZoneDnsSecArrayOutput

type HostedZoneDnsSecInput

type HostedZoneDnsSecInput interface {
	pulumi.Input

	ToHostedZoneDnsSecOutput() HostedZoneDnsSecOutput
	ToHostedZoneDnsSecOutputWithContext(ctx context.Context) HostedZoneDnsSecOutput
}

type HostedZoneDnsSecMap

type HostedZoneDnsSecMap map[string]HostedZoneDnsSecInput

func (HostedZoneDnsSecMap) ElementType

func (HostedZoneDnsSecMap) ElementType() reflect.Type

func (HostedZoneDnsSecMap) ToHostedZoneDnsSecMapOutput

func (i HostedZoneDnsSecMap) ToHostedZoneDnsSecMapOutput() HostedZoneDnsSecMapOutput

func (HostedZoneDnsSecMap) ToHostedZoneDnsSecMapOutputWithContext

func (i HostedZoneDnsSecMap) ToHostedZoneDnsSecMapOutputWithContext(ctx context.Context) HostedZoneDnsSecMapOutput

type HostedZoneDnsSecMapInput

type HostedZoneDnsSecMapInput interface {
	pulumi.Input

	ToHostedZoneDnsSecMapOutput() HostedZoneDnsSecMapOutput
	ToHostedZoneDnsSecMapOutputWithContext(context.Context) HostedZoneDnsSecMapOutput
}

HostedZoneDnsSecMapInput is an input type that accepts HostedZoneDnsSecMap and HostedZoneDnsSecMapOutput values. You can construct a concrete instance of `HostedZoneDnsSecMapInput` via:

HostedZoneDnsSecMap{ "key": HostedZoneDnsSecArgs{...} }

type HostedZoneDnsSecMapOutput

type HostedZoneDnsSecMapOutput struct{ *pulumi.OutputState }

func (HostedZoneDnsSecMapOutput) ElementType

func (HostedZoneDnsSecMapOutput) ElementType() reflect.Type

func (HostedZoneDnsSecMapOutput) MapIndex

func (HostedZoneDnsSecMapOutput) ToHostedZoneDnsSecMapOutput

func (o HostedZoneDnsSecMapOutput) ToHostedZoneDnsSecMapOutput() HostedZoneDnsSecMapOutput

func (HostedZoneDnsSecMapOutput) ToHostedZoneDnsSecMapOutputWithContext

func (o HostedZoneDnsSecMapOutput) ToHostedZoneDnsSecMapOutputWithContext(ctx context.Context) HostedZoneDnsSecMapOutput

type HostedZoneDnsSecOutput

type HostedZoneDnsSecOutput struct{ *pulumi.OutputState }

func (HostedZoneDnsSecOutput) ElementType

func (HostedZoneDnsSecOutput) ElementType() reflect.Type

func (HostedZoneDnsSecOutput) HostedZoneId

func (o HostedZoneDnsSecOutput) HostedZoneId() pulumi.StringOutput

Identifier of the Route 53 Hosted Zone.

The following arguments are optional:

func (HostedZoneDnsSecOutput) SigningStatus

func (o HostedZoneDnsSecOutput) SigningStatus() pulumi.StringPtrOutput

Hosted Zone signing status. Valid values: `SIGNING`, `NOT_SIGNING`. Defaults to `SIGNING`.

func (HostedZoneDnsSecOutput) ToHostedZoneDnsSecOutput

func (o HostedZoneDnsSecOutput) ToHostedZoneDnsSecOutput() HostedZoneDnsSecOutput

func (HostedZoneDnsSecOutput) ToHostedZoneDnsSecOutputWithContext

func (o HostedZoneDnsSecOutput) ToHostedZoneDnsSecOutputWithContext(ctx context.Context) HostedZoneDnsSecOutput

type HostedZoneDnsSecState

type HostedZoneDnsSecState struct {
	// Identifier of the Route 53 Hosted Zone.
	//
	// The following arguments are optional:
	HostedZoneId pulumi.StringPtrInput
	// Hosted Zone signing status. Valid values: `SIGNING`, `NOT_SIGNING`. Defaults to `SIGNING`.
	SigningStatus pulumi.StringPtrInput
}

func (HostedZoneDnsSecState) ElementType

func (HostedZoneDnsSecState) ElementType() reflect.Type

type KeySigningKey

type KeySigningKey struct {
	pulumi.CustomResourceState

	// A string used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.3](https://tools.ietf.org/html/rfc8624#section-3.3).
	DigestAlgorithmMnemonic pulumi.StringOutput `pulumi:"digestAlgorithmMnemonic"`
	// An integer used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.3](https://tools.ietf.org/html/rfc8624#section-3.3).
	DigestAlgorithmType pulumi.IntOutput `pulumi:"digestAlgorithmType"`
	// A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are used to publish the public key that resolvers can use to verify DNSSEC signatures that are used to secure certain kinds of information provided by the DNS system.
	DigestValue pulumi.StringOutput `pulumi:"digestValue"`
	// A string that represents a DNSKEY record.
	DnskeyRecord pulumi.StringOutput `pulumi:"dnskeyRecord"`
	// A string that represents a delegation signer (DS) record.
	DsRecord pulumi.StringOutput `pulumi:"dsRecord"`
	// An integer that specifies how the key is used. For key-signing key (KSK), this value is always 257.
	Flag pulumi.IntOutput `pulumi:"flag"`
	// Identifier of the Route 53 Hosted Zone.
	HostedZoneId pulumi.StringOutput `pulumi:"hostedZoneId"`
	// Amazon Resource Name (ARN) of the Key Management Service (KMS) Key. This must be unique for each key-signing key (KSK) in a single hosted zone. This key must be in the `us-east-1` Region and meet certain requirements, which are described in the [Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring-dnssec-cmk-requirements.html) and [Route 53 API Reference](https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateKeySigningKey.html).
	KeyManagementServiceArn pulumi.StringOutput `pulumi:"keyManagementServiceArn"`
	// An integer used to identify the DNSSEC record for the domain name. The process used to calculate the value is described in [RFC-4034 Appendix B](https://tools.ietf.org/rfc/rfc4034.txt).
	KeyTag pulumi.IntOutput `pulumi:"keyTag"`
	// Name of the key-signing key (KSK). Must be unique for each key-singing key in the same hosted zone.
	//
	// The following arguments are optional:
	Name pulumi.StringOutput `pulumi:"name"`
	// The public key, represented as a Base64 encoding, as required by [RFC-4034 Page 5](https://tools.ietf.org/rfc/rfc4034.txt).
	PublicKey pulumi.StringOutput `pulumi:"publicKey"`
	// A string used to represent the signing algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.1](https://tools.ietf.org/html/rfc8624#section-3.1).
	SigningAlgorithmMnemonic pulumi.StringOutput `pulumi:"signingAlgorithmMnemonic"`
	// An integer used to represent the signing algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.1](https://tools.ietf.org/html/rfc8624#section-3.1).
	SigningAlgorithmType pulumi.IntOutput `pulumi:"signingAlgorithmType"`
	// Status of the key-signing key (KSK). Valid values: `ACTIVE`, `INACTIVE`. Defaults to `ACTIVE`.
	Status pulumi.StringPtrOutput `pulumi:"status"`
}

Manages a Route 53 Key Signing Key. To manage Domain Name System Security Extensions (DNSSEC) for a Hosted Zone, see the `route53.HostedZoneDnsSec` resource. For more information about managing DNSSEC in Route 53, see the [Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring-dnssec.html).

## Example Usage

```go package main

import (

"encoding/json"
"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/kms"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		tmpJSON0, err := json.Marshal(map[string]interface{}{
			"Statement": []interface{}{
				map[string]interface{}{
					"Action": []string{
						"kms:DescribeKey",
						"kms:GetPublicKey",
						"kms:Sign",
					},
					"Effect": "Allow",
					"Principal": map[string]interface{}{
						"Service": "dnssec-route53.amazonaws.com",
					},
					"Sid":      "Allow Route 53 DNSSEC Service",
					"Resource": "*",
					"Condition": map[string]interface{}{
						"StringEquals": map[string]interface{}{
							"aws:SourceAccount": current.AccountId,
						},
						"ArnLike": map[string]interface{}{
							"aws:SourceArn": "arn:aws:route53:::hostedzone/*",
						},
					},
				},
				map[string]interface{}{
					"Action": "kms:CreateGrant",
					"Effect": "Allow",
					"Principal": map[string]interface{}{
						"Service": "dnssec-route53.amazonaws.com",
					},
					"Sid":      "Allow Route 53 DNSSEC Service to CreateGrant",
					"Resource": "*",
					"Condition": map[string]interface{}{
						"Bool": map[string]interface{}{
							"kms:GrantIsForAWSResource": "true",
						},
					},
				},
				map[string]interface{}{
					"Action": "kms:*",
					"Effect": "Allow",
					"Principal": map[string]interface{}{
						"AWS": fmt.Sprintf("arn:aws:iam::%v:root", current.AccountId),
					},
					"Resource": "*",
					"Sid":      "Enable IAM User Permissions",
				},
			},
			"Version": "2012-10-17",
		})
		if err != nil {
			return err
		}
		json0 := string(tmpJSON0)
		_, err = kms.NewKey(ctx, "example", &kms.KeyArgs{
			CustomerMasterKeySpec: pulumi.String("ECC_NIST_P256"),
			DeletionWindowInDays:  pulumi.Int(7),
			KeyUsage:              pulumi.String("SIGN_VERIFY"),
			Policy:                pulumi.String(json0),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewZone(ctx, "example", &route53.ZoneArgs{
			Name: pulumi.String("example.com"),
		})
		if err != nil {
			return err
		}
		exampleKeySigningKey, err := route53.NewKeySigningKey(ctx, "example", &route53.KeySigningKeyArgs{
			HostedZoneId:            pulumi.Any(test.Id),
			KeyManagementServiceArn: pulumi.Any(testAwsKmsKey.Arn),
			Name:                    pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewHostedZoneDnsSec(ctx, "example", &route53.HostedZoneDnsSecArgs{
			HostedZoneId: exampleKeySigningKey.HostedZoneId,
		}, pulumi.DependsOn([]pulumi.Resource{
			exampleKeySigningKey,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import `aws_route53_key_signing_key` resources using the Route 53 Hosted Zone identifier and KMS Key identifier, separated by a comma (`,`). For example:

```sh $ pulumi import aws:route53/keySigningKey:KeySigningKey example Z1D633PJN98FT9,example ```

func GetKeySigningKey

func GetKeySigningKey(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *KeySigningKeyState, opts ...pulumi.ResourceOption) (*KeySigningKey, error)

GetKeySigningKey gets an existing KeySigningKey resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewKeySigningKey

func NewKeySigningKey(ctx *pulumi.Context,
	name string, args *KeySigningKeyArgs, opts ...pulumi.ResourceOption) (*KeySigningKey, error)

NewKeySigningKey registers a new resource with the given unique name, arguments, and options.

func (*KeySigningKey) ElementType

func (*KeySigningKey) ElementType() reflect.Type

func (*KeySigningKey) ToKeySigningKeyOutput

func (i *KeySigningKey) ToKeySigningKeyOutput() KeySigningKeyOutput

func (*KeySigningKey) ToKeySigningKeyOutputWithContext

func (i *KeySigningKey) ToKeySigningKeyOutputWithContext(ctx context.Context) KeySigningKeyOutput

type KeySigningKeyArgs

type KeySigningKeyArgs struct {
	// Identifier of the Route 53 Hosted Zone.
	HostedZoneId pulumi.StringInput
	// Amazon Resource Name (ARN) of the Key Management Service (KMS) Key. This must be unique for each key-signing key (KSK) in a single hosted zone. This key must be in the `us-east-1` Region and meet certain requirements, which are described in the [Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring-dnssec-cmk-requirements.html) and [Route 53 API Reference](https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateKeySigningKey.html).
	KeyManagementServiceArn pulumi.StringInput
	// Name of the key-signing key (KSK). Must be unique for each key-singing key in the same hosted zone.
	//
	// The following arguments are optional:
	Name pulumi.StringPtrInput
	// Status of the key-signing key (KSK). Valid values: `ACTIVE`, `INACTIVE`. Defaults to `ACTIVE`.
	Status pulumi.StringPtrInput
}

The set of arguments for constructing a KeySigningKey resource.

func (KeySigningKeyArgs) ElementType

func (KeySigningKeyArgs) ElementType() reflect.Type

type KeySigningKeyArray

type KeySigningKeyArray []KeySigningKeyInput

func (KeySigningKeyArray) ElementType

func (KeySigningKeyArray) ElementType() reflect.Type

func (KeySigningKeyArray) ToKeySigningKeyArrayOutput

func (i KeySigningKeyArray) ToKeySigningKeyArrayOutput() KeySigningKeyArrayOutput

func (KeySigningKeyArray) ToKeySigningKeyArrayOutputWithContext

func (i KeySigningKeyArray) ToKeySigningKeyArrayOutputWithContext(ctx context.Context) KeySigningKeyArrayOutput

type KeySigningKeyArrayInput

type KeySigningKeyArrayInput interface {
	pulumi.Input

	ToKeySigningKeyArrayOutput() KeySigningKeyArrayOutput
	ToKeySigningKeyArrayOutputWithContext(context.Context) KeySigningKeyArrayOutput
}

KeySigningKeyArrayInput is an input type that accepts KeySigningKeyArray and KeySigningKeyArrayOutput values. You can construct a concrete instance of `KeySigningKeyArrayInput` via:

KeySigningKeyArray{ KeySigningKeyArgs{...} }

type KeySigningKeyArrayOutput

type KeySigningKeyArrayOutput struct{ *pulumi.OutputState }

func (KeySigningKeyArrayOutput) ElementType

func (KeySigningKeyArrayOutput) ElementType() reflect.Type

func (KeySigningKeyArrayOutput) Index

func (KeySigningKeyArrayOutput) ToKeySigningKeyArrayOutput

func (o KeySigningKeyArrayOutput) ToKeySigningKeyArrayOutput() KeySigningKeyArrayOutput

func (KeySigningKeyArrayOutput) ToKeySigningKeyArrayOutputWithContext

func (o KeySigningKeyArrayOutput) ToKeySigningKeyArrayOutputWithContext(ctx context.Context) KeySigningKeyArrayOutput

type KeySigningKeyInput

type KeySigningKeyInput interface {
	pulumi.Input

	ToKeySigningKeyOutput() KeySigningKeyOutput
	ToKeySigningKeyOutputWithContext(ctx context.Context) KeySigningKeyOutput
}

type KeySigningKeyMap

type KeySigningKeyMap map[string]KeySigningKeyInput

func (KeySigningKeyMap) ElementType

func (KeySigningKeyMap) ElementType() reflect.Type

func (KeySigningKeyMap) ToKeySigningKeyMapOutput

func (i KeySigningKeyMap) ToKeySigningKeyMapOutput() KeySigningKeyMapOutput

func (KeySigningKeyMap) ToKeySigningKeyMapOutputWithContext

func (i KeySigningKeyMap) ToKeySigningKeyMapOutputWithContext(ctx context.Context) KeySigningKeyMapOutput

type KeySigningKeyMapInput

type KeySigningKeyMapInput interface {
	pulumi.Input

	ToKeySigningKeyMapOutput() KeySigningKeyMapOutput
	ToKeySigningKeyMapOutputWithContext(context.Context) KeySigningKeyMapOutput
}

KeySigningKeyMapInput is an input type that accepts KeySigningKeyMap and KeySigningKeyMapOutput values. You can construct a concrete instance of `KeySigningKeyMapInput` via:

KeySigningKeyMap{ "key": KeySigningKeyArgs{...} }

type KeySigningKeyMapOutput

type KeySigningKeyMapOutput struct{ *pulumi.OutputState }

func (KeySigningKeyMapOutput) ElementType

func (KeySigningKeyMapOutput) ElementType() reflect.Type

func (KeySigningKeyMapOutput) MapIndex

func (KeySigningKeyMapOutput) ToKeySigningKeyMapOutput

func (o KeySigningKeyMapOutput) ToKeySigningKeyMapOutput() KeySigningKeyMapOutput

func (KeySigningKeyMapOutput) ToKeySigningKeyMapOutputWithContext

func (o KeySigningKeyMapOutput) ToKeySigningKeyMapOutputWithContext(ctx context.Context) KeySigningKeyMapOutput

type KeySigningKeyOutput

type KeySigningKeyOutput struct{ *pulumi.OutputState }

func (KeySigningKeyOutput) DigestAlgorithmMnemonic

func (o KeySigningKeyOutput) DigestAlgorithmMnemonic() pulumi.StringOutput

A string used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.3](https://tools.ietf.org/html/rfc8624#section-3.3).

func (KeySigningKeyOutput) DigestAlgorithmType

func (o KeySigningKeyOutput) DigestAlgorithmType() pulumi.IntOutput

An integer used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.3](https://tools.ietf.org/html/rfc8624#section-3.3).

func (KeySigningKeyOutput) DigestValue

func (o KeySigningKeyOutput) DigestValue() pulumi.StringOutput

A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are used to publish the public key that resolvers can use to verify DNSSEC signatures that are used to secure certain kinds of information provided by the DNS system.

func (KeySigningKeyOutput) DnskeyRecord

func (o KeySigningKeyOutput) DnskeyRecord() pulumi.StringOutput

A string that represents a DNSKEY record.

func (KeySigningKeyOutput) DsRecord

A string that represents a delegation signer (DS) record.

func (KeySigningKeyOutput) ElementType

func (KeySigningKeyOutput) ElementType() reflect.Type

func (KeySigningKeyOutput) Flag

An integer that specifies how the key is used. For key-signing key (KSK), this value is always 257.

func (KeySigningKeyOutput) HostedZoneId

func (o KeySigningKeyOutput) HostedZoneId() pulumi.StringOutput

Identifier of the Route 53 Hosted Zone.

func (KeySigningKeyOutput) KeyManagementServiceArn

func (o KeySigningKeyOutput) KeyManagementServiceArn() pulumi.StringOutput

Amazon Resource Name (ARN) of the Key Management Service (KMS) Key. This must be unique for each key-signing key (KSK) in a single hosted zone. This key must be in the `us-east-1` Region and meet certain requirements, which are described in the [Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring-dnssec-cmk-requirements.html) and [Route 53 API Reference](https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateKeySigningKey.html).

func (KeySigningKeyOutput) KeyTag

An integer used to identify the DNSSEC record for the domain name. The process used to calculate the value is described in [RFC-4034 Appendix B](https://tools.ietf.org/rfc/rfc4034.txt).

func (KeySigningKeyOutput) Name

Name of the key-signing key (KSK). Must be unique for each key-singing key in the same hosted zone.

The following arguments are optional:

func (KeySigningKeyOutput) PublicKey

func (o KeySigningKeyOutput) PublicKey() pulumi.StringOutput

The public key, represented as a Base64 encoding, as required by [RFC-4034 Page 5](https://tools.ietf.org/rfc/rfc4034.txt).

func (KeySigningKeyOutput) SigningAlgorithmMnemonic

func (o KeySigningKeyOutput) SigningAlgorithmMnemonic() pulumi.StringOutput

A string used to represent the signing algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.1](https://tools.ietf.org/html/rfc8624#section-3.1).

func (KeySigningKeyOutput) SigningAlgorithmType

func (o KeySigningKeyOutput) SigningAlgorithmType() pulumi.IntOutput

An integer used to represent the signing algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.1](https://tools.ietf.org/html/rfc8624#section-3.1).

func (KeySigningKeyOutput) Status

Status of the key-signing key (KSK). Valid values: `ACTIVE`, `INACTIVE`. Defaults to `ACTIVE`.

func (KeySigningKeyOutput) ToKeySigningKeyOutput

func (o KeySigningKeyOutput) ToKeySigningKeyOutput() KeySigningKeyOutput

func (KeySigningKeyOutput) ToKeySigningKeyOutputWithContext

func (o KeySigningKeyOutput) ToKeySigningKeyOutputWithContext(ctx context.Context) KeySigningKeyOutput

type KeySigningKeyState

type KeySigningKeyState struct {
	// A string used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.3](https://tools.ietf.org/html/rfc8624#section-3.3).
	DigestAlgorithmMnemonic pulumi.StringPtrInput
	// An integer used to represent the delegation signer digest algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.3](https://tools.ietf.org/html/rfc8624#section-3.3).
	DigestAlgorithmType pulumi.IntPtrInput
	// A cryptographic digest of a DNSKEY resource record (RR). DNSKEY records are used to publish the public key that resolvers can use to verify DNSSEC signatures that are used to secure certain kinds of information provided by the DNS system.
	DigestValue pulumi.StringPtrInput
	// A string that represents a DNSKEY record.
	DnskeyRecord pulumi.StringPtrInput
	// A string that represents a delegation signer (DS) record.
	DsRecord pulumi.StringPtrInput
	// An integer that specifies how the key is used. For key-signing key (KSK), this value is always 257.
	Flag pulumi.IntPtrInput
	// Identifier of the Route 53 Hosted Zone.
	HostedZoneId pulumi.StringPtrInput
	// Amazon Resource Name (ARN) of the Key Management Service (KMS) Key. This must be unique for each key-signing key (KSK) in a single hosted zone. This key must be in the `us-east-1` Region and meet certain requirements, which are described in the [Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring-dnssec-cmk-requirements.html) and [Route 53 API Reference](https://docs.aws.amazon.com/Route53/latest/APIReference/API_CreateKeySigningKey.html).
	KeyManagementServiceArn pulumi.StringPtrInput
	// An integer used to identify the DNSSEC record for the domain name. The process used to calculate the value is described in [RFC-4034 Appendix B](https://tools.ietf.org/rfc/rfc4034.txt).
	KeyTag pulumi.IntPtrInput
	// Name of the key-signing key (KSK). Must be unique for each key-singing key in the same hosted zone.
	//
	// The following arguments are optional:
	Name pulumi.StringPtrInput
	// The public key, represented as a Base64 encoding, as required by [RFC-4034 Page 5](https://tools.ietf.org/rfc/rfc4034.txt).
	PublicKey pulumi.StringPtrInput
	// A string used to represent the signing algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.1](https://tools.ietf.org/html/rfc8624#section-3.1).
	SigningAlgorithmMnemonic pulumi.StringPtrInput
	// An integer used to represent the signing algorithm. This value must follow the guidelines provided by [RFC-8624 Section 3.1](https://tools.ietf.org/html/rfc8624#section-3.1).
	SigningAlgorithmType pulumi.IntPtrInput
	// Status of the key-signing key (KSK). Valid values: `ACTIVE`, `INACTIVE`. Defaults to `ACTIVE`.
	Status pulumi.StringPtrInput
}

func (KeySigningKeyState) ElementType

func (KeySigningKeyState) ElementType() reflect.Type

type LookupDelegationSetArgs

type LookupDelegationSetArgs struct {
	// Delegation set ID.
	//
	// The following attribute is additionally exported:
	Id string `pulumi:"id"`
}

A collection of arguments for invoking getDelegationSet.

type LookupDelegationSetOutputArgs

type LookupDelegationSetOutputArgs struct {
	// Delegation set ID.
	//
	// The following attribute is additionally exported:
	Id pulumi.StringInput `pulumi:"id"`
}

A collection of arguments for invoking getDelegationSet.

func (LookupDelegationSetOutputArgs) ElementType

type LookupDelegationSetResult

type LookupDelegationSetResult struct {
	Arn             string   `pulumi:"arn"`
	CallerReference string   `pulumi:"callerReference"`
	Id              string   `pulumi:"id"`
	NameServers     []string `pulumi:"nameServers"`
}

A collection of values returned by getDelegationSet.

func LookupDelegationSet

func LookupDelegationSet(ctx *pulumi.Context, args *LookupDelegationSetArgs, opts ...pulumi.InvokeOption) (*LookupDelegationSetResult, error)

`route53.DelegationSet` provides details about a specific Route 53 Delegation Set.

This data source allows to find a list of name servers associated with a specific delegation set.

## Example Usage

The following example shows how to get a delegation set from its id.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.LookupDelegationSet(ctx, &route53.LookupDelegationSetArgs{
			Id: "MQWGHCBFAKEID",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupDelegationSetResultOutput

type LookupDelegationSetResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getDelegationSet.

func (LookupDelegationSetResultOutput) Arn

func (LookupDelegationSetResultOutput) CallerReference

func (LookupDelegationSetResultOutput) ElementType

func (LookupDelegationSetResultOutput) Id

func (LookupDelegationSetResultOutput) NameServers

func (LookupDelegationSetResultOutput) ToLookupDelegationSetResultOutput

func (o LookupDelegationSetResultOutput) ToLookupDelegationSetResultOutput() LookupDelegationSetResultOutput

func (LookupDelegationSetResultOutput) ToLookupDelegationSetResultOutputWithContext

func (o LookupDelegationSetResultOutput) ToLookupDelegationSetResultOutputWithContext(ctx context.Context) LookupDelegationSetResultOutput

type LookupResolverEndpointArgs

type LookupResolverEndpointArgs struct {
	// One or more name/value pairs to use as filters. There are
	// several valid keys, for a full reference, check out
	// [Route53resolver Filter value in the AWS API reference][1].
	//
	// In addition to all arguments above, the following attributes are exported:
	Filters []GetResolverEndpointFilter `pulumi:"filters"`
	// ID of the Route53 Resolver Endpoint.
	ResolverEndpointId *string `pulumi:"resolverEndpointId"`
}

A collection of arguments for invoking getResolverEndpoint.

type LookupResolverEndpointOutputArgs

type LookupResolverEndpointOutputArgs struct {
	// One or more name/value pairs to use as filters. There are
	// several valid keys, for a full reference, check out
	// [Route53resolver Filter value in the AWS API reference][1].
	//
	// In addition to all arguments above, the following attributes are exported:
	Filters GetResolverEndpointFilterArrayInput `pulumi:"filters"`
	// ID of the Route53 Resolver Endpoint.
	ResolverEndpointId pulumi.StringPtrInput `pulumi:"resolverEndpointId"`
}

A collection of arguments for invoking getResolverEndpoint.

func (LookupResolverEndpointOutputArgs) ElementType

type LookupResolverEndpointResult

type LookupResolverEndpointResult struct {
	Arn       string                      `pulumi:"arn"`
	Direction string                      `pulumi:"direction"`
	Filters   []GetResolverEndpointFilter `pulumi:"filters"`
	// The provider-assigned unique ID for this managed resource.
	Id                   string   `pulumi:"id"`
	IpAddresses          []string `pulumi:"ipAddresses"`
	Name                 string   `pulumi:"name"`
	Protocols            []string `pulumi:"protocols"`
	ResolverEndpointId   *string  `pulumi:"resolverEndpointId"`
	ResolverEndpointType string   `pulumi:"resolverEndpointType"`
	Status               string   `pulumi:"status"`
	VpcId                string   `pulumi:"vpcId"`
}

A collection of values returned by getResolverEndpoint.

func LookupResolverEndpoint

func LookupResolverEndpoint(ctx *pulumi.Context, args *LookupResolverEndpointArgs, opts ...pulumi.InvokeOption) (*LookupResolverEndpointResult, error)

`route53.ResolverEndpoint` provides details about a specific Route53 Resolver Endpoint.

This data source allows to find a list of IPaddresses associated with a specific Route53 Resolver Endpoint.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.LookupResolverEndpoint(ctx, &route53.LookupResolverEndpointArgs{
			ResolverEndpointId: pulumi.StringRef("rslvr-in-1abc2345ef678g91h"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.LookupResolverEndpoint(ctx, &route53.LookupResolverEndpointArgs{
			Filters: []route53.GetResolverEndpointFilter{
				{
					Name: "NAME",
					Values: []string{
						"MyResolverExampleName",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupResolverEndpointResultOutput

type LookupResolverEndpointResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResolverEndpoint.

func (LookupResolverEndpointResultOutput) Arn

func (LookupResolverEndpointResultOutput) Direction

func (LookupResolverEndpointResultOutput) ElementType

func (LookupResolverEndpointResultOutput) Filters

func (LookupResolverEndpointResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupResolverEndpointResultOutput) IpAddresses

func (LookupResolverEndpointResultOutput) Name

func (LookupResolverEndpointResultOutput) Protocols added in v6.18.2

func (LookupResolverEndpointResultOutput) ResolverEndpointId

func (LookupResolverEndpointResultOutput) ResolverEndpointType added in v6.18.2

func (o LookupResolverEndpointResultOutput) ResolverEndpointType() pulumi.StringOutput

func (LookupResolverEndpointResultOutput) Status

func (LookupResolverEndpointResultOutput) ToLookupResolverEndpointResultOutput

func (o LookupResolverEndpointResultOutput) ToLookupResolverEndpointResultOutput() LookupResolverEndpointResultOutput

func (LookupResolverEndpointResultOutput) ToLookupResolverEndpointResultOutputWithContext

func (o LookupResolverEndpointResultOutput) ToLookupResolverEndpointResultOutputWithContext(ctx context.Context) LookupResolverEndpointResultOutput

func (LookupResolverEndpointResultOutput) VpcId

type LookupResolverFirewallConfigArgs

type LookupResolverFirewallConfigArgs struct {
	// The ID of the VPC from Amazon VPC that the configuration is for.
	//
	// The following attribute is additionally exported:
	ResourceId string `pulumi:"resourceId"`
}

A collection of arguments for invoking getResolverFirewallConfig.

type LookupResolverFirewallConfigOutputArgs

type LookupResolverFirewallConfigOutputArgs struct {
	// The ID of the VPC from Amazon VPC that the configuration is for.
	//
	// The following attribute is additionally exported:
	ResourceId pulumi.StringInput `pulumi:"resourceId"`
}

A collection of arguments for invoking getResolverFirewallConfig.

func (LookupResolverFirewallConfigOutputArgs) ElementType

type LookupResolverFirewallConfigResult

type LookupResolverFirewallConfigResult struct {
	FirewallFailOpen string `pulumi:"firewallFailOpen"`
	// The provider-assigned unique ID for this managed resource.
	Id         string `pulumi:"id"`
	OwnerId    string `pulumi:"ownerId"`
	ResourceId string `pulumi:"resourceId"`
}

A collection of values returned by getResolverFirewallConfig.

func LookupResolverFirewallConfig

func LookupResolverFirewallConfig(ctx *pulumi.Context, args *LookupResolverFirewallConfigArgs, opts ...pulumi.InvokeOption) (*LookupResolverFirewallConfigResult, error)

`route53.ResolverFirewallConfig` provides details about a specific a Route 53 Resolver DNS Firewall config.

This data source allows to find a details about a specific a Route 53 Resolver DNS Firewall config.

## Example Usage

The following example shows how to get a firewall config using the VPC ID.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.LookupResolverFirewallConfig(ctx, &route53.LookupResolverFirewallConfigArgs{
			ResourceId: "vpc-exampleid",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupResolverFirewallConfigResultOutput

type LookupResolverFirewallConfigResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResolverFirewallConfig.

func (LookupResolverFirewallConfigResultOutput) ElementType

func (LookupResolverFirewallConfigResultOutput) FirewallFailOpen

func (LookupResolverFirewallConfigResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupResolverFirewallConfigResultOutput) OwnerId

func (LookupResolverFirewallConfigResultOutput) ResourceId

func (LookupResolverFirewallConfigResultOutput) ToLookupResolverFirewallConfigResultOutput

func (o LookupResolverFirewallConfigResultOutput) ToLookupResolverFirewallConfigResultOutput() LookupResolverFirewallConfigResultOutput

func (LookupResolverFirewallConfigResultOutput) ToLookupResolverFirewallConfigResultOutputWithContext

func (o LookupResolverFirewallConfigResultOutput) ToLookupResolverFirewallConfigResultOutputWithContext(ctx context.Context) LookupResolverFirewallConfigResultOutput

type LookupResolverFirewallDomainListArgs

type LookupResolverFirewallDomainListArgs struct {
	// The ID of the domain list.
	//
	// The following attribute is additionally exported:
	FirewallDomainListId string `pulumi:"firewallDomainListId"`
}

A collection of arguments for invoking getResolverFirewallDomainList.

type LookupResolverFirewallDomainListOutputArgs

type LookupResolverFirewallDomainListOutputArgs struct {
	// The ID of the domain list.
	//
	// The following attribute is additionally exported:
	FirewallDomainListId pulumi.StringInput `pulumi:"firewallDomainListId"`
}

A collection of arguments for invoking getResolverFirewallDomainList.

func (LookupResolverFirewallDomainListOutputArgs) ElementType

type LookupResolverFirewallDomainListResult

type LookupResolverFirewallDomainListResult struct {
	Arn                  string `pulumi:"arn"`
	CreationTime         string `pulumi:"creationTime"`
	CreatorRequestId     string `pulumi:"creatorRequestId"`
	DomainCount          int    `pulumi:"domainCount"`
	FirewallDomainListId string `pulumi:"firewallDomainListId"`
	// The provider-assigned unique ID for this managed resource.
	Id               string `pulumi:"id"`
	ManagedOwnerName string `pulumi:"managedOwnerName"`
	ModificationTime string `pulumi:"modificationTime"`
	Name             string `pulumi:"name"`
	Status           string `pulumi:"status"`
	StatusMessage    string `pulumi:"statusMessage"`
}

A collection of values returned by getResolverFirewallDomainList.

func LookupResolverFirewallDomainList

`route53.ResolverFirewallDomainList` Retrieves the specified firewall domain list.

This data source allows to retrieve details about a specific a Route 53 Resolver DNS Firewall domain list.

## Example Usage

The following example shows how to get a firewall domain list from its ID.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.LookupResolverFirewallDomainList(ctx, &route53.LookupResolverFirewallDomainListArgs{
			FirewallDomainListId: "rslvr-fdl-example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupResolverFirewallDomainListResultOutput

type LookupResolverFirewallDomainListResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResolverFirewallDomainList.

func (LookupResolverFirewallDomainListResultOutput) Arn

func (LookupResolverFirewallDomainListResultOutput) CreationTime

func (LookupResolverFirewallDomainListResultOutput) CreatorRequestId

func (LookupResolverFirewallDomainListResultOutput) DomainCount

func (LookupResolverFirewallDomainListResultOutput) ElementType

func (LookupResolverFirewallDomainListResultOutput) FirewallDomainListId

func (LookupResolverFirewallDomainListResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupResolverFirewallDomainListResultOutput) ManagedOwnerName

func (LookupResolverFirewallDomainListResultOutput) ModificationTime

func (LookupResolverFirewallDomainListResultOutput) Name

func (LookupResolverFirewallDomainListResultOutput) Status

func (LookupResolverFirewallDomainListResultOutput) StatusMessage

func (LookupResolverFirewallDomainListResultOutput) ToLookupResolverFirewallDomainListResultOutput

func (o LookupResolverFirewallDomainListResultOutput) ToLookupResolverFirewallDomainListResultOutput() LookupResolverFirewallDomainListResultOutput

func (LookupResolverFirewallDomainListResultOutput) ToLookupResolverFirewallDomainListResultOutputWithContext

func (o LookupResolverFirewallDomainListResultOutput) ToLookupResolverFirewallDomainListResultOutputWithContext(ctx context.Context) LookupResolverFirewallDomainListResultOutput

type LookupResolverFirewallRuleGroupArgs

type LookupResolverFirewallRuleGroupArgs struct {
	// The ID of the rule group.
	//
	// The following attribute is additionally exported:
	FirewallRuleGroupId string `pulumi:"firewallRuleGroupId"`
}

A collection of arguments for invoking getResolverFirewallRuleGroup.

type LookupResolverFirewallRuleGroupAssociationArgs

type LookupResolverFirewallRuleGroupAssociationArgs struct {
	// The identifier for the association.
	//
	// The following attribute is additionally exported:
	FirewallRuleGroupAssociationId string `pulumi:"firewallRuleGroupAssociationId"`
}

A collection of arguments for invoking getResolverFirewallRuleGroupAssociation.

type LookupResolverFirewallRuleGroupAssociationOutputArgs

type LookupResolverFirewallRuleGroupAssociationOutputArgs struct {
	// The identifier for the association.
	//
	// The following attribute is additionally exported:
	FirewallRuleGroupAssociationId pulumi.StringInput `pulumi:"firewallRuleGroupAssociationId"`
}

A collection of arguments for invoking getResolverFirewallRuleGroupAssociation.

func (LookupResolverFirewallRuleGroupAssociationOutputArgs) ElementType

type LookupResolverFirewallRuleGroupAssociationResult

type LookupResolverFirewallRuleGroupAssociationResult struct {
	Arn                            string `pulumi:"arn"`
	CreationTime                   string `pulumi:"creationTime"`
	CreatorRequestId               string `pulumi:"creatorRequestId"`
	FirewallRuleGroupAssociationId string `pulumi:"firewallRuleGroupAssociationId"`
	FirewallRuleGroupId            string `pulumi:"firewallRuleGroupId"`
	// The provider-assigned unique ID for this managed resource.
	Id                 string `pulumi:"id"`
	ManagedOwnerName   string `pulumi:"managedOwnerName"`
	ModificationTime   string `pulumi:"modificationTime"`
	MutationProtection string `pulumi:"mutationProtection"`
	Name               string `pulumi:"name"`
	Priority           int    `pulumi:"priority"`
	Status             string `pulumi:"status"`
	StatusMessage      string `pulumi:"statusMessage"`
	VpcId              string `pulumi:"vpcId"`
}

A collection of values returned by getResolverFirewallRuleGroupAssociation.

func LookupResolverFirewallRuleGroupAssociation

`route53.ResolverFirewallRuleGroupAssociation` Retrieves the specified firewall rule group association.

This data source allows to retrieve details about a specific a Route 53 Resolver DNS Firewall rule group association.

## Example Usage

The following example shows how to get a firewall rule group association from its id.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.LookupResolverFirewallRuleGroupAssociation(ctx, &route53.LookupResolverFirewallRuleGroupAssociationArgs{
			FirewallRuleGroupAssociationId: "rslvr-frgassoc-example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupResolverFirewallRuleGroupAssociationResultOutput

type LookupResolverFirewallRuleGroupAssociationResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResolverFirewallRuleGroupAssociation.

func (LookupResolverFirewallRuleGroupAssociationResultOutput) Arn

func (LookupResolverFirewallRuleGroupAssociationResultOutput) CreationTime

func (LookupResolverFirewallRuleGroupAssociationResultOutput) CreatorRequestId

func (LookupResolverFirewallRuleGroupAssociationResultOutput) ElementType

func (LookupResolverFirewallRuleGroupAssociationResultOutput) FirewallRuleGroupAssociationId

func (LookupResolverFirewallRuleGroupAssociationResultOutput) FirewallRuleGroupId

func (LookupResolverFirewallRuleGroupAssociationResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupResolverFirewallRuleGroupAssociationResultOutput) ManagedOwnerName

func (LookupResolverFirewallRuleGroupAssociationResultOutput) ModificationTime

func (LookupResolverFirewallRuleGroupAssociationResultOutput) MutationProtection

func (LookupResolverFirewallRuleGroupAssociationResultOutput) Name

func (LookupResolverFirewallRuleGroupAssociationResultOutput) Priority

func (LookupResolverFirewallRuleGroupAssociationResultOutput) Status

func (LookupResolverFirewallRuleGroupAssociationResultOutput) StatusMessage

func (LookupResolverFirewallRuleGroupAssociationResultOutput) ToLookupResolverFirewallRuleGroupAssociationResultOutput

func (LookupResolverFirewallRuleGroupAssociationResultOutput) ToLookupResolverFirewallRuleGroupAssociationResultOutputWithContext

func (o LookupResolverFirewallRuleGroupAssociationResultOutput) ToLookupResolverFirewallRuleGroupAssociationResultOutputWithContext(ctx context.Context) LookupResolverFirewallRuleGroupAssociationResultOutput

func (LookupResolverFirewallRuleGroupAssociationResultOutput) VpcId

type LookupResolverFirewallRuleGroupOutputArgs

type LookupResolverFirewallRuleGroupOutputArgs struct {
	// The ID of the rule group.
	//
	// The following attribute is additionally exported:
	FirewallRuleGroupId pulumi.StringInput `pulumi:"firewallRuleGroupId"`
}

A collection of arguments for invoking getResolverFirewallRuleGroup.

func (LookupResolverFirewallRuleGroupOutputArgs) ElementType

type LookupResolverFirewallRuleGroupResult

type LookupResolverFirewallRuleGroupResult struct {
	Arn                 string `pulumi:"arn"`
	CreationTime        string `pulumi:"creationTime"`
	CreatorRequestId    string `pulumi:"creatorRequestId"`
	FirewallRuleGroupId string `pulumi:"firewallRuleGroupId"`
	// The provider-assigned unique ID for this managed resource.
	Id               string `pulumi:"id"`
	ModificationTime string `pulumi:"modificationTime"`
	Name             string `pulumi:"name"`
	OwnerId          string `pulumi:"ownerId"`
	RuleCount        int    `pulumi:"ruleCount"`
	ShareStatus      string `pulumi:"shareStatus"`
	Status           string `pulumi:"status"`
	StatusMessage    string `pulumi:"statusMessage"`
}

A collection of values returned by getResolverFirewallRuleGroup.

func LookupResolverFirewallRuleGroup

`route53.ResolverFirewallRuleGroup` Retrieves the specified firewall rule group.

This data source allows to retrieve details about a specific a Route 53 Resolver DNS Firewall rule group.

## Example Usage

The following example shows how to get a firewall rule group from its ID.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.LookupResolverFirewallRuleGroup(ctx, &route53.LookupResolverFirewallRuleGroupArgs{
			FirewallRuleGroupId: "rslvr-frg-example",
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupResolverFirewallRuleGroupResultOutput

type LookupResolverFirewallRuleGroupResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResolverFirewallRuleGroup.

func (LookupResolverFirewallRuleGroupResultOutput) Arn

func (LookupResolverFirewallRuleGroupResultOutput) CreationTime

func (LookupResolverFirewallRuleGroupResultOutput) CreatorRequestId

func (LookupResolverFirewallRuleGroupResultOutput) ElementType

func (LookupResolverFirewallRuleGroupResultOutput) FirewallRuleGroupId

func (LookupResolverFirewallRuleGroupResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupResolverFirewallRuleGroupResultOutput) ModificationTime

func (LookupResolverFirewallRuleGroupResultOutput) Name

func (LookupResolverFirewallRuleGroupResultOutput) OwnerId

func (LookupResolverFirewallRuleGroupResultOutput) RuleCount

func (LookupResolverFirewallRuleGroupResultOutput) ShareStatus

func (LookupResolverFirewallRuleGroupResultOutput) Status

func (LookupResolverFirewallRuleGroupResultOutput) StatusMessage

func (LookupResolverFirewallRuleGroupResultOutput) ToLookupResolverFirewallRuleGroupResultOutput

func (o LookupResolverFirewallRuleGroupResultOutput) ToLookupResolverFirewallRuleGroupResultOutput() LookupResolverFirewallRuleGroupResultOutput

func (LookupResolverFirewallRuleGroupResultOutput) ToLookupResolverFirewallRuleGroupResultOutputWithContext

func (o LookupResolverFirewallRuleGroupResultOutput) ToLookupResolverFirewallRuleGroupResultOutputWithContext(ctx context.Context) LookupResolverFirewallRuleGroupResultOutput

type LookupResolverRuleArgs

type LookupResolverRuleArgs struct {
	// Domain name the desired resolver rule forwards DNS queries for. Conflicts with `resolverRuleId`.
	DomainName *string `pulumi:"domainName"`
	// Friendly name of the desired resolver rule. Conflicts with `resolverRuleId`.
	Name *string `pulumi:"name"`
	// ID of the outbound resolver endpoint of the desired resolver rule. Conflicts with `resolverRuleId`.
	ResolverEndpointId *string `pulumi:"resolverEndpointId"`
	// ID of the desired resolver rule. Conflicts with `domainName`, `name`, `resolverEndpointId` and `ruleType`.
	ResolverRuleId *string `pulumi:"resolverRuleId"`
	// Rule type of the desired resolver rule. Valid values are `FORWARD`, `SYSTEM` and `RECURSIVE`. Conflicts with `resolverRuleId`.
	RuleType *string `pulumi:"ruleType"`
	// Map of tags assigned to the resolver rule.
	Tags map[string]string `pulumi:"tags"`
}

A collection of arguments for invoking getResolverRule.

type LookupResolverRuleOutputArgs

type LookupResolverRuleOutputArgs struct {
	// Domain name the desired resolver rule forwards DNS queries for. Conflicts with `resolverRuleId`.
	DomainName pulumi.StringPtrInput `pulumi:"domainName"`
	// Friendly name of the desired resolver rule. Conflicts with `resolverRuleId`.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// ID of the outbound resolver endpoint of the desired resolver rule. Conflicts with `resolverRuleId`.
	ResolverEndpointId pulumi.StringPtrInput `pulumi:"resolverEndpointId"`
	// ID of the desired resolver rule. Conflicts with `domainName`, `name`, `resolverEndpointId` and `ruleType`.
	ResolverRuleId pulumi.StringPtrInput `pulumi:"resolverRuleId"`
	// Rule type of the desired resolver rule. Valid values are `FORWARD`, `SYSTEM` and `RECURSIVE`. Conflicts with `resolverRuleId`.
	RuleType pulumi.StringPtrInput `pulumi:"ruleType"`
	// Map of tags assigned to the resolver rule.
	Tags pulumi.StringMapInput `pulumi:"tags"`
}

A collection of arguments for invoking getResolverRule.

func (LookupResolverRuleOutputArgs) ElementType

type LookupResolverRuleResult

type LookupResolverRuleResult struct {
	// ARN (Amazon Resource Name) for the resolver rule.
	Arn        string `pulumi:"arn"`
	DomainName string `pulumi:"domainName"`
	// The provider-assigned unique ID for this managed resource.
	Id   string `pulumi:"id"`
	Name string `pulumi:"name"`
	// When a rule is shared with another AWS account, the account ID of the account that the rule is shared with.
	OwnerId            string `pulumi:"ownerId"`
	ResolverEndpointId string `pulumi:"resolverEndpointId"`
	ResolverRuleId     string `pulumi:"resolverRuleId"`
	RuleType           string `pulumi:"ruleType"`
	// Whether the rules is shared and, if so, whether the current account is sharing the rule with another account, or another account is sharing the rule with the current account.
	// Values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`
	ShareStatus string `pulumi:"shareStatus"`
	// Map of tags assigned to the resolver rule.
	Tags map[string]string `pulumi:"tags"`
}

A collection of values returned by getResolverRule.

func LookupResolverRule

func LookupResolverRule(ctx *pulumi.Context, args *LookupResolverRuleArgs, opts ...pulumi.InvokeOption) (*LookupResolverRuleResult, error)

`route53.ResolverRule` provides details about a specific Route53 Resolver rule.

## Example Usage

The following example shows how to get a Route53 Resolver rule based on its associated domain name and rule type.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.LookupResolverRule(ctx, &route53.LookupResolverRuleArgs{
			DomainName: pulumi.StringRef("subdomain.example.com"),
			RuleType:   pulumi.StringRef("SYSTEM"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupResolverRuleResultOutput

type LookupResolverRuleResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getResolverRule.

func (LookupResolverRuleResultOutput) Arn

ARN (Amazon Resource Name) for the resolver rule.

func (LookupResolverRuleResultOutput) DomainName

func (LookupResolverRuleResultOutput) ElementType

func (LookupResolverRuleResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupResolverRuleResultOutput) Name

func (LookupResolverRuleResultOutput) OwnerId

When a rule is shared with another AWS account, the account ID of the account that the rule is shared with.

func (LookupResolverRuleResultOutput) ResolverEndpointId

func (o LookupResolverRuleResultOutput) ResolverEndpointId() pulumi.StringOutput

func (LookupResolverRuleResultOutput) ResolverRuleId

func (LookupResolverRuleResultOutput) RuleType

func (LookupResolverRuleResultOutput) ShareStatus

Whether the rules is shared and, if so, whether the current account is sharing the rule with another account, or another account is sharing the rule with the current account. Values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`

func (LookupResolverRuleResultOutput) Tags

Map of tags assigned to the resolver rule.

func (LookupResolverRuleResultOutput) ToLookupResolverRuleResultOutput

func (o LookupResolverRuleResultOutput) ToLookupResolverRuleResultOutput() LookupResolverRuleResultOutput

func (LookupResolverRuleResultOutput) ToLookupResolverRuleResultOutputWithContext

func (o LookupResolverRuleResultOutput) ToLookupResolverRuleResultOutputWithContext(ctx context.Context) LookupResolverRuleResultOutput

type LookupZoneArgs

type LookupZoneArgs struct {
	// Hosted Zone name of the desired Hosted Zone.
	Name *string `pulumi:"name"`
	// Used with `name` field to get a private Hosted Zone.
	PrivateZone *bool `pulumi:"privateZone"`
	// Used with `name` field. A map of tags, each pair of which must exactly match a pair on the desired Hosted Zone.
	Tags map[string]string `pulumi:"tags"`
	// Used with `name` field to get a private Hosted Zone associated with the vpcId (in this case, privateZone is not mandatory).
	VpcId *string `pulumi:"vpcId"`
	// Hosted Zone id of the desired Hosted Zone.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getZone.

type LookupZoneOutputArgs

type LookupZoneOutputArgs struct {
	// Hosted Zone name of the desired Hosted Zone.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Used with `name` field to get a private Hosted Zone.
	PrivateZone pulumi.BoolPtrInput `pulumi:"privateZone"`
	// Used with `name` field. A map of tags, each pair of which must exactly match a pair on the desired Hosted Zone.
	Tags pulumi.StringMapInput `pulumi:"tags"`
	// Used with `name` field to get a private Hosted Zone associated with the vpcId (in this case, privateZone is not mandatory).
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// Hosted Zone id of the desired Hosted Zone.
	ZoneId pulumi.StringPtrInput `pulumi:"zoneId"`
}

A collection of arguments for invoking getZone.

func (LookupZoneOutputArgs) ElementType

func (LookupZoneOutputArgs) ElementType() reflect.Type

type LookupZoneResult

type LookupZoneResult struct {
	// ARN of the Hosted Zone.
	Arn string `pulumi:"arn"`
	// Caller Reference of the Hosted Zone.
	CallerReference string `pulumi:"callerReference"`
	// Comment field of the Hosted Zone.
	Comment string `pulumi:"comment"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The description provided by the service that created the Hosted Zone (e.g., `arn:aws:servicediscovery:us-east-1:1234567890:namespace/ns-xxxxxxxxxxxxxxxx`).
	LinkedServiceDescription string `pulumi:"linkedServiceDescription"`
	// The service that created the Hosted Zone (e.g., `servicediscovery.amazonaws.com`).
	LinkedServicePrincipal string `pulumi:"linkedServicePrincipal"`
	Name                   string `pulumi:"name"`
	// List of DNS name servers for the Hosted Zone.
	NameServers []string `pulumi:"nameServers"`
	// The Route 53 name server that created the SOA record.
	PrimaryNameServer string `pulumi:"primaryNameServer"`
	PrivateZone       *bool  `pulumi:"privateZone"`
	// The number of Record Set in the Hosted Zone.
	ResourceRecordSetCount int               `pulumi:"resourceRecordSetCount"`
	Tags                   map[string]string `pulumi:"tags"`
	VpcId                  string            `pulumi:"vpcId"`
	ZoneId                 string            `pulumi:"zoneId"`
}

A collection of values returned by getZone.

func LookupZone

func LookupZone(ctx *pulumi.Context, args *LookupZoneArgs, opts ...pulumi.InvokeOption) (*LookupZoneResult, error)

`route53.Zone` provides details about a specific Route 53 Hosted Zone.

This data source allows to find a Hosted Zone ID given Hosted Zone name and certain search criteria.

## Example Usage

The following example shows how to get a Hosted Zone from its name and from this data how to create a Record Set.

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		selected, err := route53.LookupZone(ctx, &route53.LookupZoneArgs{
			Name:        pulumi.StringRef("test.com."),
			PrivateZone: pulumi.BoolRef(true),
		}, nil)
		if err != nil {
			return err
		}
		_, err = route53.NewRecord(ctx, "www", &route53.RecordArgs{
			ZoneId: pulumi.String(selected.ZoneId),
			Name:   pulumi.String(fmt.Sprintf("www.%v", selected.Name)),
			Type:   pulumi.String(route53.RecordTypeA),
			Ttl:    pulumi.Int(300),
			Records: pulumi.StringArray{
				pulumi.String("10.0.0.1"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupZoneResultOutput

type LookupZoneResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getZone.

func (LookupZoneResultOutput) Arn

ARN of the Hosted Zone.

func (LookupZoneResultOutput) CallerReference

func (o LookupZoneResultOutput) CallerReference() pulumi.StringOutput

Caller Reference of the Hosted Zone.

func (LookupZoneResultOutput) Comment

Comment field of the Hosted Zone.

func (LookupZoneResultOutput) ElementType

func (LookupZoneResultOutput) ElementType() reflect.Type

func (LookupZoneResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (LookupZoneResultOutput) LinkedServiceDescription

func (o LookupZoneResultOutput) LinkedServiceDescription() pulumi.StringOutput

The description provided by the service that created the Hosted Zone (e.g., `arn:aws:servicediscovery:us-east-1:1234567890:namespace/ns-xxxxxxxxxxxxxxxx`).

func (LookupZoneResultOutput) LinkedServicePrincipal

func (o LookupZoneResultOutput) LinkedServicePrincipal() pulumi.StringOutput

The service that created the Hosted Zone (e.g., `servicediscovery.amazonaws.com`).

func (LookupZoneResultOutput) Name

func (LookupZoneResultOutput) NameServers

List of DNS name servers for the Hosted Zone.

func (LookupZoneResultOutput) PrimaryNameServer

func (o LookupZoneResultOutput) PrimaryNameServer() pulumi.StringOutput

The Route 53 name server that created the SOA record.

func (LookupZoneResultOutput) PrivateZone

func (LookupZoneResultOutput) ResourceRecordSetCount

func (o LookupZoneResultOutput) ResourceRecordSetCount() pulumi.IntOutput

The number of Record Set in the Hosted Zone.

func (LookupZoneResultOutput) Tags

func (LookupZoneResultOutput) ToLookupZoneResultOutput

func (o LookupZoneResultOutput) ToLookupZoneResultOutput() LookupZoneResultOutput

func (LookupZoneResultOutput) ToLookupZoneResultOutputWithContext

func (o LookupZoneResultOutput) ToLookupZoneResultOutputWithContext(ctx context.Context) LookupZoneResultOutput

func (LookupZoneResultOutput) VpcId

func (LookupZoneResultOutput) ZoneId

type QueryLog

type QueryLog struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the Query Logging Config.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// CloudWatch log group ARN to send query logs.
	CloudwatchLogGroupArn pulumi.StringOutput `pulumi:"cloudwatchLogGroupArn"`
	// Route53 hosted zone ID to enable query logs.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a Route53 query logging configuration resource.

> **NOTE:** There are restrictions on the configuration of query logging. Notably, the CloudWatch log group must be in the `us-east-1` region, a permissive CloudWatch log resource policy must be in place, and the Route53 hosted zone must be public. See [Configuring Logging for DNS Queries](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/query-logs.html?console_help=true#query-logs-configuring) for additional details.

## Example Usage

```go package main

import (

"fmt"

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/cloudwatch"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/iam"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// Example Route53 zone with query logging
		exampleCom, err := route53.NewZone(ctx, "example_com", &route53.ZoneArgs{
			Name: pulumi.String("example.com"),
		})
		if err != nil {
			return err
		}
		awsRoute53ExampleCom, err := cloudwatch.NewLogGroup(ctx, "aws_route53_example_com", &cloudwatch.LogGroupArgs{
			Name: exampleCom.Name.ApplyT(func(name string) (string, error) {
				return fmt.Sprintf("/aws/route53/%v", name), nil
			}).(pulumi.StringOutput),
			RetentionInDays: pulumi.Int(30),
		})
		if err != nil {
			return err
		}
		// Example CloudWatch log resource policy to allow Route53 to write logs
		// to any log group under /aws/route53/*
		route53_query_logging_policy, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
			Statements: []iam.GetPolicyDocumentStatement{
				{
					Actions: []string{
						"logs:CreateLogStream",
						"logs:PutLogEvents",
					},
					Resources: []string{
						"arn:aws:logs:*:*:log-group:/aws/route53/*",
					},
					Principals: []iam.GetPolicyDocumentStatementPrincipal{
						{
							Identifiers: []string{
								"route53.amazonaws.com",
							},
							Type: "Service",
						},
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = cloudwatch.NewLogResourcePolicy(ctx, "route53-query-logging-policy", &cloudwatch.LogResourcePolicyArgs{
			PolicyDocument: pulumi.String(route53_query_logging_policy.Json),
			PolicyName:     pulumi.String("route53-query-logging-policy"),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewQueryLog(ctx, "example_com", &route53.QueryLogArgs{
			CloudwatchLogGroupArn: awsRoute53ExampleCom.Arn,
			ZoneId:                exampleCom.ZoneId,
		}, pulumi.DependsOn([]pulumi.Resource{
			route53_query_logging_policyLogResourcePolicy,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route53 query logging configurations using their ID. For example:

```sh $ pulumi import aws:route53/queryLog:QueryLog example_com xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx ```

func GetQueryLog

func GetQueryLog(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *QueryLogState, opts ...pulumi.ResourceOption) (*QueryLog, error)

GetQueryLog gets an existing QueryLog resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewQueryLog

func NewQueryLog(ctx *pulumi.Context,
	name string, args *QueryLogArgs, opts ...pulumi.ResourceOption) (*QueryLog, error)

NewQueryLog registers a new resource with the given unique name, arguments, and options.

func (*QueryLog) ElementType

func (*QueryLog) ElementType() reflect.Type

func (*QueryLog) ToQueryLogOutput

func (i *QueryLog) ToQueryLogOutput() QueryLogOutput

func (*QueryLog) ToQueryLogOutputWithContext

func (i *QueryLog) ToQueryLogOutputWithContext(ctx context.Context) QueryLogOutput

type QueryLogArgs

type QueryLogArgs struct {
	// CloudWatch log group ARN to send query logs.
	CloudwatchLogGroupArn pulumi.StringInput
	// Route53 hosted zone ID to enable query logs.
	ZoneId pulumi.StringInput
}

The set of arguments for constructing a QueryLog resource.

func (QueryLogArgs) ElementType

func (QueryLogArgs) ElementType() reflect.Type

type QueryLogArray

type QueryLogArray []QueryLogInput

func (QueryLogArray) ElementType

func (QueryLogArray) ElementType() reflect.Type

func (QueryLogArray) ToQueryLogArrayOutput

func (i QueryLogArray) ToQueryLogArrayOutput() QueryLogArrayOutput

func (QueryLogArray) ToQueryLogArrayOutputWithContext

func (i QueryLogArray) ToQueryLogArrayOutputWithContext(ctx context.Context) QueryLogArrayOutput

type QueryLogArrayInput

type QueryLogArrayInput interface {
	pulumi.Input

	ToQueryLogArrayOutput() QueryLogArrayOutput
	ToQueryLogArrayOutputWithContext(context.Context) QueryLogArrayOutput
}

QueryLogArrayInput is an input type that accepts QueryLogArray and QueryLogArrayOutput values. You can construct a concrete instance of `QueryLogArrayInput` via:

QueryLogArray{ QueryLogArgs{...} }

type QueryLogArrayOutput

type QueryLogArrayOutput struct{ *pulumi.OutputState }

func (QueryLogArrayOutput) ElementType

func (QueryLogArrayOutput) ElementType() reflect.Type

func (QueryLogArrayOutput) Index

func (QueryLogArrayOutput) ToQueryLogArrayOutput

func (o QueryLogArrayOutput) ToQueryLogArrayOutput() QueryLogArrayOutput

func (QueryLogArrayOutput) ToQueryLogArrayOutputWithContext

func (o QueryLogArrayOutput) ToQueryLogArrayOutputWithContext(ctx context.Context) QueryLogArrayOutput

type QueryLogInput

type QueryLogInput interface {
	pulumi.Input

	ToQueryLogOutput() QueryLogOutput
	ToQueryLogOutputWithContext(ctx context.Context) QueryLogOutput
}

type QueryLogMap

type QueryLogMap map[string]QueryLogInput

func (QueryLogMap) ElementType

func (QueryLogMap) ElementType() reflect.Type

func (QueryLogMap) ToQueryLogMapOutput

func (i QueryLogMap) ToQueryLogMapOutput() QueryLogMapOutput

func (QueryLogMap) ToQueryLogMapOutputWithContext

func (i QueryLogMap) ToQueryLogMapOutputWithContext(ctx context.Context) QueryLogMapOutput

type QueryLogMapInput

type QueryLogMapInput interface {
	pulumi.Input

	ToQueryLogMapOutput() QueryLogMapOutput
	ToQueryLogMapOutputWithContext(context.Context) QueryLogMapOutput
}

QueryLogMapInput is an input type that accepts QueryLogMap and QueryLogMapOutput values. You can construct a concrete instance of `QueryLogMapInput` via:

QueryLogMap{ "key": QueryLogArgs{...} }

type QueryLogMapOutput

type QueryLogMapOutput struct{ *pulumi.OutputState }

func (QueryLogMapOutput) ElementType

func (QueryLogMapOutput) ElementType() reflect.Type

func (QueryLogMapOutput) MapIndex

func (QueryLogMapOutput) ToQueryLogMapOutput

func (o QueryLogMapOutput) ToQueryLogMapOutput() QueryLogMapOutput

func (QueryLogMapOutput) ToQueryLogMapOutputWithContext

func (o QueryLogMapOutput) ToQueryLogMapOutputWithContext(ctx context.Context) QueryLogMapOutput

type QueryLogOutput

type QueryLogOutput struct{ *pulumi.OutputState }

func (QueryLogOutput) Arn

The Amazon Resource Name (ARN) of the Query Logging Config.

func (QueryLogOutput) CloudwatchLogGroupArn

func (o QueryLogOutput) CloudwatchLogGroupArn() pulumi.StringOutput

CloudWatch log group ARN to send query logs.

func (QueryLogOutput) ElementType

func (QueryLogOutput) ElementType() reflect.Type

func (QueryLogOutput) ToQueryLogOutput

func (o QueryLogOutput) ToQueryLogOutput() QueryLogOutput

func (QueryLogOutput) ToQueryLogOutputWithContext

func (o QueryLogOutput) ToQueryLogOutputWithContext(ctx context.Context) QueryLogOutput

func (QueryLogOutput) ZoneId

func (o QueryLogOutput) ZoneId() pulumi.StringOutput

Route53 hosted zone ID to enable query logs.

type QueryLogState

type QueryLogState struct {
	// The Amazon Resource Name (ARN) of the Query Logging Config.
	Arn pulumi.StringPtrInput
	// CloudWatch log group ARN to send query logs.
	CloudwatchLogGroupArn pulumi.StringPtrInput
	// Route53 hosted zone ID to enable query logs.
	ZoneId pulumi.StringPtrInput
}

func (QueryLogState) ElementType

func (QueryLogState) ElementType() reflect.Type

type Record

type Record struct {
	pulumi.CustomResourceState

	// An alias block. Conflicts with `ttl` & `records`.
	// Documented below.
	Aliases RecordAliasArrayOutput `pulumi:"aliases"`
	// Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. `false` by default. This configuration is not recommended for most environments.
	//
	// Exactly one of `records` or `alias` must be specified: this determines whether it's an alias record.
	AllowOverwrite pulumi.BoolOutput `pulumi:"allowOverwrite"`
	// A block indicating a routing policy based on the IP network ranges of requestors. Conflicts with any other routing policy. Documented below.
	CidrRoutingPolicy RecordCidrRoutingPolicyPtrOutput `pulumi:"cidrRoutingPolicy"`
	// A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
	FailoverRoutingPolicies RecordFailoverRoutingPolicyArrayOutput `pulumi:"failoverRoutingPolicies"`
	// [FQDN](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) built using the zone domain and `name`.
	Fqdn pulumi.StringOutput `pulumi:"fqdn"`
	// A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
	GeolocationRoutingPolicies RecordGeolocationRoutingPolicyArrayOutput `pulumi:"geolocationRoutingPolicies"`
	// A block indicating a routing policy based on the geoproximity of the requestor. Conflicts with any other routing policy. Documented below.
	GeoproximityRoutingPolicy RecordGeoproximityRoutingPolicyPtrOutput `pulumi:"geoproximityRoutingPolicy"`
	// The health check the record should be associated with.
	HealthCheckId pulumi.StringPtrOutput `pulumi:"healthCheckId"`
	// A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
	LatencyRoutingPolicies RecordLatencyRoutingPolicyArrayOutput `pulumi:"latencyRoutingPolicies"`
	// Set to `true` to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
	MultivalueAnswerRoutingPolicy pulumi.BoolPtrOutput `pulumi:"multivalueAnswerRoutingPolicy"`
	// The name of the record.
	Name pulumi.StringOutput `pulumi:"name"`
	// A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add `\"\"` inside the provider configuration string (e.g., `"first255characters\"\"morecharacters"`).
	Records pulumi.StringArrayOutput `pulumi:"records"`
	// Unique identifier to differentiate records with routing policies from one another. Required if using `cidrRoutingPolicy`, `failoverRoutingPolicy`, `geolocationRoutingPolicy`,`geoproximityRoutingPolicy`, `latencyRoutingPolicy`, `multivalueAnswerRoutingPolicy`, or `weightedRoutingPolicy`.
	SetIdentifier pulumi.StringPtrOutput `pulumi:"setIdentifier"`
	// The TTL of the record.
	Ttl pulumi.IntPtrOutput `pulumi:"ttl"`
	// The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.
	Type pulumi.StringOutput `pulumi:"type"`
	// A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
	WeightedRoutingPolicies RecordWeightedRoutingPolicyArrayOutput `pulumi:"weightedRoutingPolicies"`
	// The ID of the hosted zone to contain this record.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a Route53 record resource.

## Example Usage

### Simple routing policy

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewRecord(ctx, "www", &route53.RecordArgs{
			ZoneId: pulumi.Any(primary.ZoneId),
			Name:   pulumi.String("www.example.com"),
			Type:   pulumi.String(route53.RecordTypeA),
			Ttl:    pulumi.Int(300),
			Records: pulumi.StringArray{
				lb.PublicIp,
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Weighted routing policy

Other routing policies are configured similarly. See [Amazon Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html) for details.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewRecord(ctx, "www-dev", &route53.RecordArgs{
			ZoneId: pulumi.Any(primary.ZoneId),
			Name:   pulumi.String("www"),
			Type:   pulumi.String(route53.RecordTypeCNAME),
			Ttl:    pulumi.Int(5),
			WeightedRoutingPolicies: route53.RecordWeightedRoutingPolicyArray{
				&route53.RecordWeightedRoutingPolicyArgs{
					Weight: pulumi.Int(10),
				},
			},
			SetIdentifier: pulumi.String("dev"),
			Records: pulumi.StringArray{
				pulumi.String("dev.example.com"),
			},
		})
		if err != nil {
			return err
		}
		_, err = route53.NewRecord(ctx, "www-live", &route53.RecordArgs{
			ZoneId: pulumi.Any(primary.ZoneId),
			Name:   pulumi.String("www"),
			Type:   pulumi.String(route53.RecordTypeCNAME),
			Ttl:    pulumi.Int(5),
			WeightedRoutingPolicies: route53.RecordWeightedRoutingPolicyArray{
				&route53.RecordWeightedRoutingPolicyArgs{
					Weight: pulumi.Int(90),
				},
			},
			SetIdentifier: pulumi.String("live"),
			Records: pulumi.StringArray{
				pulumi.String("live.example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Geoproximity routing policy

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewRecord(ctx, "www", &route53.RecordArgs{
			ZoneId: pulumi.Any(primary.ZoneId),
			Name:   pulumi.String("www.example.com"),
			Type:   pulumi.String(route53.RecordTypeCNAME),
			Ttl:    pulumi.Int(300),
			GeoproximityRoutingPolicy: &route53.RecordGeoproximityRoutingPolicyArgs{
				Coordinates: route53.RecordGeoproximityRoutingPolicyCoordinateArray{
					&route53.RecordGeoproximityRoutingPolicyCoordinateArgs{
						Latitude:  pulumi.String("49.22"),
						Longitude: pulumi.String("-74.01"),
					},
				},
			},
			SetIdentifier: pulumi.String("dev"),
			Records: pulumi.StringArray{
				pulumi.String("dev.example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Alias record

See [related part of Amazon Route 53 Developer Guide](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-choosing-alias-non-alias.html) to understand differences between alias and non-alias records.

TTL for all alias records is [60 seconds](https://aws.amazon.com/route53/faqs/#dns_failover_do_i_need_to_adjust), you cannot change this, therefore `ttl` has to be omitted in alias records.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/elb"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := elb.NewLoadBalancer(ctx, "main", &elb.LoadBalancerArgs{
			Name: pulumi.String("foobar-elb"),
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("us-east-1c"),
			},
			Listeners: elb.LoadBalancerListenerArray{
				&elb.LoadBalancerListenerArgs{
					InstancePort:     pulumi.Int(80),
					InstanceProtocol: pulumi.String("http"),
					LbPort:           pulumi.Int(80),
					LbProtocol:       pulumi.String("http"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = route53.NewRecord(ctx, "www", &route53.RecordArgs{
			ZoneId: pulumi.Any(primary.ZoneId),
			Name:   pulumi.String("example.com"),
			Type:   pulumi.String(route53.RecordTypeA),
			Aliases: route53.RecordAliasArray{
				&route53.RecordAliasArgs{
					Name:                 main.DnsName,
					ZoneId:               main.ZoneId,
					EvaluateTargetHealth: pulumi.Bool(true),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### NS and SOA Record Management

When creating Route 53 zones, the `NS` and `SOA` records for the zone are automatically created. Enabling the `allowOverwrite` argument will allow managing these records in a single deployment without the requirement for `import`.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := route53.NewZone(ctx, "example", &route53.ZoneArgs{
			Name: pulumi.String("test.example.com"),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewRecord(ctx, "example", &route53.RecordArgs{
			AllowOverwrite: pulumi.Bool(true),
			Name:           pulumi.String("test.example.com"),
			Ttl:            pulumi.Int(172800),
			Type:           pulumi.String(route53.RecordTypeNS),
			ZoneId:         example.ZoneId,
			Records: pulumi.StringArray{
				example.NameServers.ApplyT(func(nameServers []string) (string, error) {
					return nameServers[0], nil
				}).(pulumi.StringOutput),
				example.NameServers.ApplyT(func(nameServers []string) (string, error) {
					return nameServers[1], nil
				}).(pulumi.StringOutput),
				example.NameServers.ApplyT(func(nameServers []string) (string, error) {
					return nameServers[2], nil
				}).(pulumi.StringOutput),
				example.NameServers.ApplyT(func(nameServers []string) (string, error) {
					return nameServers[3], nil
				}).(pulumi.StringOutput),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

If the record also contains a set identifier, append it:

If the record name is the empty string, it can be omitted:

__Using `pulumi import` to import__ Route53 Records using the ID of the record, record name, record type, and set identifier. For example:

Using the ID of the record, which is the zone identifier, record name, and record type, separated by underscores (`_`):

```sh $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS ``` If the record also contains a set identifier, append it:

```sh $ pulumi import aws:route53/record:Record myrecord Z4KAPRWWNC7JR_dev.example.com_NS_dev ```

func GetRecord

func GetRecord(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RecordState, opts ...pulumi.ResourceOption) (*Record, error)

GetRecord gets an existing Record resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRecord

func NewRecord(ctx *pulumi.Context,
	name string, args *RecordArgs, opts ...pulumi.ResourceOption) (*Record, error)

NewRecord registers a new resource with the given unique name, arguments, and options.

func (*Record) ElementType

func (*Record) ElementType() reflect.Type

func (*Record) ToRecordOutput

func (i *Record) ToRecordOutput() RecordOutput

func (*Record) ToRecordOutputWithContext

func (i *Record) ToRecordOutputWithContext(ctx context.Context) RecordOutput

type RecordAlias

type RecordAlias struct {
	// Set to `true` if you want Route 53 to determine whether to respond to DNS queries using this resource record set by checking the health of the resource record set. Some resources have special requirements, see [related part of documentation](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-values.html#rrsets-values-alias-evaluate-target-health).
	EvaluateTargetHealth bool `pulumi:"evaluateTargetHealth"`
	// DNS domain name for a CloudFront distribution, S3 bucket, ELB, or another resource record set in this hosted zone.
	Name string `pulumi:"name"`
	// Hosted zone ID for a CloudFront distribution, S3 bucket, ELB, or Route 53 hosted zone. See `resource_elb.zone_id` for example.
	ZoneId string `pulumi:"zoneId"`
}

type RecordAliasArgs

type RecordAliasArgs struct {
	// Set to `true` if you want Route 53 to determine whether to respond to DNS queries using this resource record set by checking the health of the resource record set. Some resources have special requirements, see [related part of documentation](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-values.html#rrsets-values-alias-evaluate-target-health).
	EvaluateTargetHealth pulumi.BoolInput `pulumi:"evaluateTargetHealth"`
	// DNS domain name for a CloudFront distribution, S3 bucket, ELB, or another resource record set in this hosted zone.
	Name pulumi.StringInput `pulumi:"name"`
	// Hosted zone ID for a CloudFront distribution, S3 bucket, ELB, or Route 53 hosted zone. See `resource_elb.zone_id` for example.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (RecordAliasArgs) ElementType

func (RecordAliasArgs) ElementType() reflect.Type

func (RecordAliasArgs) ToRecordAliasOutput

func (i RecordAliasArgs) ToRecordAliasOutput() RecordAliasOutput

func (RecordAliasArgs) ToRecordAliasOutputWithContext

func (i RecordAliasArgs) ToRecordAliasOutputWithContext(ctx context.Context) RecordAliasOutput

type RecordAliasArray

type RecordAliasArray []RecordAliasInput

func (RecordAliasArray) ElementType

func (RecordAliasArray) ElementType() reflect.Type

func (RecordAliasArray) ToRecordAliasArrayOutput

func (i RecordAliasArray) ToRecordAliasArrayOutput() RecordAliasArrayOutput

func (RecordAliasArray) ToRecordAliasArrayOutputWithContext

func (i RecordAliasArray) ToRecordAliasArrayOutputWithContext(ctx context.Context) RecordAliasArrayOutput

type RecordAliasArrayInput

type RecordAliasArrayInput interface {
	pulumi.Input

	ToRecordAliasArrayOutput() RecordAliasArrayOutput
	ToRecordAliasArrayOutputWithContext(context.Context) RecordAliasArrayOutput
}

RecordAliasArrayInput is an input type that accepts RecordAliasArray and RecordAliasArrayOutput values. You can construct a concrete instance of `RecordAliasArrayInput` via:

RecordAliasArray{ RecordAliasArgs{...} }

type RecordAliasArrayOutput

type RecordAliasArrayOutput struct{ *pulumi.OutputState }

func (RecordAliasArrayOutput) ElementType

func (RecordAliasArrayOutput) ElementType() reflect.Type

func (RecordAliasArrayOutput) Index

func (RecordAliasArrayOutput) ToRecordAliasArrayOutput

func (o RecordAliasArrayOutput) ToRecordAliasArrayOutput() RecordAliasArrayOutput

func (RecordAliasArrayOutput) ToRecordAliasArrayOutputWithContext

func (o RecordAliasArrayOutput) ToRecordAliasArrayOutputWithContext(ctx context.Context) RecordAliasArrayOutput

type RecordAliasInput

type RecordAliasInput interface {
	pulumi.Input

	ToRecordAliasOutput() RecordAliasOutput
	ToRecordAliasOutputWithContext(context.Context) RecordAliasOutput
}

RecordAliasInput is an input type that accepts RecordAliasArgs and RecordAliasOutput values. You can construct a concrete instance of `RecordAliasInput` via:

RecordAliasArgs{...}

type RecordAliasOutput

type RecordAliasOutput struct{ *pulumi.OutputState }

func (RecordAliasOutput) ElementType

func (RecordAliasOutput) ElementType() reflect.Type

func (RecordAliasOutput) EvaluateTargetHealth

func (o RecordAliasOutput) EvaluateTargetHealth() pulumi.BoolOutput

Set to `true` if you want Route 53 to determine whether to respond to DNS queries using this resource record set by checking the health of the resource record set. Some resources have special requirements, see [related part of documentation](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-values.html#rrsets-values-alias-evaluate-target-health).

func (RecordAliasOutput) Name

DNS domain name for a CloudFront distribution, S3 bucket, ELB, or another resource record set in this hosted zone.

func (RecordAliasOutput) ToRecordAliasOutput

func (o RecordAliasOutput) ToRecordAliasOutput() RecordAliasOutput

func (RecordAliasOutput) ToRecordAliasOutputWithContext

func (o RecordAliasOutput) ToRecordAliasOutputWithContext(ctx context.Context) RecordAliasOutput

func (RecordAliasOutput) ZoneId

Hosted zone ID for a CloudFront distribution, S3 bucket, ELB, or Route 53 hosted zone. See `resource_elb.zone_id` for example.

type RecordArgs

type RecordArgs struct {
	// An alias block. Conflicts with `ttl` & `records`.
	// Documented below.
	Aliases RecordAliasArrayInput
	// Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. `false` by default. This configuration is not recommended for most environments.
	//
	// Exactly one of `records` or `alias` must be specified: this determines whether it's an alias record.
	AllowOverwrite pulumi.BoolPtrInput
	// A block indicating a routing policy based on the IP network ranges of requestors. Conflicts with any other routing policy. Documented below.
	CidrRoutingPolicy RecordCidrRoutingPolicyPtrInput
	// A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
	FailoverRoutingPolicies RecordFailoverRoutingPolicyArrayInput
	// A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
	GeolocationRoutingPolicies RecordGeolocationRoutingPolicyArrayInput
	// A block indicating a routing policy based on the geoproximity of the requestor. Conflicts with any other routing policy. Documented below.
	GeoproximityRoutingPolicy RecordGeoproximityRoutingPolicyPtrInput
	// The health check the record should be associated with.
	HealthCheckId pulumi.StringPtrInput
	// A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
	LatencyRoutingPolicies RecordLatencyRoutingPolicyArrayInput
	// Set to `true` to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
	MultivalueAnswerRoutingPolicy pulumi.BoolPtrInput
	// The name of the record.
	Name pulumi.StringInput
	// A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add `\"\"` inside the provider configuration string (e.g., `"first255characters\"\"morecharacters"`).
	Records pulumi.StringArrayInput
	// Unique identifier to differentiate records with routing policies from one another. Required if using `cidrRoutingPolicy`, `failoverRoutingPolicy`, `geolocationRoutingPolicy`,`geoproximityRoutingPolicy`, `latencyRoutingPolicy`, `multivalueAnswerRoutingPolicy`, or `weightedRoutingPolicy`.
	SetIdentifier pulumi.StringPtrInput
	// The TTL of the record.
	Ttl pulumi.IntPtrInput
	// The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.
	Type pulumi.StringInput
	// A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
	WeightedRoutingPolicies RecordWeightedRoutingPolicyArrayInput
	// The ID of the hosted zone to contain this record.
	ZoneId pulumi.StringInput
}

The set of arguments for constructing a Record resource.

func (RecordArgs) ElementType

func (RecordArgs) ElementType() reflect.Type

type RecordArray

type RecordArray []RecordInput

func (RecordArray) ElementType

func (RecordArray) ElementType() reflect.Type

func (RecordArray) ToRecordArrayOutput

func (i RecordArray) ToRecordArrayOutput() RecordArrayOutput

func (RecordArray) ToRecordArrayOutputWithContext

func (i RecordArray) ToRecordArrayOutputWithContext(ctx context.Context) RecordArrayOutput

type RecordArrayInput

type RecordArrayInput interface {
	pulumi.Input

	ToRecordArrayOutput() RecordArrayOutput
	ToRecordArrayOutputWithContext(context.Context) RecordArrayOutput
}

RecordArrayInput is an input type that accepts RecordArray and RecordArrayOutput values. You can construct a concrete instance of `RecordArrayInput` via:

RecordArray{ RecordArgs{...} }

type RecordArrayOutput

type RecordArrayOutput struct{ *pulumi.OutputState }

func (RecordArrayOutput) ElementType

func (RecordArrayOutput) ElementType() reflect.Type

func (RecordArrayOutput) Index

func (RecordArrayOutput) ToRecordArrayOutput

func (o RecordArrayOutput) ToRecordArrayOutput() RecordArrayOutput

func (RecordArrayOutput) ToRecordArrayOutputWithContext

func (o RecordArrayOutput) ToRecordArrayOutputWithContext(ctx context.Context) RecordArrayOutput

type RecordCidrRoutingPolicy

type RecordCidrRoutingPolicy struct {
	// The CIDR collection ID. See the `route53.CidrCollection` resource for more details.
	CollectionId string `pulumi:"collectionId"`
	// The CIDR collection location name. See the `route53.CidrLocation` resource for more details. A `locationName` with an asterisk `"*"` can be used to create a default CIDR record. `collectionId` is still required for default record.
	LocationName string `pulumi:"locationName"`
}

type RecordCidrRoutingPolicyArgs

type RecordCidrRoutingPolicyArgs struct {
	// The CIDR collection ID. See the `route53.CidrCollection` resource for more details.
	CollectionId pulumi.StringInput `pulumi:"collectionId"`
	// The CIDR collection location name. See the `route53.CidrLocation` resource for more details. A `locationName` with an asterisk `"*"` can be used to create a default CIDR record. `collectionId` is still required for default record.
	LocationName pulumi.StringInput `pulumi:"locationName"`
}

func (RecordCidrRoutingPolicyArgs) ElementType

func (RecordCidrRoutingPolicyArgs) ToRecordCidrRoutingPolicyOutput

func (i RecordCidrRoutingPolicyArgs) ToRecordCidrRoutingPolicyOutput() RecordCidrRoutingPolicyOutput

func (RecordCidrRoutingPolicyArgs) ToRecordCidrRoutingPolicyOutputWithContext

func (i RecordCidrRoutingPolicyArgs) ToRecordCidrRoutingPolicyOutputWithContext(ctx context.Context) RecordCidrRoutingPolicyOutput

func (RecordCidrRoutingPolicyArgs) ToRecordCidrRoutingPolicyPtrOutput

func (i RecordCidrRoutingPolicyArgs) ToRecordCidrRoutingPolicyPtrOutput() RecordCidrRoutingPolicyPtrOutput

func (RecordCidrRoutingPolicyArgs) ToRecordCidrRoutingPolicyPtrOutputWithContext

func (i RecordCidrRoutingPolicyArgs) ToRecordCidrRoutingPolicyPtrOutputWithContext(ctx context.Context) RecordCidrRoutingPolicyPtrOutput

type RecordCidrRoutingPolicyInput

type RecordCidrRoutingPolicyInput interface {
	pulumi.Input

	ToRecordCidrRoutingPolicyOutput() RecordCidrRoutingPolicyOutput
	ToRecordCidrRoutingPolicyOutputWithContext(context.Context) RecordCidrRoutingPolicyOutput
}

RecordCidrRoutingPolicyInput is an input type that accepts RecordCidrRoutingPolicyArgs and RecordCidrRoutingPolicyOutput values. You can construct a concrete instance of `RecordCidrRoutingPolicyInput` via:

RecordCidrRoutingPolicyArgs{...}

type RecordCidrRoutingPolicyOutput

type RecordCidrRoutingPolicyOutput struct{ *pulumi.OutputState }

func (RecordCidrRoutingPolicyOutput) CollectionId

The CIDR collection ID. See the `route53.CidrCollection` resource for more details.

func (RecordCidrRoutingPolicyOutput) ElementType

func (RecordCidrRoutingPolicyOutput) LocationName

The CIDR collection location name. See the `route53.CidrLocation` resource for more details. A `locationName` with an asterisk `"*"` can be used to create a default CIDR record. `collectionId` is still required for default record.

func (RecordCidrRoutingPolicyOutput) ToRecordCidrRoutingPolicyOutput

func (o RecordCidrRoutingPolicyOutput) ToRecordCidrRoutingPolicyOutput() RecordCidrRoutingPolicyOutput

func (RecordCidrRoutingPolicyOutput) ToRecordCidrRoutingPolicyOutputWithContext

func (o RecordCidrRoutingPolicyOutput) ToRecordCidrRoutingPolicyOutputWithContext(ctx context.Context) RecordCidrRoutingPolicyOutput

func (RecordCidrRoutingPolicyOutput) ToRecordCidrRoutingPolicyPtrOutput

func (o RecordCidrRoutingPolicyOutput) ToRecordCidrRoutingPolicyPtrOutput() RecordCidrRoutingPolicyPtrOutput

func (RecordCidrRoutingPolicyOutput) ToRecordCidrRoutingPolicyPtrOutputWithContext

func (o RecordCidrRoutingPolicyOutput) ToRecordCidrRoutingPolicyPtrOutputWithContext(ctx context.Context) RecordCidrRoutingPolicyPtrOutput

type RecordCidrRoutingPolicyPtrInput

type RecordCidrRoutingPolicyPtrInput interface {
	pulumi.Input

	ToRecordCidrRoutingPolicyPtrOutput() RecordCidrRoutingPolicyPtrOutput
	ToRecordCidrRoutingPolicyPtrOutputWithContext(context.Context) RecordCidrRoutingPolicyPtrOutput
}

RecordCidrRoutingPolicyPtrInput is an input type that accepts RecordCidrRoutingPolicyArgs, RecordCidrRoutingPolicyPtr and RecordCidrRoutingPolicyPtrOutput values. You can construct a concrete instance of `RecordCidrRoutingPolicyPtrInput` via:

        RecordCidrRoutingPolicyArgs{...}

or:

        nil

type RecordCidrRoutingPolicyPtrOutput

type RecordCidrRoutingPolicyPtrOutput struct{ *pulumi.OutputState }

func (RecordCidrRoutingPolicyPtrOutput) CollectionId

The CIDR collection ID. See the `route53.CidrCollection` resource for more details.

func (RecordCidrRoutingPolicyPtrOutput) Elem

func (RecordCidrRoutingPolicyPtrOutput) ElementType

func (RecordCidrRoutingPolicyPtrOutput) LocationName

The CIDR collection location name. See the `route53.CidrLocation` resource for more details. A `locationName` with an asterisk `"*"` can be used to create a default CIDR record. `collectionId` is still required for default record.

func (RecordCidrRoutingPolicyPtrOutput) ToRecordCidrRoutingPolicyPtrOutput

func (o RecordCidrRoutingPolicyPtrOutput) ToRecordCidrRoutingPolicyPtrOutput() RecordCidrRoutingPolicyPtrOutput

func (RecordCidrRoutingPolicyPtrOutput) ToRecordCidrRoutingPolicyPtrOutputWithContext

func (o RecordCidrRoutingPolicyPtrOutput) ToRecordCidrRoutingPolicyPtrOutputWithContext(ctx context.Context) RecordCidrRoutingPolicyPtrOutput

type RecordFailoverRoutingPolicy

type RecordFailoverRoutingPolicy struct {
	// `PRIMARY` or `SECONDARY`. A `PRIMARY` record will be served if its healthcheck is passing, otherwise the `SECONDARY` will be served. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring-options.html#dns-failover-failover-rrsets
	Type string `pulumi:"type"`
}

type RecordFailoverRoutingPolicyArgs

type RecordFailoverRoutingPolicyArgs struct {
	// `PRIMARY` or `SECONDARY`. A `PRIMARY` record will be served if its healthcheck is passing, otherwise the `SECONDARY` will be served. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring-options.html#dns-failover-failover-rrsets
	Type pulumi.StringInput `pulumi:"type"`
}

func (RecordFailoverRoutingPolicyArgs) ElementType

func (RecordFailoverRoutingPolicyArgs) ToRecordFailoverRoutingPolicyOutput

func (i RecordFailoverRoutingPolicyArgs) ToRecordFailoverRoutingPolicyOutput() RecordFailoverRoutingPolicyOutput

func (RecordFailoverRoutingPolicyArgs) ToRecordFailoverRoutingPolicyOutputWithContext

func (i RecordFailoverRoutingPolicyArgs) ToRecordFailoverRoutingPolicyOutputWithContext(ctx context.Context) RecordFailoverRoutingPolicyOutput

type RecordFailoverRoutingPolicyArray

type RecordFailoverRoutingPolicyArray []RecordFailoverRoutingPolicyInput

func (RecordFailoverRoutingPolicyArray) ElementType

func (RecordFailoverRoutingPolicyArray) ToRecordFailoverRoutingPolicyArrayOutput

func (i RecordFailoverRoutingPolicyArray) ToRecordFailoverRoutingPolicyArrayOutput() RecordFailoverRoutingPolicyArrayOutput

func (RecordFailoverRoutingPolicyArray) ToRecordFailoverRoutingPolicyArrayOutputWithContext

func (i RecordFailoverRoutingPolicyArray) ToRecordFailoverRoutingPolicyArrayOutputWithContext(ctx context.Context) RecordFailoverRoutingPolicyArrayOutput

type RecordFailoverRoutingPolicyArrayInput

type RecordFailoverRoutingPolicyArrayInput interface {
	pulumi.Input

	ToRecordFailoverRoutingPolicyArrayOutput() RecordFailoverRoutingPolicyArrayOutput
	ToRecordFailoverRoutingPolicyArrayOutputWithContext(context.Context) RecordFailoverRoutingPolicyArrayOutput
}

RecordFailoverRoutingPolicyArrayInput is an input type that accepts RecordFailoverRoutingPolicyArray and RecordFailoverRoutingPolicyArrayOutput values. You can construct a concrete instance of `RecordFailoverRoutingPolicyArrayInput` via:

RecordFailoverRoutingPolicyArray{ RecordFailoverRoutingPolicyArgs{...} }

type RecordFailoverRoutingPolicyArrayOutput

type RecordFailoverRoutingPolicyArrayOutput struct{ *pulumi.OutputState }

func (RecordFailoverRoutingPolicyArrayOutput) ElementType

func (RecordFailoverRoutingPolicyArrayOutput) Index

func (RecordFailoverRoutingPolicyArrayOutput) ToRecordFailoverRoutingPolicyArrayOutput

func (o RecordFailoverRoutingPolicyArrayOutput) ToRecordFailoverRoutingPolicyArrayOutput() RecordFailoverRoutingPolicyArrayOutput

func (RecordFailoverRoutingPolicyArrayOutput) ToRecordFailoverRoutingPolicyArrayOutputWithContext

func (o RecordFailoverRoutingPolicyArrayOutput) ToRecordFailoverRoutingPolicyArrayOutputWithContext(ctx context.Context) RecordFailoverRoutingPolicyArrayOutput

type RecordFailoverRoutingPolicyInput

type RecordFailoverRoutingPolicyInput interface {
	pulumi.Input

	ToRecordFailoverRoutingPolicyOutput() RecordFailoverRoutingPolicyOutput
	ToRecordFailoverRoutingPolicyOutputWithContext(context.Context) RecordFailoverRoutingPolicyOutput
}

RecordFailoverRoutingPolicyInput is an input type that accepts RecordFailoverRoutingPolicyArgs and RecordFailoverRoutingPolicyOutput values. You can construct a concrete instance of `RecordFailoverRoutingPolicyInput` via:

RecordFailoverRoutingPolicyArgs{...}

type RecordFailoverRoutingPolicyOutput

type RecordFailoverRoutingPolicyOutput struct{ *pulumi.OutputState }

func (RecordFailoverRoutingPolicyOutput) ElementType

func (RecordFailoverRoutingPolicyOutput) ToRecordFailoverRoutingPolicyOutput

func (o RecordFailoverRoutingPolicyOutput) ToRecordFailoverRoutingPolicyOutput() RecordFailoverRoutingPolicyOutput

func (RecordFailoverRoutingPolicyOutput) ToRecordFailoverRoutingPolicyOutputWithContext

func (o RecordFailoverRoutingPolicyOutput) ToRecordFailoverRoutingPolicyOutputWithContext(ctx context.Context) RecordFailoverRoutingPolicyOutput

func (RecordFailoverRoutingPolicyOutput) Type

`PRIMARY` or `SECONDARY`. A `PRIMARY` record will be served if its healthcheck is passing, otherwise the `SECONDARY` will be served. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring-options.html#dns-failover-failover-rrsets

type RecordGeolocationRoutingPolicy

type RecordGeolocationRoutingPolicy struct {
	// A two-letter continent code. See http://docs.aws.amazon.com/Route53/latest/APIReference/API_GetGeoLocation.html for code details. Either `continent` or `country` must be specified.
	Continent *string `pulumi:"continent"`
	// A two-character country code or `*` to indicate a default resource record set.
	Country *string `pulumi:"country"`
	// A subdivision code for a country.
	Subdivision *string `pulumi:"subdivision"`
}

type RecordGeolocationRoutingPolicyArgs

type RecordGeolocationRoutingPolicyArgs struct {
	// A two-letter continent code. See http://docs.aws.amazon.com/Route53/latest/APIReference/API_GetGeoLocation.html for code details. Either `continent` or `country` must be specified.
	Continent pulumi.StringPtrInput `pulumi:"continent"`
	// A two-character country code or `*` to indicate a default resource record set.
	Country pulumi.StringPtrInput `pulumi:"country"`
	// A subdivision code for a country.
	Subdivision pulumi.StringPtrInput `pulumi:"subdivision"`
}

func (RecordGeolocationRoutingPolicyArgs) ElementType

func (RecordGeolocationRoutingPolicyArgs) ToRecordGeolocationRoutingPolicyOutput

func (i RecordGeolocationRoutingPolicyArgs) ToRecordGeolocationRoutingPolicyOutput() RecordGeolocationRoutingPolicyOutput

func (RecordGeolocationRoutingPolicyArgs) ToRecordGeolocationRoutingPolicyOutputWithContext

func (i RecordGeolocationRoutingPolicyArgs) ToRecordGeolocationRoutingPolicyOutputWithContext(ctx context.Context) RecordGeolocationRoutingPolicyOutput

type RecordGeolocationRoutingPolicyArray

type RecordGeolocationRoutingPolicyArray []RecordGeolocationRoutingPolicyInput

func (RecordGeolocationRoutingPolicyArray) ElementType

func (RecordGeolocationRoutingPolicyArray) ToRecordGeolocationRoutingPolicyArrayOutput

func (i RecordGeolocationRoutingPolicyArray) ToRecordGeolocationRoutingPolicyArrayOutput() RecordGeolocationRoutingPolicyArrayOutput

func (RecordGeolocationRoutingPolicyArray) ToRecordGeolocationRoutingPolicyArrayOutputWithContext

func (i RecordGeolocationRoutingPolicyArray) ToRecordGeolocationRoutingPolicyArrayOutputWithContext(ctx context.Context) RecordGeolocationRoutingPolicyArrayOutput

type RecordGeolocationRoutingPolicyArrayInput

type RecordGeolocationRoutingPolicyArrayInput interface {
	pulumi.Input

	ToRecordGeolocationRoutingPolicyArrayOutput() RecordGeolocationRoutingPolicyArrayOutput
	ToRecordGeolocationRoutingPolicyArrayOutputWithContext(context.Context) RecordGeolocationRoutingPolicyArrayOutput
}

RecordGeolocationRoutingPolicyArrayInput is an input type that accepts RecordGeolocationRoutingPolicyArray and RecordGeolocationRoutingPolicyArrayOutput values. You can construct a concrete instance of `RecordGeolocationRoutingPolicyArrayInput` via:

RecordGeolocationRoutingPolicyArray{ RecordGeolocationRoutingPolicyArgs{...} }

type RecordGeolocationRoutingPolicyArrayOutput

type RecordGeolocationRoutingPolicyArrayOutput struct{ *pulumi.OutputState }

func (RecordGeolocationRoutingPolicyArrayOutput) ElementType

func (RecordGeolocationRoutingPolicyArrayOutput) Index

func (RecordGeolocationRoutingPolicyArrayOutput) ToRecordGeolocationRoutingPolicyArrayOutput

func (o RecordGeolocationRoutingPolicyArrayOutput) ToRecordGeolocationRoutingPolicyArrayOutput() RecordGeolocationRoutingPolicyArrayOutput

func (RecordGeolocationRoutingPolicyArrayOutput) ToRecordGeolocationRoutingPolicyArrayOutputWithContext

func (o RecordGeolocationRoutingPolicyArrayOutput) ToRecordGeolocationRoutingPolicyArrayOutputWithContext(ctx context.Context) RecordGeolocationRoutingPolicyArrayOutput

type RecordGeolocationRoutingPolicyInput

type RecordGeolocationRoutingPolicyInput interface {
	pulumi.Input

	ToRecordGeolocationRoutingPolicyOutput() RecordGeolocationRoutingPolicyOutput
	ToRecordGeolocationRoutingPolicyOutputWithContext(context.Context) RecordGeolocationRoutingPolicyOutput
}

RecordGeolocationRoutingPolicyInput is an input type that accepts RecordGeolocationRoutingPolicyArgs and RecordGeolocationRoutingPolicyOutput values. You can construct a concrete instance of `RecordGeolocationRoutingPolicyInput` via:

RecordGeolocationRoutingPolicyArgs{...}

type RecordGeolocationRoutingPolicyOutput

type RecordGeolocationRoutingPolicyOutput struct{ *pulumi.OutputState }

func (RecordGeolocationRoutingPolicyOutput) Continent

A two-letter continent code. See http://docs.aws.amazon.com/Route53/latest/APIReference/API_GetGeoLocation.html for code details. Either `continent` or `country` must be specified.

func (RecordGeolocationRoutingPolicyOutput) Country

A two-character country code or `*` to indicate a default resource record set.

func (RecordGeolocationRoutingPolicyOutput) ElementType

func (RecordGeolocationRoutingPolicyOutput) Subdivision

A subdivision code for a country.

func (RecordGeolocationRoutingPolicyOutput) ToRecordGeolocationRoutingPolicyOutput

func (o RecordGeolocationRoutingPolicyOutput) ToRecordGeolocationRoutingPolicyOutput() RecordGeolocationRoutingPolicyOutput

func (RecordGeolocationRoutingPolicyOutput) ToRecordGeolocationRoutingPolicyOutputWithContext

func (o RecordGeolocationRoutingPolicyOutput) ToRecordGeolocationRoutingPolicyOutputWithContext(ctx context.Context) RecordGeolocationRoutingPolicyOutput

type RecordGeoproximityRoutingPolicy added in v6.23.0

type RecordGeoproximityRoutingPolicy struct {
	AwsRegion      *string                                     `pulumi:"awsRegion"`
	Bias           *int                                        `pulumi:"bias"`
	Coordinates    []RecordGeoproximityRoutingPolicyCoordinate `pulumi:"coordinates"`
	LocalZoneGroup *string                                     `pulumi:"localZoneGroup"`
}

type RecordGeoproximityRoutingPolicyArgs added in v6.23.0

type RecordGeoproximityRoutingPolicyArgs struct {
	AwsRegion      pulumi.StringPtrInput                               `pulumi:"awsRegion"`
	Bias           pulumi.IntPtrInput                                  `pulumi:"bias"`
	Coordinates    RecordGeoproximityRoutingPolicyCoordinateArrayInput `pulumi:"coordinates"`
	LocalZoneGroup pulumi.StringPtrInput                               `pulumi:"localZoneGroup"`
}

func (RecordGeoproximityRoutingPolicyArgs) ElementType added in v6.23.0

func (RecordGeoproximityRoutingPolicyArgs) ToRecordGeoproximityRoutingPolicyOutput added in v6.23.0

func (i RecordGeoproximityRoutingPolicyArgs) ToRecordGeoproximityRoutingPolicyOutput() RecordGeoproximityRoutingPolicyOutput

func (RecordGeoproximityRoutingPolicyArgs) ToRecordGeoproximityRoutingPolicyOutputWithContext added in v6.23.0

func (i RecordGeoproximityRoutingPolicyArgs) ToRecordGeoproximityRoutingPolicyOutputWithContext(ctx context.Context) RecordGeoproximityRoutingPolicyOutput

func (RecordGeoproximityRoutingPolicyArgs) ToRecordGeoproximityRoutingPolicyPtrOutput added in v6.23.0

func (i RecordGeoproximityRoutingPolicyArgs) ToRecordGeoproximityRoutingPolicyPtrOutput() RecordGeoproximityRoutingPolicyPtrOutput

func (RecordGeoproximityRoutingPolicyArgs) ToRecordGeoproximityRoutingPolicyPtrOutputWithContext added in v6.23.0

func (i RecordGeoproximityRoutingPolicyArgs) ToRecordGeoproximityRoutingPolicyPtrOutputWithContext(ctx context.Context) RecordGeoproximityRoutingPolicyPtrOutput

type RecordGeoproximityRoutingPolicyCoordinate added in v6.23.0

type RecordGeoproximityRoutingPolicyCoordinate struct {
	Latitude  string `pulumi:"latitude"`
	Longitude string `pulumi:"longitude"`
}

type RecordGeoproximityRoutingPolicyCoordinateArgs added in v6.23.0

type RecordGeoproximityRoutingPolicyCoordinateArgs struct {
	Latitude  pulumi.StringInput `pulumi:"latitude"`
	Longitude pulumi.StringInput `pulumi:"longitude"`
}

func (RecordGeoproximityRoutingPolicyCoordinateArgs) ElementType added in v6.23.0

func (RecordGeoproximityRoutingPolicyCoordinateArgs) ToRecordGeoproximityRoutingPolicyCoordinateOutput added in v6.23.0

func (i RecordGeoproximityRoutingPolicyCoordinateArgs) ToRecordGeoproximityRoutingPolicyCoordinateOutput() RecordGeoproximityRoutingPolicyCoordinateOutput

func (RecordGeoproximityRoutingPolicyCoordinateArgs) ToRecordGeoproximityRoutingPolicyCoordinateOutputWithContext added in v6.23.0

func (i RecordGeoproximityRoutingPolicyCoordinateArgs) ToRecordGeoproximityRoutingPolicyCoordinateOutputWithContext(ctx context.Context) RecordGeoproximityRoutingPolicyCoordinateOutput

type RecordGeoproximityRoutingPolicyCoordinateArray added in v6.23.0

type RecordGeoproximityRoutingPolicyCoordinateArray []RecordGeoproximityRoutingPolicyCoordinateInput

func (RecordGeoproximityRoutingPolicyCoordinateArray) ElementType added in v6.23.0

func (RecordGeoproximityRoutingPolicyCoordinateArray) ToRecordGeoproximityRoutingPolicyCoordinateArrayOutput added in v6.23.0

func (i RecordGeoproximityRoutingPolicyCoordinateArray) ToRecordGeoproximityRoutingPolicyCoordinateArrayOutput() RecordGeoproximityRoutingPolicyCoordinateArrayOutput

func (RecordGeoproximityRoutingPolicyCoordinateArray) ToRecordGeoproximityRoutingPolicyCoordinateArrayOutputWithContext added in v6.23.0

func (i RecordGeoproximityRoutingPolicyCoordinateArray) ToRecordGeoproximityRoutingPolicyCoordinateArrayOutputWithContext(ctx context.Context) RecordGeoproximityRoutingPolicyCoordinateArrayOutput

type RecordGeoproximityRoutingPolicyCoordinateArrayInput added in v6.23.0

type RecordGeoproximityRoutingPolicyCoordinateArrayInput interface {
	pulumi.Input

	ToRecordGeoproximityRoutingPolicyCoordinateArrayOutput() RecordGeoproximityRoutingPolicyCoordinateArrayOutput
	ToRecordGeoproximityRoutingPolicyCoordinateArrayOutputWithContext(context.Context) RecordGeoproximityRoutingPolicyCoordinateArrayOutput
}

RecordGeoproximityRoutingPolicyCoordinateArrayInput is an input type that accepts RecordGeoproximityRoutingPolicyCoordinateArray and RecordGeoproximityRoutingPolicyCoordinateArrayOutput values. You can construct a concrete instance of `RecordGeoproximityRoutingPolicyCoordinateArrayInput` via:

RecordGeoproximityRoutingPolicyCoordinateArray{ RecordGeoproximityRoutingPolicyCoordinateArgs{...} }

type RecordGeoproximityRoutingPolicyCoordinateArrayOutput added in v6.23.0

type RecordGeoproximityRoutingPolicyCoordinateArrayOutput struct{ *pulumi.OutputState }

func (RecordGeoproximityRoutingPolicyCoordinateArrayOutput) ElementType added in v6.23.0

func (RecordGeoproximityRoutingPolicyCoordinateArrayOutput) Index added in v6.23.0

func (RecordGeoproximityRoutingPolicyCoordinateArrayOutput) ToRecordGeoproximityRoutingPolicyCoordinateArrayOutput added in v6.23.0

func (RecordGeoproximityRoutingPolicyCoordinateArrayOutput) ToRecordGeoproximityRoutingPolicyCoordinateArrayOutputWithContext added in v6.23.0

func (o RecordGeoproximityRoutingPolicyCoordinateArrayOutput) ToRecordGeoproximityRoutingPolicyCoordinateArrayOutputWithContext(ctx context.Context) RecordGeoproximityRoutingPolicyCoordinateArrayOutput

type RecordGeoproximityRoutingPolicyCoordinateInput added in v6.23.0

type RecordGeoproximityRoutingPolicyCoordinateInput interface {
	pulumi.Input

	ToRecordGeoproximityRoutingPolicyCoordinateOutput() RecordGeoproximityRoutingPolicyCoordinateOutput
	ToRecordGeoproximityRoutingPolicyCoordinateOutputWithContext(context.Context) RecordGeoproximityRoutingPolicyCoordinateOutput
}

RecordGeoproximityRoutingPolicyCoordinateInput is an input type that accepts RecordGeoproximityRoutingPolicyCoordinateArgs and RecordGeoproximityRoutingPolicyCoordinateOutput values. You can construct a concrete instance of `RecordGeoproximityRoutingPolicyCoordinateInput` via:

RecordGeoproximityRoutingPolicyCoordinateArgs{...}

type RecordGeoproximityRoutingPolicyCoordinateOutput added in v6.23.0

type RecordGeoproximityRoutingPolicyCoordinateOutput struct{ *pulumi.OutputState }

func (RecordGeoproximityRoutingPolicyCoordinateOutput) ElementType added in v6.23.0

func (RecordGeoproximityRoutingPolicyCoordinateOutput) Latitude added in v6.23.0

func (RecordGeoproximityRoutingPolicyCoordinateOutput) Longitude added in v6.23.0

func (RecordGeoproximityRoutingPolicyCoordinateOutput) ToRecordGeoproximityRoutingPolicyCoordinateOutput added in v6.23.0

func (o RecordGeoproximityRoutingPolicyCoordinateOutput) ToRecordGeoproximityRoutingPolicyCoordinateOutput() RecordGeoproximityRoutingPolicyCoordinateOutput

func (RecordGeoproximityRoutingPolicyCoordinateOutput) ToRecordGeoproximityRoutingPolicyCoordinateOutputWithContext added in v6.23.0

func (o RecordGeoproximityRoutingPolicyCoordinateOutput) ToRecordGeoproximityRoutingPolicyCoordinateOutputWithContext(ctx context.Context) RecordGeoproximityRoutingPolicyCoordinateOutput

type RecordGeoproximityRoutingPolicyInput added in v6.23.0

type RecordGeoproximityRoutingPolicyInput interface {
	pulumi.Input

	ToRecordGeoproximityRoutingPolicyOutput() RecordGeoproximityRoutingPolicyOutput
	ToRecordGeoproximityRoutingPolicyOutputWithContext(context.Context) RecordGeoproximityRoutingPolicyOutput
}

RecordGeoproximityRoutingPolicyInput is an input type that accepts RecordGeoproximityRoutingPolicyArgs and RecordGeoproximityRoutingPolicyOutput values. You can construct a concrete instance of `RecordGeoproximityRoutingPolicyInput` via:

RecordGeoproximityRoutingPolicyArgs{...}

type RecordGeoproximityRoutingPolicyOutput added in v6.23.0

type RecordGeoproximityRoutingPolicyOutput struct{ *pulumi.OutputState }

func (RecordGeoproximityRoutingPolicyOutput) AwsRegion added in v6.23.0

func (RecordGeoproximityRoutingPolicyOutput) Bias added in v6.23.0

func (RecordGeoproximityRoutingPolicyOutput) Coordinates added in v6.23.0

func (RecordGeoproximityRoutingPolicyOutput) ElementType added in v6.23.0

func (RecordGeoproximityRoutingPolicyOutput) LocalZoneGroup added in v6.23.0

func (RecordGeoproximityRoutingPolicyOutput) ToRecordGeoproximityRoutingPolicyOutput added in v6.23.0

func (o RecordGeoproximityRoutingPolicyOutput) ToRecordGeoproximityRoutingPolicyOutput() RecordGeoproximityRoutingPolicyOutput

func (RecordGeoproximityRoutingPolicyOutput) ToRecordGeoproximityRoutingPolicyOutputWithContext added in v6.23.0

func (o RecordGeoproximityRoutingPolicyOutput) ToRecordGeoproximityRoutingPolicyOutputWithContext(ctx context.Context) RecordGeoproximityRoutingPolicyOutput

func (RecordGeoproximityRoutingPolicyOutput) ToRecordGeoproximityRoutingPolicyPtrOutput added in v6.23.0

func (o RecordGeoproximityRoutingPolicyOutput) ToRecordGeoproximityRoutingPolicyPtrOutput() RecordGeoproximityRoutingPolicyPtrOutput

func (RecordGeoproximityRoutingPolicyOutput) ToRecordGeoproximityRoutingPolicyPtrOutputWithContext added in v6.23.0

func (o RecordGeoproximityRoutingPolicyOutput) ToRecordGeoproximityRoutingPolicyPtrOutputWithContext(ctx context.Context) RecordGeoproximityRoutingPolicyPtrOutput

type RecordGeoproximityRoutingPolicyPtrInput added in v6.23.0

type RecordGeoproximityRoutingPolicyPtrInput interface {
	pulumi.Input

	ToRecordGeoproximityRoutingPolicyPtrOutput() RecordGeoproximityRoutingPolicyPtrOutput
	ToRecordGeoproximityRoutingPolicyPtrOutputWithContext(context.Context) RecordGeoproximityRoutingPolicyPtrOutput
}

RecordGeoproximityRoutingPolicyPtrInput is an input type that accepts RecordGeoproximityRoutingPolicyArgs, RecordGeoproximityRoutingPolicyPtr and RecordGeoproximityRoutingPolicyPtrOutput values. You can construct a concrete instance of `RecordGeoproximityRoutingPolicyPtrInput` via:

        RecordGeoproximityRoutingPolicyArgs{...}

or:

        nil

type RecordGeoproximityRoutingPolicyPtrOutput added in v6.23.0

type RecordGeoproximityRoutingPolicyPtrOutput struct{ *pulumi.OutputState }

func (RecordGeoproximityRoutingPolicyPtrOutput) AwsRegion added in v6.23.0

func (RecordGeoproximityRoutingPolicyPtrOutput) Bias added in v6.23.0

func (RecordGeoproximityRoutingPolicyPtrOutput) Coordinates added in v6.23.0

func (RecordGeoproximityRoutingPolicyPtrOutput) Elem added in v6.23.0

func (RecordGeoproximityRoutingPolicyPtrOutput) ElementType added in v6.23.0

func (RecordGeoproximityRoutingPolicyPtrOutput) LocalZoneGroup added in v6.23.0

func (RecordGeoproximityRoutingPolicyPtrOutput) ToRecordGeoproximityRoutingPolicyPtrOutput added in v6.23.0

func (o RecordGeoproximityRoutingPolicyPtrOutput) ToRecordGeoproximityRoutingPolicyPtrOutput() RecordGeoproximityRoutingPolicyPtrOutput

func (RecordGeoproximityRoutingPolicyPtrOutput) ToRecordGeoproximityRoutingPolicyPtrOutputWithContext added in v6.23.0

func (o RecordGeoproximityRoutingPolicyPtrOutput) ToRecordGeoproximityRoutingPolicyPtrOutputWithContext(ctx context.Context) RecordGeoproximityRoutingPolicyPtrOutput

type RecordInput

type RecordInput interface {
	pulumi.Input

	ToRecordOutput() RecordOutput
	ToRecordOutputWithContext(ctx context.Context) RecordOutput
}

type RecordLatencyRoutingPolicy

type RecordLatencyRoutingPolicy struct {
	// An AWS region from which to measure latency. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-latency
	Region string `pulumi:"region"`
}

type RecordLatencyRoutingPolicyArgs

type RecordLatencyRoutingPolicyArgs struct {
	// An AWS region from which to measure latency. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-latency
	Region pulumi.StringInput `pulumi:"region"`
}

func (RecordLatencyRoutingPolicyArgs) ElementType

func (RecordLatencyRoutingPolicyArgs) ToRecordLatencyRoutingPolicyOutput

func (i RecordLatencyRoutingPolicyArgs) ToRecordLatencyRoutingPolicyOutput() RecordLatencyRoutingPolicyOutput

func (RecordLatencyRoutingPolicyArgs) ToRecordLatencyRoutingPolicyOutputWithContext

func (i RecordLatencyRoutingPolicyArgs) ToRecordLatencyRoutingPolicyOutputWithContext(ctx context.Context) RecordLatencyRoutingPolicyOutput

type RecordLatencyRoutingPolicyArray

type RecordLatencyRoutingPolicyArray []RecordLatencyRoutingPolicyInput

func (RecordLatencyRoutingPolicyArray) ElementType

func (RecordLatencyRoutingPolicyArray) ToRecordLatencyRoutingPolicyArrayOutput

func (i RecordLatencyRoutingPolicyArray) ToRecordLatencyRoutingPolicyArrayOutput() RecordLatencyRoutingPolicyArrayOutput

func (RecordLatencyRoutingPolicyArray) ToRecordLatencyRoutingPolicyArrayOutputWithContext

func (i RecordLatencyRoutingPolicyArray) ToRecordLatencyRoutingPolicyArrayOutputWithContext(ctx context.Context) RecordLatencyRoutingPolicyArrayOutput

type RecordLatencyRoutingPolicyArrayInput

type RecordLatencyRoutingPolicyArrayInput interface {
	pulumi.Input

	ToRecordLatencyRoutingPolicyArrayOutput() RecordLatencyRoutingPolicyArrayOutput
	ToRecordLatencyRoutingPolicyArrayOutputWithContext(context.Context) RecordLatencyRoutingPolicyArrayOutput
}

RecordLatencyRoutingPolicyArrayInput is an input type that accepts RecordLatencyRoutingPolicyArray and RecordLatencyRoutingPolicyArrayOutput values. You can construct a concrete instance of `RecordLatencyRoutingPolicyArrayInput` via:

RecordLatencyRoutingPolicyArray{ RecordLatencyRoutingPolicyArgs{...} }

type RecordLatencyRoutingPolicyArrayOutput

type RecordLatencyRoutingPolicyArrayOutput struct{ *pulumi.OutputState }

func (RecordLatencyRoutingPolicyArrayOutput) ElementType

func (RecordLatencyRoutingPolicyArrayOutput) Index

func (RecordLatencyRoutingPolicyArrayOutput) ToRecordLatencyRoutingPolicyArrayOutput

func (o RecordLatencyRoutingPolicyArrayOutput) ToRecordLatencyRoutingPolicyArrayOutput() RecordLatencyRoutingPolicyArrayOutput

func (RecordLatencyRoutingPolicyArrayOutput) ToRecordLatencyRoutingPolicyArrayOutputWithContext

func (o RecordLatencyRoutingPolicyArrayOutput) ToRecordLatencyRoutingPolicyArrayOutputWithContext(ctx context.Context) RecordLatencyRoutingPolicyArrayOutput

type RecordLatencyRoutingPolicyInput

type RecordLatencyRoutingPolicyInput interface {
	pulumi.Input

	ToRecordLatencyRoutingPolicyOutput() RecordLatencyRoutingPolicyOutput
	ToRecordLatencyRoutingPolicyOutputWithContext(context.Context) RecordLatencyRoutingPolicyOutput
}

RecordLatencyRoutingPolicyInput is an input type that accepts RecordLatencyRoutingPolicyArgs and RecordLatencyRoutingPolicyOutput values. You can construct a concrete instance of `RecordLatencyRoutingPolicyInput` via:

RecordLatencyRoutingPolicyArgs{...}

type RecordLatencyRoutingPolicyOutput

type RecordLatencyRoutingPolicyOutput struct{ *pulumi.OutputState }

func (RecordLatencyRoutingPolicyOutput) ElementType

func (RecordLatencyRoutingPolicyOutput) Region

An AWS region from which to measure latency. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-latency

func (RecordLatencyRoutingPolicyOutput) ToRecordLatencyRoutingPolicyOutput

func (o RecordLatencyRoutingPolicyOutput) ToRecordLatencyRoutingPolicyOutput() RecordLatencyRoutingPolicyOutput

func (RecordLatencyRoutingPolicyOutput) ToRecordLatencyRoutingPolicyOutputWithContext

func (o RecordLatencyRoutingPolicyOutput) ToRecordLatencyRoutingPolicyOutputWithContext(ctx context.Context) RecordLatencyRoutingPolicyOutput

type RecordMap

type RecordMap map[string]RecordInput

func (RecordMap) ElementType

func (RecordMap) ElementType() reflect.Type

func (RecordMap) ToRecordMapOutput

func (i RecordMap) ToRecordMapOutput() RecordMapOutput

func (RecordMap) ToRecordMapOutputWithContext

func (i RecordMap) ToRecordMapOutputWithContext(ctx context.Context) RecordMapOutput

type RecordMapInput

type RecordMapInput interface {
	pulumi.Input

	ToRecordMapOutput() RecordMapOutput
	ToRecordMapOutputWithContext(context.Context) RecordMapOutput
}

RecordMapInput is an input type that accepts RecordMap and RecordMapOutput values. You can construct a concrete instance of `RecordMapInput` via:

RecordMap{ "key": RecordArgs{...} }

type RecordMapOutput

type RecordMapOutput struct{ *pulumi.OutputState }

func (RecordMapOutput) ElementType

func (RecordMapOutput) ElementType() reflect.Type

func (RecordMapOutput) MapIndex

func (RecordMapOutput) ToRecordMapOutput

func (o RecordMapOutput) ToRecordMapOutput() RecordMapOutput

func (RecordMapOutput) ToRecordMapOutputWithContext

func (o RecordMapOutput) ToRecordMapOutputWithContext(ctx context.Context) RecordMapOutput

type RecordOutput

type RecordOutput struct{ *pulumi.OutputState }

func (RecordOutput) Aliases

An alias block. Conflicts with `ttl` & `records`. Documented below.

func (RecordOutput) AllowOverwrite

func (o RecordOutput) AllowOverwrite() pulumi.BoolOutput

Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. `false` by default. This configuration is not recommended for most environments.

Exactly one of `records` or `alias` must be specified: this determines whether it's an alias record.

func (RecordOutput) CidrRoutingPolicy

func (o RecordOutput) CidrRoutingPolicy() RecordCidrRoutingPolicyPtrOutput

A block indicating a routing policy based on the IP network ranges of requestors. Conflicts with any other routing policy. Documented below.

func (RecordOutput) ElementType

func (RecordOutput) ElementType() reflect.Type

func (RecordOutput) FailoverRoutingPolicies

func (o RecordOutput) FailoverRoutingPolicies() RecordFailoverRoutingPolicyArrayOutput

A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.

func (RecordOutput) Fqdn

func (o RecordOutput) Fqdn() pulumi.StringOutput

[FQDN](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) built using the zone domain and `name`.

func (RecordOutput) GeolocationRoutingPolicies

func (o RecordOutput) GeolocationRoutingPolicies() RecordGeolocationRoutingPolicyArrayOutput

A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.

func (RecordOutput) GeoproximityRoutingPolicy added in v6.23.0

func (o RecordOutput) GeoproximityRoutingPolicy() RecordGeoproximityRoutingPolicyPtrOutput

A block indicating a routing policy based on the geoproximity of the requestor. Conflicts with any other routing policy. Documented below.

func (RecordOutput) HealthCheckId

func (o RecordOutput) HealthCheckId() pulumi.StringPtrOutput

The health check the record should be associated with.

func (RecordOutput) LatencyRoutingPolicies

func (o RecordOutput) LatencyRoutingPolicies() RecordLatencyRoutingPolicyArrayOutput

A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.

func (RecordOutput) MultivalueAnswerRoutingPolicy

func (o RecordOutput) MultivalueAnswerRoutingPolicy() pulumi.BoolPtrOutput

Set to `true` to indicate a multivalue answer routing policy. Conflicts with any other routing policy.

func (RecordOutput) Name

func (o RecordOutput) Name() pulumi.StringOutput

The name of the record.

func (RecordOutput) Records

A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add `\"\"` inside the provider configuration string (e.g., `"first255characters\"\"morecharacters"`).

func (RecordOutput) SetIdentifier

func (o RecordOutput) SetIdentifier() pulumi.StringPtrOutput

Unique identifier to differentiate records with routing policies from one another. Required if using `cidrRoutingPolicy`, `failoverRoutingPolicy`, `geolocationRoutingPolicy`,`geoproximityRoutingPolicy`, `latencyRoutingPolicy`, `multivalueAnswerRoutingPolicy`, or `weightedRoutingPolicy`.

func (RecordOutput) ToRecordOutput

func (o RecordOutput) ToRecordOutput() RecordOutput

func (RecordOutput) ToRecordOutputWithContext

func (o RecordOutput) ToRecordOutputWithContext(ctx context.Context) RecordOutput

func (RecordOutput) Ttl

The TTL of the record.

func (RecordOutput) Type

func (o RecordOutput) Type() pulumi.StringOutput

The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.

func (RecordOutput) WeightedRoutingPolicies

func (o RecordOutput) WeightedRoutingPolicies() RecordWeightedRoutingPolicyArrayOutput

A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.

func (RecordOutput) ZoneId

func (o RecordOutput) ZoneId() pulumi.StringOutput

The ID of the hosted zone to contain this record.

type RecordState

type RecordState struct {
	// An alias block. Conflicts with `ttl` & `records`.
	// Documented below.
	Aliases RecordAliasArrayInput
	// Allow creation of this record to overwrite an existing record, if any. This does not affect the ability to update the record using this provider and does not prevent other resources within this provider or manual Route 53 changes outside this provider from overwriting this record. `false` by default. This configuration is not recommended for most environments.
	//
	// Exactly one of `records` or `alias` must be specified: this determines whether it's an alias record.
	AllowOverwrite pulumi.BoolPtrInput
	// A block indicating a routing policy based on the IP network ranges of requestors. Conflicts with any other routing policy. Documented below.
	CidrRoutingPolicy RecordCidrRoutingPolicyPtrInput
	// A block indicating the routing behavior when associated health check fails. Conflicts with any other routing policy. Documented below.
	FailoverRoutingPolicies RecordFailoverRoutingPolicyArrayInput
	// [FQDN](https://en.wikipedia.org/wiki/Fully_qualified_domain_name) built using the zone domain and `name`.
	Fqdn pulumi.StringPtrInput
	// A block indicating a routing policy based on the geolocation of the requestor. Conflicts with any other routing policy. Documented below.
	GeolocationRoutingPolicies RecordGeolocationRoutingPolicyArrayInput
	// A block indicating a routing policy based on the geoproximity of the requestor. Conflicts with any other routing policy. Documented below.
	GeoproximityRoutingPolicy RecordGeoproximityRoutingPolicyPtrInput
	// The health check the record should be associated with.
	HealthCheckId pulumi.StringPtrInput
	// A block indicating a routing policy based on the latency between the requestor and an AWS region. Conflicts with any other routing policy. Documented below.
	LatencyRoutingPolicies RecordLatencyRoutingPolicyArrayInput
	// Set to `true` to indicate a multivalue answer routing policy. Conflicts with any other routing policy.
	MultivalueAnswerRoutingPolicy pulumi.BoolPtrInput
	// The name of the record.
	Name pulumi.StringPtrInput
	// A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add `\"\"` inside the provider configuration string (e.g., `"first255characters\"\"morecharacters"`).
	Records pulumi.StringArrayInput
	// Unique identifier to differentiate records with routing policies from one another. Required if using `cidrRoutingPolicy`, `failoverRoutingPolicy`, `geolocationRoutingPolicy`,`geoproximityRoutingPolicy`, `latencyRoutingPolicy`, `multivalueAnswerRoutingPolicy`, or `weightedRoutingPolicy`.
	SetIdentifier pulumi.StringPtrInput
	// The TTL of the record.
	Ttl pulumi.IntPtrInput
	// The record type. Valid values are `A`, `AAAA`, `CAA`, `CNAME`, `DS`, `MX`, `NAPTR`, `NS`, `PTR`, `SOA`, `SPF`, `SRV` and `TXT`.
	Type pulumi.StringPtrInput
	// A block indicating a weighted routing policy. Conflicts with any other routing policy. Documented below.
	WeightedRoutingPolicies RecordWeightedRoutingPolicyArrayInput
	// The ID of the hosted zone to contain this record.
	ZoneId pulumi.StringPtrInput
}

func (RecordState) ElementType

func (RecordState) ElementType() reflect.Type

type RecordType

type RecordType string

func (RecordType) ElementType

func (RecordType) ElementType() reflect.Type

func (RecordType) ToRecordTypeOutput

func (e RecordType) ToRecordTypeOutput() RecordTypeOutput

func (RecordType) ToRecordTypeOutputWithContext

func (e RecordType) ToRecordTypeOutputWithContext(ctx context.Context) RecordTypeOutput

func (RecordType) ToRecordTypePtrOutput

func (e RecordType) ToRecordTypePtrOutput() RecordTypePtrOutput

func (RecordType) ToRecordTypePtrOutputWithContext

func (e RecordType) ToRecordTypePtrOutputWithContext(ctx context.Context) RecordTypePtrOutput

func (RecordType) ToStringOutput

func (e RecordType) ToStringOutput() pulumi.StringOutput

func (RecordType) ToStringOutputWithContext

func (e RecordType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (RecordType) ToStringPtrOutput

func (e RecordType) ToStringPtrOutput() pulumi.StringPtrOutput

func (RecordType) ToStringPtrOutputWithContext

func (e RecordType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type RecordTypeInput

type RecordTypeInput interface {
	pulumi.Input

	ToRecordTypeOutput() RecordTypeOutput
	ToRecordTypeOutputWithContext(context.Context) RecordTypeOutput
}

RecordTypeInput is an input type that accepts values of the RecordType enum A concrete instance of `RecordTypeInput` can be one of the following:

RecordTypeA
RecordTypeAAAA
RecordTypeCNAME
RecordTypeCAA
RecordTypeMX
RecordTypeNAPTR
RecordTypeNS
RecordTypePTR
RecordTypeSOA
RecordTypeSPF
RecordTypeSRV
RecordTypeTXT

type RecordTypeOutput

type RecordTypeOutput struct{ *pulumi.OutputState }

func (RecordTypeOutput) ElementType

func (RecordTypeOutput) ElementType() reflect.Type

func (RecordTypeOutput) ToRecordTypeOutput

func (o RecordTypeOutput) ToRecordTypeOutput() RecordTypeOutput

func (RecordTypeOutput) ToRecordTypeOutputWithContext

func (o RecordTypeOutput) ToRecordTypeOutputWithContext(ctx context.Context) RecordTypeOutput

func (RecordTypeOutput) ToRecordTypePtrOutput

func (o RecordTypeOutput) ToRecordTypePtrOutput() RecordTypePtrOutput

func (RecordTypeOutput) ToRecordTypePtrOutputWithContext

func (o RecordTypeOutput) ToRecordTypePtrOutputWithContext(ctx context.Context) RecordTypePtrOutput

func (RecordTypeOutput) ToStringOutput

func (o RecordTypeOutput) ToStringOutput() pulumi.StringOutput

func (RecordTypeOutput) ToStringOutputWithContext

func (o RecordTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput

func (RecordTypeOutput) ToStringPtrOutput

func (o RecordTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (RecordTypeOutput) ToStringPtrOutputWithContext

func (o RecordTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type RecordTypePtrInput

type RecordTypePtrInput interface {
	pulumi.Input

	ToRecordTypePtrOutput() RecordTypePtrOutput
	ToRecordTypePtrOutputWithContext(context.Context) RecordTypePtrOutput
}

func RecordTypePtr

func RecordTypePtr(v string) RecordTypePtrInput

type RecordTypePtrOutput

type RecordTypePtrOutput struct{ *pulumi.OutputState }

func (RecordTypePtrOutput) Elem

func (RecordTypePtrOutput) ElementType

func (RecordTypePtrOutput) ElementType() reflect.Type

func (RecordTypePtrOutput) ToRecordTypePtrOutput

func (o RecordTypePtrOutput) ToRecordTypePtrOutput() RecordTypePtrOutput

func (RecordTypePtrOutput) ToRecordTypePtrOutputWithContext

func (o RecordTypePtrOutput) ToRecordTypePtrOutputWithContext(ctx context.Context) RecordTypePtrOutput

func (RecordTypePtrOutput) ToStringPtrOutput

func (o RecordTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput

func (RecordTypePtrOutput) ToStringPtrOutputWithContext

func (o RecordTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput

type RecordWeightedRoutingPolicy

type RecordWeightedRoutingPolicy struct {
	// A numeric value indicating the relative weight of the record. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-weighted.
	Weight int `pulumi:"weight"`
}

type RecordWeightedRoutingPolicyArgs

type RecordWeightedRoutingPolicyArgs struct {
	// A numeric value indicating the relative weight of the record. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-weighted.
	Weight pulumi.IntInput `pulumi:"weight"`
}

func (RecordWeightedRoutingPolicyArgs) ElementType

func (RecordWeightedRoutingPolicyArgs) ToRecordWeightedRoutingPolicyOutput

func (i RecordWeightedRoutingPolicyArgs) ToRecordWeightedRoutingPolicyOutput() RecordWeightedRoutingPolicyOutput

func (RecordWeightedRoutingPolicyArgs) ToRecordWeightedRoutingPolicyOutputWithContext

func (i RecordWeightedRoutingPolicyArgs) ToRecordWeightedRoutingPolicyOutputWithContext(ctx context.Context) RecordWeightedRoutingPolicyOutput

type RecordWeightedRoutingPolicyArray

type RecordWeightedRoutingPolicyArray []RecordWeightedRoutingPolicyInput

func (RecordWeightedRoutingPolicyArray) ElementType

func (RecordWeightedRoutingPolicyArray) ToRecordWeightedRoutingPolicyArrayOutput

func (i RecordWeightedRoutingPolicyArray) ToRecordWeightedRoutingPolicyArrayOutput() RecordWeightedRoutingPolicyArrayOutput

func (RecordWeightedRoutingPolicyArray) ToRecordWeightedRoutingPolicyArrayOutputWithContext

func (i RecordWeightedRoutingPolicyArray) ToRecordWeightedRoutingPolicyArrayOutputWithContext(ctx context.Context) RecordWeightedRoutingPolicyArrayOutput

type RecordWeightedRoutingPolicyArrayInput

type RecordWeightedRoutingPolicyArrayInput interface {
	pulumi.Input

	ToRecordWeightedRoutingPolicyArrayOutput() RecordWeightedRoutingPolicyArrayOutput
	ToRecordWeightedRoutingPolicyArrayOutputWithContext(context.Context) RecordWeightedRoutingPolicyArrayOutput
}

RecordWeightedRoutingPolicyArrayInput is an input type that accepts RecordWeightedRoutingPolicyArray and RecordWeightedRoutingPolicyArrayOutput values. You can construct a concrete instance of `RecordWeightedRoutingPolicyArrayInput` via:

RecordWeightedRoutingPolicyArray{ RecordWeightedRoutingPolicyArgs{...} }

type RecordWeightedRoutingPolicyArrayOutput

type RecordWeightedRoutingPolicyArrayOutput struct{ *pulumi.OutputState }

func (RecordWeightedRoutingPolicyArrayOutput) ElementType

func (RecordWeightedRoutingPolicyArrayOutput) Index

func (RecordWeightedRoutingPolicyArrayOutput) ToRecordWeightedRoutingPolicyArrayOutput

func (o RecordWeightedRoutingPolicyArrayOutput) ToRecordWeightedRoutingPolicyArrayOutput() RecordWeightedRoutingPolicyArrayOutput

func (RecordWeightedRoutingPolicyArrayOutput) ToRecordWeightedRoutingPolicyArrayOutputWithContext

func (o RecordWeightedRoutingPolicyArrayOutput) ToRecordWeightedRoutingPolicyArrayOutputWithContext(ctx context.Context) RecordWeightedRoutingPolicyArrayOutput

type RecordWeightedRoutingPolicyInput

type RecordWeightedRoutingPolicyInput interface {
	pulumi.Input

	ToRecordWeightedRoutingPolicyOutput() RecordWeightedRoutingPolicyOutput
	ToRecordWeightedRoutingPolicyOutputWithContext(context.Context) RecordWeightedRoutingPolicyOutput
}

RecordWeightedRoutingPolicyInput is an input type that accepts RecordWeightedRoutingPolicyArgs and RecordWeightedRoutingPolicyOutput values. You can construct a concrete instance of `RecordWeightedRoutingPolicyInput` via:

RecordWeightedRoutingPolicyArgs{...}

type RecordWeightedRoutingPolicyOutput

type RecordWeightedRoutingPolicyOutput struct{ *pulumi.OutputState }

func (RecordWeightedRoutingPolicyOutput) ElementType

func (RecordWeightedRoutingPolicyOutput) ToRecordWeightedRoutingPolicyOutput

func (o RecordWeightedRoutingPolicyOutput) ToRecordWeightedRoutingPolicyOutput() RecordWeightedRoutingPolicyOutput

func (RecordWeightedRoutingPolicyOutput) ToRecordWeightedRoutingPolicyOutputWithContext

func (o RecordWeightedRoutingPolicyOutput) ToRecordWeightedRoutingPolicyOutputWithContext(ctx context.Context) RecordWeightedRoutingPolicyOutput

func (RecordWeightedRoutingPolicyOutput) Weight

A numeric value indicating the relative weight of the record. See http://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-policy.html#routing-policy-weighted.

type ResolverConfig

type ResolverConfig struct {
	pulumi.CustomResourceState

	// Indicates whether or not the Resolver will create autodefined rules for reverse DNS lookups. Valid values: `ENABLE`, `DISABLE`.
	AutodefinedReverseFlag pulumi.StringOutput `pulumi:"autodefinedReverseFlag"`
	// The AWS account ID of the owner of the VPC that this resolver configuration applies to.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// The ID of the VPC that the configuration is for.
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
}

Provides a Route 53 Resolver config resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ec2.NewVpc(ctx, "example", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.0.0.0/16"),
			EnableDnsSupport:   pulumi.Bool(true),
			EnableDnsHostnames: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewResolverConfig(ctx, "example", &route53.ResolverConfigArgs{
			ResourceId:             example.ID(),
			AutodefinedReverseFlag: pulumi.String("DISABLE"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver configs using the Route 53 Resolver config ID. For example:

```sh $ pulumi import aws:route53/resolverConfig:ResolverConfig example rslvr-rc-715aa20c73a23da7 ```

func GetResolverConfig

func GetResolverConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverConfigState, opts ...pulumi.ResourceOption) (*ResolverConfig, error)

GetResolverConfig gets an existing ResolverConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverConfig

func NewResolverConfig(ctx *pulumi.Context,
	name string, args *ResolverConfigArgs, opts ...pulumi.ResourceOption) (*ResolverConfig, error)

NewResolverConfig registers a new resource with the given unique name, arguments, and options.

func (*ResolverConfig) ElementType

func (*ResolverConfig) ElementType() reflect.Type

func (*ResolverConfig) ToResolverConfigOutput

func (i *ResolverConfig) ToResolverConfigOutput() ResolverConfigOutput

func (*ResolverConfig) ToResolverConfigOutputWithContext

func (i *ResolverConfig) ToResolverConfigOutputWithContext(ctx context.Context) ResolverConfigOutput

type ResolverConfigArgs

type ResolverConfigArgs struct {
	// Indicates whether or not the Resolver will create autodefined rules for reverse DNS lookups. Valid values: `ENABLE`, `DISABLE`.
	AutodefinedReverseFlag pulumi.StringInput
	// The ID of the VPC that the configuration is for.
	ResourceId pulumi.StringInput
}

The set of arguments for constructing a ResolverConfig resource.

func (ResolverConfigArgs) ElementType

func (ResolverConfigArgs) ElementType() reflect.Type

type ResolverConfigArray

type ResolverConfigArray []ResolverConfigInput

func (ResolverConfigArray) ElementType

func (ResolverConfigArray) ElementType() reflect.Type

func (ResolverConfigArray) ToResolverConfigArrayOutput

func (i ResolverConfigArray) ToResolverConfigArrayOutput() ResolverConfigArrayOutput

func (ResolverConfigArray) ToResolverConfigArrayOutputWithContext

func (i ResolverConfigArray) ToResolverConfigArrayOutputWithContext(ctx context.Context) ResolverConfigArrayOutput

type ResolverConfigArrayInput

type ResolverConfigArrayInput interface {
	pulumi.Input

	ToResolverConfigArrayOutput() ResolverConfigArrayOutput
	ToResolverConfigArrayOutputWithContext(context.Context) ResolverConfigArrayOutput
}

ResolverConfigArrayInput is an input type that accepts ResolverConfigArray and ResolverConfigArrayOutput values. You can construct a concrete instance of `ResolverConfigArrayInput` via:

ResolverConfigArray{ ResolverConfigArgs{...} }

type ResolverConfigArrayOutput

type ResolverConfigArrayOutput struct{ *pulumi.OutputState }

func (ResolverConfigArrayOutput) ElementType

func (ResolverConfigArrayOutput) ElementType() reflect.Type

func (ResolverConfigArrayOutput) Index

func (ResolverConfigArrayOutput) ToResolverConfigArrayOutput

func (o ResolverConfigArrayOutput) ToResolverConfigArrayOutput() ResolverConfigArrayOutput

func (ResolverConfigArrayOutput) ToResolverConfigArrayOutputWithContext

func (o ResolverConfigArrayOutput) ToResolverConfigArrayOutputWithContext(ctx context.Context) ResolverConfigArrayOutput

type ResolverConfigInput

type ResolverConfigInput interface {
	pulumi.Input

	ToResolverConfigOutput() ResolverConfigOutput
	ToResolverConfigOutputWithContext(ctx context.Context) ResolverConfigOutput
}

type ResolverConfigMap

type ResolverConfigMap map[string]ResolverConfigInput

func (ResolverConfigMap) ElementType

func (ResolverConfigMap) ElementType() reflect.Type

func (ResolverConfigMap) ToResolverConfigMapOutput

func (i ResolverConfigMap) ToResolverConfigMapOutput() ResolverConfigMapOutput

func (ResolverConfigMap) ToResolverConfigMapOutputWithContext

func (i ResolverConfigMap) ToResolverConfigMapOutputWithContext(ctx context.Context) ResolverConfigMapOutput

type ResolverConfigMapInput

type ResolverConfigMapInput interface {
	pulumi.Input

	ToResolverConfigMapOutput() ResolverConfigMapOutput
	ToResolverConfigMapOutputWithContext(context.Context) ResolverConfigMapOutput
}

ResolverConfigMapInput is an input type that accepts ResolverConfigMap and ResolverConfigMapOutput values. You can construct a concrete instance of `ResolverConfigMapInput` via:

ResolverConfigMap{ "key": ResolverConfigArgs{...} }

type ResolverConfigMapOutput

type ResolverConfigMapOutput struct{ *pulumi.OutputState }

func (ResolverConfigMapOutput) ElementType

func (ResolverConfigMapOutput) ElementType() reflect.Type

func (ResolverConfigMapOutput) MapIndex

func (ResolverConfigMapOutput) ToResolverConfigMapOutput

func (o ResolverConfigMapOutput) ToResolverConfigMapOutput() ResolverConfigMapOutput

func (ResolverConfigMapOutput) ToResolverConfigMapOutputWithContext

func (o ResolverConfigMapOutput) ToResolverConfigMapOutputWithContext(ctx context.Context) ResolverConfigMapOutput

type ResolverConfigOutput

type ResolverConfigOutput struct{ *pulumi.OutputState }

func (ResolverConfigOutput) AutodefinedReverseFlag

func (o ResolverConfigOutput) AutodefinedReverseFlag() pulumi.StringOutput

Indicates whether or not the Resolver will create autodefined rules for reverse DNS lookups. Valid values: `ENABLE`, `DISABLE`.

func (ResolverConfigOutput) ElementType

func (ResolverConfigOutput) ElementType() reflect.Type

func (ResolverConfigOutput) OwnerId

The AWS account ID of the owner of the VPC that this resolver configuration applies to.

func (ResolverConfigOutput) ResourceId

func (o ResolverConfigOutput) ResourceId() pulumi.StringOutput

The ID of the VPC that the configuration is for.

func (ResolverConfigOutput) ToResolverConfigOutput

func (o ResolverConfigOutput) ToResolverConfigOutput() ResolverConfigOutput

func (ResolverConfigOutput) ToResolverConfigOutputWithContext

func (o ResolverConfigOutput) ToResolverConfigOutputWithContext(ctx context.Context) ResolverConfigOutput

type ResolverConfigState

type ResolverConfigState struct {
	// Indicates whether or not the Resolver will create autodefined rules for reverse DNS lookups. Valid values: `ENABLE`, `DISABLE`.
	AutodefinedReverseFlag pulumi.StringPtrInput
	// The AWS account ID of the owner of the VPC that this resolver configuration applies to.
	OwnerId pulumi.StringPtrInput
	// The ID of the VPC that the configuration is for.
	ResourceId pulumi.StringPtrInput
}

func (ResolverConfigState) ElementType

func (ResolverConfigState) ElementType() reflect.Type

type ResolverDnsSecConfig

type ResolverDnsSecConfig struct {
	pulumi.CustomResourceState

	// The ARN for a configuration for DNSSEC validation.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The owner account ID of the virtual private cloud (VPC) for a configuration for DNSSEC validation.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for.
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
	// The validation status for a DNSSEC configuration. The status can be one of the following: `ENABLING`, `ENABLED`, `DISABLING` and `DISABLED`.
	ValidationStatus pulumi.StringOutput `pulumi:"validationStatus"`
}

Provides a Route 53 Resolver DNSSEC config resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ec2.NewVpc(ctx, "example", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.0.0.0/16"),
			EnableDnsSupport:   pulumi.Bool(true),
			EnableDnsHostnames: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewResolverDnsSecConfig(ctx, "example", &route53.ResolverDnsSecConfigArgs{
			ResourceId: example.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver DNSSEC configs using the Route 53 Resolver DNSSEC config ID. For example:

```sh $ pulumi import aws:route53/resolverDnsSecConfig:ResolverDnsSecConfig example rdsc-be1866ecc1683e95 ```

func GetResolverDnsSecConfig

func GetResolverDnsSecConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverDnsSecConfigState, opts ...pulumi.ResourceOption) (*ResolverDnsSecConfig, error)

GetResolverDnsSecConfig gets an existing ResolverDnsSecConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverDnsSecConfig

func NewResolverDnsSecConfig(ctx *pulumi.Context,
	name string, args *ResolverDnsSecConfigArgs, opts ...pulumi.ResourceOption) (*ResolverDnsSecConfig, error)

NewResolverDnsSecConfig registers a new resource with the given unique name, arguments, and options.

func (*ResolverDnsSecConfig) ElementType

func (*ResolverDnsSecConfig) ElementType() reflect.Type

func (*ResolverDnsSecConfig) ToResolverDnsSecConfigOutput

func (i *ResolverDnsSecConfig) ToResolverDnsSecConfigOutput() ResolverDnsSecConfigOutput

func (*ResolverDnsSecConfig) ToResolverDnsSecConfigOutputWithContext

func (i *ResolverDnsSecConfig) ToResolverDnsSecConfigOutputWithContext(ctx context.Context) ResolverDnsSecConfigOutput

type ResolverDnsSecConfigArgs

type ResolverDnsSecConfigArgs struct {
	// The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for.
	ResourceId pulumi.StringInput
}

The set of arguments for constructing a ResolverDnsSecConfig resource.

func (ResolverDnsSecConfigArgs) ElementType

func (ResolverDnsSecConfigArgs) ElementType() reflect.Type

type ResolverDnsSecConfigArray

type ResolverDnsSecConfigArray []ResolverDnsSecConfigInput

func (ResolverDnsSecConfigArray) ElementType

func (ResolverDnsSecConfigArray) ElementType() reflect.Type

func (ResolverDnsSecConfigArray) ToResolverDnsSecConfigArrayOutput

func (i ResolverDnsSecConfigArray) ToResolverDnsSecConfigArrayOutput() ResolverDnsSecConfigArrayOutput

func (ResolverDnsSecConfigArray) ToResolverDnsSecConfigArrayOutputWithContext

func (i ResolverDnsSecConfigArray) ToResolverDnsSecConfigArrayOutputWithContext(ctx context.Context) ResolverDnsSecConfigArrayOutput

type ResolverDnsSecConfigArrayInput

type ResolverDnsSecConfigArrayInput interface {
	pulumi.Input

	ToResolverDnsSecConfigArrayOutput() ResolverDnsSecConfigArrayOutput
	ToResolverDnsSecConfigArrayOutputWithContext(context.Context) ResolverDnsSecConfigArrayOutput
}

ResolverDnsSecConfigArrayInput is an input type that accepts ResolverDnsSecConfigArray and ResolverDnsSecConfigArrayOutput values. You can construct a concrete instance of `ResolverDnsSecConfigArrayInput` via:

ResolverDnsSecConfigArray{ ResolverDnsSecConfigArgs{...} }

type ResolverDnsSecConfigArrayOutput

type ResolverDnsSecConfigArrayOutput struct{ *pulumi.OutputState }

func (ResolverDnsSecConfigArrayOutput) ElementType

func (ResolverDnsSecConfigArrayOutput) Index

func (ResolverDnsSecConfigArrayOutput) ToResolverDnsSecConfigArrayOutput

func (o ResolverDnsSecConfigArrayOutput) ToResolverDnsSecConfigArrayOutput() ResolverDnsSecConfigArrayOutput

func (ResolverDnsSecConfigArrayOutput) ToResolverDnsSecConfigArrayOutputWithContext

func (o ResolverDnsSecConfigArrayOutput) ToResolverDnsSecConfigArrayOutputWithContext(ctx context.Context) ResolverDnsSecConfigArrayOutput

type ResolverDnsSecConfigInput

type ResolverDnsSecConfigInput interface {
	pulumi.Input

	ToResolverDnsSecConfigOutput() ResolverDnsSecConfigOutput
	ToResolverDnsSecConfigOutputWithContext(ctx context.Context) ResolverDnsSecConfigOutput
}

type ResolverDnsSecConfigMap

type ResolverDnsSecConfigMap map[string]ResolverDnsSecConfigInput

func (ResolverDnsSecConfigMap) ElementType

func (ResolverDnsSecConfigMap) ElementType() reflect.Type

func (ResolverDnsSecConfigMap) ToResolverDnsSecConfigMapOutput

func (i ResolverDnsSecConfigMap) ToResolverDnsSecConfigMapOutput() ResolverDnsSecConfigMapOutput

func (ResolverDnsSecConfigMap) ToResolverDnsSecConfigMapOutputWithContext

func (i ResolverDnsSecConfigMap) ToResolverDnsSecConfigMapOutputWithContext(ctx context.Context) ResolverDnsSecConfigMapOutput

type ResolverDnsSecConfigMapInput

type ResolverDnsSecConfigMapInput interface {
	pulumi.Input

	ToResolverDnsSecConfigMapOutput() ResolverDnsSecConfigMapOutput
	ToResolverDnsSecConfigMapOutputWithContext(context.Context) ResolverDnsSecConfigMapOutput
}

ResolverDnsSecConfigMapInput is an input type that accepts ResolverDnsSecConfigMap and ResolverDnsSecConfigMapOutput values. You can construct a concrete instance of `ResolverDnsSecConfigMapInput` via:

ResolverDnsSecConfigMap{ "key": ResolverDnsSecConfigArgs{...} }

type ResolverDnsSecConfigMapOutput

type ResolverDnsSecConfigMapOutput struct{ *pulumi.OutputState }

func (ResolverDnsSecConfigMapOutput) ElementType

func (ResolverDnsSecConfigMapOutput) MapIndex

func (ResolverDnsSecConfigMapOutput) ToResolverDnsSecConfigMapOutput

func (o ResolverDnsSecConfigMapOutput) ToResolverDnsSecConfigMapOutput() ResolverDnsSecConfigMapOutput

func (ResolverDnsSecConfigMapOutput) ToResolverDnsSecConfigMapOutputWithContext

func (o ResolverDnsSecConfigMapOutput) ToResolverDnsSecConfigMapOutputWithContext(ctx context.Context) ResolverDnsSecConfigMapOutput

type ResolverDnsSecConfigOutput

type ResolverDnsSecConfigOutput struct{ *pulumi.OutputState }

func (ResolverDnsSecConfigOutput) Arn

The ARN for a configuration for DNSSEC validation.

func (ResolverDnsSecConfigOutput) ElementType

func (ResolverDnsSecConfigOutput) ElementType() reflect.Type

func (ResolverDnsSecConfigOutput) OwnerId

The owner account ID of the virtual private cloud (VPC) for a configuration for DNSSEC validation.

func (ResolverDnsSecConfigOutput) ResourceId

The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for.

func (ResolverDnsSecConfigOutput) ToResolverDnsSecConfigOutput

func (o ResolverDnsSecConfigOutput) ToResolverDnsSecConfigOutput() ResolverDnsSecConfigOutput

func (ResolverDnsSecConfigOutput) ToResolverDnsSecConfigOutputWithContext

func (o ResolverDnsSecConfigOutput) ToResolverDnsSecConfigOutputWithContext(ctx context.Context) ResolverDnsSecConfigOutput

func (ResolverDnsSecConfigOutput) ValidationStatus

func (o ResolverDnsSecConfigOutput) ValidationStatus() pulumi.StringOutput

The validation status for a DNSSEC configuration. The status can be one of the following: `ENABLING`, `ENABLED`, `DISABLING` and `DISABLED`.

type ResolverDnsSecConfigState

type ResolverDnsSecConfigState struct {
	// The ARN for a configuration for DNSSEC validation.
	Arn pulumi.StringPtrInput
	// The owner account ID of the virtual private cloud (VPC) for a configuration for DNSSEC validation.
	OwnerId pulumi.StringPtrInput
	// The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for.
	ResourceId pulumi.StringPtrInput
	// The validation status for a DNSSEC configuration. The status can be one of the following: `ENABLING`, `ENABLED`, `DISABLING` and `DISABLED`.
	ValidationStatus pulumi.StringPtrInput
}

func (ResolverDnsSecConfigState) ElementType

func (ResolverDnsSecConfigState) ElementType() reflect.Type

type ResolverEndpoint

type ResolverEndpoint struct {
	pulumi.CustomResourceState

	// The ARN of the Route 53 Resolver endpoint.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The direction of DNS queries to or from the Route 53 Resolver endpoint.
	// Valid values are `INBOUND` (resolver forwards DNS queries to the DNS service for a VPC from your network or another VPC)
	// or `OUTBOUND` (resolver forwards DNS queries from the DNS service for a VPC to your network or another VPC).
	Direction pulumi.StringOutput `pulumi:"direction"`
	// The ID of the VPC that you want to create the resolver endpoint in.
	HostVpcId pulumi.StringOutput `pulumi:"hostVpcId"`
	// The subnets and IP addresses in your VPC that you want DNS queries to pass through on the way from your VPCs
	// to your network (for outbound endpoints) or on the way from your network to your VPCs (for inbound endpoints). Described below.
	IpAddresses ResolverEndpointIpAddressArrayOutput `pulumi:"ipAddresses"`
	// The friendly name of the Route 53 Resolver endpoint.
	Name pulumi.StringOutput `pulumi:"name"`
	// The protocols you want to use for the Route 53 Resolver endpoint. Valid values: `DoH`, `Do53`, `DoH-FIPS`.
	Protocols pulumi.StringArrayOutput `pulumi:"protocols"`
	// The Route 53 Resolver endpoint IP address type. Valid values: `IPV4`, `IPV6`, `DUALSTACK`.
	ResolverEndpointType pulumi.StringOutput `pulumi:"resolverEndpointType"`
	// The ID of one or more security groups that you want to use to control access to this VPC.
	SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a Route 53 Resolver endpoint resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewResolverEndpoint(ctx, "foo", &route53.ResolverEndpointArgs{
			Name:      pulumi.String("foo"),
			Direction: pulumi.String("INBOUND"),
			SecurityGroupIds: pulumi.StringArray{
				sg1.Id,
				sg2.Id,
			},
			IpAddresses: route53.ResolverEndpointIpAddressArray{
				&route53.ResolverEndpointIpAddressArgs{
					SubnetId: pulumi.Any(sn1.Id),
				},
				&route53.ResolverEndpointIpAddressArgs{
					SubnetId: pulumi.Any(sn2.Id),
					Ip:       pulumi.String("10.0.64.4"),
				},
			},
			Protocols: pulumi.StringArray{
				pulumi.String("Do53"),
				pulumi.String("DoH"),
			},
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("Prod"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver endpoints using the Route 53 Resolver endpoint ID. For example:

```sh $ pulumi import aws:route53/resolverEndpoint:ResolverEndpoint foo rslvr-in-abcdef01234567890 ```

func GetResolverEndpoint

func GetResolverEndpoint(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverEndpointState, opts ...pulumi.ResourceOption) (*ResolverEndpoint, error)

GetResolverEndpoint gets an existing ResolverEndpoint resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverEndpoint

func NewResolverEndpoint(ctx *pulumi.Context,
	name string, args *ResolverEndpointArgs, opts ...pulumi.ResourceOption) (*ResolverEndpoint, error)

NewResolverEndpoint registers a new resource with the given unique name, arguments, and options.

func (*ResolverEndpoint) ElementType

func (*ResolverEndpoint) ElementType() reflect.Type

func (*ResolverEndpoint) ToResolverEndpointOutput

func (i *ResolverEndpoint) ToResolverEndpointOutput() ResolverEndpointOutput

func (*ResolverEndpoint) ToResolverEndpointOutputWithContext

func (i *ResolverEndpoint) ToResolverEndpointOutputWithContext(ctx context.Context) ResolverEndpointOutput

type ResolverEndpointArgs

type ResolverEndpointArgs struct {
	// The direction of DNS queries to or from the Route 53 Resolver endpoint.
	// Valid values are `INBOUND` (resolver forwards DNS queries to the DNS service for a VPC from your network or another VPC)
	// or `OUTBOUND` (resolver forwards DNS queries from the DNS service for a VPC to your network or another VPC).
	Direction pulumi.StringInput
	// The subnets and IP addresses in your VPC that you want DNS queries to pass through on the way from your VPCs
	// to your network (for outbound endpoints) or on the way from your network to your VPCs (for inbound endpoints). Described below.
	IpAddresses ResolverEndpointIpAddressArrayInput
	// The friendly name of the Route 53 Resolver endpoint.
	Name pulumi.StringPtrInput
	// The protocols you want to use for the Route 53 Resolver endpoint. Valid values: `DoH`, `Do53`, `DoH-FIPS`.
	Protocols pulumi.StringArrayInput
	// The Route 53 Resolver endpoint IP address type. Valid values: `IPV4`, `IPV6`, `DUALSTACK`.
	ResolverEndpointType pulumi.StringPtrInput
	// The ID of one or more security groups that you want to use to control access to this VPC.
	SecurityGroupIds pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ResolverEndpoint resource.

func (ResolverEndpointArgs) ElementType

func (ResolverEndpointArgs) ElementType() reflect.Type

type ResolverEndpointArray

type ResolverEndpointArray []ResolverEndpointInput

func (ResolverEndpointArray) ElementType

func (ResolverEndpointArray) ElementType() reflect.Type

func (ResolverEndpointArray) ToResolverEndpointArrayOutput

func (i ResolverEndpointArray) ToResolverEndpointArrayOutput() ResolverEndpointArrayOutput

func (ResolverEndpointArray) ToResolverEndpointArrayOutputWithContext

func (i ResolverEndpointArray) ToResolverEndpointArrayOutputWithContext(ctx context.Context) ResolverEndpointArrayOutput

type ResolverEndpointArrayInput

type ResolverEndpointArrayInput interface {
	pulumi.Input

	ToResolverEndpointArrayOutput() ResolverEndpointArrayOutput
	ToResolverEndpointArrayOutputWithContext(context.Context) ResolverEndpointArrayOutput
}

ResolverEndpointArrayInput is an input type that accepts ResolverEndpointArray and ResolverEndpointArrayOutput values. You can construct a concrete instance of `ResolverEndpointArrayInput` via:

ResolverEndpointArray{ ResolverEndpointArgs{...} }

type ResolverEndpointArrayOutput

type ResolverEndpointArrayOutput struct{ *pulumi.OutputState }

func (ResolverEndpointArrayOutput) ElementType

func (ResolverEndpointArrayOutput) Index

func (ResolverEndpointArrayOutput) ToResolverEndpointArrayOutput

func (o ResolverEndpointArrayOutput) ToResolverEndpointArrayOutput() ResolverEndpointArrayOutput

func (ResolverEndpointArrayOutput) ToResolverEndpointArrayOutputWithContext

func (o ResolverEndpointArrayOutput) ToResolverEndpointArrayOutputWithContext(ctx context.Context) ResolverEndpointArrayOutput

type ResolverEndpointInput

type ResolverEndpointInput interface {
	pulumi.Input

	ToResolverEndpointOutput() ResolverEndpointOutput
	ToResolverEndpointOutputWithContext(ctx context.Context) ResolverEndpointOutput
}

type ResolverEndpointIpAddress

type ResolverEndpointIpAddress struct {
	// The IP address in the subnet that you want to use for DNS queries.
	Ip   *string `pulumi:"ip"`
	IpId *string `pulumi:"ipId"`
	// The ID of the subnet that contains the IP address.
	SubnetId string `pulumi:"subnetId"`
}

type ResolverEndpointIpAddressArgs

type ResolverEndpointIpAddressArgs struct {
	// The IP address in the subnet that you want to use for DNS queries.
	Ip   pulumi.StringPtrInput `pulumi:"ip"`
	IpId pulumi.StringPtrInput `pulumi:"ipId"`
	// The ID of the subnet that contains the IP address.
	SubnetId pulumi.StringInput `pulumi:"subnetId"`
}

func (ResolverEndpointIpAddressArgs) ElementType

func (ResolverEndpointIpAddressArgs) ToResolverEndpointIpAddressOutput

func (i ResolverEndpointIpAddressArgs) ToResolverEndpointIpAddressOutput() ResolverEndpointIpAddressOutput

func (ResolverEndpointIpAddressArgs) ToResolverEndpointIpAddressOutputWithContext

func (i ResolverEndpointIpAddressArgs) ToResolverEndpointIpAddressOutputWithContext(ctx context.Context) ResolverEndpointIpAddressOutput

type ResolverEndpointIpAddressArray

type ResolverEndpointIpAddressArray []ResolverEndpointIpAddressInput

func (ResolverEndpointIpAddressArray) ElementType

func (ResolverEndpointIpAddressArray) ToResolverEndpointIpAddressArrayOutput

func (i ResolverEndpointIpAddressArray) ToResolverEndpointIpAddressArrayOutput() ResolverEndpointIpAddressArrayOutput

func (ResolverEndpointIpAddressArray) ToResolverEndpointIpAddressArrayOutputWithContext

func (i ResolverEndpointIpAddressArray) ToResolverEndpointIpAddressArrayOutputWithContext(ctx context.Context) ResolverEndpointIpAddressArrayOutput

type ResolverEndpointIpAddressArrayInput

type ResolverEndpointIpAddressArrayInput interface {
	pulumi.Input

	ToResolverEndpointIpAddressArrayOutput() ResolverEndpointIpAddressArrayOutput
	ToResolverEndpointIpAddressArrayOutputWithContext(context.Context) ResolverEndpointIpAddressArrayOutput
}

ResolverEndpointIpAddressArrayInput is an input type that accepts ResolverEndpointIpAddressArray and ResolverEndpointIpAddressArrayOutput values. You can construct a concrete instance of `ResolverEndpointIpAddressArrayInput` via:

ResolverEndpointIpAddressArray{ ResolverEndpointIpAddressArgs{...} }

type ResolverEndpointIpAddressArrayOutput

type ResolverEndpointIpAddressArrayOutput struct{ *pulumi.OutputState }

func (ResolverEndpointIpAddressArrayOutput) ElementType

func (ResolverEndpointIpAddressArrayOutput) Index

func (ResolverEndpointIpAddressArrayOutput) ToResolverEndpointIpAddressArrayOutput

func (o ResolverEndpointIpAddressArrayOutput) ToResolverEndpointIpAddressArrayOutput() ResolverEndpointIpAddressArrayOutput

func (ResolverEndpointIpAddressArrayOutput) ToResolverEndpointIpAddressArrayOutputWithContext

func (o ResolverEndpointIpAddressArrayOutput) ToResolverEndpointIpAddressArrayOutputWithContext(ctx context.Context) ResolverEndpointIpAddressArrayOutput

type ResolverEndpointIpAddressInput

type ResolverEndpointIpAddressInput interface {
	pulumi.Input

	ToResolverEndpointIpAddressOutput() ResolverEndpointIpAddressOutput
	ToResolverEndpointIpAddressOutputWithContext(context.Context) ResolverEndpointIpAddressOutput
}

ResolverEndpointIpAddressInput is an input type that accepts ResolverEndpointIpAddressArgs and ResolverEndpointIpAddressOutput values. You can construct a concrete instance of `ResolverEndpointIpAddressInput` via:

ResolverEndpointIpAddressArgs{...}

type ResolverEndpointIpAddressOutput

type ResolverEndpointIpAddressOutput struct{ *pulumi.OutputState }

func (ResolverEndpointIpAddressOutput) ElementType

func (ResolverEndpointIpAddressOutput) Ip

The IP address in the subnet that you want to use for DNS queries.

func (ResolverEndpointIpAddressOutput) IpId

func (ResolverEndpointIpAddressOutput) SubnetId

The ID of the subnet that contains the IP address.

func (ResolverEndpointIpAddressOutput) ToResolverEndpointIpAddressOutput

func (o ResolverEndpointIpAddressOutput) ToResolverEndpointIpAddressOutput() ResolverEndpointIpAddressOutput

func (ResolverEndpointIpAddressOutput) ToResolverEndpointIpAddressOutputWithContext

func (o ResolverEndpointIpAddressOutput) ToResolverEndpointIpAddressOutputWithContext(ctx context.Context) ResolverEndpointIpAddressOutput

type ResolverEndpointMap

type ResolverEndpointMap map[string]ResolverEndpointInput

func (ResolverEndpointMap) ElementType

func (ResolverEndpointMap) ElementType() reflect.Type

func (ResolverEndpointMap) ToResolverEndpointMapOutput

func (i ResolverEndpointMap) ToResolverEndpointMapOutput() ResolverEndpointMapOutput

func (ResolverEndpointMap) ToResolverEndpointMapOutputWithContext

func (i ResolverEndpointMap) ToResolverEndpointMapOutputWithContext(ctx context.Context) ResolverEndpointMapOutput

type ResolverEndpointMapInput

type ResolverEndpointMapInput interface {
	pulumi.Input

	ToResolverEndpointMapOutput() ResolverEndpointMapOutput
	ToResolverEndpointMapOutputWithContext(context.Context) ResolverEndpointMapOutput
}

ResolverEndpointMapInput is an input type that accepts ResolverEndpointMap and ResolverEndpointMapOutput values. You can construct a concrete instance of `ResolverEndpointMapInput` via:

ResolverEndpointMap{ "key": ResolverEndpointArgs{...} }

type ResolverEndpointMapOutput

type ResolverEndpointMapOutput struct{ *pulumi.OutputState }

func (ResolverEndpointMapOutput) ElementType

func (ResolverEndpointMapOutput) ElementType() reflect.Type

func (ResolverEndpointMapOutput) MapIndex

func (ResolverEndpointMapOutput) ToResolverEndpointMapOutput

func (o ResolverEndpointMapOutput) ToResolverEndpointMapOutput() ResolverEndpointMapOutput

func (ResolverEndpointMapOutput) ToResolverEndpointMapOutputWithContext

func (o ResolverEndpointMapOutput) ToResolverEndpointMapOutputWithContext(ctx context.Context) ResolverEndpointMapOutput

type ResolverEndpointOutput

type ResolverEndpointOutput struct{ *pulumi.OutputState }

func (ResolverEndpointOutput) Arn

The ARN of the Route 53 Resolver endpoint.

func (ResolverEndpointOutput) Direction

The direction of DNS queries to or from the Route 53 Resolver endpoint. Valid values are `INBOUND` (resolver forwards DNS queries to the DNS service for a VPC from your network or another VPC) or `OUTBOUND` (resolver forwards DNS queries from the DNS service for a VPC to your network or another VPC).

func (ResolverEndpointOutput) ElementType

func (ResolverEndpointOutput) ElementType() reflect.Type

func (ResolverEndpointOutput) HostVpcId

The ID of the VPC that you want to create the resolver endpoint in.

func (ResolverEndpointOutput) IpAddresses

The subnets and IP addresses in your VPC that you want DNS queries to pass through on the way from your VPCs to your network (for outbound endpoints) or on the way from your network to your VPCs (for inbound endpoints). Described below.

func (ResolverEndpointOutput) Name

The friendly name of the Route 53 Resolver endpoint.

func (ResolverEndpointOutput) Protocols added in v6.18.2

The protocols you want to use for the Route 53 Resolver endpoint. Valid values: `DoH`, `Do53`, `DoH-FIPS`.

func (ResolverEndpointOutput) ResolverEndpointType added in v6.18.2

func (o ResolverEndpointOutput) ResolverEndpointType() pulumi.StringOutput

The Route 53 Resolver endpoint IP address type. Valid values: `IPV4`, `IPV6`, `DUALSTACK`.

func (ResolverEndpointOutput) SecurityGroupIds

func (o ResolverEndpointOutput) SecurityGroupIds() pulumi.StringArrayOutput

The ID of one or more security groups that you want to use to control access to this VPC.

func (ResolverEndpointOutput) Tags

A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ResolverEndpointOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (ResolverEndpointOutput) ToResolverEndpointOutput

func (o ResolverEndpointOutput) ToResolverEndpointOutput() ResolverEndpointOutput

func (ResolverEndpointOutput) ToResolverEndpointOutputWithContext

func (o ResolverEndpointOutput) ToResolverEndpointOutputWithContext(ctx context.Context) ResolverEndpointOutput

type ResolverEndpointState

type ResolverEndpointState struct {
	// The ARN of the Route 53 Resolver endpoint.
	Arn pulumi.StringPtrInput
	// The direction of DNS queries to or from the Route 53 Resolver endpoint.
	// Valid values are `INBOUND` (resolver forwards DNS queries to the DNS service for a VPC from your network or another VPC)
	// or `OUTBOUND` (resolver forwards DNS queries from the DNS service for a VPC to your network or another VPC).
	Direction pulumi.StringPtrInput
	// The ID of the VPC that you want to create the resolver endpoint in.
	HostVpcId pulumi.StringPtrInput
	// The subnets and IP addresses in your VPC that you want DNS queries to pass through on the way from your VPCs
	// to your network (for outbound endpoints) or on the way from your network to your VPCs (for inbound endpoints). Described below.
	IpAddresses ResolverEndpointIpAddressArrayInput
	// The friendly name of the Route 53 Resolver endpoint.
	Name pulumi.StringPtrInput
	// The protocols you want to use for the Route 53 Resolver endpoint. Valid values: `DoH`, `Do53`, `DoH-FIPS`.
	Protocols pulumi.StringArrayInput
	// The Route 53 Resolver endpoint IP address type. Valid values: `IPV4`, `IPV6`, `DUALSTACK`.
	ResolverEndpointType pulumi.StringPtrInput
	// The ID of one or more security groups that you want to use to control access to this VPC.
	SecurityGroupIds pulumi.StringArrayInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (ResolverEndpointState) ElementType

func (ResolverEndpointState) ElementType() reflect.Type

type ResolverFirewallConfig

type ResolverFirewallConfig struct {
	pulumi.CustomResourceState

	// Determines how Route 53 Resolver handles queries during failures, for example when all traffic that is sent to DNS Firewall fails to receive a reply. By default, fail open is disabled, which means the failure mode is closed. This approach favors security over availability. DNS Firewall blocks queries that it is unable to evaluate properly. If you enable this option, the failure mode is open. This approach favors availability over security. DNS Firewall allows queries to proceed if it is unable to properly evaluate them. Valid values: `ENABLED`, `DISABLED`.
	FirewallFailOpen pulumi.StringOutput `pulumi:"firewallFailOpen"`
	// The AWS account ID of the owner of the VPC that this firewall configuration applies to.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// The ID of the VPC that the configuration is for.
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
}

Provides a Route 53 Resolver DNS Firewall config resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ec2.NewVpc(ctx, "example", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.0.0.0/16"),
			EnableDnsSupport:   pulumi.Bool(true),
			EnableDnsHostnames: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewResolverFirewallConfig(ctx, "example", &route53.ResolverFirewallConfigArgs{
			ResourceId:       example.ID(),
			FirewallFailOpen: pulumi.String("ENABLED"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver DNS Firewall configs using the Route 53 Resolver DNS Firewall config ID. For example:

```sh $ pulumi import aws:route53/resolverFirewallConfig:ResolverFirewallConfig example rdsc-be1866ecc1683e95 ```

func GetResolverFirewallConfig

func GetResolverFirewallConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverFirewallConfigState, opts ...pulumi.ResourceOption) (*ResolverFirewallConfig, error)

GetResolverFirewallConfig gets an existing ResolverFirewallConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverFirewallConfig

func NewResolverFirewallConfig(ctx *pulumi.Context,
	name string, args *ResolverFirewallConfigArgs, opts ...pulumi.ResourceOption) (*ResolverFirewallConfig, error)

NewResolverFirewallConfig registers a new resource with the given unique name, arguments, and options.

func (*ResolverFirewallConfig) ElementType

func (*ResolverFirewallConfig) ElementType() reflect.Type

func (*ResolverFirewallConfig) ToResolverFirewallConfigOutput

func (i *ResolverFirewallConfig) ToResolverFirewallConfigOutput() ResolverFirewallConfigOutput

func (*ResolverFirewallConfig) ToResolverFirewallConfigOutputWithContext

func (i *ResolverFirewallConfig) ToResolverFirewallConfigOutputWithContext(ctx context.Context) ResolverFirewallConfigOutput

type ResolverFirewallConfigArgs

type ResolverFirewallConfigArgs struct {
	// Determines how Route 53 Resolver handles queries during failures, for example when all traffic that is sent to DNS Firewall fails to receive a reply. By default, fail open is disabled, which means the failure mode is closed. This approach favors security over availability. DNS Firewall blocks queries that it is unable to evaluate properly. If you enable this option, the failure mode is open. This approach favors availability over security. DNS Firewall allows queries to proceed if it is unable to properly evaluate them. Valid values: `ENABLED`, `DISABLED`.
	FirewallFailOpen pulumi.StringPtrInput
	// The ID of the VPC that the configuration is for.
	ResourceId pulumi.StringInput
}

The set of arguments for constructing a ResolverFirewallConfig resource.

func (ResolverFirewallConfigArgs) ElementType

func (ResolverFirewallConfigArgs) ElementType() reflect.Type

type ResolverFirewallConfigArray

type ResolverFirewallConfigArray []ResolverFirewallConfigInput

func (ResolverFirewallConfigArray) ElementType

func (ResolverFirewallConfigArray) ToResolverFirewallConfigArrayOutput

func (i ResolverFirewallConfigArray) ToResolverFirewallConfigArrayOutput() ResolverFirewallConfigArrayOutput

func (ResolverFirewallConfigArray) ToResolverFirewallConfigArrayOutputWithContext

func (i ResolverFirewallConfigArray) ToResolverFirewallConfigArrayOutputWithContext(ctx context.Context) ResolverFirewallConfigArrayOutput

type ResolverFirewallConfigArrayInput

type ResolverFirewallConfigArrayInput interface {
	pulumi.Input

	ToResolverFirewallConfigArrayOutput() ResolverFirewallConfigArrayOutput
	ToResolverFirewallConfigArrayOutputWithContext(context.Context) ResolverFirewallConfigArrayOutput
}

ResolverFirewallConfigArrayInput is an input type that accepts ResolverFirewallConfigArray and ResolverFirewallConfigArrayOutput values. You can construct a concrete instance of `ResolverFirewallConfigArrayInput` via:

ResolverFirewallConfigArray{ ResolverFirewallConfigArgs{...} }

type ResolverFirewallConfigArrayOutput

type ResolverFirewallConfigArrayOutput struct{ *pulumi.OutputState }

func (ResolverFirewallConfigArrayOutput) ElementType

func (ResolverFirewallConfigArrayOutput) Index

func (ResolverFirewallConfigArrayOutput) ToResolverFirewallConfigArrayOutput

func (o ResolverFirewallConfigArrayOutput) ToResolverFirewallConfigArrayOutput() ResolverFirewallConfigArrayOutput

func (ResolverFirewallConfigArrayOutput) ToResolverFirewallConfigArrayOutputWithContext

func (o ResolverFirewallConfigArrayOutput) ToResolverFirewallConfigArrayOutputWithContext(ctx context.Context) ResolverFirewallConfigArrayOutput

type ResolverFirewallConfigInput

type ResolverFirewallConfigInput interface {
	pulumi.Input

	ToResolverFirewallConfigOutput() ResolverFirewallConfigOutput
	ToResolverFirewallConfigOutputWithContext(ctx context.Context) ResolverFirewallConfigOutput
}

type ResolverFirewallConfigMap

type ResolverFirewallConfigMap map[string]ResolverFirewallConfigInput

func (ResolverFirewallConfigMap) ElementType

func (ResolverFirewallConfigMap) ElementType() reflect.Type

func (ResolverFirewallConfigMap) ToResolverFirewallConfigMapOutput

func (i ResolverFirewallConfigMap) ToResolverFirewallConfigMapOutput() ResolverFirewallConfigMapOutput

func (ResolverFirewallConfigMap) ToResolverFirewallConfigMapOutputWithContext

func (i ResolverFirewallConfigMap) ToResolverFirewallConfigMapOutputWithContext(ctx context.Context) ResolverFirewallConfigMapOutput

type ResolverFirewallConfigMapInput

type ResolverFirewallConfigMapInput interface {
	pulumi.Input

	ToResolverFirewallConfigMapOutput() ResolverFirewallConfigMapOutput
	ToResolverFirewallConfigMapOutputWithContext(context.Context) ResolverFirewallConfigMapOutput
}

ResolverFirewallConfigMapInput is an input type that accepts ResolverFirewallConfigMap and ResolverFirewallConfigMapOutput values. You can construct a concrete instance of `ResolverFirewallConfigMapInput` via:

ResolverFirewallConfigMap{ "key": ResolverFirewallConfigArgs{...} }

type ResolverFirewallConfigMapOutput

type ResolverFirewallConfigMapOutput struct{ *pulumi.OutputState }

func (ResolverFirewallConfigMapOutput) ElementType

func (ResolverFirewallConfigMapOutput) MapIndex

func (ResolverFirewallConfigMapOutput) ToResolverFirewallConfigMapOutput

func (o ResolverFirewallConfigMapOutput) ToResolverFirewallConfigMapOutput() ResolverFirewallConfigMapOutput

func (ResolverFirewallConfigMapOutput) ToResolverFirewallConfigMapOutputWithContext

func (o ResolverFirewallConfigMapOutput) ToResolverFirewallConfigMapOutputWithContext(ctx context.Context) ResolverFirewallConfigMapOutput

type ResolverFirewallConfigOutput

type ResolverFirewallConfigOutput struct{ *pulumi.OutputState }

func (ResolverFirewallConfigOutput) ElementType

func (ResolverFirewallConfigOutput) FirewallFailOpen

func (o ResolverFirewallConfigOutput) FirewallFailOpen() pulumi.StringOutput

Determines how Route 53 Resolver handles queries during failures, for example when all traffic that is sent to DNS Firewall fails to receive a reply. By default, fail open is disabled, which means the failure mode is closed. This approach favors security over availability. DNS Firewall blocks queries that it is unable to evaluate properly. If you enable this option, the failure mode is open. This approach favors availability over security. DNS Firewall allows queries to proceed if it is unable to properly evaluate them. Valid values: `ENABLED`, `DISABLED`.

func (ResolverFirewallConfigOutput) OwnerId

The AWS account ID of the owner of the VPC that this firewall configuration applies to.

func (ResolverFirewallConfigOutput) ResourceId

The ID of the VPC that the configuration is for.

func (ResolverFirewallConfigOutput) ToResolverFirewallConfigOutput

func (o ResolverFirewallConfigOutput) ToResolverFirewallConfigOutput() ResolverFirewallConfigOutput

func (ResolverFirewallConfigOutput) ToResolverFirewallConfigOutputWithContext

func (o ResolverFirewallConfigOutput) ToResolverFirewallConfigOutputWithContext(ctx context.Context) ResolverFirewallConfigOutput

type ResolverFirewallConfigState

type ResolverFirewallConfigState struct {
	// Determines how Route 53 Resolver handles queries during failures, for example when all traffic that is sent to DNS Firewall fails to receive a reply. By default, fail open is disabled, which means the failure mode is closed. This approach favors security over availability. DNS Firewall blocks queries that it is unable to evaluate properly. If you enable this option, the failure mode is open. This approach favors availability over security. DNS Firewall allows queries to proceed if it is unable to properly evaluate them. Valid values: `ENABLED`, `DISABLED`.
	FirewallFailOpen pulumi.StringPtrInput
	// The AWS account ID of the owner of the VPC that this firewall configuration applies to.
	OwnerId pulumi.StringPtrInput
	// The ID of the VPC that the configuration is for.
	ResourceId pulumi.StringPtrInput
}

func (ResolverFirewallConfigState) ElementType

type ResolverFirewallDomainList

type ResolverFirewallDomainList struct {
	pulumi.CustomResourceState

	// The ARN (Amazon Resource Name) of the domain list.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A array of domains for the firewall domain list.
	Domains pulumi.StringArrayOutput `pulumi:"domains"`
	// A name that lets you identify the domain list, to manage and use it.
	Name pulumi.StringOutput `pulumi:"name"`
	// A map of tags to assign to the resource. f configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a Route 53 Resolver DNS Firewall domain list resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewResolverFirewallDomainList(ctx, "example", &route53.ResolverFirewallDomainListArgs{
			Name: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver DNS Firewall domain lists using the Route 53 Resolver DNS Firewall domain list ID. For example:

```sh $ pulumi import aws:route53/resolverFirewallDomainList:ResolverFirewallDomainList example rslvr-fdl-0123456789abcdef ```

func GetResolverFirewallDomainList

func GetResolverFirewallDomainList(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverFirewallDomainListState, opts ...pulumi.ResourceOption) (*ResolverFirewallDomainList, error)

GetResolverFirewallDomainList gets an existing ResolverFirewallDomainList resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverFirewallDomainList

func NewResolverFirewallDomainList(ctx *pulumi.Context,
	name string, args *ResolverFirewallDomainListArgs, opts ...pulumi.ResourceOption) (*ResolverFirewallDomainList, error)

NewResolverFirewallDomainList registers a new resource with the given unique name, arguments, and options.

func (*ResolverFirewallDomainList) ElementType

func (*ResolverFirewallDomainList) ElementType() reflect.Type

func (*ResolverFirewallDomainList) ToResolverFirewallDomainListOutput

func (i *ResolverFirewallDomainList) ToResolverFirewallDomainListOutput() ResolverFirewallDomainListOutput

func (*ResolverFirewallDomainList) ToResolverFirewallDomainListOutputWithContext

func (i *ResolverFirewallDomainList) ToResolverFirewallDomainListOutputWithContext(ctx context.Context) ResolverFirewallDomainListOutput

type ResolverFirewallDomainListArgs

type ResolverFirewallDomainListArgs struct {
	// A array of domains for the firewall domain list.
	Domains pulumi.StringArrayInput
	// A name that lets you identify the domain list, to manage and use it.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource. f configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ResolverFirewallDomainList resource.

func (ResolverFirewallDomainListArgs) ElementType

type ResolverFirewallDomainListArray

type ResolverFirewallDomainListArray []ResolverFirewallDomainListInput

func (ResolverFirewallDomainListArray) ElementType

func (ResolverFirewallDomainListArray) ToResolverFirewallDomainListArrayOutput

func (i ResolverFirewallDomainListArray) ToResolverFirewallDomainListArrayOutput() ResolverFirewallDomainListArrayOutput

func (ResolverFirewallDomainListArray) ToResolverFirewallDomainListArrayOutputWithContext

func (i ResolverFirewallDomainListArray) ToResolverFirewallDomainListArrayOutputWithContext(ctx context.Context) ResolverFirewallDomainListArrayOutput

type ResolverFirewallDomainListArrayInput

type ResolverFirewallDomainListArrayInput interface {
	pulumi.Input

	ToResolverFirewallDomainListArrayOutput() ResolverFirewallDomainListArrayOutput
	ToResolverFirewallDomainListArrayOutputWithContext(context.Context) ResolverFirewallDomainListArrayOutput
}

ResolverFirewallDomainListArrayInput is an input type that accepts ResolverFirewallDomainListArray and ResolverFirewallDomainListArrayOutput values. You can construct a concrete instance of `ResolverFirewallDomainListArrayInput` via:

ResolverFirewallDomainListArray{ ResolverFirewallDomainListArgs{...} }

type ResolverFirewallDomainListArrayOutput

type ResolverFirewallDomainListArrayOutput struct{ *pulumi.OutputState }

func (ResolverFirewallDomainListArrayOutput) ElementType

func (ResolverFirewallDomainListArrayOutput) Index

func (ResolverFirewallDomainListArrayOutput) ToResolverFirewallDomainListArrayOutput

func (o ResolverFirewallDomainListArrayOutput) ToResolverFirewallDomainListArrayOutput() ResolverFirewallDomainListArrayOutput

func (ResolverFirewallDomainListArrayOutput) ToResolverFirewallDomainListArrayOutputWithContext

func (o ResolverFirewallDomainListArrayOutput) ToResolverFirewallDomainListArrayOutputWithContext(ctx context.Context) ResolverFirewallDomainListArrayOutput

type ResolverFirewallDomainListInput

type ResolverFirewallDomainListInput interface {
	pulumi.Input

	ToResolverFirewallDomainListOutput() ResolverFirewallDomainListOutput
	ToResolverFirewallDomainListOutputWithContext(ctx context.Context) ResolverFirewallDomainListOutput
}

type ResolverFirewallDomainListMap

type ResolverFirewallDomainListMap map[string]ResolverFirewallDomainListInput

func (ResolverFirewallDomainListMap) ElementType

func (ResolverFirewallDomainListMap) ToResolverFirewallDomainListMapOutput

func (i ResolverFirewallDomainListMap) ToResolverFirewallDomainListMapOutput() ResolverFirewallDomainListMapOutput

func (ResolverFirewallDomainListMap) ToResolverFirewallDomainListMapOutputWithContext

func (i ResolverFirewallDomainListMap) ToResolverFirewallDomainListMapOutputWithContext(ctx context.Context) ResolverFirewallDomainListMapOutput

type ResolverFirewallDomainListMapInput

type ResolverFirewallDomainListMapInput interface {
	pulumi.Input

	ToResolverFirewallDomainListMapOutput() ResolverFirewallDomainListMapOutput
	ToResolverFirewallDomainListMapOutputWithContext(context.Context) ResolverFirewallDomainListMapOutput
}

ResolverFirewallDomainListMapInput is an input type that accepts ResolverFirewallDomainListMap and ResolverFirewallDomainListMapOutput values. You can construct a concrete instance of `ResolverFirewallDomainListMapInput` via:

ResolverFirewallDomainListMap{ "key": ResolverFirewallDomainListArgs{...} }

type ResolverFirewallDomainListMapOutput

type ResolverFirewallDomainListMapOutput struct{ *pulumi.OutputState }

func (ResolverFirewallDomainListMapOutput) ElementType

func (ResolverFirewallDomainListMapOutput) MapIndex

func (ResolverFirewallDomainListMapOutput) ToResolverFirewallDomainListMapOutput

func (o ResolverFirewallDomainListMapOutput) ToResolverFirewallDomainListMapOutput() ResolverFirewallDomainListMapOutput

func (ResolverFirewallDomainListMapOutput) ToResolverFirewallDomainListMapOutputWithContext

func (o ResolverFirewallDomainListMapOutput) ToResolverFirewallDomainListMapOutputWithContext(ctx context.Context) ResolverFirewallDomainListMapOutput

type ResolverFirewallDomainListOutput

type ResolverFirewallDomainListOutput struct{ *pulumi.OutputState }

func (ResolverFirewallDomainListOutput) Arn

The ARN (Amazon Resource Name) of the domain list.

func (ResolverFirewallDomainListOutput) Domains

A array of domains for the firewall domain list.

func (ResolverFirewallDomainListOutput) ElementType

func (ResolverFirewallDomainListOutput) Name

A name that lets you identify the domain list, to manage and use it.

func (ResolverFirewallDomainListOutput) Tags

A map of tags to assign to the resource. f configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ResolverFirewallDomainListOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (ResolverFirewallDomainListOutput) ToResolverFirewallDomainListOutput

func (o ResolverFirewallDomainListOutput) ToResolverFirewallDomainListOutput() ResolverFirewallDomainListOutput

func (ResolverFirewallDomainListOutput) ToResolverFirewallDomainListOutputWithContext

func (o ResolverFirewallDomainListOutput) ToResolverFirewallDomainListOutputWithContext(ctx context.Context) ResolverFirewallDomainListOutput

type ResolverFirewallDomainListState

type ResolverFirewallDomainListState struct {
	// The ARN (Amazon Resource Name) of the domain list.
	Arn pulumi.StringPtrInput
	// A array of domains for the firewall domain list.
	Domains pulumi.StringArrayInput
	// A name that lets you identify the domain list, to manage and use it.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource. f configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (ResolverFirewallDomainListState) ElementType

type ResolverFirewallRule

type ResolverFirewallRule struct {
	pulumi.CustomResourceState

	// The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list. Valid values: `ALLOW`, `BLOCK`, `ALERT`.
	Action pulumi.StringOutput `pulumi:"action"`
	// The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Value values: `CNAME`.
	BlockOverrideDnsType pulumi.StringPtrOutput `pulumi:"blockOverrideDnsType"`
	// The custom DNS record to send back in response to the query.
	BlockOverrideDomain pulumi.StringPtrOutput `pulumi:"blockOverrideDomain"`
	// The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Minimum value of 0. Maximum value of 604800.
	BlockOverrideTtl pulumi.IntPtrOutput `pulumi:"blockOverrideTtl"`
	// The way that you want DNS Firewall to block the request. Valid values: `NODATA`, `NXDOMAIN`, `OVERRIDE`.
	BlockResponse pulumi.StringPtrOutput `pulumi:"blockResponse"`
	// The ID of the domain list that you want to use in the rule.
	FirewallDomainListId pulumi.StringOutput `pulumi:"firewallDomainListId"`
	// The unique identifier of the firewall rule group where you want to create the rule.
	FirewallRuleGroupId pulumi.StringOutput `pulumi:"firewallRuleGroupId"`
	// A name that lets you identify the rule, to manage and use it.
	Name pulumi.StringOutput `pulumi:"name"`
	// The setting that determines the processing order of the rule in the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.
	Priority pulumi.IntOutput `pulumi:"priority"`
}

Provides a Route 53 Resolver DNS Firewall rule resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := route53.NewResolverFirewallDomainList(ctx, "example", &route53.ResolverFirewallDomainListArgs{
			Name: pulumi.String("example"),
			Domains: pulumi.StringArray{
				pulumi.String("example.com"),
			},
			Tags: nil,
		})
		if err != nil {
			return err
		}
		exampleResolverFirewallRuleGroup, err := route53.NewResolverFirewallRuleGroup(ctx, "example", &route53.ResolverFirewallRuleGroupArgs{
			Name: pulumi.String("example"),
			Tags: nil,
		})
		if err != nil {
			return err
		}
		_, err = route53.NewResolverFirewallRule(ctx, "example", &route53.ResolverFirewallRuleArgs{
			Name:                 pulumi.String("example"),
			Action:               pulumi.String("BLOCK"),
			BlockOverrideDnsType: pulumi.String("CNAME"),
			BlockOverrideDomain:  pulumi.String("example.com"),
			BlockOverrideTtl:     pulumi.Int(1),
			BlockResponse:        pulumi.String("OVERRIDE"),
			FirewallDomainListId: example.ID(),
			FirewallRuleGroupId:  exampleResolverFirewallRuleGroup.ID(),
			Priority:             pulumi.Int(100),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver DNS Firewall rules using the Route 53 Resolver DNS Firewall rule group ID and domain list ID separated by ':'. For example:

```sh $ pulumi import aws:route53/resolverFirewallRule:ResolverFirewallRule example rslvr-frg-0123456789abcdef:rslvr-fdl-0123456789abcdef ```

func GetResolverFirewallRule

func GetResolverFirewallRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverFirewallRuleState, opts ...pulumi.ResourceOption) (*ResolverFirewallRule, error)

GetResolverFirewallRule gets an existing ResolverFirewallRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverFirewallRule

func NewResolverFirewallRule(ctx *pulumi.Context,
	name string, args *ResolverFirewallRuleArgs, opts ...pulumi.ResourceOption) (*ResolverFirewallRule, error)

NewResolverFirewallRule registers a new resource with the given unique name, arguments, and options.

func (*ResolverFirewallRule) ElementType

func (*ResolverFirewallRule) ElementType() reflect.Type

func (*ResolverFirewallRule) ToResolverFirewallRuleOutput

func (i *ResolverFirewallRule) ToResolverFirewallRuleOutput() ResolverFirewallRuleOutput

func (*ResolverFirewallRule) ToResolverFirewallRuleOutputWithContext

func (i *ResolverFirewallRule) ToResolverFirewallRuleOutputWithContext(ctx context.Context) ResolverFirewallRuleOutput

type ResolverFirewallRuleArgs

type ResolverFirewallRuleArgs struct {
	// The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list. Valid values: `ALLOW`, `BLOCK`, `ALERT`.
	Action pulumi.StringInput
	// The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Value values: `CNAME`.
	BlockOverrideDnsType pulumi.StringPtrInput
	// The custom DNS record to send back in response to the query.
	BlockOverrideDomain pulumi.StringPtrInput
	// The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Minimum value of 0. Maximum value of 604800.
	BlockOverrideTtl pulumi.IntPtrInput
	// The way that you want DNS Firewall to block the request. Valid values: `NODATA`, `NXDOMAIN`, `OVERRIDE`.
	BlockResponse pulumi.StringPtrInput
	// The ID of the domain list that you want to use in the rule.
	FirewallDomainListId pulumi.StringInput
	// The unique identifier of the firewall rule group where you want to create the rule.
	FirewallRuleGroupId pulumi.StringInput
	// A name that lets you identify the rule, to manage and use it.
	Name pulumi.StringPtrInput
	// The setting that determines the processing order of the rule in the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.
	Priority pulumi.IntInput
}

The set of arguments for constructing a ResolverFirewallRule resource.

func (ResolverFirewallRuleArgs) ElementType

func (ResolverFirewallRuleArgs) ElementType() reflect.Type

type ResolverFirewallRuleArray

type ResolverFirewallRuleArray []ResolverFirewallRuleInput

func (ResolverFirewallRuleArray) ElementType

func (ResolverFirewallRuleArray) ElementType() reflect.Type

func (ResolverFirewallRuleArray) ToResolverFirewallRuleArrayOutput

func (i ResolverFirewallRuleArray) ToResolverFirewallRuleArrayOutput() ResolverFirewallRuleArrayOutput

func (ResolverFirewallRuleArray) ToResolverFirewallRuleArrayOutputWithContext

func (i ResolverFirewallRuleArray) ToResolverFirewallRuleArrayOutputWithContext(ctx context.Context) ResolverFirewallRuleArrayOutput

type ResolverFirewallRuleArrayInput

type ResolverFirewallRuleArrayInput interface {
	pulumi.Input

	ToResolverFirewallRuleArrayOutput() ResolverFirewallRuleArrayOutput
	ToResolverFirewallRuleArrayOutputWithContext(context.Context) ResolverFirewallRuleArrayOutput
}

ResolverFirewallRuleArrayInput is an input type that accepts ResolverFirewallRuleArray and ResolverFirewallRuleArrayOutput values. You can construct a concrete instance of `ResolverFirewallRuleArrayInput` via:

ResolverFirewallRuleArray{ ResolverFirewallRuleArgs{...} }

type ResolverFirewallRuleArrayOutput

type ResolverFirewallRuleArrayOutput struct{ *pulumi.OutputState }

func (ResolverFirewallRuleArrayOutput) ElementType

func (ResolverFirewallRuleArrayOutput) Index

func (ResolverFirewallRuleArrayOutput) ToResolverFirewallRuleArrayOutput

func (o ResolverFirewallRuleArrayOutput) ToResolverFirewallRuleArrayOutput() ResolverFirewallRuleArrayOutput

func (ResolverFirewallRuleArrayOutput) ToResolverFirewallRuleArrayOutputWithContext

func (o ResolverFirewallRuleArrayOutput) ToResolverFirewallRuleArrayOutputWithContext(ctx context.Context) ResolverFirewallRuleArrayOutput

type ResolverFirewallRuleGroup

type ResolverFirewallRuleGroup struct {
	pulumi.CustomResourceState

	// The ARN (Amazon Resource Name) of the rule group.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A name that lets you identify the rule group, to manage and use it.
	Name pulumi.StringOutput `pulumi:"name"`
	// The AWS account ID for the account that created the rule group. When a rule group is shared with your account, this is the account that has shared the rule group with you.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// Whether the rule group is shared with other AWS accounts, or was shared with the current account by another AWS account. Sharing is configured through AWS Resource Access Manager (AWS RAM). Valid values: `NOT_SHARED`, `SHARED_BY_ME`, `SHARED_WITH_ME`
	ShareStatus pulumi.StringOutput `pulumi:"shareStatus"`
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a Route 53 Resolver DNS Firewall rule group resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewResolverFirewallRuleGroup(ctx, "example", &route53.ResolverFirewallRuleGroupArgs{
			Name: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver DNS Firewall rule groups using the Route 53 Resolver DNS Firewall rule group ID. For example:

```sh $ pulumi import aws:route53/resolverFirewallRuleGroup:ResolverFirewallRuleGroup example rslvr-frg-0123456789abcdef ```

func GetResolverFirewallRuleGroup

func GetResolverFirewallRuleGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverFirewallRuleGroupState, opts ...pulumi.ResourceOption) (*ResolverFirewallRuleGroup, error)

GetResolverFirewallRuleGroup gets an existing ResolverFirewallRuleGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverFirewallRuleGroup

func NewResolverFirewallRuleGroup(ctx *pulumi.Context,
	name string, args *ResolverFirewallRuleGroupArgs, opts ...pulumi.ResourceOption) (*ResolverFirewallRuleGroup, error)

NewResolverFirewallRuleGroup registers a new resource with the given unique name, arguments, and options.

func (*ResolverFirewallRuleGroup) ElementType

func (*ResolverFirewallRuleGroup) ElementType() reflect.Type

func (*ResolverFirewallRuleGroup) ToResolverFirewallRuleGroupOutput

func (i *ResolverFirewallRuleGroup) ToResolverFirewallRuleGroupOutput() ResolverFirewallRuleGroupOutput

func (*ResolverFirewallRuleGroup) ToResolverFirewallRuleGroupOutputWithContext

func (i *ResolverFirewallRuleGroup) ToResolverFirewallRuleGroupOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupOutput

type ResolverFirewallRuleGroupArgs

type ResolverFirewallRuleGroupArgs struct {
	// A name that lets you identify the rule group, to manage and use it.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ResolverFirewallRuleGroup resource.

func (ResolverFirewallRuleGroupArgs) ElementType

type ResolverFirewallRuleGroupArray

type ResolverFirewallRuleGroupArray []ResolverFirewallRuleGroupInput

func (ResolverFirewallRuleGroupArray) ElementType

func (ResolverFirewallRuleGroupArray) ToResolverFirewallRuleGroupArrayOutput

func (i ResolverFirewallRuleGroupArray) ToResolverFirewallRuleGroupArrayOutput() ResolverFirewallRuleGroupArrayOutput

func (ResolverFirewallRuleGroupArray) ToResolverFirewallRuleGroupArrayOutputWithContext

func (i ResolverFirewallRuleGroupArray) ToResolverFirewallRuleGroupArrayOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupArrayOutput

type ResolverFirewallRuleGroupArrayInput

type ResolverFirewallRuleGroupArrayInput interface {
	pulumi.Input

	ToResolverFirewallRuleGroupArrayOutput() ResolverFirewallRuleGroupArrayOutput
	ToResolverFirewallRuleGroupArrayOutputWithContext(context.Context) ResolverFirewallRuleGroupArrayOutput
}

ResolverFirewallRuleGroupArrayInput is an input type that accepts ResolverFirewallRuleGroupArray and ResolverFirewallRuleGroupArrayOutput values. You can construct a concrete instance of `ResolverFirewallRuleGroupArrayInput` via:

ResolverFirewallRuleGroupArray{ ResolverFirewallRuleGroupArgs{...} }

type ResolverFirewallRuleGroupArrayOutput

type ResolverFirewallRuleGroupArrayOutput struct{ *pulumi.OutputState }

func (ResolverFirewallRuleGroupArrayOutput) ElementType

func (ResolverFirewallRuleGroupArrayOutput) Index

func (ResolverFirewallRuleGroupArrayOutput) ToResolverFirewallRuleGroupArrayOutput

func (o ResolverFirewallRuleGroupArrayOutput) ToResolverFirewallRuleGroupArrayOutput() ResolverFirewallRuleGroupArrayOutput

func (ResolverFirewallRuleGroupArrayOutput) ToResolverFirewallRuleGroupArrayOutputWithContext

func (o ResolverFirewallRuleGroupArrayOutput) ToResolverFirewallRuleGroupArrayOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupArrayOutput

type ResolverFirewallRuleGroupAssociation

type ResolverFirewallRuleGroupAssociation struct {
	pulumi.CustomResourceState

	// The ARN (Amazon Resource Name) of the firewall rule group association.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The unique identifier of the firewall rule group.
	FirewallRuleGroupId pulumi.StringOutput `pulumi:"firewallRuleGroupId"`
	// If enabled, this setting disallows modification or removal of the association, to help prevent against accidentally altering DNS firewall protections. Valid values: `ENABLED`, `DISABLED`.
	MutationProtection pulumi.StringOutput `pulumi:"mutationProtection"`
	// A name that lets you identify the rule group association, to manage and use it.
	Name pulumi.StringOutput `pulumi:"name"`
	// The setting that determines the processing order of the rule group among the rule groups that you associate with the specified VPC. DNS Firewall filters VPC traffic starting from the rule group with the lowest numeric priority setting.
	Priority pulumi.IntOutput `pulumi:"priority"`
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// The unique identifier of the VPC that you want to associate with the rule group.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a Route 53 Resolver DNS Firewall rule group association resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := route53.NewResolverFirewallRuleGroup(ctx, "example", &route53.ResolverFirewallRuleGroupArgs{
			Name: pulumi.String("example"),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewResolverFirewallRuleGroupAssociation(ctx, "example", &route53.ResolverFirewallRuleGroupAssociationArgs{
			Name:                pulumi.String("example"),
			FirewallRuleGroupId: example.ID(),
			Priority:            pulumi.Int(100),
			VpcId:               pulumi.Any(exampleAwsVpc.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver DNS Firewall rule group associations using the Route 53 Resolver DNS Firewall rule group association ID. For example:

```sh $ pulumi import aws:route53/resolverFirewallRuleGroupAssociation:ResolverFirewallRuleGroupAssociation example rslvr-frgassoc-0123456789abcdef ```

func GetResolverFirewallRuleGroupAssociation

func GetResolverFirewallRuleGroupAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverFirewallRuleGroupAssociationState, opts ...pulumi.ResourceOption) (*ResolverFirewallRuleGroupAssociation, error)

GetResolverFirewallRuleGroupAssociation gets an existing ResolverFirewallRuleGroupAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverFirewallRuleGroupAssociation

func NewResolverFirewallRuleGroupAssociation(ctx *pulumi.Context,
	name string, args *ResolverFirewallRuleGroupAssociationArgs, opts ...pulumi.ResourceOption) (*ResolverFirewallRuleGroupAssociation, error)

NewResolverFirewallRuleGroupAssociation registers a new resource with the given unique name, arguments, and options.

func (*ResolverFirewallRuleGroupAssociation) ElementType

func (*ResolverFirewallRuleGroupAssociation) ToResolverFirewallRuleGroupAssociationOutput

func (i *ResolverFirewallRuleGroupAssociation) ToResolverFirewallRuleGroupAssociationOutput() ResolverFirewallRuleGroupAssociationOutput

func (*ResolverFirewallRuleGroupAssociation) ToResolverFirewallRuleGroupAssociationOutputWithContext

func (i *ResolverFirewallRuleGroupAssociation) ToResolverFirewallRuleGroupAssociationOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupAssociationOutput

type ResolverFirewallRuleGroupAssociationArgs

type ResolverFirewallRuleGroupAssociationArgs struct {
	// The unique identifier of the firewall rule group.
	FirewallRuleGroupId pulumi.StringInput
	// If enabled, this setting disallows modification or removal of the association, to help prevent against accidentally altering DNS firewall protections. Valid values: `ENABLED`, `DISABLED`.
	MutationProtection pulumi.StringPtrInput
	// A name that lets you identify the rule group association, to manage and use it.
	Name pulumi.StringPtrInput
	// The setting that determines the processing order of the rule group among the rule groups that you associate with the specified VPC. DNS Firewall filters VPC traffic starting from the rule group with the lowest numeric priority setting.
	Priority pulumi.IntInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// The unique identifier of the VPC that you want to associate with the rule group.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a ResolverFirewallRuleGroupAssociation resource.

func (ResolverFirewallRuleGroupAssociationArgs) ElementType

type ResolverFirewallRuleGroupAssociationArray

type ResolverFirewallRuleGroupAssociationArray []ResolverFirewallRuleGroupAssociationInput

func (ResolverFirewallRuleGroupAssociationArray) ElementType

func (ResolverFirewallRuleGroupAssociationArray) ToResolverFirewallRuleGroupAssociationArrayOutput

func (i ResolverFirewallRuleGroupAssociationArray) ToResolverFirewallRuleGroupAssociationArrayOutput() ResolverFirewallRuleGroupAssociationArrayOutput

func (ResolverFirewallRuleGroupAssociationArray) ToResolverFirewallRuleGroupAssociationArrayOutputWithContext

func (i ResolverFirewallRuleGroupAssociationArray) ToResolverFirewallRuleGroupAssociationArrayOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupAssociationArrayOutput

type ResolverFirewallRuleGroupAssociationArrayInput

type ResolverFirewallRuleGroupAssociationArrayInput interface {
	pulumi.Input

	ToResolverFirewallRuleGroupAssociationArrayOutput() ResolverFirewallRuleGroupAssociationArrayOutput
	ToResolverFirewallRuleGroupAssociationArrayOutputWithContext(context.Context) ResolverFirewallRuleGroupAssociationArrayOutput
}

ResolverFirewallRuleGroupAssociationArrayInput is an input type that accepts ResolverFirewallRuleGroupAssociationArray and ResolverFirewallRuleGroupAssociationArrayOutput values. You can construct a concrete instance of `ResolverFirewallRuleGroupAssociationArrayInput` via:

ResolverFirewallRuleGroupAssociationArray{ ResolverFirewallRuleGroupAssociationArgs{...} }

type ResolverFirewallRuleGroupAssociationArrayOutput

type ResolverFirewallRuleGroupAssociationArrayOutput struct{ *pulumi.OutputState }

func (ResolverFirewallRuleGroupAssociationArrayOutput) ElementType

func (ResolverFirewallRuleGroupAssociationArrayOutput) Index

func (ResolverFirewallRuleGroupAssociationArrayOutput) ToResolverFirewallRuleGroupAssociationArrayOutput

func (o ResolverFirewallRuleGroupAssociationArrayOutput) ToResolverFirewallRuleGroupAssociationArrayOutput() ResolverFirewallRuleGroupAssociationArrayOutput

func (ResolverFirewallRuleGroupAssociationArrayOutput) ToResolverFirewallRuleGroupAssociationArrayOutputWithContext

func (o ResolverFirewallRuleGroupAssociationArrayOutput) ToResolverFirewallRuleGroupAssociationArrayOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupAssociationArrayOutput

type ResolverFirewallRuleGroupAssociationInput

type ResolverFirewallRuleGroupAssociationInput interface {
	pulumi.Input

	ToResolverFirewallRuleGroupAssociationOutput() ResolverFirewallRuleGroupAssociationOutput
	ToResolverFirewallRuleGroupAssociationOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupAssociationOutput
}

type ResolverFirewallRuleGroupAssociationMap

type ResolverFirewallRuleGroupAssociationMap map[string]ResolverFirewallRuleGroupAssociationInput

func (ResolverFirewallRuleGroupAssociationMap) ElementType

func (ResolverFirewallRuleGroupAssociationMap) ToResolverFirewallRuleGroupAssociationMapOutput

func (i ResolverFirewallRuleGroupAssociationMap) ToResolverFirewallRuleGroupAssociationMapOutput() ResolverFirewallRuleGroupAssociationMapOutput

func (ResolverFirewallRuleGroupAssociationMap) ToResolverFirewallRuleGroupAssociationMapOutputWithContext

func (i ResolverFirewallRuleGroupAssociationMap) ToResolverFirewallRuleGroupAssociationMapOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupAssociationMapOutput

type ResolverFirewallRuleGroupAssociationMapInput

type ResolverFirewallRuleGroupAssociationMapInput interface {
	pulumi.Input

	ToResolverFirewallRuleGroupAssociationMapOutput() ResolverFirewallRuleGroupAssociationMapOutput
	ToResolverFirewallRuleGroupAssociationMapOutputWithContext(context.Context) ResolverFirewallRuleGroupAssociationMapOutput
}

ResolverFirewallRuleGroupAssociationMapInput is an input type that accepts ResolverFirewallRuleGroupAssociationMap and ResolverFirewallRuleGroupAssociationMapOutput values. You can construct a concrete instance of `ResolverFirewallRuleGroupAssociationMapInput` via:

ResolverFirewallRuleGroupAssociationMap{ "key": ResolverFirewallRuleGroupAssociationArgs{...} }

type ResolverFirewallRuleGroupAssociationMapOutput

type ResolverFirewallRuleGroupAssociationMapOutput struct{ *pulumi.OutputState }

func (ResolverFirewallRuleGroupAssociationMapOutput) ElementType

func (ResolverFirewallRuleGroupAssociationMapOutput) MapIndex

func (ResolverFirewallRuleGroupAssociationMapOutput) ToResolverFirewallRuleGroupAssociationMapOutput

func (o ResolverFirewallRuleGroupAssociationMapOutput) ToResolverFirewallRuleGroupAssociationMapOutput() ResolverFirewallRuleGroupAssociationMapOutput

func (ResolverFirewallRuleGroupAssociationMapOutput) ToResolverFirewallRuleGroupAssociationMapOutputWithContext

func (o ResolverFirewallRuleGroupAssociationMapOutput) ToResolverFirewallRuleGroupAssociationMapOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupAssociationMapOutput

type ResolverFirewallRuleGroupAssociationOutput

type ResolverFirewallRuleGroupAssociationOutput struct{ *pulumi.OutputState }

func (ResolverFirewallRuleGroupAssociationOutput) Arn

The ARN (Amazon Resource Name) of the firewall rule group association.

func (ResolverFirewallRuleGroupAssociationOutput) ElementType

func (ResolverFirewallRuleGroupAssociationOutput) FirewallRuleGroupId

The unique identifier of the firewall rule group.

func (ResolverFirewallRuleGroupAssociationOutput) MutationProtection

If enabled, this setting disallows modification or removal of the association, to help prevent against accidentally altering DNS firewall protections. Valid values: `ENABLED`, `DISABLED`.

func (ResolverFirewallRuleGroupAssociationOutput) Name

A name that lets you identify the rule group association, to manage and use it.

func (ResolverFirewallRuleGroupAssociationOutput) Priority

The setting that determines the processing order of the rule group among the rule groups that you associate with the specified VPC. DNS Firewall filters VPC traffic starting from the rule group with the lowest numeric priority setting.

func (ResolverFirewallRuleGroupAssociationOutput) Tags

Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ResolverFirewallRuleGroupAssociationOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (ResolverFirewallRuleGroupAssociationOutput) ToResolverFirewallRuleGroupAssociationOutput

func (o ResolverFirewallRuleGroupAssociationOutput) ToResolverFirewallRuleGroupAssociationOutput() ResolverFirewallRuleGroupAssociationOutput

func (ResolverFirewallRuleGroupAssociationOutput) ToResolverFirewallRuleGroupAssociationOutputWithContext

func (o ResolverFirewallRuleGroupAssociationOutput) ToResolverFirewallRuleGroupAssociationOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupAssociationOutput

func (ResolverFirewallRuleGroupAssociationOutput) VpcId

The unique identifier of the VPC that you want to associate with the rule group.

type ResolverFirewallRuleGroupAssociationState

type ResolverFirewallRuleGroupAssociationState struct {
	// The ARN (Amazon Resource Name) of the firewall rule group association.
	Arn pulumi.StringPtrInput
	// The unique identifier of the firewall rule group.
	FirewallRuleGroupId pulumi.StringPtrInput
	// If enabled, this setting disallows modification or removal of the association, to help prevent against accidentally altering DNS firewall protections. Valid values: `ENABLED`, `DISABLED`.
	MutationProtection pulumi.StringPtrInput
	// A name that lets you identify the rule group association, to manage and use it.
	Name pulumi.StringPtrInput
	// The setting that determines the processing order of the rule group among the rule groups that you associate with the specified VPC. DNS Firewall filters VPC traffic starting from the rule group with the lowest numeric priority setting.
	Priority pulumi.IntPtrInput
	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// The unique identifier of the VPC that you want to associate with the rule group.
	VpcId pulumi.StringPtrInput
}

func (ResolverFirewallRuleGroupAssociationState) ElementType

type ResolverFirewallRuleGroupInput

type ResolverFirewallRuleGroupInput interface {
	pulumi.Input

	ToResolverFirewallRuleGroupOutput() ResolverFirewallRuleGroupOutput
	ToResolverFirewallRuleGroupOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupOutput
}

type ResolverFirewallRuleGroupMap

type ResolverFirewallRuleGroupMap map[string]ResolverFirewallRuleGroupInput

func (ResolverFirewallRuleGroupMap) ElementType

func (ResolverFirewallRuleGroupMap) ToResolverFirewallRuleGroupMapOutput

func (i ResolverFirewallRuleGroupMap) ToResolverFirewallRuleGroupMapOutput() ResolverFirewallRuleGroupMapOutput

func (ResolverFirewallRuleGroupMap) ToResolverFirewallRuleGroupMapOutputWithContext

func (i ResolverFirewallRuleGroupMap) ToResolverFirewallRuleGroupMapOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupMapOutput

type ResolverFirewallRuleGroupMapInput

type ResolverFirewallRuleGroupMapInput interface {
	pulumi.Input

	ToResolverFirewallRuleGroupMapOutput() ResolverFirewallRuleGroupMapOutput
	ToResolverFirewallRuleGroupMapOutputWithContext(context.Context) ResolverFirewallRuleGroupMapOutput
}

ResolverFirewallRuleGroupMapInput is an input type that accepts ResolverFirewallRuleGroupMap and ResolverFirewallRuleGroupMapOutput values. You can construct a concrete instance of `ResolverFirewallRuleGroupMapInput` via:

ResolverFirewallRuleGroupMap{ "key": ResolverFirewallRuleGroupArgs{...} }

type ResolverFirewallRuleGroupMapOutput

type ResolverFirewallRuleGroupMapOutput struct{ *pulumi.OutputState }

func (ResolverFirewallRuleGroupMapOutput) ElementType

func (ResolverFirewallRuleGroupMapOutput) MapIndex

func (ResolverFirewallRuleGroupMapOutput) ToResolverFirewallRuleGroupMapOutput

func (o ResolverFirewallRuleGroupMapOutput) ToResolverFirewallRuleGroupMapOutput() ResolverFirewallRuleGroupMapOutput

func (ResolverFirewallRuleGroupMapOutput) ToResolverFirewallRuleGroupMapOutputWithContext

func (o ResolverFirewallRuleGroupMapOutput) ToResolverFirewallRuleGroupMapOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupMapOutput

type ResolverFirewallRuleGroupOutput

type ResolverFirewallRuleGroupOutput struct{ *pulumi.OutputState }

func (ResolverFirewallRuleGroupOutput) Arn

The ARN (Amazon Resource Name) of the rule group.

func (ResolverFirewallRuleGroupOutput) ElementType

func (ResolverFirewallRuleGroupOutput) Name

A name that lets you identify the rule group, to manage and use it.

func (ResolverFirewallRuleGroupOutput) OwnerId

The AWS account ID for the account that created the rule group. When a rule group is shared with your account, this is the account that has shared the rule group with you.

func (ResolverFirewallRuleGroupOutput) ShareStatus

Whether the rule group is shared with other AWS accounts, or was shared with the current account by another AWS account. Sharing is configured through AWS Resource Access Manager (AWS RAM). Valid values: `NOT_SHARED`, `SHARED_BY_ME`, `SHARED_WITH_ME`

func (ResolverFirewallRuleGroupOutput) Tags

A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ResolverFirewallRuleGroupOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (ResolverFirewallRuleGroupOutput) ToResolverFirewallRuleGroupOutput

func (o ResolverFirewallRuleGroupOutput) ToResolverFirewallRuleGroupOutput() ResolverFirewallRuleGroupOutput

func (ResolverFirewallRuleGroupOutput) ToResolverFirewallRuleGroupOutputWithContext

func (o ResolverFirewallRuleGroupOutput) ToResolverFirewallRuleGroupOutputWithContext(ctx context.Context) ResolverFirewallRuleGroupOutput

type ResolverFirewallRuleGroupState

type ResolverFirewallRuleGroupState struct {
	// The ARN (Amazon Resource Name) of the rule group.
	Arn pulumi.StringPtrInput
	// A name that lets you identify the rule group, to manage and use it.
	Name pulumi.StringPtrInput
	// The AWS account ID for the account that created the rule group. When a rule group is shared with your account, this is the account that has shared the rule group with you.
	OwnerId pulumi.StringPtrInput
	// Whether the rule group is shared with other AWS accounts, or was shared with the current account by another AWS account. Sharing is configured through AWS Resource Access Manager (AWS RAM). Valid values: `NOT_SHARED`, `SHARED_BY_ME`, `SHARED_WITH_ME`
	ShareStatus pulumi.StringPtrInput
	// A map of tags to assign to the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (ResolverFirewallRuleGroupState) ElementType

type ResolverFirewallRuleInput

type ResolverFirewallRuleInput interface {
	pulumi.Input

	ToResolverFirewallRuleOutput() ResolverFirewallRuleOutput
	ToResolverFirewallRuleOutputWithContext(ctx context.Context) ResolverFirewallRuleOutput
}

type ResolverFirewallRuleMap

type ResolverFirewallRuleMap map[string]ResolverFirewallRuleInput

func (ResolverFirewallRuleMap) ElementType

func (ResolverFirewallRuleMap) ElementType() reflect.Type

func (ResolverFirewallRuleMap) ToResolverFirewallRuleMapOutput

func (i ResolverFirewallRuleMap) ToResolverFirewallRuleMapOutput() ResolverFirewallRuleMapOutput

func (ResolverFirewallRuleMap) ToResolverFirewallRuleMapOutputWithContext

func (i ResolverFirewallRuleMap) ToResolverFirewallRuleMapOutputWithContext(ctx context.Context) ResolverFirewallRuleMapOutput

type ResolverFirewallRuleMapInput

type ResolverFirewallRuleMapInput interface {
	pulumi.Input

	ToResolverFirewallRuleMapOutput() ResolverFirewallRuleMapOutput
	ToResolverFirewallRuleMapOutputWithContext(context.Context) ResolverFirewallRuleMapOutput
}

ResolverFirewallRuleMapInput is an input type that accepts ResolverFirewallRuleMap and ResolverFirewallRuleMapOutput values. You can construct a concrete instance of `ResolverFirewallRuleMapInput` via:

ResolverFirewallRuleMap{ "key": ResolverFirewallRuleArgs{...} }

type ResolverFirewallRuleMapOutput

type ResolverFirewallRuleMapOutput struct{ *pulumi.OutputState }

func (ResolverFirewallRuleMapOutput) ElementType

func (ResolverFirewallRuleMapOutput) MapIndex

func (ResolverFirewallRuleMapOutput) ToResolverFirewallRuleMapOutput

func (o ResolverFirewallRuleMapOutput) ToResolverFirewallRuleMapOutput() ResolverFirewallRuleMapOutput

func (ResolverFirewallRuleMapOutput) ToResolverFirewallRuleMapOutputWithContext

func (o ResolverFirewallRuleMapOutput) ToResolverFirewallRuleMapOutputWithContext(ctx context.Context) ResolverFirewallRuleMapOutput

type ResolverFirewallRuleOutput

type ResolverFirewallRuleOutput struct{ *pulumi.OutputState }

func (ResolverFirewallRuleOutput) Action

The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list. Valid values: `ALLOW`, `BLOCK`, `ALERT`.

func (ResolverFirewallRuleOutput) BlockOverrideDnsType

func (o ResolverFirewallRuleOutput) BlockOverrideDnsType() pulumi.StringPtrOutput

The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Value values: `CNAME`.

func (ResolverFirewallRuleOutput) BlockOverrideDomain

func (o ResolverFirewallRuleOutput) BlockOverrideDomain() pulumi.StringPtrOutput

The custom DNS record to send back in response to the query.

func (ResolverFirewallRuleOutput) BlockOverrideTtl

func (o ResolverFirewallRuleOutput) BlockOverrideTtl() pulumi.IntPtrOutput

The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Minimum value of 0. Maximum value of 604800.

func (ResolverFirewallRuleOutput) BlockResponse

The way that you want DNS Firewall to block the request. Valid values: `NODATA`, `NXDOMAIN`, `OVERRIDE`.

func (ResolverFirewallRuleOutput) ElementType

func (ResolverFirewallRuleOutput) ElementType() reflect.Type

func (ResolverFirewallRuleOutput) FirewallDomainListId

func (o ResolverFirewallRuleOutput) FirewallDomainListId() pulumi.StringOutput

The ID of the domain list that you want to use in the rule.

func (ResolverFirewallRuleOutput) FirewallRuleGroupId

func (o ResolverFirewallRuleOutput) FirewallRuleGroupId() pulumi.StringOutput

The unique identifier of the firewall rule group where you want to create the rule.

func (ResolverFirewallRuleOutput) Name

A name that lets you identify the rule, to manage and use it.

func (ResolverFirewallRuleOutput) Priority

The setting that determines the processing order of the rule in the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.

func (ResolverFirewallRuleOutput) ToResolverFirewallRuleOutput

func (o ResolverFirewallRuleOutput) ToResolverFirewallRuleOutput() ResolverFirewallRuleOutput

func (ResolverFirewallRuleOutput) ToResolverFirewallRuleOutputWithContext

func (o ResolverFirewallRuleOutput) ToResolverFirewallRuleOutputWithContext(ctx context.Context) ResolverFirewallRuleOutput

type ResolverFirewallRuleState

type ResolverFirewallRuleState struct {
	// The action that DNS Firewall should take on a DNS query when it matches one of the domains in the rule's domain list. Valid values: `ALLOW`, `BLOCK`, `ALERT`.
	Action pulumi.StringPtrInput
	// The DNS record's type. This determines the format of the record value that you provided in BlockOverrideDomain. Value values: `CNAME`.
	BlockOverrideDnsType pulumi.StringPtrInput
	// The custom DNS record to send back in response to the query.
	BlockOverrideDomain pulumi.StringPtrInput
	// The recommended amount of time, in seconds, for the DNS resolver or web browser to cache the provided override record. Minimum value of 0. Maximum value of 604800.
	BlockOverrideTtl pulumi.IntPtrInput
	// The way that you want DNS Firewall to block the request. Valid values: `NODATA`, `NXDOMAIN`, `OVERRIDE`.
	BlockResponse pulumi.StringPtrInput
	// The ID of the domain list that you want to use in the rule.
	FirewallDomainListId pulumi.StringPtrInput
	// The unique identifier of the firewall rule group where you want to create the rule.
	FirewallRuleGroupId pulumi.StringPtrInput
	// A name that lets you identify the rule, to manage and use it.
	Name pulumi.StringPtrInput
	// The setting that determines the processing order of the rule in the rule group. DNS Firewall processes the rules in a rule group by order of priority, starting from the lowest setting.
	Priority pulumi.IntPtrInput
}

func (ResolverFirewallRuleState) ElementType

func (ResolverFirewallRuleState) ElementType() reflect.Type

type ResolverQueryLogConfig

type ResolverQueryLogConfig struct {
	pulumi.CustomResourceState

	// The ARN (Amazon Resource Name) of the Route 53 Resolver query logging configuration.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// The ARN of the resource that you want Route 53 Resolver to send query logs.
	// You can send query logs to an S3 bucket, a CloudWatch Logs log group, or a Kinesis Data Firehose delivery stream.
	DestinationArn pulumi.StringOutput `pulumi:"destinationArn"`
	// The name of the Route 53 Resolver query logging configuration.
	Name pulumi.StringOutput `pulumi:"name"`
	// The AWS account ID of the account that created the query logging configuration.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// An indication of whether the query logging configuration is shared with other AWS accounts, or was shared with the current account by another AWS account.
	// Sharing is configured through AWS Resource Access Manager (AWS RAM).
	// Values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`
	ShareStatus pulumi.StringOutput `pulumi:"shareStatus"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
}

Provides a Route 53 Resolver query logging configuration resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewResolverQueryLogConfig(ctx, "example", &route53.ResolverQueryLogConfigArgs{
			Name:           pulumi.String("example"),
			DestinationArn: pulumi.Any(exampleAwsS3Bucket.Arn),
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("Prod"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver query logging configurations using the Route 53 Resolver query logging configuration ID. For example:

```sh $ pulumi import aws:route53/resolverQueryLogConfig:ResolverQueryLogConfig example rqlc-92edc3b1838248bf ```

func GetResolverQueryLogConfig

func GetResolverQueryLogConfig(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverQueryLogConfigState, opts ...pulumi.ResourceOption) (*ResolverQueryLogConfig, error)

GetResolverQueryLogConfig gets an existing ResolverQueryLogConfig resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverQueryLogConfig

func NewResolverQueryLogConfig(ctx *pulumi.Context,
	name string, args *ResolverQueryLogConfigArgs, opts ...pulumi.ResourceOption) (*ResolverQueryLogConfig, error)

NewResolverQueryLogConfig registers a new resource with the given unique name, arguments, and options.

func (*ResolverQueryLogConfig) ElementType

func (*ResolverQueryLogConfig) ElementType() reflect.Type

func (*ResolverQueryLogConfig) ToResolverQueryLogConfigOutput

func (i *ResolverQueryLogConfig) ToResolverQueryLogConfigOutput() ResolverQueryLogConfigOutput

func (*ResolverQueryLogConfig) ToResolverQueryLogConfigOutputWithContext

func (i *ResolverQueryLogConfig) ToResolverQueryLogConfigOutputWithContext(ctx context.Context) ResolverQueryLogConfigOutput

type ResolverQueryLogConfigArgs

type ResolverQueryLogConfigArgs struct {
	// The ARN of the resource that you want Route 53 Resolver to send query logs.
	// You can send query logs to an S3 bucket, a CloudWatch Logs log group, or a Kinesis Data Firehose delivery stream.
	DestinationArn pulumi.StringInput
	// The name of the Route 53 Resolver query logging configuration.
	Name pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
}

The set of arguments for constructing a ResolverQueryLogConfig resource.

func (ResolverQueryLogConfigArgs) ElementType

func (ResolverQueryLogConfigArgs) ElementType() reflect.Type

type ResolverQueryLogConfigArray

type ResolverQueryLogConfigArray []ResolverQueryLogConfigInput

func (ResolverQueryLogConfigArray) ElementType

func (ResolverQueryLogConfigArray) ToResolverQueryLogConfigArrayOutput

func (i ResolverQueryLogConfigArray) ToResolverQueryLogConfigArrayOutput() ResolverQueryLogConfigArrayOutput

func (ResolverQueryLogConfigArray) ToResolverQueryLogConfigArrayOutputWithContext

func (i ResolverQueryLogConfigArray) ToResolverQueryLogConfigArrayOutputWithContext(ctx context.Context) ResolverQueryLogConfigArrayOutput

type ResolverQueryLogConfigArrayInput

type ResolverQueryLogConfigArrayInput interface {
	pulumi.Input

	ToResolverQueryLogConfigArrayOutput() ResolverQueryLogConfigArrayOutput
	ToResolverQueryLogConfigArrayOutputWithContext(context.Context) ResolverQueryLogConfigArrayOutput
}

ResolverQueryLogConfigArrayInput is an input type that accepts ResolverQueryLogConfigArray and ResolverQueryLogConfigArrayOutput values. You can construct a concrete instance of `ResolverQueryLogConfigArrayInput` via:

ResolverQueryLogConfigArray{ ResolverQueryLogConfigArgs{...} }

type ResolverQueryLogConfigArrayOutput

type ResolverQueryLogConfigArrayOutput struct{ *pulumi.OutputState }

func (ResolverQueryLogConfigArrayOutput) ElementType

func (ResolverQueryLogConfigArrayOutput) Index

func (ResolverQueryLogConfigArrayOutput) ToResolverQueryLogConfigArrayOutput

func (o ResolverQueryLogConfigArrayOutput) ToResolverQueryLogConfigArrayOutput() ResolverQueryLogConfigArrayOutput

func (ResolverQueryLogConfigArrayOutput) ToResolverQueryLogConfigArrayOutputWithContext

func (o ResolverQueryLogConfigArrayOutput) ToResolverQueryLogConfigArrayOutputWithContext(ctx context.Context) ResolverQueryLogConfigArrayOutput

type ResolverQueryLogConfigAssociation

type ResolverQueryLogConfigAssociation struct {
	pulumi.CustomResourceState

	// The ID of the Route 53 Resolver query logging configuration that you want to associate a VPC with.
	ResolverQueryLogConfigId pulumi.StringOutput `pulumi:"resolverQueryLogConfigId"`
	// The ID of a VPC that you want this query logging configuration to log queries for.
	ResourceId pulumi.StringOutput `pulumi:"resourceId"`
}

Provides a Route 53 Resolver query logging configuration association resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewResolverQueryLogConfigAssociation(ctx, "example", &route53.ResolverQueryLogConfigAssociationArgs{
			ResolverQueryLogConfigId: pulumi.Any(exampleAwsRoute53ResolverQueryLogConfig.Id),
			ResourceId:               pulumi.Any(exampleAwsVpc.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 Resolver query logging configuration associations using the Route 53 Resolver query logging configuration association ID. For example:

```sh $ pulumi import aws:route53/resolverQueryLogConfigAssociation:ResolverQueryLogConfigAssociation example rqlca-b320624fef3c4d70 ```

func GetResolverQueryLogConfigAssociation

func GetResolverQueryLogConfigAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverQueryLogConfigAssociationState, opts ...pulumi.ResourceOption) (*ResolverQueryLogConfigAssociation, error)

GetResolverQueryLogConfigAssociation gets an existing ResolverQueryLogConfigAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverQueryLogConfigAssociation

func NewResolverQueryLogConfigAssociation(ctx *pulumi.Context,
	name string, args *ResolverQueryLogConfigAssociationArgs, opts ...pulumi.ResourceOption) (*ResolverQueryLogConfigAssociation, error)

NewResolverQueryLogConfigAssociation registers a new resource with the given unique name, arguments, and options.

func (*ResolverQueryLogConfigAssociation) ElementType

func (*ResolverQueryLogConfigAssociation) ToResolverQueryLogConfigAssociationOutput

func (i *ResolverQueryLogConfigAssociation) ToResolverQueryLogConfigAssociationOutput() ResolverQueryLogConfigAssociationOutput

func (*ResolverQueryLogConfigAssociation) ToResolverQueryLogConfigAssociationOutputWithContext

func (i *ResolverQueryLogConfigAssociation) ToResolverQueryLogConfigAssociationOutputWithContext(ctx context.Context) ResolverQueryLogConfigAssociationOutput

type ResolverQueryLogConfigAssociationArgs

type ResolverQueryLogConfigAssociationArgs struct {
	// The ID of the Route 53 Resolver query logging configuration that you want to associate a VPC with.
	ResolverQueryLogConfigId pulumi.StringInput
	// The ID of a VPC that you want this query logging configuration to log queries for.
	ResourceId pulumi.StringInput
}

The set of arguments for constructing a ResolverQueryLogConfigAssociation resource.

func (ResolverQueryLogConfigAssociationArgs) ElementType

type ResolverQueryLogConfigAssociationArray

type ResolverQueryLogConfigAssociationArray []ResolverQueryLogConfigAssociationInput

func (ResolverQueryLogConfigAssociationArray) ElementType

func (ResolverQueryLogConfigAssociationArray) ToResolverQueryLogConfigAssociationArrayOutput

func (i ResolverQueryLogConfigAssociationArray) ToResolverQueryLogConfigAssociationArrayOutput() ResolverQueryLogConfigAssociationArrayOutput

func (ResolverQueryLogConfigAssociationArray) ToResolverQueryLogConfigAssociationArrayOutputWithContext

func (i ResolverQueryLogConfigAssociationArray) ToResolverQueryLogConfigAssociationArrayOutputWithContext(ctx context.Context) ResolverQueryLogConfigAssociationArrayOutput

type ResolverQueryLogConfigAssociationArrayInput

type ResolverQueryLogConfigAssociationArrayInput interface {
	pulumi.Input

	ToResolverQueryLogConfigAssociationArrayOutput() ResolverQueryLogConfigAssociationArrayOutput
	ToResolverQueryLogConfigAssociationArrayOutputWithContext(context.Context) ResolverQueryLogConfigAssociationArrayOutput
}

ResolverQueryLogConfigAssociationArrayInput is an input type that accepts ResolverQueryLogConfigAssociationArray and ResolverQueryLogConfigAssociationArrayOutput values. You can construct a concrete instance of `ResolverQueryLogConfigAssociationArrayInput` via:

ResolverQueryLogConfigAssociationArray{ ResolverQueryLogConfigAssociationArgs{...} }

type ResolverQueryLogConfigAssociationArrayOutput

type ResolverQueryLogConfigAssociationArrayOutput struct{ *pulumi.OutputState }

func (ResolverQueryLogConfigAssociationArrayOutput) ElementType

func (ResolverQueryLogConfigAssociationArrayOutput) Index

func (ResolverQueryLogConfigAssociationArrayOutput) ToResolverQueryLogConfigAssociationArrayOutput

func (o ResolverQueryLogConfigAssociationArrayOutput) ToResolverQueryLogConfigAssociationArrayOutput() ResolverQueryLogConfigAssociationArrayOutput

func (ResolverQueryLogConfigAssociationArrayOutput) ToResolverQueryLogConfigAssociationArrayOutputWithContext

func (o ResolverQueryLogConfigAssociationArrayOutput) ToResolverQueryLogConfigAssociationArrayOutputWithContext(ctx context.Context) ResolverQueryLogConfigAssociationArrayOutput

type ResolverQueryLogConfigAssociationInput

type ResolverQueryLogConfigAssociationInput interface {
	pulumi.Input

	ToResolverQueryLogConfigAssociationOutput() ResolverQueryLogConfigAssociationOutput
	ToResolverQueryLogConfigAssociationOutputWithContext(ctx context.Context) ResolverQueryLogConfigAssociationOutput
}

type ResolverQueryLogConfigAssociationMap

type ResolverQueryLogConfigAssociationMap map[string]ResolverQueryLogConfigAssociationInput

func (ResolverQueryLogConfigAssociationMap) ElementType

func (ResolverQueryLogConfigAssociationMap) ToResolverQueryLogConfigAssociationMapOutput

func (i ResolverQueryLogConfigAssociationMap) ToResolverQueryLogConfigAssociationMapOutput() ResolverQueryLogConfigAssociationMapOutput

func (ResolverQueryLogConfigAssociationMap) ToResolverQueryLogConfigAssociationMapOutputWithContext

func (i ResolverQueryLogConfigAssociationMap) ToResolverQueryLogConfigAssociationMapOutputWithContext(ctx context.Context) ResolverQueryLogConfigAssociationMapOutput

type ResolverQueryLogConfigAssociationMapInput

type ResolverQueryLogConfigAssociationMapInput interface {
	pulumi.Input

	ToResolverQueryLogConfigAssociationMapOutput() ResolverQueryLogConfigAssociationMapOutput
	ToResolverQueryLogConfigAssociationMapOutputWithContext(context.Context) ResolverQueryLogConfigAssociationMapOutput
}

ResolverQueryLogConfigAssociationMapInput is an input type that accepts ResolverQueryLogConfigAssociationMap and ResolverQueryLogConfigAssociationMapOutput values. You can construct a concrete instance of `ResolverQueryLogConfigAssociationMapInput` via:

ResolverQueryLogConfigAssociationMap{ "key": ResolverQueryLogConfigAssociationArgs{...} }

type ResolverQueryLogConfigAssociationMapOutput

type ResolverQueryLogConfigAssociationMapOutput struct{ *pulumi.OutputState }

func (ResolverQueryLogConfigAssociationMapOutput) ElementType

func (ResolverQueryLogConfigAssociationMapOutput) MapIndex

func (ResolverQueryLogConfigAssociationMapOutput) ToResolverQueryLogConfigAssociationMapOutput

func (o ResolverQueryLogConfigAssociationMapOutput) ToResolverQueryLogConfigAssociationMapOutput() ResolverQueryLogConfigAssociationMapOutput

func (ResolverQueryLogConfigAssociationMapOutput) ToResolverQueryLogConfigAssociationMapOutputWithContext

func (o ResolverQueryLogConfigAssociationMapOutput) ToResolverQueryLogConfigAssociationMapOutputWithContext(ctx context.Context) ResolverQueryLogConfigAssociationMapOutput

type ResolverQueryLogConfigAssociationOutput

type ResolverQueryLogConfigAssociationOutput struct{ *pulumi.OutputState }

func (ResolverQueryLogConfigAssociationOutput) ElementType

func (ResolverQueryLogConfigAssociationOutput) ResolverQueryLogConfigId

func (o ResolverQueryLogConfigAssociationOutput) ResolverQueryLogConfigId() pulumi.StringOutput

The ID of the Route 53 Resolver query logging configuration that you want to associate a VPC with.

func (ResolverQueryLogConfigAssociationOutput) ResourceId

The ID of a VPC that you want this query logging configuration to log queries for.

func (ResolverQueryLogConfigAssociationOutput) ToResolverQueryLogConfigAssociationOutput

func (o ResolverQueryLogConfigAssociationOutput) ToResolverQueryLogConfigAssociationOutput() ResolverQueryLogConfigAssociationOutput

func (ResolverQueryLogConfigAssociationOutput) ToResolverQueryLogConfigAssociationOutputWithContext

func (o ResolverQueryLogConfigAssociationOutput) ToResolverQueryLogConfigAssociationOutputWithContext(ctx context.Context) ResolverQueryLogConfigAssociationOutput

type ResolverQueryLogConfigAssociationState

type ResolverQueryLogConfigAssociationState struct {
	// The ID of the Route 53 Resolver query logging configuration that you want to associate a VPC with.
	ResolverQueryLogConfigId pulumi.StringPtrInput
	// The ID of a VPC that you want this query logging configuration to log queries for.
	ResourceId pulumi.StringPtrInput
}

func (ResolverQueryLogConfigAssociationState) ElementType

type ResolverQueryLogConfigInput

type ResolverQueryLogConfigInput interface {
	pulumi.Input

	ToResolverQueryLogConfigOutput() ResolverQueryLogConfigOutput
	ToResolverQueryLogConfigOutputWithContext(ctx context.Context) ResolverQueryLogConfigOutput
}

type ResolverQueryLogConfigMap

type ResolverQueryLogConfigMap map[string]ResolverQueryLogConfigInput

func (ResolverQueryLogConfigMap) ElementType

func (ResolverQueryLogConfigMap) ElementType() reflect.Type

func (ResolverQueryLogConfigMap) ToResolverQueryLogConfigMapOutput

func (i ResolverQueryLogConfigMap) ToResolverQueryLogConfigMapOutput() ResolverQueryLogConfigMapOutput

func (ResolverQueryLogConfigMap) ToResolverQueryLogConfigMapOutputWithContext

func (i ResolverQueryLogConfigMap) ToResolverQueryLogConfigMapOutputWithContext(ctx context.Context) ResolverQueryLogConfigMapOutput

type ResolverQueryLogConfigMapInput

type ResolverQueryLogConfigMapInput interface {
	pulumi.Input

	ToResolverQueryLogConfigMapOutput() ResolverQueryLogConfigMapOutput
	ToResolverQueryLogConfigMapOutputWithContext(context.Context) ResolverQueryLogConfigMapOutput
}

ResolverQueryLogConfigMapInput is an input type that accepts ResolverQueryLogConfigMap and ResolverQueryLogConfigMapOutput values. You can construct a concrete instance of `ResolverQueryLogConfigMapInput` via:

ResolverQueryLogConfigMap{ "key": ResolverQueryLogConfigArgs{...} }

type ResolverQueryLogConfigMapOutput

type ResolverQueryLogConfigMapOutput struct{ *pulumi.OutputState }

func (ResolverQueryLogConfigMapOutput) ElementType

func (ResolverQueryLogConfigMapOutput) MapIndex

func (ResolverQueryLogConfigMapOutput) ToResolverQueryLogConfigMapOutput

func (o ResolverQueryLogConfigMapOutput) ToResolverQueryLogConfigMapOutput() ResolverQueryLogConfigMapOutput

func (ResolverQueryLogConfigMapOutput) ToResolverQueryLogConfigMapOutputWithContext

func (o ResolverQueryLogConfigMapOutput) ToResolverQueryLogConfigMapOutputWithContext(ctx context.Context) ResolverQueryLogConfigMapOutput

type ResolverQueryLogConfigOutput

type ResolverQueryLogConfigOutput struct{ *pulumi.OutputState }

func (ResolverQueryLogConfigOutput) Arn

The ARN (Amazon Resource Name) of the Route 53 Resolver query logging configuration.

func (ResolverQueryLogConfigOutput) DestinationArn

The ARN of the resource that you want Route 53 Resolver to send query logs. You can send query logs to an S3 bucket, a CloudWatch Logs log group, or a Kinesis Data Firehose delivery stream.

func (ResolverQueryLogConfigOutput) ElementType

func (ResolverQueryLogConfigOutput) Name

The name of the Route 53 Resolver query logging configuration.

func (ResolverQueryLogConfigOutput) OwnerId

The AWS account ID of the account that created the query logging configuration.

func (ResolverQueryLogConfigOutput) ShareStatus

An indication of whether the query logging configuration is shared with other AWS accounts, or was shared with the current account by another AWS account. Sharing is configured through AWS Resource Access Manager (AWS RAM). Values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`

func (ResolverQueryLogConfigOutput) Tags

A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ResolverQueryLogConfigOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (ResolverQueryLogConfigOutput) ToResolverQueryLogConfigOutput

func (o ResolverQueryLogConfigOutput) ToResolverQueryLogConfigOutput() ResolverQueryLogConfigOutput

func (ResolverQueryLogConfigOutput) ToResolverQueryLogConfigOutputWithContext

func (o ResolverQueryLogConfigOutput) ToResolverQueryLogConfigOutputWithContext(ctx context.Context) ResolverQueryLogConfigOutput

type ResolverQueryLogConfigState

type ResolverQueryLogConfigState struct {
	// The ARN (Amazon Resource Name) of the Route 53 Resolver query logging configuration.
	Arn pulumi.StringPtrInput
	// The ARN of the resource that you want Route 53 Resolver to send query logs.
	// You can send query logs to an S3 bucket, a CloudWatch Logs log group, or a Kinesis Data Firehose delivery stream.
	DestinationArn pulumi.StringPtrInput
	// The name of the Route 53 Resolver query logging configuration.
	Name pulumi.StringPtrInput
	// The AWS account ID of the account that created the query logging configuration.
	OwnerId pulumi.StringPtrInput
	// An indication of whether the query logging configuration is shared with other AWS accounts, or was shared with the current account by another AWS account.
	// Sharing is configured through AWS Resource Access Manager (AWS RAM).
	// Values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`
	ShareStatus pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
}

func (ResolverQueryLogConfigState) ElementType

type ResolverRule

type ResolverRule struct {
	pulumi.CustomResourceState

	// The ARN (Amazon Resource Name) for the resolver rule.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// DNS queries for this domain name are forwarded to the IP addresses that are specified using `targetIp`.
	DomainName pulumi.StringOutput `pulumi:"domainName"`
	// A friendly name that lets you easily find a rule in the Resolver dashboard in the Route 53 console.
	Name pulumi.StringOutput `pulumi:"name"`
	// When a rule is shared with another AWS account, the account ID of the account that the rule is shared with.
	OwnerId pulumi.StringOutput `pulumi:"ownerId"`
	// The ID of the outbound resolver endpoint that you want to use to route DNS queries to the IP addresses that you specify using `targetIp`.
	// This argument should only be specified for `FORWARD` type rules.
	ResolverEndpointId pulumi.StringPtrOutput `pulumi:"resolverEndpointId"`
	// The rule type. Valid values are `FORWARD`, `SYSTEM` and `RECURSIVE`.
	RuleType pulumi.StringOutput `pulumi:"ruleType"`
	// Whether the rules is shared and, if so, whether the current account is sharing the rule with another account, or another account is sharing the rule with the current account.
	// Values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`
	ShareStatus pulumi.StringOutput `pulumi:"shareStatus"`
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Configuration block(s) indicating the IPs that you want Resolver to forward DNS queries to (documented below).
	// This argument should only be specified for `FORWARD` type rules.
	TargetIps ResolverRuleTargetIpArrayOutput `pulumi:"targetIps"`
}

Provides a Route53 Resolver rule.

## Example Usage

### System rule

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewResolverRule(ctx, "sys", &route53.ResolverRuleArgs{
			DomainName: pulumi.String("subdomain.example.com"),
			RuleType:   pulumi.String("SYSTEM"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Forward rule

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewResolverRule(ctx, "fwd", &route53.ResolverRuleArgs{
			DomainName:         pulumi.String("example.com"),
			Name:               pulumi.String("example"),
			RuleType:           pulumi.String("FORWARD"),
			ResolverEndpointId: pulumi.Any(foo.Id),
			TargetIps: route53.ResolverRuleTargetIpArray{
				&route53.ResolverRuleTargetIpArgs{
					Ip: pulumi.String("123.45.67.89"),
				},
			},
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("Prod"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route53 Resolver rules using the `id`. For example:

```sh $ pulumi import aws:route53/resolverRule:ResolverRule sys rslvr-rr-0123456789abcdef0 ```

func GetResolverRule

func GetResolverRule(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverRuleState, opts ...pulumi.ResourceOption) (*ResolverRule, error)

GetResolverRule gets an existing ResolverRule resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverRule

func NewResolverRule(ctx *pulumi.Context,
	name string, args *ResolverRuleArgs, opts ...pulumi.ResourceOption) (*ResolverRule, error)

NewResolverRule registers a new resource with the given unique name, arguments, and options.

func (*ResolverRule) ElementType

func (*ResolverRule) ElementType() reflect.Type

func (*ResolverRule) ToResolverRuleOutput

func (i *ResolverRule) ToResolverRuleOutput() ResolverRuleOutput

func (*ResolverRule) ToResolverRuleOutputWithContext

func (i *ResolverRule) ToResolverRuleOutputWithContext(ctx context.Context) ResolverRuleOutput

type ResolverRuleArgs

type ResolverRuleArgs struct {
	// DNS queries for this domain name are forwarded to the IP addresses that are specified using `targetIp`.
	DomainName pulumi.StringInput
	// A friendly name that lets you easily find a rule in the Resolver dashboard in the Route 53 console.
	Name pulumi.StringPtrInput
	// The ID of the outbound resolver endpoint that you want to use to route DNS queries to the IP addresses that you specify using `targetIp`.
	// This argument should only be specified for `FORWARD` type rules.
	ResolverEndpointId pulumi.StringPtrInput
	// The rule type. Valid values are `FORWARD`, `SYSTEM` and `RECURSIVE`.
	RuleType pulumi.StringInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Configuration block(s) indicating the IPs that you want Resolver to forward DNS queries to (documented below).
	// This argument should only be specified for `FORWARD` type rules.
	TargetIps ResolverRuleTargetIpArrayInput
}

The set of arguments for constructing a ResolverRule resource.

func (ResolverRuleArgs) ElementType

func (ResolverRuleArgs) ElementType() reflect.Type

type ResolverRuleArray

type ResolverRuleArray []ResolverRuleInput

func (ResolverRuleArray) ElementType

func (ResolverRuleArray) ElementType() reflect.Type

func (ResolverRuleArray) ToResolverRuleArrayOutput

func (i ResolverRuleArray) ToResolverRuleArrayOutput() ResolverRuleArrayOutput

func (ResolverRuleArray) ToResolverRuleArrayOutputWithContext

func (i ResolverRuleArray) ToResolverRuleArrayOutputWithContext(ctx context.Context) ResolverRuleArrayOutput

type ResolverRuleArrayInput

type ResolverRuleArrayInput interface {
	pulumi.Input

	ToResolverRuleArrayOutput() ResolverRuleArrayOutput
	ToResolverRuleArrayOutputWithContext(context.Context) ResolverRuleArrayOutput
}

ResolverRuleArrayInput is an input type that accepts ResolverRuleArray and ResolverRuleArrayOutput values. You can construct a concrete instance of `ResolverRuleArrayInput` via:

ResolverRuleArray{ ResolverRuleArgs{...} }

type ResolverRuleArrayOutput

type ResolverRuleArrayOutput struct{ *pulumi.OutputState }

func (ResolverRuleArrayOutput) ElementType

func (ResolverRuleArrayOutput) ElementType() reflect.Type

func (ResolverRuleArrayOutput) Index

func (ResolverRuleArrayOutput) ToResolverRuleArrayOutput

func (o ResolverRuleArrayOutput) ToResolverRuleArrayOutput() ResolverRuleArrayOutput

func (ResolverRuleArrayOutput) ToResolverRuleArrayOutputWithContext

func (o ResolverRuleArrayOutput) ToResolverRuleArrayOutputWithContext(ctx context.Context) ResolverRuleArrayOutput

type ResolverRuleAssociation

type ResolverRuleAssociation struct {
	pulumi.CustomResourceState

	// A name for the association that you're creating between a resolver rule and a VPC.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the resolver rule that you want to associate with the VPC.
	ResolverRuleId pulumi.StringOutput `pulumi:"resolverRuleId"`
	// The ID of the VPC that you want to associate the resolver rule with.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
}

Provides a Route53 Resolver rule association.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewResolverRuleAssociation(ctx, "example", &route53.ResolverRuleAssociationArgs{
			ResolverRuleId: pulumi.Any(sys.Id),
			VpcId:          pulumi.Any(foo.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route53 Resolver rule associations using the `id`. For example:

```sh $ pulumi import aws:route53/resolverRuleAssociation:ResolverRuleAssociation example rslvr-rrassoc-97242eaf88example ```

func GetResolverRuleAssociation

func GetResolverRuleAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ResolverRuleAssociationState, opts ...pulumi.ResourceOption) (*ResolverRuleAssociation, error)

GetResolverRuleAssociation gets an existing ResolverRuleAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewResolverRuleAssociation

func NewResolverRuleAssociation(ctx *pulumi.Context,
	name string, args *ResolverRuleAssociationArgs, opts ...pulumi.ResourceOption) (*ResolverRuleAssociation, error)

NewResolverRuleAssociation registers a new resource with the given unique name, arguments, and options.

func (*ResolverRuleAssociation) ElementType

func (*ResolverRuleAssociation) ElementType() reflect.Type

func (*ResolverRuleAssociation) ToResolverRuleAssociationOutput

func (i *ResolverRuleAssociation) ToResolverRuleAssociationOutput() ResolverRuleAssociationOutput

func (*ResolverRuleAssociation) ToResolverRuleAssociationOutputWithContext

func (i *ResolverRuleAssociation) ToResolverRuleAssociationOutputWithContext(ctx context.Context) ResolverRuleAssociationOutput

type ResolverRuleAssociationArgs

type ResolverRuleAssociationArgs struct {
	// A name for the association that you're creating between a resolver rule and a VPC.
	Name pulumi.StringPtrInput
	// The ID of the resolver rule that you want to associate with the VPC.
	ResolverRuleId pulumi.StringInput
	// The ID of the VPC that you want to associate the resolver rule with.
	VpcId pulumi.StringInput
}

The set of arguments for constructing a ResolverRuleAssociation resource.

func (ResolverRuleAssociationArgs) ElementType

type ResolverRuleAssociationArray

type ResolverRuleAssociationArray []ResolverRuleAssociationInput

func (ResolverRuleAssociationArray) ElementType

func (ResolverRuleAssociationArray) ToResolverRuleAssociationArrayOutput

func (i ResolverRuleAssociationArray) ToResolverRuleAssociationArrayOutput() ResolverRuleAssociationArrayOutput

func (ResolverRuleAssociationArray) ToResolverRuleAssociationArrayOutputWithContext

func (i ResolverRuleAssociationArray) ToResolverRuleAssociationArrayOutputWithContext(ctx context.Context) ResolverRuleAssociationArrayOutput

type ResolverRuleAssociationArrayInput

type ResolverRuleAssociationArrayInput interface {
	pulumi.Input

	ToResolverRuleAssociationArrayOutput() ResolverRuleAssociationArrayOutput
	ToResolverRuleAssociationArrayOutputWithContext(context.Context) ResolverRuleAssociationArrayOutput
}

ResolverRuleAssociationArrayInput is an input type that accepts ResolverRuleAssociationArray and ResolverRuleAssociationArrayOutput values. You can construct a concrete instance of `ResolverRuleAssociationArrayInput` via:

ResolverRuleAssociationArray{ ResolverRuleAssociationArgs{...} }

type ResolverRuleAssociationArrayOutput

type ResolverRuleAssociationArrayOutput struct{ *pulumi.OutputState }

func (ResolverRuleAssociationArrayOutput) ElementType

func (ResolverRuleAssociationArrayOutput) Index

func (ResolverRuleAssociationArrayOutput) ToResolverRuleAssociationArrayOutput

func (o ResolverRuleAssociationArrayOutput) ToResolverRuleAssociationArrayOutput() ResolverRuleAssociationArrayOutput

func (ResolverRuleAssociationArrayOutput) ToResolverRuleAssociationArrayOutputWithContext

func (o ResolverRuleAssociationArrayOutput) ToResolverRuleAssociationArrayOutputWithContext(ctx context.Context) ResolverRuleAssociationArrayOutput

type ResolverRuleAssociationInput

type ResolverRuleAssociationInput interface {
	pulumi.Input

	ToResolverRuleAssociationOutput() ResolverRuleAssociationOutput
	ToResolverRuleAssociationOutputWithContext(ctx context.Context) ResolverRuleAssociationOutput
}

type ResolverRuleAssociationMap

type ResolverRuleAssociationMap map[string]ResolverRuleAssociationInput

func (ResolverRuleAssociationMap) ElementType

func (ResolverRuleAssociationMap) ElementType() reflect.Type

func (ResolverRuleAssociationMap) ToResolverRuleAssociationMapOutput

func (i ResolverRuleAssociationMap) ToResolverRuleAssociationMapOutput() ResolverRuleAssociationMapOutput

func (ResolverRuleAssociationMap) ToResolverRuleAssociationMapOutputWithContext

func (i ResolverRuleAssociationMap) ToResolverRuleAssociationMapOutputWithContext(ctx context.Context) ResolverRuleAssociationMapOutput

type ResolverRuleAssociationMapInput

type ResolverRuleAssociationMapInput interface {
	pulumi.Input

	ToResolverRuleAssociationMapOutput() ResolverRuleAssociationMapOutput
	ToResolverRuleAssociationMapOutputWithContext(context.Context) ResolverRuleAssociationMapOutput
}

ResolverRuleAssociationMapInput is an input type that accepts ResolverRuleAssociationMap and ResolverRuleAssociationMapOutput values. You can construct a concrete instance of `ResolverRuleAssociationMapInput` via:

ResolverRuleAssociationMap{ "key": ResolverRuleAssociationArgs{...} }

type ResolverRuleAssociationMapOutput

type ResolverRuleAssociationMapOutput struct{ *pulumi.OutputState }

func (ResolverRuleAssociationMapOutput) ElementType

func (ResolverRuleAssociationMapOutput) MapIndex

func (ResolverRuleAssociationMapOutput) ToResolverRuleAssociationMapOutput

func (o ResolverRuleAssociationMapOutput) ToResolverRuleAssociationMapOutput() ResolverRuleAssociationMapOutput

func (ResolverRuleAssociationMapOutput) ToResolverRuleAssociationMapOutputWithContext

func (o ResolverRuleAssociationMapOutput) ToResolverRuleAssociationMapOutputWithContext(ctx context.Context) ResolverRuleAssociationMapOutput

type ResolverRuleAssociationOutput

type ResolverRuleAssociationOutput struct{ *pulumi.OutputState }

func (ResolverRuleAssociationOutput) ElementType

func (ResolverRuleAssociationOutput) Name

A name for the association that you're creating between a resolver rule and a VPC.

func (ResolverRuleAssociationOutput) ResolverRuleId

The ID of the resolver rule that you want to associate with the VPC.

func (ResolverRuleAssociationOutput) ToResolverRuleAssociationOutput

func (o ResolverRuleAssociationOutput) ToResolverRuleAssociationOutput() ResolverRuleAssociationOutput

func (ResolverRuleAssociationOutput) ToResolverRuleAssociationOutputWithContext

func (o ResolverRuleAssociationOutput) ToResolverRuleAssociationOutputWithContext(ctx context.Context) ResolverRuleAssociationOutput

func (ResolverRuleAssociationOutput) VpcId

The ID of the VPC that you want to associate the resolver rule with.

type ResolverRuleAssociationState

type ResolverRuleAssociationState struct {
	// A name for the association that you're creating between a resolver rule and a VPC.
	Name pulumi.StringPtrInput
	// The ID of the resolver rule that you want to associate with the VPC.
	ResolverRuleId pulumi.StringPtrInput
	// The ID of the VPC that you want to associate the resolver rule with.
	VpcId pulumi.StringPtrInput
}

func (ResolverRuleAssociationState) ElementType

type ResolverRuleInput

type ResolverRuleInput interface {
	pulumi.Input

	ToResolverRuleOutput() ResolverRuleOutput
	ToResolverRuleOutputWithContext(ctx context.Context) ResolverRuleOutput
}

type ResolverRuleMap

type ResolverRuleMap map[string]ResolverRuleInput

func (ResolverRuleMap) ElementType

func (ResolverRuleMap) ElementType() reflect.Type

func (ResolverRuleMap) ToResolverRuleMapOutput

func (i ResolverRuleMap) ToResolverRuleMapOutput() ResolverRuleMapOutput

func (ResolverRuleMap) ToResolverRuleMapOutputWithContext

func (i ResolverRuleMap) ToResolverRuleMapOutputWithContext(ctx context.Context) ResolverRuleMapOutput

type ResolverRuleMapInput

type ResolverRuleMapInput interface {
	pulumi.Input

	ToResolverRuleMapOutput() ResolverRuleMapOutput
	ToResolverRuleMapOutputWithContext(context.Context) ResolverRuleMapOutput
}

ResolverRuleMapInput is an input type that accepts ResolverRuleMap and ResolverRuleMapOutput values. You can construct a concrete instance of `ResolverRuleMapInput` via:

ResolverRuleMap{ "key": ResolverRuleArgs{...} }

type ResolverRuleMapOutput

type ResolverRuleMapOutput struct{ *pulumi.OutputState }

func (ResolverRuleMapOutput) ElementType

func (ResolverRuleMapOutput) ElementType() reflect.Type

func (ResolverRuleMapOutput) MapIndex

func (ResolverRuleMapOutput) ToResolverRuleMapOutput

func (o ResolverRuleMapOutput) ToResolverRuleMapOutput() ResolverRuleMapOutput

func (ResolverRuleMapOutput) ToResolverRuleMapOutputWithContext

func (o ResolverRuleMapOutput) ToResolverRuleMapOutputWithContext(ctx context.Context) ResolverRuleMapOutput

type ResolverRuleOutput

type ResolverRuleOutput struct{ *pulumi.OutputState }

func (ResolverRuleOutput) Arn

The ARN (Amazon Resource Name) for the resolver rule.

func (ResolverRuleOutput) DomainName

func (o ResolverRuleOutput) DomainName() pulumi.StringOutput

DNS queries for this domain name are forwarded to the IP addresses that are specified using `targetIp`.

func (ResolverRuleOutput) ElementType

func (ResolverRuleOutput) ElementType() reflect.Type

func (ResolverRuleOutput) Name

A friendly name that lets you easily find a rule in the Resolver dashboard in the Route 53 console.

func (ResolverRuleOutput) OwnerId

When a rule is shared with another AWS account, the account ID of the account that the rule is shared with.

func (ResolverRuleOutput) ResolverEndpointId

func (o ResolverRuleOutput) ResolverEndpointId() pulumi.StringPtrOutput

The ID of the outbound resolver endpoint that you want to use to route DNS queries to the IP addresses that you specify using `targetIp`. This argument should only be specified for `FORWARD` type rules.

func (ResolverRuleOutput) RuleType

func (o ResolverRuleOutput) RuleType() pulumi.StringOutput

The rule type. Valid values are `FORWARD`, `SYSTEM` and `RECURSIVE`.

func (ResolverRuleOutput) ShareStatus

func (o ResolverRuleOutput) ShareStatus() pulumi.StringOutput

Whether the rules is shared and, if so, whether the current account is sharing the rule with another account, or another account is sharing the rule with the current account. Values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`

func (ResolverRuleOutput) Tags

A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ResolverRuleOutput) TagsAll deprecated

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (ResolverRuleOutput) TargetIps

Configuration block(s) indicating the IPs that you want Resolver to forward DNS queries to (documented below). This argument should only be specified for `FORWARD` type rules.

func (ResolverRuleOutput) ToResolverRuleOutput

func (o ResolverRuleOutput) ToResolverRuleOutput() ResolverRuleOutput

func (ResolverRuleOutput) ToResolverRuleOutputWithContext

func (o ResolverRuleOutput) ToResolverRuleOutputWithContext(ctx context.Context) ResolverRuleOutput

type ResolverRuleState

type ResolverRuleState struct {
	// The ARN (Amazon Resource Name) for the resolver rule.
	Arn pulumi.StringPtrInput
	// DNS queries for this domain name are forwarded to the IP addresses that are specified using `targetIp`.
	DomainName pulumi.StringPtrInput
	// A friendly name that lets you easily find a rule in the Resolver dashboard in the Route 53 console.
	Name pulumi.StringPtrInput
	// When a rule is shared with another AWS account, the account ID of the account that the rule is shared with.
	OwnerId pulumi.StringPtrInput
	// The ID of the outbound resolver endpoint that you want to use to route DNS queries to the IP addresses that you specify using `targetIp`.
	// This argument should only be specified for `FORWARD` type rules.
	ResolverEndpointId pulumi.StringPtrInput
	// The rule type. Valid values are `FORWARD`, `SYSTEM` and `RECURSIVE`.
	RuleType pulumi.StringPtrInput
	// Whether the rules is shared and, if so, whether the current account is sharing the rule with another account, or another account is sharing the rule with the current account.
	// Values are `NOT_SHARED`, `SHARED_BY_ME` or `SHARED_WITH_ME`
	ShareStatus pulumi.StringPtrInput
	// A map of tags to assign to the resource. .If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// Configuration block(s) indicating the IPs that you want Resolver to forward DNS queries to (documented below).
	// This argument should only be specified for `FORWARD` type rules.
	TargetIps ResolverRuleTargetIpArrayInput
}

func (ResolverRuleState) ElementType

func (ResolverRuleState) ElementType() reflect.Type

type ResolverRuleTargetIp

type ResolverRuleTargetIp struct {
	// One IP address that you want to forward DNS queries to. You can specify only IPv4 addresses.
	Ip string `pulumi:"ip"`
	// The port at `ip` that you want to forward DNS queries to. Default value is `53`.
	Port *int `pulumi:"port"`
	// The protocol for the resolver endpoint. Valid values can be found in the [AWS documentation](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_TargetAddress.html). Default value is `Do53`.
	Protocol *string `pulumi:"protocol"`
}

type ResolverRuleTargetIpArgs

type ResolverRuleTargetIpArgs struct {
	// One IP address that you want to forward DNS queries to. You can specify only IPv4 addresses.
	Ip pulumi.StringInput `pulumi:"ip"`
	// The port at `ip` that you want to forward DNS queries to. Default value is `53`.
	Port pulumi.IntPtrInput `pulumi:"port"`
	// The protocol for the resolver endpoint. Valid values can be found in the [AWS documentation](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_TargetAddress.html). Default value is `Do53`.
	Protocol pulumi.StringPtrInput `pulumi:"protocol"`
}

func (ResolverRuleTargetIpArgs) ElementType

func (ResolverRuleTargetIpArgs) ElementType() reflect.Type

func (ResolverRuleTargetIpArgs) ToResolverRuleTargetIpOutput

func (i ResolverRuleTargetIpArgs) ToResolverRuleTargetIpOutput() ResolverRuleTargetIpOutput

func (ResolverRuleTargetIpArgs) ToResolverRuleTargetIpOutputWithContext

func (i ResolverRuleTargetIpArgs) ToResolverRuleTargetIpOutputWithContext(ctx context.Context) ResolverRuleTargetIpOutput

type ResolverRuleTargetIpArray

type ResolverRuleTargetIpArray []ResolverRuleTargetIpInput

func (ResolverRuleTargetIpArray) ElementType

func (ResolverRuleTargetIpArray) ElementType() reflect.Type

func (ResolverRuleTargetIpArray) ToResolverRuleTargetIpArrayOutput

func (i ResolverRuleTargetIpArray) ToResolverRuleTargetIpArrayOutput() ResolverRuleTargetIpArrayOutput

func (ResolverRuleTargetIpArray) ToResolverRuleTargetIpArrayOutputWithContext

func (i ResolverRuleTargetIpArray) ToResolverRuleTargetIpArrayOutputWithContext(ctx context.Context) ResolverRuleTargetIpArrayOutput

type ResolverRuleTargetIpArrayInput

type ResolverRuleTargetIpArrayInput interface {
	pulumi.Input

	ToResolverRuleTargetIpArrayOutput() ResolverRuleTargetIpArrayOutput
	ToResolverRuleTargetIpArrayOutputWithContext(context.Context) ResolverRuleTargetIpArrayOutput
}

ResolverRuleTargetIpArrayInput is an input type that accepts ResolverRuleTargetIpArray and ResolverRuleTargetIpArrayOutput values. You can construct a concrete instance of `ResolverRuleTargetIpArrayInput` via:

ResolverRuleTargetIpArray{ ResolverRuleTargetIpArgs{...} }

type ResolverRuleTargetIpArrayOutput

type ResolverRuleTargetIpArrayOutput struct{ *pulumi.OutputState }

func (ResolverRuleTargetIpArrayOutput) ElementType

func (ResolverRuleTargetIpArrayOutput) Index

func (ResolverRuleTargetIpArrayOutput) ToResolverRuleTargetIpArrayOutput

func (o ResolverRuleTargetIpArrayOutput) ToResolverRuleTargetIpArrayOutput() ResolverRuleTargetIpArrayOutput

func (ResolverRuleTargetIpArrayOutput) ToResolverRuleTargetIpArrayOutputWithContext

func (o ResolverRuleTargetIpArrayOutput) ToResolverRuleTargetIpArrayOutputWithContext(ctx context.Context) ResolverRuleTargetIpArrayOutput

type ResolverRuleTargetIpInput

type ResolverRuleTargetIpInput interface {
	pulumi.Input

	ToResolverRuleTargetIpOutput() ResolverRuleTargetIpOutput
	ToResolverRuleTargetIpOutputWithContext(context.Context) ResolverRuleTargetIpOutput
}

ResolverRuleTargetIpInput is an input type that accepts ResolverRuleTargetIpArgs and ResolverRuleTargetIpOutput values. You can construct a concrete instance of `ResolverRuleTargetIpInput` via:

ResolverRuleTargetIpArgs{...}

type ResolverRuleTargetIpOutput

type ResolverRuleTargetIpOutput struct{ *pulumi.OutputState }

func (ResolverRuleTargetIpOutput) ElementType

func (ResolverRuleTargetIpOutput) ElementType() reflect.Type

func (ResolverRuleTargetIpOutput) Ip

One IP address that you want to forward DNS queries to. You can specify only IPv4 addresses.

func (ResolverRuleTargetIpOutput) Port

The port at `ip` that you want to forward DNS queries to. Default value is `53`.

func (ResolverRuleTargetIpOutput) Protocol added in v6.23.0

The protocol for the resolver endpoint. Valid values can be found in the [AWS documentation](https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_TargetAddress.html). Default value is `Do53`.

func (ResolverRuleTargetIpOutput) ToResolverRuleTargetIpOutput

func (o ResolverRuleTargetIpOutput) ToResolverRuleTargetIpOutput() ResolverRuleTargetIpOutput

func (ResolverRuleTargetIpOutput) ToResolverRuleTargetIpOutputWithContext

func (o ResolverRuleTargetIpOutput) ToResolverRuleTargetIpOutputWithContext(ctx context.Context) ResolverRuleTargetIpOutput

type TrafficPolicy

type TrafficPolicy struct {
	pulumi.CustomResourceState

	// Comment for the traffic policy.
	Comment pulumi.StringPtrOutput `pulumi:"comment"`
	// Policy document. This is a JSON formatted string. For more information about building Route53 traffic policy documents, see the [AWS Route53 Traffic Policy document format](https://docs.aws.amazon.com/Route53/latest/APIReference/api-policies-traffic-policy-document-format.html)
	//
	// The following arguments are optional:
	Document pulumi.StringOutput `pulumi:"document"`
	// Name of the traffic policy.
	Name pulumi.StringOutput `pulumi:"name"`
	// DNS type of the resource record sets that Amazon Route 53 creates when you use a traffic policy to create a traffic policy instance.
	Type pulumi.StringOutput `pulumi:"type"`
	// Version number of the traffic policy. This value is automatically incremented by AWS after each update of this resource.
	Version pulumi.IntOutput `pulumi:"version"`
}

Manages a Route53 Traffic Policy.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewTrafficPolicy(ctx, "example", &route53.TrafficPolicyArgs{
			Name:    pulumi.String("example"),
			Comment: pulumi.String("example comment"),
			Document: pulumi.String(`{
  "AWSPolicyFormatVersion": "2015-10-01",
  "RecordType": "A",
  "Endpoints": {
    "endpoint-start-NkPh": {
      "Type": "value",
      "Value": "10.0.0.2"
    }
  },
  "StartEndpoint": "endpoint-start-NkPh"
}

`),

		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route53 Traffic Policy using the `id` and `version`. For example:

```sh $ pulumi import aws:route53/trafficPolicy:TrafficPolicy example 01a52019-d16f-422a-ae72-c306d2b6df7e/1 ```

func GetTrafficPolicy

func GetTrafficPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TrafficPolicyState, opts ...pulumi.ResourceOption) (*TrafficPolicy, error)

GetTrafficPolicy gets an existing TrafficPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTrafficPolicy

func NewTrafficPolicy(ctx *pulumi.Context,
	name string, args *TrafficPolicyArgs, opts ...pulumi.ResourceOption) (*TrafficPolicy, error)

NewTrafficPolicy registers a new resource with the given unique name, arguments, and options.

func (*TrafficPolicy) ElementType

func (*TrafficPolicy) ElementType() reflect.Type

func (*TrafficPolicy) ToTrafficPolicyOutput

func (i *TrafficPolicy) ToTrafficPolicyOutput() TrafficPolicyOutput

func (*TrafficPolicy) ToTrafficPolicyOutputWithContext

func (i *TrafficPolicy) ToTrafficPolicyOutputWithContext(ctx context.Context) TrafficPolicyOutput

type TrafficPolicyArgs

type TrafficPolicyArgs struct {
	// Comment for the traffic policy.
	Comment pulumi.StringPtrInput
	// Policy document. This is a JSON formatted string. For more information about building Route53 traffic policy documents, see the [AWS Route53 Traffic Policy document format](https://docs.aws.amazon.com/Route53/latest/APIReference/api-policies-traffic-policy-document-format.html)
	//
	// The following arguments are optional:
	Document pulumi.StringInput
	// Name of the traffic policy.
	Name pulumi.StringPtrInput
}

The set of arguments for constructing a TrafficPolicy resource.

func (TrafficPolicyArgs) ElementType

func (TrafficPolicyArgs) ElementType() reflect.Type

type TrafficPolicyArray

type TrafficPolicyArray []TrafficPolicyInput

func (TrafficPolicyArray) ElementType

func (TrafficPolicyArray) ElementType() reflect.Type

func (TrafficPolicyArray) ToTrafficPolicyArrayOutput

func (i TrafficPolicyArray) ToTrafficPolicyArrayOutput() TrafficPolicyArrayOutput

func (TrafficPolicyArray) ToTrafficPolicyArrayOutputWithContext

func (i TrafficPolicyArray) ToTrafficPolicyArrayOutputWithContext(ctx context.Context) TrafficPolicyArrayOutput

type TrafficPolicyArrayInput

type TrafficPolicyArrayInput interface {
	pulumi.Input

	ToTrafficPolicyArrayOutput() TrafficPolicyArrayOutput
	ToTrafficPolicyArrayOutputWithContext(context.Context) TrafficPolicyArrayOutput
}

TrafficPolicyArrayInput is an input type that accepts TrafficPolicyArray and TrafficPolicyArrayOutput values. You can construct a concrete instance of `TrafficPolicyArrayInput` via:

TrafficPolicyArray{ TrafficPolicyArgs{...} }

type TrafficPolicyArrayOutput

type TrafficPolicyArrayOutput struct{ *pulumi.OutputState }

func (TrafficPolicyArrayOutput) ElementType

func (TrafficPolicyArrayOutput) ElementType() reflect.Type

func (TrafficPolicyArrayOutput) Index

func (TrafficPolicyArrayOutput) ToTrafficPolicyArrayOutput

func (o TrafficPolicyArrayOutput) ToTrafficPolicyArrayOutput() TrafficPolicyArrayOutput

func (TrafficPolicyArrayOutput) ToTrafficPolicyArrayOutputWithContext

func (o TrafficPolicyArrayOutput) ToTrafficPolicyArrayOutputWithContext(ctx context.Context) TrafficPolicyArrayOutput

type TrafficPolicyInput

type TrafficPolicyInput interface {
	pulumi.Input

	ToTrafficPolicyOutput() TrafficPolicyOutput
	ToTrafficPolicyOutputWithContext(ctx context.Context) TrafficPolicyOutput
}

type TrafficPolicyInstance

type TrafficPolicyInstance struct {
	pulumi.CustomResourceState

	// ID of the hosted zone that you want Amazon Route 53 to create resource record sets in by using the configuration in a traffic policy.
	HostedZoneId pulumi.StringOutput `pulumi:"hostedZoneId"`
	// Domain name for which Amazon Route 53 responds to DNS queries by using the resource record sets that Route 53 creates for this traffic policy instance.
	Name pulumi.StringOutput `pulumi:"name"`
	// ID of the traffic policy that you want to use to create resource record sets in the specified hosted zone.
	TrafficPolicyId pulumi.StringOutput `pulumi:"trafficPolicyId"`
	// Version of the traffic policy
	TrafficPolicyVersion pulumi.IntOutput `pulumi:"trafficPolicyVersion"`
	// TTL that you want Amazon Route 53 to assign to all the resource record sets that it creates in the specified hosted zone.
	Ttl pulumi.IntOutput `pulumi:"ttl"`
}

Provides a Route53 traffic policy instance resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewTrafficPolicyInstance(ctx, "test", &route53.TrafficPolicyInstanceArgs{
			Name:                 pulumi.String("test.example.com"),
			TrafficPolicyId:      pulumi.String("b3gb108f-ea6f-45a5-baab-9d112d8b4037"),
			TrafficPolicyVersion: pulumi.Int(1),
			HostedZoneId:         pulumi.String("Z033120931TAQO548OGJC"),
			Ttl:                  pulumi.Int(360),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route53 traffic policy instance using its id. For example:

```sh $ pulumi import aws:route53/trafficPolicyInstance:TrafficPolicyInstance test df579d9a-6396-410e-ac22-e7ad60cf9e7e ```

func GetTrafficPolicyInstance

func GetTrafficPolicyInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *TrafficPolicyInstanceState, opts ...pulumi.ResourceOption) (*TrafficPolicyInstance, error)

GetTrafficPolicyInstance gets an existing TrafficPolicyInstance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewTrafficPolicyInstance

func NewTrafficPolicyInstance(ctx *pulumi.Context,
	name string, args *TrafficPolicyInstanceArgs, opts ...pulumi.ResourceOption) (*TrafficPolicyInstance, error)

NewTrafficPolicyInstance registers a new resource with the given unique name, arguments, and options.

func (*TrafficPolicyInstance) ElementType

func (*TrafficPolicyInstance) ElementType() reflect.Type

func (*TrafficPolicyInstance) ToTrafficPolicyInstanceOutput

func (i *TrafficPolicyInstance) ToTrafficPolicyInstanceOutput() TrafficPolicyInstanceOutput

func (*TrafficPolicyInstance) ToTrafficPolicyInstanceOutputWithContext

func (i *TrafficPolicyInstance) ToTrafficPolicyInstanceOutputWithContext(ctx context.Context) TrafficPolicyInstanceOutput

type TrafficPolicyInstanceArgs

type TrafficPolicyInstanceArgs struct {
	// ID of the hosted zone that you want Amazon Route 53 to create resource record sets in by using the configuration in a traffic policy.
	HostedZoneId pulumi.StringInput
	// Domain name for which Amazon Route 53 responds to DNS queries by using the resource record sets that Route 53 creates for this traffic policy instance.
	Name pulumi.StringPtrInput
	// ID of the traffic policy that you want to use to create resource record sets in the specified hosted zone.
	TrafficPolicyId pulumi.StringInput
	// Version of the traffic policy
	TrafficPolicyVersion pulumi.IntInput
	// TTL that you want Amazon Route 53 to assign to all the resource record sets that it creates in the specified hosted zone.
	Ttl pulumi.IntInput
}

The set of arguments for constructing a TrafficPolicyInstance resource.

func (TrafficPolicyInstanceArgs) ElementType

func (TrafficPolicyInstanceArgs) ElementType() reflect.Type

type TrafficPolicyInstanceArray

type TrafficPolicyInstanceArray []TrafficPolicyInstanceInput

func (TrafficPolicyInstanceArray) ElementType

func (TrafficPolicyInstanceArray) ElementType() reflect.Type

func (TrafficPolicyInstanceArray) ToTrafficPolicyInstanceArrayOutput

func (i TrafficPolicyInstanceArray) ToTrafficPolicyInstanceArrayOutput() TrafficPolicyInstanceArrayOutput

func (TrafficPolicyInstanceArray) ToTrafficPolicyInstanceArrayOutputWithContext

func (i TrafficPolicyInstanceArray) ToTrafficPolicyInstanceArrayOutputWithContext(ctx context.Context) TrafficPolicyInstanceArrayOutput

type TrafficPolicyInstanceArrayInput

type TrafficPolicyInstanceArrayInput interface {
	pulumi.Input

	ToTrafficPolicyInstanceArrayOutput() TrafficPolicyInstanceArrayOutput
	ToTrafficPolicyInstanceArrayOutputWithContext(context.Context) TrafficPolicyInstanceArrayOutput
}

TrafficPolicyInstanceArrayInput is an input type that accepts TrafficPolicyInstanceArray and TrafficPolicyInstanceArrayOutput values. You can construct a concrete instance of `TrafficPolicyInstanceArrayInput` via:

TrafficPolicyInstanceArray{ TrafficPolicyInstanceArgs{...} }

type TrafficPolicyInstanceArrayOutput

type TrafficPolicyInstanceArrayOutput struct{ *pulumi.OutputState }

func (TrafficPolicyInstanceArrayOutput) ElementType

func (TrafficPolicyInstanceArrayOutput) Index

func (TrafficPolicyInstanceArrayOutput) ToTrafficPolicyInstanceArrayOutput

func (o TrafficPolicyInstanceArrayOutput) ToTrafficPolicyInstanceArrayOutput() TrafficPolicyInstanceArrayOutput

func (TrafficPolicyInstanceArrayOutput) ToTrafficPolicyInstanceArrayOutputWithContext

func (o TrafficPolicyInstanceArrayOutput) ToTrafficPolicyInstanceArrayOutputWithContext(ctx context.Context) TrafficPolicyInstanceArrayOutput

type TrafficPolicyInstanceInput

type TrafficPolicyInstanceInput interface {
	pulumi.Input

	ToTrafficPolicyInstanceOutput() TrafficPolicyInstanceOutput
	ToTrafficPolicyInstanceOutputWithContext(ctx context.Context) TrafficPolicyInstanceOutput
}

type TrafficPolicyInstanceMap

type TrafficPolicyInstanceMap map[string]TrafficPolicyInstanceInput

func (TrafficPolicyInstanceMap) ElementType

func (TrafficPolicyInstanceMap) ElementType() reflect.Type

func (TrafficPolicyInstanceMap) ToTrafficPolicyInstanceMapOutput

func (i TrafficPolicyInstanceMap) ToTrafficPolicyInstanceMapOutput() TrafficPolicyInstanceMapOutput

func (TrafficPolicyInstanceMap) ToTrafficPolicyInstanceMapOutputWithContext

func (i TrafficPolicyInstanceMap) ToTrafficPolicyInstanceMapOutputWithContext(ctx context.Context) TrafficPolicyInstanceMapOutput

type TrafficPolicyInstanceMapInput

type TrafficPolicyInstanceMapInput interface {
	pulumi.Input

	ToTrafficPolicyInstanceMapOutput() TrafficPolicyInstanceMapOutput
	ToTrafficPolicyInstanceMapOutputWithContext(context.Context) TrafficPolicyInstanceMapOutput
}

TrafficPolicyInstanceMapInput is an input type that accepts TrafficPolicyInstanceMap and TrafficPolicyInstanceMapOutput values. You can construct a concrete instance of `TrafficPolicyInstanceMapInput` via:

TrafficPolicyInstanceMap{ "key": TrafficPolicyInstanceArgs{...} }

type TrafficPolicyInstanceMapOutput

type TrafficPolicyInstanceMapOutput struct{ *pulumi.OutputState }

func (TrafficPolicyInstanceMapOutput) ElementType

func (TrafficPolicyInstanceMapOutput) MapIndex

func (TrafficPolicyInstanceMapOutput) ToTrafficPolicyInstanceMapOutput

func (o TrafficPolicyInstanceMapOutput) ToTrafficPolicyInstanceMapOutput() TrafficPolicyInstanceMapOutput

func (TrafficPolicyInstanceMapOutput) ToTrafficPolicyInstanceMapOutputWithContext

func (o TrafficPolicyInstanceMapOutput) ToTrafficPolicyInstanceMapOutputWithContext(ctx context.Context) TrafficPolicyInstanceMapOutput

type TrafficPolicyInstanceOutput

type TrafficPolicyInstanceOutput struct{ *pulumi.OutputState }

func (TrafficPolicyInstanceOutput) ElementType

func (TrafficPolicyInstanceOutput) HostedZoneId

ID of the hosted zone that you want Amazon Route 53 to create resource record sets in by using the configuration in a traffic policy.

func (TrafficPolicyInstanceOutput) Name

Domain name for which Amazon Route 53 responds to DNS queries by using the resource record sets that Route 53 creates for this traffic policy instance.

func (TrafficPolicyInstanceOutput) ToTrafficPolicyInstanceOutput

func (o TrafficPolicyInstanceOutput) ToTrafficPolicyInstanceOutput() TrafficPolicyInstanceOutput

func (TrafficPolicyInstanceOutput) ToTrafficPolicyInstanceOutputWithContext

func (o TrafficPolicyInstanceOutput) ToTrafficPolicyInstanceOutputWithContext(ctx context.Context) TrafficPolicyInstanceOutput

func (TrafficPolicyInstanceOutput) TrafficPolicyId

func (o TrafficPolicyInstanceOutput) TrafficPolicyId() pulumi.StringOutput

ID of the traffic policy that you want to use to create resource record sets in the specified hosted zone.

func (TrafficPolicyInstanceOutput) TrafficPolicyVersion

func (o TrafficPolicyInstanceOutput) TrafficPolicyVersion() pulumi.IntOutput

Version of the traffic policy

func (TrafficPolicyInstanceOutput) Ttl

TTL that you want Amazon Route 53 to assign to all the resource record sets that it creates in the specified hosted zone.

type TrafficPolicyInstanceState

type TrafficPolicyInstanceState struct {
	// ID of the hosted zone that you want Amazon Route 53 to create resource record sets in by using the configuration in a traffic policy.
	HostedZoneId pulumi.StringPtrInput
	// Domain name for which Amazon Route 53 responds to DNS queries by using the resource record sets that Route 53 creates for this traffic policy instance.
	Name pulumi.StringPtrInput
	// ID of the traffic policy that you want to use to create resource record sets in the specified hosted zone.
	TrafficPolicyId pulumi.StringPtrInput
	// Version of the traffic policy
	TrafficPolicyVersion pulumi.IntPtrInput
	// TTL that you want Amazon Route 53 to assign to all the resource record sets that it creates in the specified hosted zone.
	Ttl pulumi.IntPtrInput
}

func (TrafficPolicyInstanceState) ElementType

func (TrafficPolicyInstanceState) ElementType() reflect.Type

type TrafficPolicyMap

type TrafficPolicyMap map[string]TrafficPolicyInput

func (TrafficPolicyMap) ElementType

func (TrafficPolicyMap) ElementType() reflect.Type

func (TrafficPolicyMap) ToTrafficPolicyMapOutput

func (i TrafficPolicyMap) ToTrafficPolicyMapOutput() TrafficPolicyMapOutput

func (TrafficPolicyMap) ToTrafficPolicyMapOutputWithContext

func (i TrafficPolicyMap) ToTrafficPolicyMapOutputWithContext(ctx context.Context) TrafficPolicyMapOutput

type TrafficPolicyMapInput

type TrafficPolicyMapInput interface {
	pulumi.Input

	ToTrafficPolicyMapOutput() TrafficPolicyMapOutput
	ToTrafficPolicyMapOutputWithContext(context.Context) TrafficPolicyMapOutput
}

TrafficPolicyMapInput is an input type that accepts TrafficPolicyMap and TrafficPolicyMapOutput values. You can construct a concrete instance of `TrafficPolicyMapInput` via:

TrafficPolicyMap{ "key": TrafficPolicyArgs{...} }

type TrafficPolicyMapOutput

type TrafficPolicyMapOutput struct{ *pulumi.OutputState }

func (TrafficPolicyMapOutput) ElementType

func (TrafficPolicyMapOutput) ElementType() reflect.Type

func (TrafficPolicyMapOutput) MapIndex

func (TrafficPolicyMapOutput) ToTrafficPolicyMapOutput

func (o TrafficPolicyMapOutput) ToTrafficPolicyMapOutput() TrafficPolicyMapOutput

func (TrafficPolicyMapOutput) ToTrafficPolicyMapOutputWithContext

func (o TrafficPolicyMapOutput) ToTrafficPolicyMapOutputWithContext(ctx context.Context) TrafficPolicyMapOutput

type TrafficPolicyOutput

type TrafficPolicyOutput struct{ *pulumi.OutputState }

func (TrafficPolicyOutput) Comment

Comment for the traffic policy.

func (TrafficPolicyOutput) Document

Policy document. This is a JSON formatted string. For more information about building Route53 traffic policy documents, see the [AWS Route53 Traffic Policy document format](https://docs.aws.amazon.com/Route53/latest/APIReference/api-policies-traffic-policy-document-format.html)

The following arguments are optional:

func (TrafficPolicyOutput) ElementType

func (TrafficPolicyOutput) ElementType() reflect.Type

func (TrafficPolicyOutput) Name

Name of the traffic policy.

func (TrafficPolicyOutput) ToTrafficPolicyOutput

func (o TrafficPolicyOutput) ToTrafficPolicyOutput() TrafficPolicyOutput

func (TrafficPolicyOutput) ToTrafficPolicyOutputWithContext

func (o TrafficPolicyOutput) ToTrafficPolicyOutputWithContext(ctx context.Context) TrafficPolicyOutput

func (TrafficPolicyOutput) Type

DNS type of the resource record sets that Amazon Route 53 creates when you use a traffic policy to create a traffic policy instance.

func (TrafficPolicyOutput) Version

func (o TrafficPolicyOutput) Version() pulumi.IntOutput

Version number of the traffic policy. This value is automatically incremented by AWS after each update of this resource.

type TrafficPolicyState

type TrafficPolicyState struct {
	// Comment for the traffic policy.
	Comment pulumi.StringPtrInput
	// Policy document. This is a JSON formatted string. For more information about building Route53 traffic policy documents, see the [AWS Route53 Traffic Policy document format](https://docs.aws.amazon.com/Route53/latest/APIReference/api-policies-traffic-policy-document-format.html)
	//
	// The following arguments are optional:
	Document pulumi.StringPtrInput
	// Name of the traffic policy.
	Name pulumi.StringPtrInput
	// DNS type of the resource record sets that Amazon Route 53 creates when you use a traffic policy to create a traffic policy instance.
	Type pulumi.StringPtrInput
	// Version number of the traffic policy. This value is automatically incremented by AWS after each update of this resource.
	Version pulumi.IntPtrInput
}

func (TrafficPolicyState) ElementType

func (TrafficPolicyState) ElementType() reflect.Type

type VpcAssociationAuthorization

type VpcAssociationAuthorization struct {
	pulumi.CustomResourceState

	// The VPC to authorize for association with the private hosted zone.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The VPC's region. Defaults to the region of the AWS provider.
	VpcRegion pulumi.StringOutput `pulumi:"vpcRegion"`
	// The ID of the private hosted zone that you want to authorize associating a VPC with.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Authorizes a VPC in a different account to be associated with a local Route53 Hosted Zone.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := ec2.NewVpc(ctx, "example", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.6.0.0/16"),
			EnableDnsHostnames: pulumi.Bool(true),
			EnableDnsSupport:   pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleZone, err := route53.NewZone(ctx, "example", &route53.ZoneArgs{
			Name: pulumi.String("example.com"),
			Vpcs: route53.ZoneVpcArray{
				&route53.ZoneVpcArgs{
					VpcId: example.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		alternate, err := ec2.NewVpc(ctx, "alternate", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.7.0.0/16"),
			EnableDnsHostnames: pulumi.Bool(true),
			EnableDnsSupport:   pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		exampleVpcAssociationAuthorization, err := route53.NewVpcAssociationAuthorization(ctx, "example", &route53.VpcAssociationAuthorizationArgs{
			VpcId:  alternate.ID(),
			ZoneId: exampleZone.ID(),
		})
		if err != nil {
			return err
		}
		_, err = route53.NewZoneAssociation(ctx, "example", &route53.ZoneAssociationArgs{
			VpcId:  exampleVpcAssociationAuthorization.VpcId,
			ZoneId: exampleVpcAssociationAuthorization.ZoneId,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route 53 VPC Association Authorizations using the Hosted Zone ID and VPC ID, separated by a colon (`:`). For example:

```sh $ pulumi import aws:route53/vpcAssociationAuthorization:VpcAssociationAuthorization example Z123456ABCDEFG:vpc-12345678 ```

func GetVpcAssociationAuthorization

func GetVpcAssociationAuthorization(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VpcAssociationAuthorizationState, opts ...pulumi.ResourceOption) (*VpcAssociationAuthorization, error)

GetVpcAssociationAuthorization gets an existing VpcAssociationAuthorization resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVpcAssociationAuthorization

func NewVpcAssociationAuthorization(ctx *pulumi.Context,
	name string, args *VpcAssociationAuthorizationArgs, opts ...pulumi.ResourceOption) (*VpcAssociationAuthorization, error)

NewVpcAssociationAuthorization registers a new resource with the given unique name, arguments, and options.

func (*VpcAssociationAuthorization) ElementType

func (*VpcAssociationAuthorization) ElementType() reflect.Type

func (*VpcAssociationAuthorization) ToVpcAssociationAuthorizationOutput

func (i *VpcAssociationAuthorization) ToVpcAssociationAuthorizationOutput() VpcAssociationAuthorizationOutput

func (*VpcAssociationAuthorization) ToVpcAssociationAuthorizationOutputWithContext

func (i *VpcAssociationAuthorization) ToVpcAssociationAuthorizationOutputWithContext(ctx context.Context) VpcAssociationAuthorizationOutput

type VpcAssociationAuthorizationArgs

type VpcAssociationAuthorizationArgs struct {
	// The VPC to authorize for association with the private hosted zone.
	VpcId pulumi.StringInput
	// The VPC's region. Defaults to the region of the AWS provider.
	VpcRegion pulumi.StringPtrInput
	// The ID of the private hosted zone that you want to authorize associating a VPC with.
	ZoneId pulumi.StringInput
}

The set of arguments for constructing a VpcAssociationAuthorization resource.

func (VpcAssociationAuthorizationArgs) ElementType

type VpcAssociationAuthorizationArray

type VpcAssociationAuthorizationArray []VpcAssociationAuthorizationInput

func (VpcAssociationAuthorizationArray) ElementType

func (VpcAssociationAuthorizationArray) ToVpcAssociationAuthorizationArrayOutput

func (i VpcAssociationAuthorizationArray) ToVpcAssociationAuthorizationArrayOutput() VpcAssociationAuthorizationArrayOutput

func (VpcAssociationAuthorizationArray) ToVpcAssociationAuthorizationArrayOutputWithContext

func (i VpcAssociationAuthorizationArray) ToVpcAssociationAuthorizationArrayOutputWithContext(ctx context.Context) VpcAssociationAuthorizationArrayOutput

type VpcAssociationAuthorizationArrayInput

type VpcAssociationAuthorizationArrayInput interface {
	pulumi.Input

	ToVpcAssociationAuthorizationArrayOutput() VpcAssociationAuthorizationArrayOutput
	ToVpcAssociationAuthorizationArrayOutputWithContext(context.Context) VpcAssociationAuthorizationArrayOutput
}

VpcAssociationAuthorizationArrayInput is an input type that accepts VpcAssociationAuthorizationArray and VpcAssociationAuthorizationArrayOutput values. You can construct a concrete instance of `VpcAssociationAuthorizationArrayInput` via:

VpcAssociationAuthorizationArray{ VpcAssociationAuthorizationArgs{...} }

type VpcAssociationAuthorizationArrayOutput

type VpcAssociationAuthorizationArrayOutput struct{ *pulumi.OutputState }

func (VpcAssociationAuthorizationArrayOutput) ElementType

func (VpcAssociationAuthorizationArrayOutput) Index

func (VpcAssociationAuthorizationArrayOutput) ToVpcAssociationAuthorizationArrayOutput

func (o VpcAssociationAuthorizationArrayOutput) ToVpcAssociationAuthorizationArrayOutput() VpcAssociationAuthorizationArrayOutput

func (VpcAssociationAuthorizationArrayOutput) ToVpcAssociationAuthorizationArrayOutputWithContext

func (o VpcAssociationAuthorizationArrayOutput) ToVpcAssociationAuthorizationArrayOutputWithContext(ctx context.Context) VpcAssociationAuthorizationArrayOutput

type VpcAssociationAuthorizationInput

type VpcAssociationAuthorizationInput interface {
	pulumi.Input

	ToVpcAssociationAuthorizationOutput() VpcAssociationAuthorizationOutput
	ToVpcAssociationAuthorizationOutputWithContext(ctx context.Context) VpcAssociationAuthorizationOutput
}

type VpcAssociationAuthorizationMap

type VpcAssociationAuthorizationMap map[string]VpcAssociationAuthorizationInput

func (VpcAssociationAuthorizationMap) ElementType

func (VpcAssociationAuthorizationMap) ToVpcAssociationAuthorizationMapOutput

func (i VpcAssociationAuthorizationMap) ToVpcAssociationAuthorizationMapOutput() VpcAssociationAuthorizationMapOutput

func (VpcAssociationAuthorizationMap) ToVpcAssociationAuthorizationMapOutputWithContext

func (i VpcAssociationAuthorizationMap) ToVpcAssociationAuthorizationMapOutputWithContext(ctx context.Context) VpcAssociationAuthorizationMapOutput

type VpcAssociationAuthorizationMapInput

type VpcAssociationAuthorizationMapInput interface {
	pulumi.Input

	ToVpcAssociationAuthorizationMapOutput() VpcAssociationAuthorizationMapOutput
	ToVpcAssociationAuthorizationMapOutputWithContext(context.Context) VpcAssociationAuthorizationMapOutput
}

VpcAssociationAuthorizationMapInput is an input type that accepts VpcAssociationAuthorizationMap and VpcAssociationAuthorizationMapOutput values. You can construct a concrete instance of `VpcAssociationAuthorizationMapInput` via:

VpcAssociationAuthorizationMap{ "key": VpcAssociationAuthorizationArgs{...} }

type VpcAssociationAuthorizationMapOutput

type VpcAssociationAuthorizationMapOutput struct{ *pulumi.OutputState }

func (VpcAssociationAuthorizationMapOutput) ElementType

func (VpcAssociationAuthorizationMapOutput) MapIndex

func (VpcAssociationAuthorizationMapOutput) ToVpcAssociationAuthorizationMapOutput

func (o VpcAssociationAuthorizationMapOutput) ToVpcAssociationAuthorizationMapOutput() VpcAssociationAuthorizationMapOutput

func (VpcAssociationAuthorizationMapOutput) ToVpcAssociationAuthorizationMapOutputWithContext

func (o VpcAssociationAuthorizationMapOutput) ToVpcAssociationAuthorizationMapOutputWithContext(ctx context.Context) VpcAssociationAuthorizationMapOutput

type VpcAssociationAuthorizationOutput

type VpcAssociationAuthorizationOutput struct{ *pulumi.OutputState }

func (VpcAssociationAuthorizationOutput) ElementType

func (VpcAssociationAuthorizationOutput) ToVpcAssociationAuthorizationOutput

func (o VpcAssociationAuthorizationOutput) ToVpcAssociationAuthorizationOutput() VpcAssociationAuthorizationOutput

func (VpcAssociationAuthorizationOutput) ToVpcAssociationAuthorizationOutputWithContext

func (o VpcAssociationAuthorizationOutput) ToVpcAssociationAuthorizationOutputWithContext(ctx context.Context) VpcAssociationAuthorizationOutput

func (VpcAssociationAuthorizationOutput) VpcId

The VPC to authorize for association with the private hosted zone.

func (VpcAssociationAuthorizationOutput) VpcRegion

The VPC's region. Defaults to the region of the AWS provider.

func (VpcAssociationAuthorizationOutput) ZoneId

The ID of the private hosted zone that you want to authorize associating a VPC with.

type VpcAssociationAuthorizationState

type VpcAssociationAuthorizationState struct {
	// The VPC to authorize for association with the private hosted zone.
	VpcId pulumi.StringPtrInput
	// The VPC's region. Defaults to the region of the AWS provider.
	VpcRegion pulumi.StringPtrInput
	// The ID of the private hosted zone that you want to authorize associating a VPC with.
	ZoneId pulumi.StringPtrInput
}

func (VpcAssociationAuthorizationState) ElementType

type Zone

type Zone struct {
	pulumi.CustomResourceState

	// The Amazon Resource Name (ARN) of the Hosted Zone.
	Arn pulumi.StringOutput `pulumi:"arn"`
	// A comment for the hosted zone. Defaults to 'Managed by Pulumi'.
	Comment pulumi.StringOutput `pulumi:"comment"`
	// The ID of the reusable delegation set whose NS records you want to assign to the hosted zone. Conflicts with `vpc` as delegation sets can only be used for public zones.
	DelegationSetId pulumi.StringPtrOutput `pulumi:"delegationSetId"`
	// Whether to destroy all records (possibly managed outside of this provider) in the zone when destroying the zone.
	ForceDestroy pulumi.BoolPtrOutput `pulumi:"forceDestroy"`
	// This is the name of the hosted zone.
	Name pulumi.StringOutput `pulumi:"name"`
	// A list of name servers in associated (or default) delegation set.
	// Find more about delegation sets in [AWS docs](https://docs.aws.amazon.com/Route53/latest/APIReference/actions-on-reusable-delegation-sets.html).
	NameServers pulumi.StringArrayOutput `pulumi:"nameServers"`
	// The Route 53 name server that created the SOA record.
	PrimaryNameServer pulumi.StringOutput `pulumi:"primaryNameServer"`
	// A mapping of tags to assign to the zone. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
	// Configuration block(s) specifying VPC(s) to associate with a private hosted zone. Conflicts with the `delegationSetId` argument in this resource and any `route53.ZoneAssociation` resource specifying the same zone ID. Detailed below.
	Vpcs ZoneVpcArrayOutput `pulumi:"vpcs"`
	// The Hosted Zone ID. This can be referenced by zone records.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Manages a Route53 Hosted Zone. For managing Domain Name System Security Extensions (DNSSEC), see the `route53.KeySigningKey` and `route53.HostedZoneDnsSec` resources.

## Example Usage

### Public Zone

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewZone(ctx, "primary", &route53.ZoneArgs{
			Name: pulumi.String("example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Public Subdomain Zone

For use in subdomains, note that you need to create a `route53.Record` of type `NS` as well as the subdomain zone.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		main, err := route53.NewZone(ctx, "main", &route53.ZoneArgs{
			Name: pulumi.String("example.com"),
		})
		if err != nil {
			return err
		}
		dev, err := route53.NewZone(ctx, "dev", &route53.ZoneArgs{
			Name: pulumi.String("dev.example.com"),
			Tags: pulumi.StringMap{
				"Environment": pulumi.String("dev"),
			},
		})
		if err != nil {
			return err
		}
		_, err = route53.NewRecord(ctx, "dev-ns", &route53.RecordArgs{
			ZoneId:  main.ZoneId,
			Name:    pulumi.String("dev.example.com"),
			Type:    pulumi.String(route53.RecordTypeNS),
			Ttl:     pulumi.Int(30),
			Records: dev.NameServers,
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

### Private Zone

> **NOTE:** This provider provides both exclusive VPC associations defined in-line in this resource via `vpc` configuration blocks and a separate ` Zone VPC Association resource. At this time, you cannot use in-line VPC associations in conjunction with any `route53.ZoneAssociation` resources with the same zone ID otherwise it will cause a perpetual difference in plan output. You can optionally use [ `ignoreChanges` ](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) to manage additional associations via the `route53.ZoneAssociation` resource.

> **NOTE:** Private zones require at least one VPC association at all times.

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := route53.NewZone(ctx, "private", &route53.ZoneArgs{
			Name: pulumi.String("example.com"),
			Vpcs: route53.ZoneVpcArray{
				&route53.ZoneVpcArgs{
					VpcId: pulumi.Any(example.Id),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Using `pulumi import`, import Route53 Zones using the zone `id`. For example:

```sh $ pulumi import aws:route53/zone:Zone myzone Z1D633PJN98FT9 ```

func GetZone

func GetZone(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ZoneState, opts ...pulumi.ResourceOption) (*Zone, error)

GetZone gets an existing Zone resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewZone

func NewZone(ctx *pulumi.Context,
	name string, args *ZoneArgs, opts ...pulumi.ResourceOption) (*Zone, error)

NewZone registers a new resource with the given unique name, arguments, and options.

func (*Zone) ElementType

func (*Zone) ElementType() reflect.Type

func (*Zone) ToZoneOutput

func (i *Zone) ToZoneOutput() ZoneOutput

func (*Zone) ToZoneOutputWithContext

func (i *Zone) ToZoneOutputWithContext(ctx context.Context) ZoneOutput

type ZoneArgs

type ZoneArgs struct {
	// A comment for the hosted zone. Defaults to 'Managed by Pulumi'.
	Comment pulumi.StringPtrInput
	// The ID of the reusable delegation set whose NS records you want to assign to the hosted zone. Conflicts with `vpc` as delegation sets can only be used for public zones.
	DelegationSetId pulumi.StringPtrInput
	// Whether to destroy all records (possibly managed outside of this provider) in the zone when destroying the zone.
	ForceDestroy pulumi.BoolPtrInput
	// This is the name of the hosted zone.
	Name pulumi.StringPtrInput
	// A mapping of tags to assign to the zone. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// Configuration block(s) specifying VPC(s) to associate with a private hosted zone. Conflicts with the `delegationSetId` argument in this resource and any `route53.ZoneAssociation` resource specifying the same zone ID. Detailed below.
	Vpcs ZoneVpcArrayInput
}

The set of arguments for constructing a Zone resource.

func (ZoneArgs) ElementType

func (ZoneArgs) ElementType() reflect.Type

type ZoneArray

type ZoneArray []ZoneInput

func (ZoneArray) ElementType

func (ZoneArray) ElementType() reflect.Type

func (ZoneArray) ToZoneArrayOutput

func (i ZoneArray) ToZoneArrayOutput() ZoneArrayOutput

func (ZoneArray) ToZoneArrayOutputWithContext

func (i ZoneArray) ToZoneArrayOutputWithContext(ctx context.Context) ZoneArrayOutput

type ZoneArrayInput

type ZoneArrayInput interface {
	pulumi.Input

	ToZoneArrayOutput() ZoneArrayOutput
	ToZoneArrayOutputWithContext(context.Context) ZoneArrayOutput
}

ZoneArrayInput is an input type that accepts ZoneArray and ZoneArrayOutput values. You can construct a concrete instance of `ZoneArrayInput` via:

ZoneArray{ ZoneArgs{...} }

type ZoneArrayOutput

type ZoneArrayOutput struct{ *pulumi.OutputState }

func (ZoneArrayOutput) ElementType

func (ZoneArrayOutput) ElementType() reflect.Type

func (ZoneArrayOutput) Index

func (ZoneArrayOutput) ToZoneArrayOutput

func (o ZoneArrayOutput) ToZoneArrayOutput() ZoneArrayOutput

func (ZoneArrayOutput) ToZoneArrayOutputWithContext

func (o ZoneArrayOutput) ToZoneArrayOutputWithContext(ctx context.Context) ZoneArrayOutput

type ZoneAssociation

type ZoneAssociation struct {
	pulumi.CustomResourceState

	// The account ID of the account that created the hosted zone.
	OwningAccount pulumi.StringOutput `pulumi:"owningAccount"`
	// The VPC to associate with the private hosted zone.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The VPC's region. Defaults to the region of the AWS provider.
	VpcRegion pulumi.StringOutput `pulumi:"vpcRegion"`
	// The private hosted zone to associate.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Manages a Route53 Hosted Zone VPC association. VPC associations can only be made on private zones. See the `route53.VpcAssociationAuthorization` resource for setting up cross-account associations.

> **NOTE:** Unless explicit association ordering is required (e.g., a separate cross-account association authorization), usage of this resource is not recommended. Use the `vpc` configuration blocks available within the `route53.Zone` resource instead.

> **NOTE:** This provider provides both this standalone Zone VPC Association resource and exclusive VPC associations defined in-line in the `route53.Zone` resource via `vpc` configuration blocks. At this time, you cannot use those in-line VPC associations in conjunction with this resource and the same zone ID otherwise it will cause a perpetual difference in plan output. You can optionally use [`ignoreChanges`](https://www.pulumi.com/docs/intro/concepts/programming-model/#ignorechanges) in the `route53.Zone` resource to manage additional associations via this resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		primary, err := ec2.NewVpc(ctx, "primary", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.6.0.0/16"),
			EnableDnsHostnames: pulumi.Bool(true),
			EnableDnsSupport:   pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		secondary, err := ec2.NewVpc(ctx, "secondary", &ec2.VpcArgs{
			CidrBlock:          pulumi.String("10.7.0.0/16"),
			EnableDnsHostnames: pulumi.Bool(true),
			EnableDnsSupport:   pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		example, err := route53.NewZone(ctx, "example", &route53.ZoneArgs{
			Name: pulumi.String("example.com"),
			Vpcs: route53.ZoneVpcArray{
				&route53.ZoneVpcArgs{
					VpcId: primary.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = route53.NewZoneAssociation(ctx, "secondary", &route53.ZoneAssociationArgs{
			ZoneId: example.ZoneId,
			VpcId:  secondary.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

The VPC is _not_ in the same region where you have configured the AWS Provider:

__Using `pulumi import` to import__ Route 53 Hosted Zone Associations using the Hosted Zone ID and VPC ID, separated by a colon (`:`). For example:

The VPC is in the same region where you have configured the AWS Provider:

```sh $ pulumi import aws:route53/zoneAssociation:ZoneAssociation example Z123456ABCDEFG:vpc-12345678 ``` The VPC is _not_ in the same region where you have configured the AWS Provider:

```sh $ pulumi import aws:route53/zoneAssociation:ZoneAssociation example Z123456ABCDEFG:vpc-12345678:us-east-2 ```

func GetZoneAssociation

func GetZoneAssociation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ZoneAssociationState, opts ...pulumi.ResourceOption) (*ZoneAssociation, error)

GetZoneAssociation gets an existing ZoneAssociation resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewZoneAssociation

func NewZoneAssociation(ctx *pulumi.Context,
	name string, args *ZoneAssociationArgs, opts ...pulumi.ResourceOption) (*ZoneAssociation, error)

NewZoneAssociation registers a new resource with the given unique name, arguments, and options.

func (*ZoneAssociation) ElementType

func (*ZoneAssociation) ElementType() reflect.Type

func (*ZoneAssociation) ToZoneAssociationOutput

func (i *ZoneAssociation) ToZoneAssociationOutput() ZoneAssociationOutput

func (*ZoneAssociation) ToZoneAssociationOutputWithContext

func (i *ZoneAssociation) ToZoneAssociationOutputWithContext(ctx context.Context) ZoneAssociationOutput

type ZoneAssociationArgs

type ZoneAssociationArgs struct {
	// The VPC to associate with the private hosted zone.
	VpcId pulumi.StringInput
	// The VPC's region. Defaults to the region of the AWS provider.
	VpcRegion pulumi.StringPtrInput
	// The private hosted zone to associate.
	ZoneId pulumi.StringInput
}

The set of arguments for constructing a ZoneAssociation resource.

func (ZoneAssociationArgs) ElementType

func (ZoneAssociationArgs) ElementType() reflect.Type

type ZoneAssociationArray

type ZoneAssociationArray []ZoneAssociationInput

func (ZoneAssociationArray) ElementType

func (ZoneAssociationArray) ElementType() reflect.Type

func (ZoneAssociationArray) ToZoneAssociationArrayOutput

func (i ZoneAssociationArray) ToZoneAssociationArrayOutput() ZoneAssociationArrayOutput

func (ZoneAssociationArray) ToZoneAssociationArrayOutputWithContext

func (i ZoneAssociationArray) ToZoneAssociationArrayOutputWithContext(ctx context.Context) ZoneAssociationArrayOutput

type ZoneAssociationArrayInput

type ZoneAssociationArrayInput interface {
	pulumi.Input

	ToZoneAssociationArrayOutput() ZoneAssociationArrayOutput
	ToZoneAssociationArrayOutputWithContext(context.Context) ZoneAssociationArrayOutput
}

ZoneAssociationArrayInput is an input type that accepts ZoneAssociationArray and ZoneAssociationArrayOutput values. You can construct a concrete instance of `ZoneAssociationArrayInput` via:

ZoneAssociationArray{ ZoneAssociationArgs{...} }

type ZoneAssociationArrayOutput

type ZoneAssociationArrayOutput struct{ *pulumi.OutputState }

func (ZoneAssociationArrayOutput) ElementType

func (ZoneAssociationArrayOutput) ElementType() reflect.Type

func (ZoneAssociationArrayOutput) Index

func (ZoneAssociationArrayOutput) ToZoneAssociationArrayOutput

func (o ZoneAssociationArrayOutput) ToZoneAssociationArrayOutput() ZoneAssociationArrayOutput

func (ZoneAssociationArrayOutput) ToZoneAssociationArrayOutputWithContext

func (o ZoneAssociationArrayOutput) ToZoneAssociationArrayOutputWithContext(ctx context.Context) ZoneAssociationArrayOutput

type ZoneAssociationInput

type ZoneAssociationInput interface {
	pulumi.Input

	ToZoneAssociationOutput() ZoneAssociationOutput
	ToZoneAssociationOutputWithContext(ctx context.Context) ZoneAssociationOutput
}

type ZoneAssociationMap

type ZoneAssociationMap map[string]ZoneAssociationInput

func (ZoneAssociationMap) ElementType

func (ZoneAssociationMap) ElementType() reflect.Type

func (ZoneAssociationMap) ToZoneAssociationMapOutput

func (i ZoneAssociationMap) ToZoneAssociationMapOutput() ZoneAssociationMapOutput

func (ZoneAssociationMap) ToZoneAssociationMapOutputWithContext

func (i ZoneAssociationMap) ToZoneAssociationMapOutputWithContext(ctx context.Context) ZoneAssociationMapOutput

type ZoneAssociationMapInput

type ZoneAssociationMapInput interface {
	pulumi.Input

	ToZoneAssociationMapOutput() ZoneAssociationMapOutput
	ToZoneAssociationMapOutputWithContext(context.Context) ZoneAssociationMapOutput
}

ZoneAssociationMapInput is an input type that accepts ZoneAssociationMap and ZoneAssociationMapOutput values. You can construct a concrete instance of `ZoneAssociationMapInput` via:

ZoneAssociationMap{ "key": ZoneAssociationArgs{...} }

type ZoneAssociationMapOutput

type ZoneAssociationMapOutput struct{ *pulumi.OutputState }

func (ZoneAssociationMapOutput) ElementType

func (ZoneAssociationMapOutput) ElementType() reflect.Type

func (ZoneAssociationMapOutput) MapIndex

func (ZoneAssociationMapOutput) ToZoneAssociationMapOutput

func (o ZoneAssociationMapOutput) ToZoneAssociationMapOutput() ZoneAssociationMapOutput

func (ZoneAssociationMapOutput) ToZoneAssociationMapOutputWithContext

func (o ZoneAssociationMapOutput) ToZoneAssociationMapOutputWithContext(ctx context.Context) ZoneAssociationMapOutput

type ZoneAssociationOutput

type ZoneAssociationOutput struct{ *pulumi.OutputState }

func (ZoneAssociationOutput) ElementType

func (ZoneAssociationOutput) ElementType() reflect.Type

func (ZoneAssociationOutput) OwningAccount

func (o ZoneAssociationOutput) OwningAccount() pulumi.StringOutput

The account ID of the account that created the hosted zone.

func (ZoneAssociationOutput) ToZoneAssociationOutput

func (o ZoneAssociationOutput) ToZoneAssociationOutput() ZoneAssociationOutput

func (ZoneAssociationOutput) ToZoneAssociationOutputWithContext

func (o ZoneAssociationOutput) ToZoneAssociationOutputWithContext(ctx context.Context) ZoneAssociationOutput

func (ZoneAssociationOutput) VpcId

The VPC to associate with the private hosted zone.

func (ZoneAssociationOutput) VpcRegion

The VPC's region. Defaults to the region of the AWS provider.

func (ZoneAssociationOutput) ZoneId

The private hosted zone to associate.

type ZoneAssociationState

type ZoneAssociationState struct {
	// The account ID of the account that created the hosted zone.
	OwningAccount pulumi.StringPtrInput
	// The VPC to associate with the private hosted zone.
	VpcId pulumi.StringPtrInput
	// The VPC's region. Defaults to the region of the AWS provider.
	VpcRegion pulumi.StringPtrInput
	// The private hosted zone to associate.
	ZoneId pulumi.StringPtrInput
}

func (ZoneAssociationState) ElementType

func (ZoneAssociationState) ElementType() reflect.Type

type ZoneInput

type ZoneInput interface {
	pulumi.Input

	ToZoneOutput() ZoneOutput
	ToZoneOutputWithContext(ctx context.Context) ZoneOutput
}

type ZoneMap

type ZoneMap map[string]ZoneInput

func (ZoneMap) ElementType

func (ZoneMap) ElementType() reflect.Type

func (ZoneMap) ToZoneMapOutput

func (i ZoneMap) ToZoneMapOutput() ZoneMapOutput

func (ZoneMap) ToZoneMapOutputWithContext

func (i ZoneMap) ToZoneMapOutputWithContext(ctx context.Context) ZoneMapOutput

type ZoneMapInput

type ZoneMapInput interface {
	pulumi.Input

	ToZoneMapOutput() ZoneMapOutput
	ToZoneMapOutputWithContext(context.Context) ZoneMapOutput
}

ZoneMapInput is an input type that accepts ZoneMap and ZoneMapOutput values. You can construct a concrete instance of `ZoneMapInput` via:

ZoneMap{ "key": ZoneArgs{...} }

type ZoneMapOutput

type ZoneMapOutput struct{ *pulumi.OutputState }

func (ZoneMapOutput) ElementType

func (ZoneMapOutput) ElementType() reflect.Type

func (ZoneMapOutput) MapIndex

func (ZoneMapOutput) ToZoneMapOutput

func (o ZoneMapOutput) ToZoneMapOutput() ZoneMapOutput

func (ZoneMapOutput) ToZoneMapOutputWithContext

func (o ZoneMapOutput) ToZoneMapOutputWithContext(ctx context.Context) ZoneMapOutput

type ZoneOutput

type ZoneOutput struct{ *pulumi.OutputState }

func (ZoneOutput) Arn

func (o ZoneOutput) Arn() pulumi.StringOutput

The Amazon Resource Name (ARN) of the Hosted Zone.

func (ZoneOutput) Comment

func (o ZoneOutput) Comment() pulumi.StringOutput

A comment for the hosted zone. Defaults to 'Managed by Pulumi'.

func (ZoneOutput) DelegationSetId

func (o ZoneOutput) DelegationSetId() pulumi.StringPtrOutput

The ID of the reusable delegation set whose NS records you want to assign to the hosted zone. Conflicts with `vpc` as delegation sets can only be used for public zones.

func (ZoneOutput) ElementType

func (ZoneOutput) ElementType() reflect.Type

func (ZoneOutput) ForceDestroy

func (o ZoneOutput) ForceDestroy() pulumi.BoolPtrOutput

Whether to destroy all records (possibly managed outside of this provider) in the zone when destroying the zone.

func (ZoneOutput) Name

func (o ZoneOutput) Name() pulumi.StringOutput

This is the name of the hosted zone.

func (ZoneOutput) NameServers

func (o ZoneOutput) NameServers() pulumi.StringArrayOutput

A list of name servers in associated (or default) delegation set. Find more about delegation sets in [AWS docs](https://docs.aws.amazon.com/Route53/latest/APIReference/actions-on-reusable-delegation-sets.html).

func (ZoneOutput) PrimaryNameServer

func (o ZoneOutput) PrimaryNameServer() pulumi.StringOutput

The Route 53 name server that created the SOA record.

func (ZoneOutput) Tags

A mapping of tags to assign to the zone. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.

func (ZoneOutput) TagsAll deprecated

func (o ZoneOutput) TagsAll() pulumi.StringMapOutput

A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.

Deprecated: Please use `tags` instead.

func (ZoneOutput) ToZoneOutput

func (o ZoneOutput) ToZoneOutput() ZoneOutput

func (ZoneOutput) ToZoneOutputWithContext

func (o ZoneOutput) ToZoneOutputWithContext(ctx context.Context) ZoneOutput

func (ZoneOutput) Vpcs

func (o ZoneOutput) Vpcs() ZoneVpcArrayOutput

Configuration block(s) specifying VPC(s) to associate with a private hosted zone. Conflicts with the `delegationSetId` argument in this resource and any `route53.ZoneAssociation` resource specifying the same zone ID. Detailed below.

func (ZoneOutput) ZoneId

func (o ZoneOutput) ZoneId() pulumi.StringOutput

The Hosted Zone ID. This can be referenced by zone records.

type ZoneState

type ZoneState struct {
	// The Amazon Resource Name (ARN) of the Hosted Zone.
	Arn pulumi.StringPtrInput
	// A comment for the hosted zone. Defaults to 'Managed by Pulumi'.
	Comment pulumi.StringPtrInput
	// The ID of the reusable delegation set whose NS records you want to assign to the hosted zone. Conflicts with `vpc` as delegation sets can only be used for public zones.
	DelegationSetId pulumi.StringPtrInput
	// Whether to destroy all records (possibly managed outside of this provider) in the zone when destroying the zone.
	ForceDestroy pulumi.BoolPtrInput
	// This is the name of the hosted zone.
	Name pulumi.StringPtrInput
	// A list of name servers in associated (or default) delegation set.
	// Find more about delegation sets in [AWS docs](https://docs.aws.amazon.com/Route53/latest/APIReference/actions-on-reusable-delegation-sets.html).
	NameServers pulumi.StringArrayInput
	// The Route 53 name server that created the SOA record.
	PrimaryNameServer pulumi.StringPtrInput
	// A mapping of tags to assign to the zone. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags pulumi.StringMapInput
	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
	//
	// Deprecated: Please use `tags` instead.
	TagsAll pulumi.StringMapInput
	// Configuration block(s) specifying VPC(s) to associate with a private hosted zone. Conflicts with the `delegationSetId` argument in this resource and any `route53.ZoneAssociation` resource specifying the same zone ID. Detailed below.
	Vpcs ZoneVpcArrayInput
	// The Hosted Zone ID. This can be referenced by zone records.
	ZoneId pulumi.StringPtrInput
}

func (ZoneState) ElementType

func (ZoneState) ElementType() reflect.Type

type ZoneVpc

type ZoneVpc struct {
	// ID of the VPC to associate.
	VpcId string `pulumi:"vpcId"`
	// Region of the VPC to associate. Defaults to AWS provider region.
	VpcRegion *string `pulumi:"vpcRegion"`
}

type ZoneVpcArgs

type ZoneVpcArgs struct {
	// ID of the VPC to associate.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// Region of the VPC to associate. Defaults to AWS provider region.
	VpcRegion pulumi.StringPtrInput `pulumi:"vpcRegion"`
}

func (ZoneVpcArgs) ElementType

func (ZoneVpcArgs) ElementType() reflect.Type

func (ZoneVpcArgs) ToZoneVpcOutput

func (i ZoneVpcArgs) ToZoneVpcOutput() ZoneVpcOutput

func (ZoneVpcArgs) ToZoneVpcOutputWithContext

func (i ZoneVpcArgs) ToZoneVpcOutputWithContext(ctx context.Context) ZoneVpcOutput

type ZoneVpcArray

type ZoneVpcArray []ZoneVpcInput

func (ZoneVpcArray) ElementType

func (ZoneVpcArray) ElementType() reflect.Type

func (ZoneVpcArray) ToZoneVpcArrayOutput

func (i ZoneVpcArray) ToZoneVpcArrayOutput() ZoneVpcArrayOutput

func (ZoneVpcArray) ToZoneVpcArrayOutputWithContext

func (i ZoneVpcArray) ToZoneVpcArrayOutputWithContext(ctx context.Context) ZoneVpcArrayOutput

type ZoneVpcArrayInput

type ZoneVpcArrayInput interface {
	pulumi.Input

	ToZoneVpcArrayOutput() ZoneVpcArrayOutput
	ToZoneVpcArrayOutputWithContext(context.Context) ZoneVpcArrayOutput
}

ZoneVpcArrayInput is an input type that accepts ZoneVpcArray and ZoneVpcArrayOutput values. You can construct a concrete instance of `ZoneVpcArrayInput` via:

ZoneVpcArray{ ZoneVpcArgs{...} }

type ZoneVpcArrayOutput

type ZoneVpcArrayOutput struct{ *pulumi.OutputState }

func (ZoneVpcArrayOutput) ElementType

func (ZoneVpcArrayOutput) ElementType() reflect.Type

func (ZoneVpcArrayOutput) Index

func (ZoneVpcArrayOutput) ToZoneVpcArrayOutput

func (o ZoneVpcArrayOutput) ToZoneVpcArrayOutput() ZoneVpcArrayOutput

func (ZoneVpcArrayOutput) ToZoneVpcArrayOutputWithContext

func (o ZoneVpcArrayOutput) ToZoneVpcArrayOutputWithContext(ctx context.Context) ZoneVpcArrayOutput

type ZoneVpcInput

type ZoneVpcInput interface {
	pulumi.Input

	ToZoneVpcOutput() ZoneVpcOutput
	ToZoneVpcOutputWithContext(context.Context) ZoneVpcOutput
}

ZoneVpcInput is an input type that accepts ZoneVpcArgs and ZoneVpcOutput values. You can construct a concrete instance of `ZoneVpcInput` via:

ZoneVpcArgs{...}

type ZoneVpcOutput

type ZoneVpcOutput struct{ *pulumi.OutputState }

func (ZoneVpcOutput) ElementType

func (ZoneVpcOutput) ElementType() reflect.Type

func (ZoneVpcOutput) ToZoneVpcOutput

func (o ZoneVpcOutput) ToZoneVpcOutput() ZoneVpcOutput

func (ZoneVpcOutput) ToZoneVpcOutputWithContext

func (o ZoneVpcOutput) ToZoneVpcOutputWithContext(ctx context.Context) ZoneVpcOutput

func (ZoneVpcOutput) VpcId

func (o ZoneVpcOutput) VpcId() pulumi.StringOutput

ID of the VPC to associate.

func (ZoneVpcOutput) VpcRegion

func (o ZoneVpcOutput) VpcRegion() pulumi.StringPtrOutput

Region of the VPC to associate. Defaults to AWS provider region.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL