import * as pulumi from "@pulumi/pulumi"; /** * Manages an Image Builder Component. * * ## Example Usage * * ### URI Document * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const example = new aws.imagebuilder.Component("example", { * name: "example", * platform: "Linux", * uri: `s3://${exampleAwsS3Object.bucket}/${exampleAwsS3Object.key}`, * version: "1.0.0", * }); * ``` * * ## Import * * Using `pulumi import`, import `aws.imagebuilder.getComponents` resources using the ARN. For example: * * ```sh * $ pulumi import aws:imagebuilder/component:Component example arn:aws:imagebuilder:us-east-1:123456789012:component/example/1.0.0/1 * ``` * * Certain resource arguments, such as `uri`, cannot be read via the API and imported into the provider. The provider will display a difference for these arguments the first run after import if declared in the the provider configuration for an imported resource. */ export declare class Component extends pulumi.CustomResource { /** * Get an existing Component 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?: ComponentState, opts?: pulumi.CustomResourceOptions): Component; /** * Returns true if the given object is an instance of Component. 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 Component; /** * (Required) ARN of the component. */ readonly arn: pulumi.Output; /** * Change description of the component. */ readonly changeDescription: pulumi.Output; /** * Inline YAML string with data of the component. Exactly one of `data` and `uri` can be specified. the provider will only perform drift detection of its value when present in a configuration. */ readonly data: pulumi.Output; /** * Date the component was created. */ readonly dateCreated: pulumi.Output; /** * Description of the component. */ readonly description: pulumi.Output; /** * Encryption status of the component. */ readonly encrypted: pulumi.Output; /** * ARN of the KMS Key used to encrypt the component. */ readonly kmsKeyId: pulumi.Output; /** * Name of the component. */ readonly name: pulumi.Output; /** * Owner of the component. */ readonly owner: pulumi.Output; /** * Platform of the component. */ readonly platform: 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; /** * Whether to retain the old version when the resource is destroyed or replacement is necessary. Defaults to `false`. */ readonly skipDestroy: pulumi.Output; /** * Set of Operating Systems (OS) supported by the component. */ readonly supportedOsVersions: pulumi.Output; /** * Key-value map of resource tags for the component. 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>; /** * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ readonly tagsAll: pulumi.Output<{ [key: string]: string; }>; /** * Type of the component. */ readonly type: pulumi.Output; /** * S3 URI with data of the component. Exactly one of `data` and `uri` can be specified. * * > **NOTE:** Updating `data` or `uri` requires specifying a new `version`. This causes replacement of the resource. The `skipDestroy` argument can be used to retain the old version. */ readonly uri: pulumi.Output; /** * Version of the component. * * The following arguments are optional: */ readonly version: pulumi.Output; /** * Create a Component 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: ComponentArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Component resources. */ export interface ComponentState { /** * (Required) ARN of the component. */ arn?: pulumi.Input; /** * Change description of the component. */ changeDescription?: pulumi.Input; /** * Inline YAML string with data of the component. Exactly one of `data` and `uri` can be specified. the provider will only perform drift detection of its value when present in a configuration. */ data?: pulumi.Input; /** * Date the component was created. */ dateCreated?: pulumi.Input; /** * Description of the component. */ description?: pulumi.Input; /** * Encryption status of the component. */ encrypted?: pulumi.Input; /** * ARN of the KMS Key used to encrypt the component. */ kmsKeyId?: pulumi.Input; /** * Name of the component. */ name?: pulumi.Input; /** * Owner of the component. */ owner?: pulumi.Input; /** * Platform of the component. */ platform?: pulumi.Input; /** * 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; /** * Whether to retain the old version when the resource is destroyed or replacement is necessary. Defaults to `false`. */ skipDestroy?: pulumi.Input; /** * Set of Operating Systems (OS) supported by the component. */ supportedOsVersions?: pulumi.Input[] | undefined>; /** * Key-value map of resource tags for the component. 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>; /** * A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ tagsAll?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Type of the component. */ type?: pulumi.Input; /** * S3 URI with data of the component. Exactly one of `data` and `uri` can be specified. * * > **NOTE:** Updating `data` or `uri` requires specifying a new `version`. This causes replacement of the resource. The `skipDestroy` argument can be used to retain the old version. */ uri?: pulumi.Input; /** * Version of the component. * * The following arguments are optional: */ version?: pulumi.Input; } /** * The set of arguments for constructing a Component resource. */ export interface ComponentArgs { /** * Change description of the component. */ changeDescription?: pulumi.Input; /** * Inline YAML string with data of the component. Exactly one of `data` and `uri` can be specified. the provider will only perform drift detection of its value when present in a configuration. */ data?: pulumi.Input; /** * Description of the component. */ description?: pulumi.Input; /** * ARN of the KMS Key used to encrypt the component. */ kmsKeyId?: pulumi.Input; /** * Name of the component. */ name?: pulumi.Input; /** * Platform of the component. */ platform: pulumi.Input; /** * 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; /** * Whether to retain the old version when the resource is destroyed or replacement is necessary. Defaults to `false`. */ skipDestroy?: pulumi.Input; /** * Set of Operating Systems (OS) supported by the component. */ supportedOsVersions?: pulumi.Input[] | undefined>; /** * Key-value map of resource tags for the component. 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>; /** * S3 URI with data of the component. Exactly one of `data` and `uri` can be specified. * * > **NOTE:** Updating `data` or `uri` requires specifying a new `version`. This causes replacement of the resource. The `skipDestroy` argument can be used to retain the old version. */ uri?: pulumi.Input; /** * Version of the component. * * The following arguments are optional: */ version: pulumi.Input; } //# sourceMappingURL=component.d.ts.map