github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/ec2/defaultSubnet.go (about)

     1  // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
     2  // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
     3  
     4  package ec2
     5  
     6  import (
     7  	"context"
     8  	"reflect"
     9  
    10  	"errors"
    11  	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal"
    12  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    13  )
    14  
    15  // Provides a resource to manage a [default subnet](http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/default-vpc.html#default-vpc-basics) in the current region.
    16  //
    17  // **This is an advanced resource** and has special caveats to be aware of when using it. Please read this document in its entirety before using this resource.
    18  //
    19  // The `ec2.DefaultSubnet` resource behaves differently from normal resources in that if a default subnet exists in the specified Availability Zone, this provider does not _create_ this resource, but instead "adopts" it into management.
    20  // If no default subnet exists, this provider creates a new default subnet.
    21  // By default, `pulumi destroy` does not delete the default subnet but does remove the resource from the state.
    22  // Set the `forceDestroy` argument to `true` to delete the default subnet.
    23  //
    24  // ## Example Usage
    25  //
    26  // <!--Start PulumiCodeChooser -->
    27  // ```go
    28  // package main
    29  //
    30  // import (
    31  //
    32  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2"
    33  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    34  //
    35  // )
    36  //
    37  //	func main() {
    38  //		pulumi.Run(func(ctx *pulumi.Context) error {
    39  //			_, err := ec2.NewDefaultSubnet(ctx, "default_az1", &ec2.DefaultSubnetArgs{
    40  //				AvailabilityZone: pulumi.String("us-west-2a"),
    41  //				Tags: pulumi.StringMap{
    42  //					"Name": pulumi.String("Default subnet for us-west-2a"),
    43  //				},
    44  //			})
    45  //			if err != nil {
    46  //				return err
    47  //			}
    48  //			return nil
    49  //		})
    50  //	}
    51  //
    52  // ```
    53  // <!--End PulumiCodeChooser -->
    54  //
    55  // ## Import
    56  //
    57  // Using `pulumi import`, import subnets using the subnet `id`. For example:
    58  //
    59  // ```sh
    60  // $ pulumi import aws:ec2/defaultSubnet:DefaultSubnet public_subnet subnet-9d4a7b6c
    61  // ```
    62  type DefaultSubnet struct {
    63  	pulumi.CustomResourceState
    64  
    65  	Arn                         pulumi.StringOutput  `pulumi:"arn"`
    66  	AssignIpv6AddressOnCreation pulumi.BoolPtrOutput `pulumi:"assignIpv6AddressOnCreation"`
    67  	// is required
    68  	// * The `availabilityZoneId`, `cidrBlock` and `vpcId` arguments become computed attributes
    69  	// * The default value for `mapPublicIpOnLaunch` is `true`
    70  	//
    71  	// This resource supports the following additional arguments:
    72  	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
    73  	// The AZ ID of the subnet
    74  	AvailabilityZoneId pulumi.StringOutput `pulumi:"availabilityZoneId"`
    75  	// The IPv4 CIDR block assigned to the subnet
    76  	CidrBlock                               pulumi.StringOutput    `pulumi:"cidrBlock"`
    77  	CustomerOwnedIpv4Pool                   pulumi.StringPtrOutput `pulumi:"customerOwnedIpv4Pool"`
    78  	EnableDns64                             pulumi.BoolPtrOutput   `pulumi:"enableDns64"`
    79  	EnableLniAtDeviceIndex                  pulumi.IntOutput       `pulumi:"enableLniAtDeviceIndex"`
    80  	EnableResourceNameDnsARecordOnLaunch    pulumi.BoolPtrOutput   `pulumi:"enableResourceNameDnsARecordOnLaunch"`
    81  	EnableResourceNameDnsAaaaRecordOnLaunch pulumi.BoolPtrOutput   `pulumi:"enableResourceNameDnsAaaaRecordOnLaunch"`
    82  	ExistingDefaultSubnet                   pulumi.BoolOutput      `pulumi:"existingDefaultSubnet"`
    83  	// Whether destroying the resource deletes the default subnet. Default: `false`
    84  	ForceDestroy                   pulumi.BoolPtrOutput   `pulumi:"forceDestroy"`
    85  	Ipv6CidrBlock                  pulumi.StringOutput    `pulumi:"ipv6CidrBlock"`
    86  	Ipv6CidrBlockAssociationId     pulumi.StringOutput    `pulumi:"ipv6CidrBlockAssociationId"`
    87  	Ipv6Native                     pulumi.BoolPtrOutput   `pulumi:"ipv6Native"`
    88  	MapCustomerOwnedIpOnLaunch     pulumi.BoolPtrOutput   `pulumi:"mapCustomerOwnedIpOnLaunch"`
    89  	MapPublicIpOnLaunch            pulumi.BoolPtrOutput   `pulumi:"mapPublicIpOnLaunch"`
    90  	OutpostArn                     pulumi.StringOutput    `pulumi:"outpostArn"`
    91  	OwnerId                        pulumi.StringOutput    `pulumi:"ownerId"`
    92  	PrivateDnsHostnameTypeOnLaunch pulumi.StringOutput    `pulumi:"privateDnsHostnameTypeOnLaunch"`
    93  	Tags                           pulumi.StringMapOutput `pulumi:"tags"`
    94  	// Deprecated: Please use `tags` instead.
    95  	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
    96  	// The ID of the VPC the subnet is in
    97  	VpcId pulumi.StringOutput `pulumi:"vpcId"`
    98  }
    99  
   100  // NewDefaultSubnet registers a new resource with the given unique name, arguments, and options.
   101  func NewDefaultSubnet(ctx *pulumi.Context,
   102  	name string, args *DefaultSubnetArgs, opts ...pulumi.ResourceOption) (*DefaultSubnet, error) {
   103  	if args == nil {
   104  		return nil, errors.New("missing one or more required arguments")
   105  	}
   106  
   107  	if args.AvailabilityZone == nil {
   108  		return nil, errors.New("invalid value for required argument 'AvailabilityZone'")
   109  	}
   110  	opts = internal.PkgResourceDefaultOpts(opts)
   111  	var resource DefaultSubnet
   112  	err := ctx.RegisterResource("aws:ec2/defaultSubnet:DefaultSubnet", name, args, &resource, opts...)
   113  	if err != nil {
   114  		return nil, err
   115  	}
   116  	return &resource, nil
   117  }
   118  
   119  // GetDefaultSubnet gets an existing DefaultSubnet resource's state with the given name, ID, and optional
   120  // state properties that are used to uniquely qualify the lookup (nil if not required).
   121  func GetDefaultSubnet(ctx *pulumi.Context,
   122  	name string, id pulumi.IDInput, state *DefaultSubnetState, opts ...pulumi.ResourceOption) (*DefaultSubnet, error) {
   123  	var resource DefaultSubnet
   124  	err := ctx.ReadResource("aws:ec2/defaultSubnet:DefaultSubnet", name, id, state, &resource, opts...)
   125  	if err != nil {
   126  		return nil, err
   127  	}
   128  	return &resource, nil
   129  }
   130  
   131  // Input properties used for looking up and filtering DefaultSubnet resources.
   132  type defaultSubnetState struct {
   133  	Arn                         *string `pulumi:"arn"`
   134  	AssignIpv6AddressOnCreation *bool   `pulumi:"assignIpv6AddressOnCreation"`
   135  	// is required
   136  	// * The `availabilityZoneId`, `cidrBlock` and `vpcId` arguments become computed attributes
   137  	// * The default value for `mapPublicIpOnLaunch` is `true`
   138  	//
   139  	// This resource supports the following additional arguments:
   140  	AvailabilityZone *string `pulumi:"availabilityZone"`
   141  	// The AZ ID of the subnet
   142  	AvailabilityZoneId *string `pulumi:"availabilityZoneId"`
   143  	// The IPv4 CIDR block assigned to the subnet
   144  	CidrBlock                               *string `pulumi:"cidrBlock"`
   145  	CustomerOwnedIpv4Pool                   *string `pulumi:"customerOwnedIpv4Pool"`
   146  	EnableDns64                             *bool   `pulumi:"enableDns64"`
   147  	EnableLniAtDeviceIndex                  *int    `pulumi:"enableLniAtDeviceIndex"`
   148  	EnableResourceNameDnsARecordOnLaunch    *bool   `pulumi:"enableResourceNameDnsARecordOnLaunch"`
   149  	EnableResourceNameDnsAaaaRecordOnLaunch *bool   `pulumi:"enableResourceNameDnsAaaaRecordOnLaunch"`
   150  	ExistingDefaultSubnet                   *bool   `pulumi:"existingDefaultSubnet"`
   151  	// Whether destroying the resource deletes the default subnet. Default: `false`
   152  	ForceDestroy                   *bool             `pulumi:"forceDestroy"`
   153  	Ipv6CidrBlock                  *string           `pulumi:"ipv6CidrBlock"`
   154  	Ipv6CidrBlockAssociationId     *string           `pulumi:"ipv6CidrBlockAssociationId"`
   155  	Ipv6Native                     *bool             `pulumi:"ipv6Native"`
   156  	MapCustomerOwnedIpOnLaunch     *bool             `pulumi:"mapCustomerOwnedIpOnLaunch"`
   157  	MapPublicIpOnLaunch            *bool             `pulumi:"mapPublicIpOnLaunch"`
   158  	OutpostArn                     *string           `pulumi:"outpostArn"`
   159  	OwnerId                        *string           `pulumi:"ownerId"`
   160  	PrivateDnsHostnameTypeOnLaunch *string           `pulumi:"privateDnsHostnameTypeOnLaunch"`
   161  	Tags                           map[string]string `pulumi:"tags"`
   162  	// Deprecated: Please use `tags` instead.
   163  	TagsAll map[string]string `pulumi:"tagsAll"`
   164  	// The ID of the VPC the subnet is in
   165  	VpcId *string `pulumi:"vpcId"`
   166  }
   167  
   168  type DefaultSubnetState struct {
   169  	Arn                         pulumi.StringPtrInput
   170  	AssignIpv6AddressOnCreation pulumi.BoolPtrInput
   171  	// is required
   172  	// * The `availabilityZoneId`, `cidrBlock` and `vpcId` arguments become computed attributes
   173  	// * The default value for `mapPublicIpOnLaunch` is `true`
   174  	//
   175  	// This resource supports the following additional arguments:
   176  	AvailabilityZone pulumi.StringPtrInput
   177  	// The AZ ID of the subnet
   178  	AvailabilityZoneId pulumi.StringPtrInput
   179  	// The IPv4 CIDR block assigned to the subnet
   180  	CidrBlock                               pulumi.StringPtrInput
   181  	CustomerOwnedIpv4Pool                   pulumi.StringPtrInput
   182  	EnableDns64                             pulumi.BoolPtrInput
   183  	EnableLniAtDeviceIndex                  pulumi.IntPtrInput
   184  	EnableResourceNameDnsARecordOnLaunch    pulumi.BoolPtrInput
   185  	EnableResourceNameDnsAaaaRecordOnLaunch pulumi.BoolPtrInput
   186  	ExistingDefaultSubnet                   pulumi.BoolPtrInput
   187  	// Whether destroying the resource deletes the default subnet. Default: `false`
   188  	ForceDestroy                   pulumi.BoolPtrInput
   189  	Ipv6CidrBlock                  pulumi.StringPtrInput
   190  	Ipv6CidrBlockAssociationId     pulumi.StringPtrInput
   191  	Ipv6Native                     pulumi.BoolPtrInput
   192  	MapCustomerOwnedIpOnLaunch     pulumi.BoolPtrInput
   193  	MapPublicIpOnLaunch            pulumi.BoolPtrInput
   194  	OutpostArn                     pulumi.StringPtrInput
   195  	OwnerId                        pulumi.StringPtrInput
   196  	PrivateDnsHostnameTypeOnLaunch pulumi.StringPtrInput
   197  	Tags                           pulumi.StringMapInput
   198  	// Deprecated: Please use `tags` instead.
   199  	TagsAll pulumi.StringMapInput
   200  	// The ID of the VPC the subnet is in
   201  	VpcId pulumi.StringPtrInput
   202  }
   203  
   204  func (DefaultSubnetState) ElementType() reflect.Type {
   205  	return reflect.TypeOf((*defaultSubnetState)(nil)).Elem()
   206  }
   207  
   208  type defaultSubnetArgs struct {
   209  	AssignIpv6AddressOnCreation *bool `pulumi:"assignIpv6AddressOnCreation"`
   210  	// is required
   211  	// * The `availabilityZoneId`, `cidrBlock` and `vpcId` arguments become computed attributes
   212  	// * The default value for `mapPublicIpOnLaunch` is `true`
   213  	//
   214  	// This resource supports the following additional arguments:
   215  	AvailabilityZone                        string  `pulumi:"availabilityZone"`
   216  	CustomerOwnedIpv4Pool                   *string `pulumi:"customerOwnedIpv4Pool"`
   217  	EnableDns64                             *bool   `pulumi:"enableDns64"`
   218  	EnableResourceNameDnsARecordOnLaunch    *bool   `pulumi:"enableResourceNameDnsARecordOnLaunch"`
   219  	EnableResourceNameDnsAaaaRecordOnLaunch *bool   `pulumi:"enableResourceNameDnsAaaaRecordOnLaunch"`
   220  	// Whether destroying the resource deletes the default subnet. Default: `false`
   221  	ForceDestroy                   *bool             `pulumi:"forceDestroy"`
   222  	Ipv6CidrBlock                  *string           `pulumi:"ipv6CidrBlock"`
   223  	Ipv6Native                     *bool             `pulumi:"ipv6Native"`
   224  	MapCustomerOwnedIpOnLaunch     *bool             `pulumi:"mapCustomerOwnedIpOnLaunch"`
   225  	MapPublicIpOnLaunch            *bool             `pulumi:"mapPublicIpOnLaunch"`
   226  	PrivateDnsHostnameTypeOnLaunch *string           `pulumi:"privateDnsHostnameTypeOnLaunch"`
   227  	Tags                           map[string]string `pulumi:"tags"`
   228  }
   229  
   230  // The set of arguments for constructing a DefaultSubnet resource.
   231  type DefaultSubnetArgs struct {
   232  	AssignIpv6AddressOnCreation pulumi.BoolPtrInput
   233  	// is required
   234  	// * The `availabilityZoneId`, `cidrBlock` and `vpcId` arguments become computed attributes
   235  	// * The default value for `mapPublicIpOnLaunch` is `true`
   236  	//
   237  	// This resource supports the following additional arguments:
   238  	AvailabilityZone                        pulumi.StringInput
   239  	CustomerOwnedIpv4Pool                   pulumi.StringPtrInput
   240  	EnableDns64                             pulumi.BoolPtrInput
   241  	EnableResourceNameDnsARecordOnLaunch    pulumi.BoolPtrInput
   242  	EnableResourceNameDnsAaaaRecordOnLaunch pulumi.BoolPtrInput
   243  	// Whether destroying the resource deletes the default subnet. Default: `false`
   244  	ForceDestroy                   pulumi.BoolPtrInput
   245  	Ipv6CidrBlock                  pulumi.StringPtrInput
   246  	Ipv6Native                     pulumi.BoolPtrInput
   247  	MapCustomerOwnedIpOnLaunch     pulumi.BoolPtrInput
   248  	MapPublicIpOnLaunch            pulumi.BoolPtrInput
   249  	PrivateDnsHostnameTypeOnLaunch pulumi.StringPtrInput
   250  	Tags                           pulumi.StringMapInput
   251  }
   252  
   253  func (DefaultSubnetArgs) ElementType() reflect.Type {
   254  	return reflect.TypeOf((*defaultSubnetArgs)(nil)).Elem()
   255  }
   256  
   257  type DefaultSubnetInput interface {
   258  	pulumi.Input
   259  
   260  	ToDefaultSubnetOutput() DefaultSubnetOutput
   261  	ToDefaultSubnetOutputWithContext(ctx context.Context) DefaultSubnetOutput
   262  }
   263  
   264  func (*DefaultSubnet) ElementType() reflect.Type {
   265  	return reflect.TypeOf((**DefaultSubnet)(nil)).Elem()
   266  }
   267  
   268  func (i *DefaultSubnet) ToDefaultSubnetOutput() DefaultSubnetOutput {
   269  	return i.ToDefaultSubnetOutputWithContext(context.Background())
   270  }
   271  
   272  func (i *DefaultSubnet) ToDefaultSubnetOutputWithContext(ctx context.Context) DefaultSubnetOutput {
   273  	return pulumi.ToOutputWithContext(ctx, i).(DefaultSubnetOutput)
   274  }
   275  
   276  // DefaultSubnetArrayInput is an input type that accepts DefaultSubnetArray and DefaultSubnetArrayOutput values.
   277  // You can construct a concrete instance of `DefaultSubnetArrayInput` via:
   278  //
   279  //	DefaultSubnetArray{ DefaultSubnetArgs{...} }
   280  type DefaultSubnetArrayInput interface {
   281  	pulumi.Input
   282  
   283  	ToDefaultSubnetArrayOutput() DefaultSubnetArrayOutput
   284  	ToDefaultSubnetArrayOutputWithContext(context.Context) DefaultSubnetArrayOutput
   285  }
   286  
   287  type DefaultSubnetArray []DefaultSubnetInput
   288  
   289  func (DefaultSubnetArray) ElementType() reflect.Type {
   290  	return reflect.TypeOf((*[]*DefaultSubnet)(nil)).Elem()
   291  }
   292  
   293  func (i DefaultSubnetArray) ToDefaultSubnetArrayOutput() DefaultSubnetArrayOutput {
   294  	return i.ToDefaultSubnetArrayOutputWithContext(context.Background())
   295  }
   296  
   297  func (i DefaultSubnetArray) ToDefaultSubnetArrayOutputWithContext(ctx context.Context) DefaultSubnetArrayOutput {
   298  	return pulumi.ToOutputWithContext(ctx, i).(DefaultSubnetArrayOutput)
   299  }
   300  
   301  // DefaultSubnetMapInput is an input type that accepts DefaultSubnetMap and DefaultSubnetMapOutput values.
   302  // You can construct a concrete instance of `DefaultSubnetMapInput` via:
   303  //
   304  //	DefaultSubnetMap{ "key": DefaultSubnetArgs{...} }
   305  type DefaultSubnetMapInput interface {
   306  	pulumi.Input
   307  
   308  	ToDefaultSubnetMapOutput() DefaultSubnetMapOutput
   309  	ToDefaultSubnetMapOutputWithContext(context.Context) DefaultSubnetMapOutput
   310  }
   311  
   312  type DefaultSubnetMap map[string]DefaultSubnetInput
   313  
   314  func (DefaultSubnetMap) ElementType() reflect.Type {
   315  	return reflect.TypeOf((*map[string]*DefaultSubnet)(nil)).Elem()
   316  }
   317  
   318  func (i DefaultSubnetMap) ToDefaultSubnetMapOutput() DefaultSubnetMapOutput {
   319  	return i.ToDefaultSubnetMapOutputWithContext(context.Background())
   320  }
   321  
   322  func (i DefaultSubnetMap) ToDefaultSubnetMapOutputWithContext(ctx context.Context) DefaultSubnetMapOutput {
   323  	return pulumi.ToOutputWithContext(ctx, i).(DefaultSubnetMapOutput)
   324  }
   325  
   326  type DefaultSubnetOutput struct{ *pulumi.OutputState }
   327  
   328  func (DefaultSubnetOutput) ElementType() reflect.Type {
   329  	return reflect.TypeOf((**DefaultSubnet)(nil)).Elem()
   330  }
   331  
   332  func (o DefaultSubnetOutput) ToDefaultSubnetOutput() DefaultSubnetOutput {
   333  	return o
   334  }
   335  
   336  func (o DefaultSubnetOutput) ToDefaultSubnetOutputWithContext(ctx context.Context) DefaultSubnetOutput {
   337  	return o
   338  }
   339  
   340  func (o DefaultSubnetOutput) Arn() pulumi.StringOutput {
   341  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput)
   342  }
   343  
   344  func (o DefaultSubnetOutput) AssignIpv6AddressOnCreation() pulumi.BoolPtrOutput {
   345  	return o.ApplyT(func(v *DefaultSubnet) pulumi.BoolPtrOutput { return v.AssignIpv6AddressOnCreation }).(pulumi.BoolPtrOutput)
   346  }
   347  
   348  // is required
   349  // * The `availabilityZoneId`, `cidrBlock` and `vpcId` arguments become computed attributes
   350  // * The default value for `mapPublicIpOnLaunch` is `true`
   351  //
   352  // This resource supports the following additional arguments:
   353  func (o DefaultSubnetOutput) AvailabilityZone() pulumi.StringOutput {
   354  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.AvailabilityZone }).(pulumi.StringOutput)
   355  }
   356  
   357  // The AZ ID of the subnet
   358  func (o DefaultSubnetOutput) AvailabilityZoneId() pulumi.StringOutput {
   359  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.AvailabilityZoneId }).(pulumi.StringOutput)
   360  }
   361  
   362  // The IPv4 CIDR block assigned to the subnet
   363  func (o DefaultSubnetOutput) CidrBlock() pulumi.StringOutput {
   364  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.CidrBlock }).(pulumi.StringOutput)
   365  }
   366  
   367  func (o DefaultSubnetOutput) CustomerOwnedIpv4Pool() pulumi.StringPtrOutput {
   368  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringPtrOutput { return v.CustomerOwnedIpv4Pool }).(pulumi.StringPtrOutput)
   369  }
   370  
   371  func (o DefaultSubnetOutput) EnableDns64() pulumi.BoolPtrOutput {
   372  	return o.ApplyT(func(v *DefaultSubnet) pulumi.BoolPtrOutput { return v.EnableDns64 }).(pulumi.BoolPtrOutput)
   373  }
   374  
   375  func (o DefaultSubnetOutput) EnableLniAtDeviceIndex() pulumi.IntOutput {
   376  	return o.ApplyT(func(v *DefaultSubnet) pulumi.IntOutput { return v.EnableLniAtDeviceIndex }).(pulumi.IntOutput)
   377  }
   378  
   379  func (o DefaultSubnetOutput) EnableResourceNameDnsARecordOnLaunch() pulumi.BoolPtrOutput {
   380  	return o.ApplyT(func(v *DefaultSubnet) pulumi.BoolPtrOutput { return v.EnableResourceNameDnsARecordOnLaunch }).(pulumi.BoolPtrOutput)
   381  }
   382  
   383  func (o DefaultSubnetOutput) EnableResourceNameDnsAaaaRecordOnLaunch() pulumi.BoolPtrOutput {
   384  	return o.ApplyT(func(v *DefaultSubnet) pulumi.BoolPtrOutput { return v.EnableResourceNameDnsAaaaRecordOnLaunch }).(pulumi.BoolPtrOutput)
   385  }
   386  
   387  func (o DefaultSubnetOutput) ExistingDefaultSubnet() pulumi.BoolOutput {
   388  	return o.ApplyT(func(v *DefaultSubnet) pulumi.BoolOutput { return v.ExistingDefaultSubnet }).(pulumi.BoolOutput)
   389  }
   390  
   391  // Whether destroying the resource deletes the default subnet. Default: `false`
   392  func (o DefaultSubnetOutput) ForceDestroy() pulumi.BoolPtrOutput {
   393  	return o.ApplyT(func(v *DefaultSubnet) pulumi.BoolPtrOutput { return v.ForceDestroy }).(pulumi.BoolPtrOutput)
   394  }
   395  
   396  func (o DefaultSubnetOutput) Ipv6CidrBlock() pulumi.StringOutput {
   397  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.Ipv6CidrBlock }).(pulumi.StringOutput)
   398  }
   399  
   400  func (o DefaultSubnetOutput) Ipv6CidrBlockAssociationId() pulumi.StringOutput {
   401  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.Ipv6CidrBlockAssociationId }).(pulumi.StringOutput)
   402  }
   403  
   404  func (o DefaultSubnetOutput) Ipv6Native() pulumi.BoolPtrOutput {
   405  	return o.ApplyT(func(v *DefaultSubnet) pulumi.BoolPtrOutput { return v.Ipv6Native }).(pulumi.BoolPtrOutput)
   406  }
   407  
   408  func (o DefaultSubnetOutput) MapCustomerOwnedIpOnLaunch() pulumi.BoolPtrOutput {
   409  	return o.ApplyT(func(v *DefaultSubnet) pulumi.BoolPtrOutput { return v.MapCustomerOwnedIpOnLaunch }).(pulumi.BoolPtrOutput)
   410  }
   411  
   412  func (o DefaultSubnetOutput) MapPublicIpOnLaunch() pulumi.BoolPtrOutput {
   413  	return o.ApplyT(func(v *DefaultSubnet) pulumi.BoolPtrOutput { return v.MapPublicIpOnLaunch }).(pulumi.BoolPtrOutput)
   414  }
   415  
   416  func (o DefaultSubnetOutput) OutpostArn() pulumi.StringOutput {
   417  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.OutpostArn }).(pulumi.StringOutput)
   418  }
   419  
   420  func (o DefaultSubnetOutput) OwnerId() pulumi.StringOutput {
   421  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.OwnerId }).(pulumi.StringOutput)
   422  }
   423  
   424  func (o DefaultSubnetOutput) PrivateDnsHostnameTypeOnLaunch() pulumi.StringOutput {
   425  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.PrivateDnsHostnameTypeOnLaunch }).(pulumi.StringOutput)
   426  }
   427  
   428  func (o DefaultSubnetOutput) Tags() pulumi.StringMapOutput {
   429  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput)
   430  }
   431  
   432  // Deprecated: Please use `tags` instead.
   433  func (o DefaultSubnetOutput) TagsAll() pulumi.StringMapOutput {
   434  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput)
   435  }
   436  
   437  // The ID of the VPC the subnet is in
   438  func (o DefaultSubnetOutput) VpcId() pulumi.StringOutput {
   439  	return o.ApplyT(func(v *DefaultSubnet) pulumi.StringOutput { return v.VpcId }).(pulumi.StringOutput)
   440  }
   441  
   442  type DefaultSubnetArrayOutput struct{ *pulumi.OutputState }
   443  
   444  func (DefaultSubnetArrayOutput) ElementType() reflect.Type {
   445  	return reflect.TypeOf((*[]*DefaultSubnet)(nil)).Elem()
   446  }
   447  
   448  func (o DefaultSubnetArrayOutput) ToDefaultSubnetArrayOutput() DefaultSubnetArrayOutput {
   449  	return o
   450  }
   451  
   452  func (o DefaultSubnetArrayOutput) ToDefaultSubnetArrayOutputWithContext(ctx context.Context) DefaultSubnetArrayOutput {
   453  	return o
   454  }
   455  
   456  func (o DefaultSubnetArrayOutput) Index(i pulumi.IntInput) DefaultSubnetOutput {
   457  	return pulumi.All(o, i).ApplyT(func(vs []interface{}) *DefaultSubnet {
   458  		return vs[0].([]*DefaultSubnet)[vs[1].(int)]
   459  	}).(DefaultSubnetOutput)
   460  }
   461  
   462  type DefaultSubnetMapOutput struct{ *pulumi.OutputState }
   463  
   464  func (DefaultSubnetMapOutput) ElementType() reflect.Type {
   465  	return reflect.TypeOf((*map[string]*DefaultSubnet)(nil)).Elem()
   466  }
   467  
   468  func (o DefaultSubnetMapOutput) ToDefaultSubnetMapOutput() DefaultSubnetMapOutput {
   469  	return o
   470  }
   471  
   472  func (o DefaultSubnetMapOutput) ToDefaultSubnetMapOutputWithContext(ctx context.Context) DefaultSubnetMapOutput {
   473  	return o
   474  }
   475  
   476  func (o DefaultSubnetMapOutput) MapIndex(k pulumi.StringInput) DefaultSubnetOutput {
   477  	return pulumi.All(o, k).ApplyT(func(vs []interface{}) *DefaultSubnet {
   478  		return vs[0].(map[string]*DefaultSubnet)[vs[1].(string)]
   479  	}).(DefaultSubnetOutput)
   480  }
   481  
   482  func init() {
   483  	pulumi.RegisterInputType(reflect.TypeOf((*DefaultSubnetInput)(nil)).Elem(), &DefaultSubnet{})
   484  	pulumi.RegisterInputType(reflect.TypeOf((*DefaultSubnetArrayInput)(nil)).Elem(), DefaultSubnetArray{})
   485  	pulumi.RegisterInputType(reflect.TypeOf((*DefaultSubnetMapInput)(nil)).Elem(), DefaultSubnetMap{})
   486  	pulumi.RegisterOutputType(DefaultSubnetOutput{})
   487  	pulumi.RegisterOutputType(DefaultSubnetArrayOutput{})
   488  	pulumi.RegisterOutputType(DefaultSubnetMapOutput{})
   489  }