import * as pulumi from "@pulumi/pulumi"; /** * Manages a Security Hub V2 Aggregator, which enables cross-region finding aggregation. * * > **NOTE:** Security Hub V2 must be enabled (`aws.securityhub.AccountV2`) before creating an aggregator. * * ## Example Usage * * ### All Regions * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.securityhub.AccountV2("example", {}); * const exampleAggregatorV2 = new aws.securityhub.AggregatorV2("example", {regionLinkingMode: "ALL_REGIONS"}, { * dependsOn: [example], * }); * ``` * * ### Specified Regions * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.securityhub.AccountV2("example", {}); * const exampleAggregatorV2 = new aws.securityhub.AggregatorV2("example", { * regionLinkingMode: "SPECIFIED_REGIONS", * linkedRegions: [ * "us-west-2", * "eu-west-1", * ], * }, { * dependsOn: [example], * }); * ``` * * ## Import * * ### Identity Schema * * #### Required * * - `arn` (String) ARN of the Security Hub V2 aggregator. * * Using `pulumi import`, import Security Hub V2 aggregators using `arn`. For example: * * ```sh * $ pulumi import aws:securityhub/aggregatorV2:AggregatorV2 example arn:aws:securityhub:us-east-1:123456789012:aggregator/v2/example * ``` */ export declare class AggregatorV2 extends pulumi.CustomResource { /** * Get an existing AggregatorV2 resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: AggregatorV2State, opts?: pulumi.CustomResourceOptions): AggregatorV2; /** * Returns true if the given object is an instance of AggregatorV2. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is AggregatorV2; /** * The AWS Region where data is aggregated. */ readonly aggregationRegion: pulumi.Output; /** * ARN of the Security Hub V2 Aggregator. */ readonly arn: pulumi.Output; /** * List of Regions linked to the aggregation Region. Required when `regionLinkingMode` is `SPECIFIED_REGIONS` or `ALL_REGIONS_EXCEPT_SPECIFIED`. */ readonly linkedRegions: pulumi.Output; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ readonly region: pulumi.Output; /** * Determines how Regions are linked to the aggregator. Valid values: `ALL_REGIONS`, `ALL_REGIONS_EXCEPT_SPECIFIED`, `SPECIFIED_REGIONS`. */ readonly regionLinkingMode: pulumi.Output; /** * 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. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ readonly tagsAll: pulumi.Output<{ [key: string]: string; }>; /** * Create a AggregatorV2 resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: AggregatorV2Args, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering AggregatorV2 resources. */ export interface AggregatorV2State { /** * The AWS Region where data is aggregated. */ aggregationRegion?: pulumi.Input; /** * ARN of the Security Hub V2 Aggregator. */ arn?: pulumi.Input; /** * List of Regions linked to the aggregation Region. Required when `regionLinkingMode` is `SPECIFIED_REGIONS` or `ALL_REGIONS_EXCEPT_SPECIFIED`. */ linkedRegions?: pulumi.Input[] | undefined>; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * Determines how Regions are linked to the aggregator. Valid values: `ALL_REGIONS`, `ALL_REGIONS_EXCEPT_SPECIFIED`, `SPECIFIED_REGIONS`. */ regionLinkingMode?: pulumi.Input; /** * 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.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ tagsAll?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; } /** * The set of arguments for constructing a AggregatorV2 resource. */ export interface AggregatorV2Args { /** * List of Regions linked to the aggregation Region. Required when `regionLinkingMode` is `SPECIFIED_REGIONS` or `ALL_REGIONS_EXCEPT_SPECIFIED`. */ linkedRegions?: pulumi.Input[] | undefined>; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * Determines how Regions are linked to the aggregator. Valid values: `ALL_REGIONS`, `ALL_REGIONS_EXCEPT_SPECIFIED`, `SPECIFIED_REGIONS`. */ regionLinkingMode: pulumi.Input; /** * 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.Input<{ [key: string]: pulumi.Input; } | undefined>; } //# sourceMappingURL=aggregatorV2.d.ts.map