# coding=utf-8
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import copy
import warnings
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
from .. import _utilities
from . import outputs
from ._inputs import *

__all__ = ['AwsGovcloudIntegrationsArgs', 'AwsGovcloudIntegrations']

@pulumi.input_type
class AwsGovcloudIntegrationsArgs:
    def __init__(__self__, *,
                 linked_account_id: pulumi.Input[int],
                 account_id: Optional[pulumi.Input[int]] = None,
                 alb: Optional[pulumi.Input['AwsGovcloudIntegrationsAlbArgs']] = None,
                 api_gateway: Optional[pulumi.Input['AwsGovcloudIntegrationsApiGatewayArgs']] = None,
                 auto_scaling: Optional[pulumi.Input['AwsGovcloudIntegrationsAutoScalingArgs']] = None,
                 aws_direct_connect: Optional[pulumi.Input['AwsGovcloudIntegrationsAwsDirectConnectArgs']] = None,
                 aws_states: Optional[pulumi.Input['AwsGovcloudIntegrationsAwsStatesArgs']] = None,
                 cloudtrail: Optional[pulumi.Input['AwsGovcloudIntegrationsCloudtrailArgs']] = None,
                 dynamo_db: Optional[pulumi.Input['AwsGovcloudIntegrationsDynamoDbArgs']] = None,
                 ebs: Optional[pulumi.Input['AwsGovcloudIntegrationsEbsArgs']] = None,
                 ec2: Optional[pulumi.Input['AwsGovcloudIntegrationsEc2Args']] = None,
                 elastic_search: Optional[pulumi.Input['AwsGovcloudIntegrationsElasticSearchArgs']] = None,
                 elb: Optional[pulumi.Input['AwsGovcloudIntegrationsElbArgs']] = None,
                 emr: Optional[pulumi.Input['AwsGovcloudIntegrationsEmrArgs']] = None,
                 iam: Optional[pulumi.Input['AwsGovcloudIntegrationsIamArgs']] = None,
                 lambda_: Optional[pulumi.Input['AwsGovcloudIntegrationsLambdaArgs']] = None,
                 rds: Optional[pulumi.Input['AwsGovcloudIntegrationsRdsArgs']] = None,
                 red_shift: Optional[pulumi.Input['AwsGovcloudIntegrationsRedShiftArgs']] = None,
                 route53: Optional[pulumi.Input['AwsGovcloudIntegrationsRoute53Args']] = None,
                 s3: Optional[pulumi.Input['AwsGovcloudIntegrationsS3Args']] = None,
                 sns: Optional[pulumi.Input['AwsGovcloudIntegrationsSnsArgs']] = None,
                 sqs: Optional[pulumi.Input['AwsGovcloudIntegrationsSqsArgs']] = None):
        """
        The set of arguments for constructing a AwsGovcloudIntegrations resource.
        :param pulumi.Input[int] linked_account_id: The access key of the AwsGovCloud.
        :param pulumi.Input[int] account_id: The New Relic account ID to operate on. This allows the user to override the `account_id` attribute set on the provider. Defaults to the environment variable `NEW_RELIC_ACCOUNT_ID`.
        :param pulumi.Input['AwsGovcloudIntegrationsAlbArgs'] alb: Application load balancer AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsApiGatewayArgs'] api_gateway: Api Gateway AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsAutoScalingArgs'] auto_scaling: Autoscaling AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsAwsDirectConnectArgs'] aws_direct_connect: Aws Direct Connect AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsAwsStatesArgs'] aws_states: Aws States AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsCloudtrailArgs'] cloudtrail: Cloudtrail AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsDynamoDbArgs'] dynamo_db: Dynamo DB AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsEbsArgs'] ebs: Elastic Beanstalk AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsEc2Args'] ec2: EC2 AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsElasticSearchArgs'] elastic_search: Elastic search AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsElbArgs'] elb: Elb AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsEmrArgs'] emr: Emr AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsIamArgs'] iam: IAM AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsLambdaArgs'] lambda_: Lambda AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsRdsArgs'] rds: RDS AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsRedShiftArgs'] red_shift: Redshift AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsRoute53Args'] route53: Route53 AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsS3Args'] s3: The s3 integration
        :param pulumi.Input['AwsGovcloudIntegrationsSnsArgs'] sns: SNS AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsSqsArgs'] sqs: SQS AwsGovCloud integration.See Integration blocks below for details.
        """
        pulumi.set(__self__, "linked_account_id", linked_account_id)
        if account_id is not None:
            pulumi.set(__self__, "account_id", account_id)
        if alb is not None:
            pulumi.set(__self__, "alb", alb)
        if api_gateway is not None:
            pulumi.set(__self__, "api_gateway", api_gateway)
        if auto_scaling is not None:
            pulumi.set(__self__, "auto_scaling", auto_scaling)
        if aws_direct_connect is not None:
            pulumi.set(__self__, "aws_direct_connect", aws_direct_connect)
        if aws_states is not None:
            pulumi.set(__self__, "aws_states", aws_states)
        if cloudtrail is not None:
            pulumi.set(__self__, "cloudtrail", cloudtrail)
        if dynamo_db is not None:
            pulumi.set(__self__, "dynamo_db", dynamo_db)
        if ebs is not None:
            pulumi.set(__self__, "ebs", ebs)
        if ec2 is not None:
            pulumi.set(__self__, "ec2", ec2)
        if elastic_search is not None:
            pulumi.set(__self__, "elastic_search", elastic_search)
        if elb is not None:
            pulumi.set(__self__, "elb", elb)
        if emr is not None:
            pulumi.set(__self__, "emr", emr)
        if iam is not None:
            pulumi.set(__self__, "iam", iam)
        if lambda_ is not None:
            pulumi.set(__self__, "lambda_", lambda_)
        if rds is not None:
            pulumi.set(__self__, "rds", rds)
        if red_shift is not None:
            pulumi.set(__self__, "red_shift", red_shift)
        if route53 is not None:
            pulumi.set(__self__, "route53", route53)
        if s3 is not None:
            pulumi.set(__self__, "s3", s3)
        if sns is not None:
            pulumi.set(__self__, "sns", sns)
        if sqs is not None:
            pulumi.set(__self__, "sqs", sqs)

    @property
    @pulumi.getter(name="linkedAccountId")
    def linked_account_id(self) -> pulumi.Input[int]:
        """
        The access key of the AwsGovCloud.
        """
        return pulumi.get(self, "linked_account_id")

    @linked_account_id.setter
    def linked_account_id(self, value: pulumi.Input[int]):
        pulumi.set(self, "linked_account_id", value)

    @property
    @pulumi.getter(name="accountId")
    def account_id(self) -> Optional[pulumi.Input[int]]:
        """
        The New Relic account ID to operate on. This allows the user to override the `account_id` attribute set on the provider. Defaults to the environment variable `NEW_RELIC_ACCOUNT_ID`.
        """
        return pulumi.get(self, "account_id")

    @account_id.setter
    def account_id(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "account_id", value)

    @property
    @pulumi.getter
    def alb(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsAlbArgs']]:
        """
        Application load balancer AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "alb")

    @alb.setter
    def alb(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsAlbArgs']]):
        pulumi.set(self, "alb", value)

    @property
    @pulumi.getter(name="apiGateway")
    def api_gateway(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsApiGatewayArgs']]:
        """
        Api Gateway AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "api_gateway")

    @api_gateway.setter
    def api_gateway(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsApiGatewayArgs']]):
        pulumi.set(self, "api_gateway", value)

    @property
    @pulumi.getter(name="autoScaling")
    def auto_scaling(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsAutoScalingArgs']]:
        """
        Autoscaling AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "auto_scaling")

    @auto_scaling.setter
    def auto_scaling(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsAutoScalingArgs']]):
        pulumi.set(self, "auto_scaling", value)

    @property
    @pulumi.getter(name="awsDirectConnect")
    def aws_direct_connect(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsAwsDirectConnectArgs']]:
        """
        Aws Direct Connect AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "aws_direct_connect")

    @aws_direct_connect.setter
    def aws_direct_connect(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsAwsDirectConnectArgs']]):
        pulumi.set(self, "aws_direct_connect", value)

    @property
    @pulumi.getter(name="awsStates")
    def aws_states(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsAwsStatesArgs']]:
        """
        Aws States AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "aws_states")

    @aws_states.setter
    def aws_states(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsAwsStatesArgs']]):
        pulumi.set(self, "aws_states", value)

    @property
    @pulumi.getter
    def cloudtrail(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsCloudtrailArgs']]:
        """
        Cloudtrail AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "cloudtrail")

    @cloudtrail.setter
    def cloudtrail(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsCloudtrailArgs']]):
        pulumi.set(self, "cloudtrail", value)

    @property
    @pulumi.getter(name="dynamoDb")
    def dynamo_db(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsDynamoDbArgs']]:
        """
        Dynamo DB AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "dynamo_db")

    @dynamo_db.setter
    def dynamo_db(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsDynamoDbArgs']]):
        pulumi.set(self, "dynamo_db", value)

    @property
    @pulumi.getter
    def ebs(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsEbsArgs']]:
        """
        Elastic Beanstalk AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "ebs")

    @ebs.setter
    def ebs(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsEbsArgs']]):
        pulumi.set(self, "ebs", value)

    @property
    @pulumi.getter
    def ec2(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsEc2Args']]:
        """
        EC2 AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "ec2")

    @ec2.setter
    def ec2(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsEc2Args']]):
        pulumi.set(self, "ec2", value)

    @property
    @pulumi.getter(name="elasticSearch")
    def elastic_search(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsElasticSearchArgs']]:
        """
        Elastic search AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "elastic_search")

    @elastic_search.setter
    def elastic_search(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsElasticSearchArgs']]):
        pulumi.set(self, "elastic_search", value)

    @property
    @pulumi.getter
    def elb(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsElbArgs']]:
        """
        Elb AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "elb")

    @elb.setter
    def elb(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsElbArgs']]):
        pulumi.set(self, "elb", value)

    @property
    @pulumi.getter
    def emr(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsEmrArgs']]:
        """
        Emr AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "emr")

    @emr.setter
    def emr(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsEmrArgs']]):
        pulumi.set(self, "emr", value)

    @property
    @pulumi.getter
    def iam(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsIamArgs']]:
        """
        IAM AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "iam")

    @iam.setter
    def iam(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsIamArgs']]):
        pulumi.set(self, "iam", value)

    @property
    @pulumi.getter(name="lambda")
    def lambda_(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsLambdaArgs']]:
        """
        Lambda AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "lambda_")

    @lambda_.setter
    def lambda_(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsLambdaArgs']]):
        pulumi.set(self, "lambda_", value)

    @property
    @pulumi.getter
    def rds(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsRdsArgs']]:
        """
        RDS AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "rds")

    @rds.setter
    def rds(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsRdsArgs']]):
        pulumi.set(self, "rds", value)

    @property
    @pulumi.getter(name="redShift")
    def red_shift(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsRedShiftArgs']]:
        """
        Redshift AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "red_shift")

    @red_shift.setter
    def red_shift(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsRedShiftArgs']]):
        pulumi.set(self, "red_shift", value)

    @property
    @pulumi.getter
    def route53(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsRoute53Args']]:
        """
        Route53 AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "route53")

    @route53.setter
    def route53(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsRoute53Args']]):
        pulumi.set(self, "route53", value)

    @property
    @pulumi.getter
    def s3(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsS3Args']]:
        """
        The s3 integration
        """
        return pulumi.get(self, "s3")

    @s3.setter
    def s3(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsS3Args']]):
        pulumi.set(self, "s3", value)

    @property
    @pulumi.getter
    def sns(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsSnsArgs']]:
        """
        SNS AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "sns")

    @sns.setter
    def sns(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsSnsArgs']]):
        pulumi.set(self, "sns", value)

    @property
    @pulumi.getter
    def sqs(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsSqsArgs']]:
        """
        SQS AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "sqs")

    @sqs.setter
    def sqs(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsSqsArgs']]):
        pulumi.set(self, "sqs", value)


@pulumi.input_type
class _AwsGovcloudIntegrationsState:
    def __init__(__self__, *,
                 account_id: Optional[pulumi.Input[int]] = None,
                 alb: Optional[pulumi.Input['AwsGovcloudIntegrationsAlbArgs']] = None,
                 api_gateway: Optional[pulumi.Input['AwsGovcloudIntegrationsApiGatewayArgs']] = None,
                 auto_scaling: Optional[pulumi.Input['AwsGovcloudIntegrationsAutoScalingArgs']] = None,
                 aws_direct_connect: Optional[pulumi.Input['AwsGovcloudIntegrationsAwsDirectConnectArgs']] = None,
                 aws_states: Optional[pulumi.Input['AwsGovcloudIntegrationsAwsStatesArgs']] = None,
                 cloudtrail: Optional[pulumi.Input['AwsGovcloudIntegrationsCloudtrailArgs']] = None,
                 dynamo_db: Optional[pulumi.Input['AwsGovcloudIntegrationsDynamoDbArgs']] = None,
                 ebs: Optional[pulumi.Input['AwsGovcloudIntegrationsEbsArgs']] = None,
                 ec2: Optional[pulumi.Input['AwsGovcloudIntegrationsEc2Args']] = None,
                 elastic_search: Optional[pulumi.Input['AwsGovcloudIntegrationsElasticSearchArgs']] = None,
                 elb: Optional[pulumi.Input['AwsGovcloudIntegrationsElbArgs']] = None,
                 emr: Optional[pulumi.Input['AwsGovcloudIntegrationsEmrArgs']] = None,
                 iam: Optional[pulumi.Input['AwsGovcloudIntegrationsIamArgs']] = None,
                 lambda_: Optional[pulumi.Input['AwsGovcloudIntegrationsLambdaArgs']] = None,
                 linked_account_id: Optional[pulumi.Input[int]] = None,
                 rds: Optional[pulumi.Input['AwsGovcloudIntegrationsRdsArgs']] = None,
                 red_shift: Optional[pulumi.Input['AwsGovcloudIntegrationsRedShiftArgs']] = None,
                 route53: Optional[pulumi.Input['AwsGovcloudIntegrationsRoute53Args']] = None,
                 s3: Optional[pulumi.Input['AwsGovcloudIntegrationsS3Args']] = None,
                 sns: Optional[pulumi.Input['AwsGovcloudIntegrationsSnsArgs']] = None,
                 sqs: Optional[pulumi.Input['AwsGovcloudIntegrationsSqsArgs']] = None):
        """
        Input properties used for looking up and filtering AwsGovcloudIntegrations resources.
        :param pulumi.Input[int] account_id: The New Relic account ID to operate on. This allows the user to override the `account_id` attribute set on the provider. Defaults to the environment variable `NEW_RELIC_ACCOUNT_ID`.
        :param pulumi.Input['AwsGovcloudIntegrationsAlbArgs'] alb: Application load balancer AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsApiGatewayArgs'] api_gateway: Api Gateway AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsAutoScalingArgs'] auto_scaling: Autoscaling AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsAwsDirectConnectArgs'] aws_direct_connect: Aws Direct Connect AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsAwsStatesArgs'] aws_states: Aws States AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsCloudtrailArgs'] cloudtrail: Cloudtrail AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsDynamoDbArgs'] dynamo_db: Dynamo DB AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsEbsArgs'] ebs: Elastic Beanstalk AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsEc2Args'] ec2: EC2 AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsElasticSearchArgs'] elastic_search: Elastic search AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsElbArgs'] elb: Elb AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsEmrArgs'] emr: Emr AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsIamArgs'] iam: IAM AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsLambdaArgs'] lambda_: Lambda AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[int] linked_account_id: The access key of the AwsGovCloud.
        :param pulumi.Input['AwsGovcloudIntegrationsRdsArgs'] rds: RDS AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsRedShiftArgs'] red_shift: Redshift AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsRoute53Args'] route53: Route53 AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsS3Args'] s3: The s3 integration
        :param pulumi.Input['AwsGovcloudIntegrationsSnsArgs'] sns: SNS AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input['AwsGovcloudIntegrationsSqsArgs'] sqs: SQS AwsGovCloud integration.See Integration blocks below for details.
        """
        if account_id is not None:
            pulumi.set(__self__, "account_id", account_id)
        if alb is not None:
            pulumi.set(__self__, "alb", alb)
        if api_gateway is not None:
            pulumi.set(__self__, "api_gateway", api_gateway)
        if auto_scaling is not None:
            pulumi.set(__self__, "auto_scaling", auto_scaling)
        if aws_direct_connect is not None:
            pulumi.set(__self__, "aws_direct_connect", aws_direct_connect)
        if aws_states is not None:
            pulumi.set(__self__, "aws_states", aws_states)
        if cloudtrail is not None:
            pulumi.set(__self__, "cloudtrail", cloudtrail)
        if dynamo_db is not None:
            pulumi.set(__self__, "dynamo_db", dynamo_db)
        if ebs is not None:
            pulumi.set(__self__, "ebs", ebs)
        if ec2 is not None:
            pulumi.set(__self__, "ec2", ec2)
        if elastic_search is not None:
            pulumi.set(__self__, "elastic_search", elastic_search)
        if elb is not None:
            pulumi.set(__self__, "elb", elb)
        if emr is not None:
            pulumi.set(__self__, "emr", emr)
        if iam is not None:
            pulumi.set(__self__, "iam", iam)
        if lambda_ is not None:
            pulumi.set(__self__, "lambda_", lambda_)
        if linked_account_id is not None:
            pulumi.set(__self__, "linked_account_id", linked_account_id)
        if rds is not None:
            pulumi.set(__self__, "rds", rds)
        if red_shift is not None:
            pulumi.set(__self__, "red_shift", red_shift)
        if route53 is not None:
            pulumi.set(__self__, "route53", route53)
        if s3 is not None:
            pulumi.set(__self__, "s3", s3)
        if sns is not None:
            pulumi.set(__self__, "sns", sns)
        if sqs is not None:
            pulumi.set(__self__, "sqs", sqs)

    @property
    @pulumi.getter(name="accountId")
    def account_id(self) -> Optional[pulumi.Input[int]]:
        """
        The New Relic account ID to operate on. This allows the user to override the `account_id` attribute set on the provider. Defaults to the environment variable `NEW_RELIC_ACCOUNT_ID`.
        """
        return pulumi.get(self, "account_id")

    @account_id.setter
    def account_id(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "account_id", value)

    @property
    @pulumi.getter
    def alb(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsAlbArgs']]:
        """
        Application load balancer AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "alb")

    @alb.setter
    def alb(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsAlbArgs']]):
        pulumi.set(self, "alb", value)

    @property
    @pulumi.getter(name="apiGateway")
    def api_gateway(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsApiGatewayArgs']]:
        """
        Api Gateway AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "api_gateway")

    @api_gateway.setter
    def api_gateway(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsApiGatewayArgs']]):
        pulumi.set(self, "api_gateway", value)

    @property
    @pulumi.getter(name="autoScaling")
    def auto_scaling(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsAutoScalingArgs']]:
        """
        Autoscaling AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "auto_scaling")

    @auto_scaling.setter
    def auto_scaling(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsAutoScalingArgs']]):
        pulumi.set(self, "auto_scaling", value)

    @property
    @pulumi.getter(name="awsDirectConnect")
    def aws_direct_connect(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsAwsDirectConnectArgs']]:
        """
        Aws Direct Connect AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "aws_direct_connect")

    @aws_direct_connect.setter
    def aws_direct_connect(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsAwsDirectConnectArgs']]):
        pulumi.set(self, "aws_direct_connect", value)

    @property
    @pulumi.getter(name="awsStates")
    def aws_states(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsAwsStatesArgs']]:
        """
        Aws States AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "aws_states")

    @aws_states.setter
    def aws_states(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsAwsStatesArgs']]):
        pulumi.set(self, "aws_states", value)

    @property
    @pulumi.getter
    def cloudtrail(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsCloudtrailArgs']]:
        """
        Cloudtrail AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "cloudtrail")

    @cloudtrail.setter
    def cloudtrail(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsCloudtrailArgs']]):
        pulumi.set(self, "cloudtrail", value)

    @property
    @pulumi.getter(name="dynamoDb")
    def dynamo_db(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsDynamoDbArgs']]:
        """
        Dynamo DB AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "dynamo_db")

    @dynamo_db.setter
    def dynamo_db(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsDynamoDbArgs']]):
        pulumi.set(self, "dynamo_db", value)

    @property
    @pulumi.getter
    def ebs(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsEbsArgs']]:
        """
        Elastic Beanstalk AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "ebs")

    @ebs.setter
    def ebs(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsEbsArgs']]):
        pulumi.set(self, "ebs", value)

    @property
    @pulumi.getter
    def ec2(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsEc2Args']]:
        """
        EC2 AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "ec2")

    @ec2.setter
    def ec2(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsEc2Args']]):
        pulumi.set(self, "ec2", value)

    @property
    @pulumi.getter(name="elasticSearch")
    def elastic_search(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsElasticSearchArgs']]:
        """
        Elastic search AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "elastic_search")

    @elastic_search.setter
    def elastic_search(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsElasticSearchArgs']]):
        pulumi.set(self, "elastic_search", value)

    @property
    @pulumi.getter
    def elb(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsElbArgs']]:
        """
        Elb AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "elb")

    @elb.setter
    def elb(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsElbArgs']]):
        pulumi.set(self, "elb", value)

    @property
    @pulumi.getter
    def emr(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsEmrArgs']]:
        """
        Emr AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "emr")

    @emr.setter
    def emr(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsEmrArgs']]):
        pulumi.set(self, "emr", value)

    @property
    @pulumi.getter
    def iam(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsIamArgs']]:
        """
        IAM AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "iam")

    @iam.setter
    def iam(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsIamArgs']]):
        pulumi.set(self, "iam", value)

    @property
    @pulumi.getter(name="lambda")
    def lambda_(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsLambdaArgs']]:
        """
        Lambda AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "lambda_")

    @lambda_.setter
    def lambda_(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsLambdaArgs']]):
        pulumi.set(self, "lambda_", value)

    @property
    @pulumi.getter(name="linkedAccountId")
    def linked_account_id(self) -> Optional[pulumi.Input[int]]:
        """
        The access key of the AwsGovCloud.
        """
        return pulumi.get(self, "linked_account_id")

    @linked_account_id.setter
    def linked_account_id(self, value: Optional[pulumi.Input[int]]):
        pulumi.set(self, "linked_account_id", value)

    @property
    @pulumi.getter
    def rds(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsRdsArgs']]:
        """
        RDS AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "rds")

    @rds.setter
    def rds(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsRdsArgs']]):
        pulumi.set(self, "rds", value)

    @property
    @pulumi.getter(name="redShift")
    def red_shift(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsRedShiftArgs']]:
        """
        Redshift AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "red_shift")

    @red_shift.setter
    def red_shift(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsRedShiftArgs']]):
        pulumi.set(self, "red_shift", value)

    @property
    @pulumi.getter
    def route53(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsRoute53Args']]:
        """
        Route53 AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "route53")

    @route53.setter
    def route53(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsRoute53Args']]):
        pulumi.set(self, "route53", value)

    @property
    @pulumi.getter
    def s3(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsS3Args']]:
        """
        The s3 integration
        """
        return pulumi.get(self, "s3")

    @s3.setter
    def s3(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsS3Args']]):
        pulumi.set(self, "s3", value)

    @property
    @pulumi.getter
    def sns(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsSnsArgs']]:
        """
        SNS AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "sns")

    @sns.setter
    def sns(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsSnsArgs']]):
        pulumi.set(self, "sns", value)

    @property
    @pulumi.getter
    def sqs(self) -> Optional[pulumi.Input['AwsGovcloudIntegrationsSqsArgs']]:
        """
        SQS AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "sqs")

    @sqs.setter
    def sqs(self, value: Optional[pulumi.Input['AwsGovcloudIntegrationsSqsArgs']]):
        pulumi.set(self, "sqs", value)


class AwsGovcloudIntegrations(pulumi.CustomResource):
    @overload
    def __init__(__self__,
                 resource_name: str,
                 opts: Optional[pulumi.ResourceOptions] = None,
                 account_id: Optional[pulumi.Input[int]] = None,
                 alb: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAlbArgs']]] = None,
                 api_gateway: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsApiGatewayArgs']]] = None,
                 auto_scaling: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAutoScalingArgs']]] = None,
                 aws_direct_connect: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsDirectConnectArgs']]] = None,
                 aws_states: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsStatesArgs']]] = None,
                 cloudtrail: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsCloudtrailArgs']]] = None,
                 dynamo_db: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsDynamoDbArgs']]] = None,
                 ebs: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEbsArgs']]] = None,
                 ec2: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEc2Args']]] = None,
                 elastic_search: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElasticSearchArgs']]] = None,
                 elb: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElbArgs']]] = None,
                 emr: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEmrArgs']]] = None,
                 iam: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsIamArgs']]] = None,
                 lambda_: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsLambdaArgs']]] = None,
                 linked_account_id: Optional[pulumi.Input[int]] = None,
                 rds: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRdsArgs']]] = None,
                 red_shift: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRedShiftArgs']]] = None,
                 route53: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRoute53Args']]] = None,
                 s3: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsS3Args']]] = None,
                 sns: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSnsArgs']]] = None,
                 sqs: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSqsArgs']]] = None,
                 __props__=None):
        """
        ## Import

        Integrate AWSGovCloud accounts can be imported using the `id`, e.g. bash

        ```sh
         $ pulumi import newrelic:cloud/awsGovcloudIntegrations:AwsGovcloudIntegrations foo <id>
        ```

        :param str resource_name: The name of the resource.
        :param pulumi.ResourceOptions opts: Options for the resource.
        :param pulumi.Input[int] account_id: The New Relic account ID to operate on. This allows the user to override the `account_id` attribute set on the provider. Defaults to the environment variable `NEW_RELIC_ACCOUNT_ID`.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAlbArgs']] alb: Application load balancer AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsApiGatewayArgs']] api_gateway: Api Gateway AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAutoScalingArgs']] auto_scaling: Autoscaling AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsDirectConnectArgs']] aws_direct_connect: Aws Direct Connect AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsStatesArgs']] aws_states: Aws States AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsCloudtrailArgs']] cloudtrail: Cloudtrail AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsDynamoDbArgs']] dynamo_db: Dynamo DB AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEbsArgs']] ebs: Elastic Beanstalk AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEc2Args']] ec2: EC2 AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElasticSearchArgs']] elastic_search: Elastic search AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElbArgs']] elb: Elb AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEmrArgs']] emr: Emr AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsIamArgs']] iam: IAM AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsLambdaArgs']] lambda_: Lambda AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[int] linked_account_id: The access key of the AwsGovCloud.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRdsArgs']] rds: RDS AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRedShiftArgs']] red_shift: Redshift AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRoute53Args']] route53: Route53 AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsS3Args']] s3: The s3 integration
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSnsArgs']] sns: SNS AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSqsArgs']] sqs: SQS AwsGovCloud integration.See Integration blocks below for details.
        """
        ...
    @overload
    def __init__(__self__,
                 resource_name: str,
                 args: AwsGovcloudIntegrationsArgs,
                 opts: Optional[pulumi.ResourceOptions] = None):
        """
        ## Import

        Integrate AWSGovCloud accounts can be imported using the `id`, e.g. bash

        ```sh
         $ pulumi import newrelic:cloud/awsGovcloudIntegrations:AwsGovcloudIntegrations foo <id>
        ```

        :param str resource_name: The name of the resource.
        :param AwsGovcloudIntegrationsArgs args: The arguments to use to populate this resource's properties.
        :param pulumi.ResourceOptions opts: Options for the resource.
        """
        ...
    def __init__(__self__, resource_name: str, *args, **kwargs):
        resource_args, opts = _utilities.get_resource_args_opts(AwsGovcloudIntegrationsArgs, pulumi.ResourceOptions, *args, **kwargs)
        if resource_args is not None:
            __self__._internal_init(resource_name, opts, **resource_args.__dict__)
        else:
            __self__._internal_init(resource_name, *args, **kwargs)

    def _internal_init(__self__,
                 resource_name: str,
                 opts: Optional[pulumi.ResourceOptions] = None,
                 account_id: Optional[pulumi.Input[int]] = None,
                 alb: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAlbArgs']]] = None,
                 api_gateway: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsApiGatewayArgs']]] = None,
                 auto_scaling: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAutoScalingArgs']]] = None,
                 aws_direct_connect: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsDirectConnectArgs']]] = None,
                 aws_states: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsStatesArgs']]] = None,
                 cloudtrail: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsCloudtrailArgs']]] = None,
                 dynamo_db: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsDynamoDbArgs']]] = None,
                 ebs: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEbsArgs']]] = None,
                 ec2: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEc2Args']]] = None,
                 elastic_search: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElasticSearchArgs']]] = None,
                 elb: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElbArgs']]] = None,
                 emr: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEmrArgs']]] = None,
                 iam: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsIamArgs']]] = None,
                 lambda_: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsLambdaArgs']]] = None,
                 linked_account_id: Optional[pulumi.Input[int]] = None,
                 rds: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRdsArgs']]] = None,
                 red_shift: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRedShiftArgs']]] = None,
                 route53: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRoute53Args']]] = None,
                 s3: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsS3Args']]] = None,
                 sns: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSnsArgs']]] = None,
                 sqs: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSqsArgs']]] = None,
                 __props__=None):
        opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
        if not isinstance(opts, pulumi.ResourceOptions):
            raise TypeError('Expected resource options to be a ResourceOptions instance')
        if opts.id is None:
            if __props__ is not None:
                raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
            __props__ = AwsGovcloudIntegrationsArgs.__new__(AwsGovcloudIntegrationsArgs)

            __props__.__dict__["account_id"] = account_id
            __props__.__dict__["alb"] = alb
            __props__.__dict__["api_gateway"] = api_gateway
            __props__.__dict__["auto_scaling"] = auto_scaling
            __props__.__dict__["aws_direct_connect"] = aws_direct_connect
            __props__.__dict__["aws_states"] = aws_states
            __props__.__dict__["cloudtrail"] = cloudtrail
            __props__.__dict__["dynamo_db"] = dynamo_db
            __props__.__dict__["ebs"] = ebs
            __props__.__dict__["ec2"] = ec2
            __props__.__dict__["elastic_search"] = elastic_search
            __props__.__dict__["elb"] = elb
            __props__.__dict__["emr"] = emr
            __props__.__dict__["iam"] = iam
            __props__.__dict__["lambda_"] = lambda_
            if linked_account_id is None and not opts.urn:
                raise TypeError("Missing required property 'linked_account_id'")
            __props__.__dict__["linked_account_id"] = linked_account_id
            __props__.__dict__["rds"] = rds
            __props__.__dict__["red_shift"] = red_shift
            __props__.__dict__["route53"] = route53
            __props__.__dict__["s3"] = s3
            __props__.__dict__["sns"] = sns
            __props__.__dict__["sqs"] = sqs
        super(AwsGovcloudIntegrations, __self__).__init__(
            'newrelic:cloud/awsGovcloudIntegrations:AwsGovcloudIntegrations',
            resource_name,
            __props__,
            opts)

    @staticmethod
    def get(resource_name: str,
            id: pulumi.Input[str],
            opts: Optional[pulumi.ResourceOptions] = None,
            account_id: Optional[pulumi.Input[int]] = None,
            alb: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAlbArgs']]] = None,
            api_gateway: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsApiGatewayArgs']]] = None,
            auto_scaling: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAutoScalingArgs']]] = None,
            aws_direct_connect: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsDirectConnectArgs']]] = None,
            aws_states: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsStatesArgs']]] = None,
            cloudtrail: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsCloudtrailArgs']]] = None,
            dynamo_db: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsDynamoDbArgs']]] = None,
            ebs: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEbsArgs']]] = None,
            ec2: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEc2Args']]] = None,
            elastic_search: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElasticSearchArgs']]] = None,
            elb: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElbArgs']]] = None,
            emr: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEmrArgs']]] = None,
            iam: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsIamArgs']]] = None,
            lambda_: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsLambdaArgs']]] = None,
            linked_account_id: Optional[pulumi.Input[int]] = None,
            rds: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRdsArgs']]] = None,
            red_shift: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRedShiftArgs']]] = None,
            route53: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRoute53Args']]] = None,
            s3: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsS3Args']]] = None,
            sns: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSnsArgs']]] = None,
            sqs: Optional[pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSqsArgs']]] = None) -> 'AwsGovcloudIntegrations':
        """
        Get an existing AwsGovcloudIntegrations resource's state with the given name, id, and optional extra
        properties used to qualify the lookup.

        :param str resource_name: The unique name of the resulting resource.
        :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
        :param pulumi.ResourceOptions opts: Options for the resource.
        :param pulumi.Input[int] account_id: The New Relic account ID to operate on. This allows the user to override the `account_id` attribute set on the provider. Defaults to the environment variable `NEW_RELIC_ACCOUNT_ID`.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAlbArgs']] alb: Application load balancer AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsApiGatewayArgs']] api_gateway: Api Gateway AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAutoScalingArgs']] auto_scaling: Autoscaling AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsDirectConnectArgs']] aws_direct_connect: Aws Direct Connect AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsAwsStatesArgs']] aws_states: Aws States AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsCloudtrailArgs']] cloudtrail: Cloudtrail AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsDynamoDbArgs']] dynamo_db: Dynamo DB AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEbsArgs']] ebs: Elastic Beanstalk AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEc2Args']] ec2: EC2 AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElasticSearchArgs']] elastic_search: Elastic search AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsElbArgs']] elb: Elb AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsEmrArgs']] emr: Emr AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsIamArgs']] iam: IAM AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsLambdaArgs']] lambda_: Lambda AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[int] linked_account_id: The access key of the AwsGovCloud.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRdsArgs']] rds: RDS AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRedShiftArgs']] red_shift: Redshift AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsRoute53Args']] route53: Route53 AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsS3Args']] s3: The s3 integration
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSnsArgs']] sns: SNS AwsGovCloud integration.See Integration blocks below for details.
        :param pulumi.Input[pulumi.InputType['AwsGovcloudIntegrationsSqsArgs']] sqs: SQS AwsGovCloud integration.See Integration blocks below for details.
        """
        opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))

        __props__ = _AwsGovcloudIntegrationsState.__new__(_AwsGovcloudIntegrationsState)

        __props__.__dict__["account_id"] = account_id
        __props__.__dict__["alb"] = alb
        __props__.__dict__["api_gateway"] = api_gateway
        __props__.__dict__["auto_scaling"] = auto_scaling
        __props__.__dict__["aws_direct_connect"] = aws_direct_connect
        __props__.__dict__["aws_states"] = aws_states
        __props__.__dict__["cloudtrail"] = cloudtrail
        __props__.__dict__["dynamo_db"] = dynamo_db
        __props__.__dict__["ebs"] = ebs
        __props__.__dict__["ec2"] = ec2
        __props__.__dict__["elastic_search"] = elastic_search
        __props__.__dict__["elb"] = elb
        __props__.__dict__["emr"] = emr
        __props__.__dict__["iam"] = iam
        __props__.__dict__["lambda_"] = lambda_
        __props__.__dict__["linked_account_id"] = linked_account_id
        __props__.__dict__["rds"] = rds
        __props__.__dict__["red_shift"] = red_shift
        __props__.__dict__["route53"] = route53
        __props__.__dict__["s3"] = s3
        __props__.__dict__["sns"] = sns
        __props__.__dict__["sqs"] = sqs
        return AwsGovcloudIntegrations(resource_name, opts=opts, __props__=__props__)

    @property
    @pulumi.getter(name="accountId")
    def account_id(self) -> pulumi.Output[int]:
        """
        The New Relic account ID to operate on. This allows the user to override the `account_id` attribute set on the provider. Defaults to the environment variable `NEW_RELIC_ACCOUNT_ID`.
        """
        return pulumi.get(self, "account_id")

    @property
    @pulumi.getter
    def alb(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsAlb']]:
        """
        Application load balancer AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "alb")

    @property
    @pulumi.getter(name="apiGateway")
    def api_gateway(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsApiGateway']]:
        """
        Api Gateway AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "api_gateway")

    @property
    @pulumi.getter(name="autoScaling")
    def auto_scaling(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsAutoScaling']]:
        """
        Autoscaling AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "auto_scaling")

    @property
    @pulumi.getter(name="awsDirectConnect")
    def aws_direct_connect(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsAwsDirectConnect']]:
        """
        Aws Direct Connect AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "aws_direct_connect")

    @property
    @pulumi.getter(name="awsStates")
    def aws_states(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsAwsStates']]:
        """
        Aws States AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "aws_states")

    @property
    @pulumi.getter
    def cloudtrail(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsCloudtrail']]:
        """
        Cloudtrail AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "cloudtrail")

    @property
    @pulumi.getter(name="dynamoDb")
    def dynamo_db(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsDynamoDb']]:
        """
        Dynamo DB AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "dynamo_db")

    @property
    @pulumi.getter
    def ebs(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsEbs']]:
        """
        Elastic Beanstalk AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "ebs")

    @property
    @pulumi.getter
    def ec2(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsEc2']]:
        """
        EC2 AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "ec2")

    @property
    @pulumi.getter(name="elasticSearch")
    def elastic_search(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsElasticSearch']]:
        """
        Elastic search AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "elastic_search")

    @property
    @pulumi.getter
    def elb(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsElb']]:
        """
        Elb AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "elb")

    @property
    @pulumi.getter
    def emr(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsEmr']]:
        """
        Emr AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "emr")

    @property
    @pulumi.getter
    def iam(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsIam']]:
        """
        IAM AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "iam")

    @property
    @pulumi.getter(name="lambda")
    def lambda_(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsLambda']]:
        """
        Lambda AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "lambda_")

    @property
    @pulumi.getter(name="linkedAccountId")
    def linked_account_id(self) -> pulumi.Output[int]:
        """
        The access key of the AwsGovCloud.
        """
        return pulumi.get(self, "linked_account_id")

    @property
    @pulumi.getter
    def rds(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsRds']]:
        """
        RDS AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "rds")

    @property
    @pulumi.getter(name="redShift")
    def red_shift(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsRedShift']]:
        """
        Redshift AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "red_shift")

    @property
    @pulumi.getter
    def route53(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsRoute53']]:
        """
        Route53 AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "route53")

    @property
    @pulumi.getter
    def s3(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsS3']]:
        """
        The s3 integration
        """
        return pulumi.get(self, "s3")

    @property
    @pulumi.getter
    def sns(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsSns']]:
        """
        SNS AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "sns")

    @property
    @pulumi.getter
    def sqs(self) -> pulumi.Output[Optional['outputs.AwsGovcloudIntegrationsSqs']]:
        """
        SQS AwsGovCloud integration.See Integration blocks below for details.
        """
        return pulumi.get(self, "sqs")

