aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
824 lines (823 loc) • 36.8 kB
TypeScript
import * as constructs from 'constructs';
import * as cdk from '../../core';
import * as cfn_parse from '../../core/lib/helpers-internal';
/**
* Properties for defining a `CfnBillingGroup`
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html
*/
export interface CfnBillingGroupProps {
/**
* The set of accounts that will be under the billing group. The set of accounts resemble the linked accounts in a consolidated family.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-accountgrouping
*/
readonly accountGrouping: CfnBillingGroup.AccountGroupingProperty | cdk.IResolvable;
/**
* The preferences and settings that will be used to compute the AWS charges for a billing group.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-computationpreference
*/
readonly computationPreference: CfnBillingGroup.ComputationPreferenceProperty | cdk.IResolvable;
/**
* The billing group's name.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-name
*/
readonly name: string;
/**
* The account ID that serves as the main account in a billing group.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-primaryaccountid
*/
readonly primaryAccountId: string;
/**
* The description of the billing group.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-description
*/
readonly description?: string;
/**
* `AWS::BillingConductor::BillingGroup.Tags`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-tags
*/
readonly tags?: cdk.CfnTag[];
}
/**
* A CloudFormation `AWS::BillingConductor::BillingGroup`
*
* Creates a billing group that resembles a consolidated billing family that AWS charges, based off of the predefined pricing plan computation.
*
* @cloudformationResource AWS::BillingConductor::BillingGroup
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html
*/
export declare class CfnBillingGroup extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::BillingConductor::BillingGroup";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnBillingGroup;
/**
* The Amazon Resource Name (ARN) of the created billing group.
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* The time the billing group was created.
* @cloudformationAttribute CreationTime
*/
readonly attrCreationTime: number;
/**
* The most recent time the billing group was modified.
* @cloudformationAttribute LastModifiedTime
*/
readonly attrLastModifiedTime: number;
/**
* The number of accounts in the particular billing group.
* @cloudformationAttribute Size
*/
readonly attrSize: number;
/**
* The billing group status. Only one of the valid values can be used.
* @cloudformationAttribute Status
*/
readonly attrStatus: string;
/**
* The reason why the billing group is in its current status.
* @cloudformationAttribute StatusReason
*/
readonly attrStatusReason: string;
/**
* The set of accounts that will be under the billing group. The set of accounts resemble the linked accounts in a consolidated family.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-accountgrouping
*/
accountGrouping: CfnBillingGroup.AccountGroupingProperty | cdk.IResolvable;
/**
* The preferences and settings that will be used to compute the AWS charges for a billing group.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-computationpreference
*/
computationPreference: CfnBillingGroup.ComputationPreferenceProperty | cdk.IResolvable;
/**
* The billing group's name.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-name
*/
name: string;
/**
* The account ID that serves as the main account in a billing group.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-primaryaccountid
*/
primaryAccountId: string;
/**
* The description of the billing group.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-description
*/
description: string | undefined;
/**
* `AWS::BillingConductor::BillingGroup.Tags`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-billinggroup.html#cfn-billingconductor-billinggroup-tags
*/
readonly tags: cdk.TagManager;
/**
* Create a new `AWS::BillingConductor::BillingGroup`.
*
* @param scope - scope in which this resource is defined
* @param id - scoped id of the resource
* @param props - resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnBillingGroupProps);
/**
* Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes
*
*/
inspect(inspector: cdk.TreeInspector): void;
protected get cfnProperties(): {
[key: string]: any;
};
protected renderProperties(props: {
[key: string]: any;
}): {
[key: string]: any;
};
}
export declare namespace CfnBillingGroup {
/**
* The set of accounts that will be under the billing group. The set of accounts resemble the linked accounts in a consolidated family.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-billinggroup-accountgrouping.html
*/
interface AccountGroupingProperty {
/**
* The account IDs that make up the billing group. Account IDs must be a part of the consolidated billing family, and not associated with another billing group.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-billinggroup-accountgrouping.html#cfn-billingconductor-billinggroup-accountgrouping-linkedaccountids
*/
readonly linkedAccountIds: string[];
}
}
export declare namespace CfnBillingGroup {
/**
* The preferences and settings that will be used to compute the AWS charges for a billing group.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-billinggroup-computationpreference.html
*/
interface ComputationPreferenceProperty {
/**
* The Amazon Resource Name (ARN) of the pricing plan used to compute the AWS charges for a billing group.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-billinggroup-computationpreference.html#cfn-billingconductor-billinggroup-computationpreference-pricingplanarn
*/
readonly pricingPlanArn: string;
}
}
/**
* Properties for defining a `CfnCustomLineItem`
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html
*/
export interface CfnCustomLineItemProps {
/**
* The Amazon Resource Name (ARN) that references the billing group where the custom line item applies to.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-billinggrouparn
*/
readonly billingGroupArn: string;
/**
* The custom line item's name.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-name
*/
readonly name: string;
/**
* A time range for which the custom line item is effective.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-billingperiodrange
*/
readonly billingPeriodRange?: CfnCustomLineItem.BillingPeriodRangeProperty | cdk.IResolvable;
/**
* The charge details of a custom line item. It should contain only one of `Flat` or `Percentage` .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-customlineitemchargedetails
*/
readonly customLineItemChargeDetails?: CfnCustomLineItem.CustomLineItemChargeDetailsProperty | cdk.IResolvable;
/**
* The custom line item's description. This is shown on the Bills page in association with the charge value.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-description
*/
readonly description?: string;
/**
* A map that contains tag keys and tag values that are attached to a custom line item.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-tags
*/
readonly tags?: cdk.CfnTag[];
}
/**
* A CloudFormation `AWS::BillingConductor::CustomLineItem`
*
* Creates a custom line item that can be used to create a one-time or recurring, fixed or percentage-based charge that you can apply to a single billing group. You can apply custom line items to the current or previous billing period. You can create either a fee or a discount custom line item.
*
* @cloudformationResource AWS::BillingConductor::CustomLineItem
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html
*/
export declare class CfnCustomLineItem extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::BillingConductor::CustomLineItem";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnCustomLineItem;
/**
* The Amazon Resource Name (ARN) that references the billing group where the custom line item applies to.
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* The number of resources that are associated to the custom line item.
* @cloudformationAttribute AssociationSize
*/
readonly attrAssociationSize: number;
/**
* The time created.
* @cloudformationAttribute CreationTime
*/
readonly attrCreationTime: number;
/**
* The custom line item's charge value currency. Only one of the valid values can be used.
* @cloudformationAttribute CurrencyCode
*/
readonly attrCurrencyCode: string;
/**
* The most recent time the custom line item was modified.
* @cloudformationAttribute LastModifiedTime
*/
readonly attrLastModifiedTime: number;
/**
* The product code associated with the custom line item.
* @cloudformationAttribute ProductCode
*/
readonly attrProductCode: string;
/**
* The Amazon Resource Name (ARN) that references the billing group where the custom line item applies to.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-billinggrouparn
*/
billingGroupArn: string;
/**
* The custom line item's name.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-name
*/
name: string;
/**
* A time range for which the custom line item is effective.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-billingperiodrange
*/
billingPeriodRange: CfnCustomLineItem.BillingPeriodRangeProperty | cdk.IResolvable | undefined;
/**
* The charge details of a custom line item. It should contain only one of `Flat` or `Percentage` .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-customlineitemchargedetails
*/
customLineItemChargeDetails: CfnCustomLineItem.CustomLineItemChargeDetailsProperty | cdk.IResolvable | undefined;
/**
* The custom line item's description. This is shown on the Bills page in association with the charge value.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-description
*/
description: string | undefined;
/**
* A map that contains tag keys and tag values that are attached to a custom line item.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-customlineitem.html#cfn-billingconductor-customlineitem-tags
*/
readonly tags: cdk.TagManager;
/**
* Create a new `AWS::BillingConductor::CustomLineItem`.
*
* @param scope - scope in which this resource is defined
* @param id - scoped id of the resource
* @param props - resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnCustomLineItemProps);
/**
* Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes
*
*/
inspect(inspector: cdk.TreeInspector): void;
protected get cfnProperties(): {
[key: string]: any;
};
protected renderProperties(props: {
[key: string]: any;
}): {
[key: string]: any;
};
}
export declare namespace CfnCustomLineItem {
/**
* The billing period range in which the custom line item request will be applied.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-billingperiodrange.html
*/
interface BillingPeriodRangeProperty {
/**
* The exclusive end billing period that defines a billing period range where a custom line is applied.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-billingperiodrange.html#cfn-billingconductor-customlineitem-billingperiodrange-exclusiveendbillingperiod
*/
readonly exclusiveEndBillingPeriod?: string;
/**
* The inclusive start billing period that defines a billing period range where a custom line is applied.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-billingperiodrange.html#cfn-billingconductor-customlineitem-billingperiodrange-inclusivestartbillingperiod
*/
readonly inclusiveStartBillingPeriod?: string;
}
}
export declare namespace CfnCustomLineItem {
/**
* The charge details of a custom line item. It should contain only one of `Flat` or `Percentage` .
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-customlineitemchargedetails.html
*/
interface CustomLineItemChargeDetailsProperty {
/**
* A `CustomLineItemFlatChargeDetails` that describes the charge details of a flat custom line item.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-customlineitemchargedetails.html#cfn-billingconductor-customlineitem-customlineitemchargedetails-flat
*/
readonly flat?: CfnCustomLineItem.CustomLineItemFlatChargeDetailsProperty | cdk.IResolvable;
/**
* A `CustomLineItemPercentageChargeDetails` that describes the charge details of a percentage custom line item.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-customlineitemchargedetails.html#cfn-billingconductor-customlineitem-customlineitemchargedetails-percentage
*/
readonly percentage?: CfnCustomLineItem.CustomLineItemPercentageChargeDetailsProperty | cdk.IResolvable;
/**
* The type of the custom line item that indicates whether the charge is a fee or credit.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-customlineitemchargedetails.html#cfn-billingconductor-customlineitem-customlineitemchargedetails-type
*/
readonly type: string;
}
}
export declare namespace CfnCustomLineItem {
/**
* The charge details of a custom line item. It should contain only one of `Flat` or `Percentage` .
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-customlineitemflatchargedetails.html
*/
interface CustomLineItemFlatChargeDetailsProperty {
/**
* The custom line item's fixed charge value in USD.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-customlineitemflatchargedetails.html#cfn-billingconductor-customlineitem-customlineitemflatchargedetails-chargevalue
*/
readonly chargeValue: number;
}
}
export declare namespace CfnCustomLineItem {
/**
* A representation of the charge details associated with a percentage custom line item.
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-customlineitempercentagechargedetails.html
*/
interface CustomLineItemPercentageChargeDetailsProperty {
/**
* A list of resource ARNs to associate to the percentage custom line item.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-customlineitempercentagechargedetails.html#cfn-billingconductor-customlineitem-customlineitempercentagechargedetails-childassociatedresources
*/
readonly childAssociatedResources?: string[];
/**
* The custom line item's percentage value. This will be multiplied against the combined value of its associated resources to determine its charge value.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-customlineitem-customlineitempercentagechargedetails.html#cfn-billingconductor-customlineitem-customlineitempercentagechargedetails-percentagevalue
*/
readonly percentageValue: number;
}
}
/**
* Properties for defining a `CfnPricingPlan`
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html
*/
export interface CfnPricingPlanProps {
/**
* The name of a pricing plan.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html#cfn-billingconductor-pricingplan-name
*/
readonly name: string;
/**
* The pricing plan description.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html#cfn-billingconductor-pricingplan-description
*/
readonly description?: string;
/**
* The `PricingRuleArns` that are associated with the Pricing Plan.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html#cfn-billingconductor-pricingplan-pricingrulearns
*/
readonly pricingRuleArns?: string[];
/**
* A map that contains tag keys and tag values that are attached to a pricing plan.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html#cfn-billingconductor-pricingplan-tags
*/
readonly tags?: cdk.CfnTag[];
}
/**
* A CloudFormation `AWS::BillingConductor::PricingPlan`
*
* Creates a pricing plan that is used for computing AWS charges for billing groups.
*
* @cloudformationResource AWS::BillingConductor::PricingPlan
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html
*/
export declare class CfnPricingPlan extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::BillingConductor::PricingPlan";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnPricingPlan;
/**
* The Amazon Resource Name (ARN) of the created pricing plan.
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* The time the pricing plan was created.
* @cloudformationAttribute CreationTime
*/
readonly attrCreationTime: number;
/**
* The most recent time the pricing plan was modified.
* @cloudformationAttribute LastModifiedTime
*/
readonly attrLastModifiedTime: number;
/**
* The pricing rules count currently associated with this pricing plan list element.
* @cloudformationAttribute Size
*/
readonly attrSize: number;
/**
* The name of a pricing plan.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html#cfn-billingconductor-pricingplan-name
*/
name: string;
/**
* The pricing plan description.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html#cfn-billingconductor-pricingplan-description
*/
description: string | undefined;
/**
* The `PricingRuleArns` that are associated with the Pricing Plan.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html#cfn-billingconductor-pricingplan-pricingrulearns
*/
pricingRuleArns: string[] | undefined;
/**
* A map that contains tag keys and tag values that are attached to a pricing plan.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingplan.html#cfn-billingconductor-pricingplan-tags
*/
readonly tags: cdk.TagManager;
/**
* Create a new `AWS::BillingConductor::PricingPlan`.
*
* @param scope - scope in which this resource is defined
* @param id - scoped id of the resource
* @param props - resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnPricingPlanProps);
/**
* Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes
*
*/
inspect(inspector: cdk.TreeInspector): void;
protected get cfnProperties(): {
[key: string]: any;
};
protected renderProperties(props: {
[key: string]: any;
}): {
[key: string]: any;
};
}
/**
* Properties for defining a `CfnPricingRule`
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html
*/
export interface CfnPricingRuleProps {
/**
* The name of a pricing rule.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-name
*/
readonly name: string;
/**
* The scope of pricing rule that indicates if it is globally applicable, or if it is service-specific.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-scope
*/
readonly scope: string;
/**
* The type of pricing rule.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-type
*/
readonly type: string;
/**
* The seller of services provided by AWS , their affiliates, or third-party providers selling services via AWS Marketplace .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-billingentity
*/
readonly billingEntity?: string;
/**
* The pricing rule description.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-description
*/
readonly description?: string;
/**
* A percentage modifier applied on the public pricing rates.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-modifierpercentage
*/
readonly modifierPercentage?: number;
/**
* `AWS::BillingConductor::PricingRule.Operation`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-operation
*/
readonly operation?: string;
/**
* If the `Scope` attribute is `SERVICE` , this attribute indicates which service the `PricingRule` is applicable for.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-service
*/
readonly service?: string;
/**
* A map that contains tag keys and tag values that are attached to a pricing rule.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-tags
*/
readonly tags?: cdk.CfnTag[];
/**
* The set of tiering configurations for the pricing rule.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-tiering
*/
readonly tiering?: CfnPricingRule.TieringProperty | cdk.IResolvable;
/**
* Usage Type is the unit that each service uses to measure the usage of a specific type of resource.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-usagetype
*/
readonly usageType?: string;
}
/**
* A CloudFormation `AWS::BillingConductor::PricingRule`
*
* Creates a pricing rule which can be associated with a pricing plan, or a set of pricing plans.
*
* @cloudformationResource AWS::BillingConductor::PricingRule
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html
*/
export declare class CfnPricingRule extends cdk.CfnResource implements cdk.IInspectable {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "AWS::BillingConductor::PricingRule";
/**
* A factory method that creates a new instance of this class from an object
* containing the CloudFormation properties of this resource.
* Used in the @aws-cdk/cloudformation-include module.
*
* @internal
*/
static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnPricingRule;
/**
* The Amazon Resource Name (ARN) used to uniquely identify a pricing rule.
* @cloudformationAttribute Arn
*/
readonly attrArn: string;
/**
* The pricing plans count that this pricing rule is associated with.
* @cloudformationAttribute AssociatedPricingPlanCount
*/
readonly attrAssociatedPricingPlanCount: number;
/**
* The time the pricing rule was created.
* @cloudformationAttribute CreationTime
*/
readonly attrCreationTime: number;
/**
* The most recent time the pricing rule was modified.
* @cloudformationAttribute LastModifiedTime
*/
readonly attrLastModifiedTime: number;
/**
* The name of a pricing rule.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-name
*/
name: string;
/**
* The scope of pricing rule that indicates if it is globally applicable, or if it is service-specific.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-scope
*/
scope: string;
/**
* The type of pricing rule.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-type
*/
type: string;
/**
* The seller of services provided by AWS , their affiliates, or third-party providers selling services via AWS Marketplace .
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-billingentity
*/
billingEntity: string | undefined;
/**
* The pricing rule description.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-description
*/
description: string | undefined;
/**
* A percentage modifier applied on the public pricing rates.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-modifierpercentage
*/
modifierPercentage: number | undefined;
/**
* `AWS::BillingConductor::PricingRule.Operation`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-operation
*/
operation: string | undefined;
/**
* If the `Scope` attribute is `SERVICE` , this attribute indicates which service the `PricingRule` is applicable for.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-service
*/
service: string | undefined;
/**
* A map that contains tag keys and tag values that are attached to a pricing rule.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-tags
*/
readonly tags: cdk.TagManager;
/**
* The set of tiering configurations for the pricing rule.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-tiering
*/
tiering: CfnPricingRule.TieringProperty | cdk.IResolvable | undefined;
/**
* Usage Type is the unit that each service uses to measure the usage of a specific type of resource.
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-billingconductor-pricingrule.html#cfn-billingconductor-pricingrule-usagetype
*/
usageType: string | undefined;
/**
* Create a new `AWS::BillingConductor::PricingRule`.
*
* @param scope - scope in which this resource is defined
* @param id - scoped id of the resource
* @param props - resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnPricingRuleProps);
/**
* Examines the CloudFormation resource and discloses attributes.
*
* @param inspector - tree inspector to collect and process attributes
*
*/
inspect(inspector: cdk.TreeInspector): void;
protected get cfnProperties(): {
[key: string]: any;
};
protected renderProperties(props: {
[key: string]: any;
}): {
[key: string]: any;
};
}
export declare namespace CfnPricingRule {
/**
*
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-pricingrule-freetier.html
*/
interface FreeTierProperty {
/**
* `CfnPricingRule.FreeTierProperty.Activated`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-pricingrule-freetier.html#cfn-billingconductor-pricingrule-freetier-activated
*/
readonly activated: boolean | cdk.IResolvable;
}
}
export declare namespace CfnPricingRule {
/**
*
*
* @struct
* @stability external
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-pricingrule-tiering.html
*/
interface TieringProperty {
/**
* `CfnPricingRule.TieringProperty.FreeTier`
*
* @link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-billingconductor-pricingrule-tiering.html#cfn-billingconductor-pricingrule-tiering-freetier
*/
readonly freeTier?: CfnPricingRule.FreeTierProperty | cdk.IResolvable;
}
}