UNPKG

@pulumi/azure-native

Version:

[![Slack](http://www.pulumi.com/images/docs/badges/slack.svg)](https://slack.pulumi.com) [![NPM version](https://badge.fury.io/js/%40pulumi%2Fazure-native.svg)](https://npmjs.com/package/@pulumi/azure-native) [![Python version](https://badge.fury.io/py/pu

199 lines (198 loc) • 8.39 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; import * as enums from "../types/enums"; /** * Resource definition for Discounts. * * Uses Azure REST API version 2024-11-01-preview. In version 2.x of the Azure Native provider, it used API version 2024-11-01-preview. */ export declare class Discount extends pulumi.CustomResource { /** * Get an existing Discount 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): Discount; /** * Returns true if the given object is an instance of Discount. 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 Discount; /** * List of applied scopes supported for discounts. */ readonly appliedScopeType: pulumi.Output<string | undefined>; /** * The Azure API version of the resource. */ readonly azureApiVersion: pulumi.Output<string>; /** * Fully-qualified identifier of the benefit under applicable benefit list. */ readonly benefitResourceId: pulumi.Output<string>; /** * Billing account resource id where the discount metadata is present. */ readonly billingAccountResourceId: pulumi.Output<string>; /** * Billing profile resource id where the discount is scoped to. */ readonly billingProfileResourceId: pulumi.Output<string>; /** * Customer resource id where the discount is scoped to. */ readonly customerResourceId: pulumi.Output<string>; /** * This defines a user friendly display name for the discount. */ readonly displayName: pulumi.Output<string | undefined>; /** * This defines whether the entity being created is primary or affiliate. Supported values: primary, affiliate. Validation: Required, must match one of the 2 values. */ readonly entityType: pulumi.Output<string>; /** * The etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal etag convention. Entity tags are used for comparing two or more entities from the same requested resource. HTTP/1.1 uses entity tags in the etag (section 14.19), If-Match (section 14.24), If-None-Match (section 14.26), and If-Range (section 14.27) header fields. */ readonly etag: pulumi.Output<string>; /** * Managed service identity (system assigned and/or user assigned identities) */ readonly identity: pulumi.Output<outputs.billingbenefits.ManagedServiceIdentityResponse | undefined>; /** * Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type. E.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value. */ readonly kind: pulumi.Output<string | undefined>; /** * The geo-location where the resource lives */ readonly location: pulumi.Output<string>; /** * The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource. */ readonly managedBy: pulumi.Output<string | undefined>; /** * The name of the resource */ readonly name: pulumi.Output<string>; /** * Plan for the resource. */ readonly plan: pulumi.Output<outputs.billingbenefits.PlanResponse | undefined>; /** * This is the catalog UPN for the product. */ readonly productCode: pulumi.Output<string>; /** * The state of the resource. Supported values are Pending, Failed, Succeeded, Canceled. */ readonly provisioningState: pulumi.Output<string>; /** * The resource model definition representing SKU */ readonly sku: pulumi.Output<outputs.billingbenefits.SkuResponse | undefined>; /** * Start date of the discount. Value is the date the discount started or will start in the future. */ readonly startAt: pulumi.Output<string>; /** * Represents the current status of the discount. */ readonly status: pulumi.Output<string>; /** * Azure Resource Manager metadata containing createdBy and modifiedBy information. */ readonly systemData: pulumi.Output<outputs.billingbenefits.SystemDataResponse>; /** * This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount. */ readonly systemId: pulumi.Output<string | undefined>; /** * Resource tags. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" */ readonly type: pulumi.Output<string>; /** * Create a Discount 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: DiscountArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Discount resource. */ export interface DiscountArgs { /** * List of applied scopes supported for discounts. */ appliedScopeType?: pulumi.Input<string | enums.billingbenefits.DiscountAppliedScopeType>; /** * Name of the discount */ discountName?: pulumi.Input<string>; /** * This defines a user friendly display name for the discount. */ displayName?: pulumi.Input<string>; /** * This defines whether the entity being created is primary or affiliate. Supported values: primary, affiliate. Validation: Required, must match one of the 2 values. */ entityType: pulumi.Input<string | enums.billingbenefits.DiscountEntityType>; /** * Managed service identity (system assigned and/or user assigned identities) */ identity?: pulumi.Input<inputs.billingbenefits.ManagedServiceIdentityArgs>; /** * Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type. E.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value. */ kind?: pulumi.Input<string>; /** * The geo-location where the resource lives */ location?: pulumi.Input<string>; /** * The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource. */ managedBy?: pulumi.Input<string>; /** * Plan for the resource. */ plan?: pulumi.Input<inputs.billingbenefits.PlanArgs>; /** * This is the catalog UPN for the product. */ productCode: pulumi.Input<string>; /** * The name of the resource group. The name is case insensitive. */ resourceGroupName: pulumi.Input<string>; /** * The resource model definition representing SKU */ sku?: pulumi.Input<inputs.billingbenefits.SkuArgs>; /** * Start date of the discount. Value is the date the discount started or will start in the future. */ startAt: pulumi.Input<string>; /** * This is the globally unique identifier of the Discount which will not change for the lifetime of the Discount. */ systemId?: pulumi.Input<string>; /** * Resource tags. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; }