import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource provides the Recommendation resource in Oracle Cloud Infrastructure Optimizer service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/advisor/latest/Recommendation * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/optimizer * * Updates the recommendation that corresponds to the specified OCID. * Use this operation to implement the following actions: * * * Postpone recommendation * * Dismiss recommendation * * Reactivate recommendation * * ## Import * * Recommendations can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Optimizer/recommendation:Recommendation test_recommendation "id" * ``` */ export declare class Recommendation extends pulumi.CustomResource { /** * Get an existing Recommendation 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?: RecommendationState, opts?: pulumi.CustomResourceOptions): Recommendation; /** * Returns true if the given object is an instance of Recommendation. 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 Recommendation; /** * The unique OCID associated with the category. */ readonly categoryId: pulumi.Output; /** * The OCID of the tenancy. The tenancy is the root compartment. */ readonly compartmentId: pulumi.Output; /** * Text describing the recommendation. */ readonly description: pulumi.Output; /** * The estimated cost savings, in dollars, for the recommendation. */ readonly estimatedCostSaving: pulumi.Output; /** * Additional metadata key/value pairs for the recommendation. */ readonly extendedMetadata: pulumi.Output<{ [key: string]: string; }>; /** * The level of importance assigned to the recommendation. */ readonly importance: pulumi.Output; /** * The name of the profile level. */ readonly name: pulumi.Output; /** * The unique OCID associated with the recommendation. */ readonly recommendationId: pulumi.Output; /** * An array of `ResourceCount` objects grouped by the status of the resource actions. */ readonly resourceCounts: pulumi.Output; /** * The recommendation's current state. */ readonly state: pulumi.Output; /** * (Updatable) The status of the recommendation. */ readonly status: pulumi.Output; /** * Optional. The profile levels supported by a recommendation. For example, profile level values could be `Low`, `Medium`, and `High`. Not all recommendations support this field. */ readonly supportedLevels: pulumi.Output; /** * The date and time the recommendation details were created, in the format defined by RFC3339. */ readonly timeCreated: pulumi.Output; /** * The date and time that the recommendation entered its current status. The format is defined by RFC3339. */ readonly timeStatusBegin: pulumi.Output; /** * (Updatable) The date and time the current status will change. The format is defined by RFC3339. * * For example, "The current `postponed` status of the recommendation will end and change to `pending` on this date and time." * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly timeStatusEnd: pulumi.Output; /** * The date and time the recommendation details were last updated, in the format defined by RFC3339. */ readonly timeUpdated: pulumi.Output; /** * Create a Recommendation 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: RecommendationArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Recommendation resources. */ export interface RecommendationState { /** * The unique OCID associated with the category. */ categoryId?: pulumi.Input; /** * The OCID of the tenancy. The tenancy is the root compartment. */ compartmentId?: pulumi.Input; /** * Text describing the recommendation. */ description?: pulumi.Input; /** * The estimated cost savings, in dollars, for the recommendation. */ estimatedCostSaving?: pulumi.Input; /** * Additional metadata key/value pairs for the recommendation. */ extendedMetadata?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * The level of importance assigned to the recommendation. */ importance?: pulumi.Input; /** * The name of the profile level. */ name?: pulumi.Input; /** * The unique OCID associated with the recommendation. */ recommendationId?: pulumi.Input; /** * An array of `ResourceCount` objects grouped by the status of the resource actions. */ resourceCounts?: pulumi.Input[] | undefined>; /** * The recommendation's current state. */ state?: pulumi.Input; /** * (Updatable) The status of the recommendation. */ status?: pulumi.Input; /** * Optional. The profile levels supported by a recommendation. For example, profile level values could be `Low`, `Medium`, and `High`. Not all recommendations support this field. */ supportedLevels?: pulumi.Input[] | undefined>; /** * The date and time the recommendation details were created, in the format defined by RFC3339. */ timeCreated?: pulumi.Input; /** * The date and time that the recommendation entered its current status. The format is defined by RFC3339. */ timeStatusBegin?: pulumi.Input; /** * (Updatable) The date and time the current status will change. The format is defined by RFC3339. * * For example, "The current `postponed` status of the recommendation will end and change to `pending` on this date and time." * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ timeStatusEnd?: pulumi.Input; /** * The date and time the recommendation details were last updated, in the format defined by RFC3339. */ timeUpdated?: pulumi.Input; } /** * The set of arguments for constructing a Recommendation resource. */ export interface RecommendationArgs { /** * The unique OCID associated with the recommendation. */ recommendationId: pulumi.Input; /** * (Updatable) The status of the recommendation. */ status: pulumi.Input; /** * (Updatable) The date and time the current status will change. The format is defined by RFC3339. * * For example, "The current `postponed` status of the recommendation will end and change to `pending` on this date and time." * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ timeStatusEnd?: pulumi.Input; } //# sourceMappingURL=recommendation.d.ts.map