aws-cdk-lib
Version:
Version 2 of the AWS Cloud Development Kit library
192 lines (191 loc) • 7.58 kB
TypeScript
import * as cdk from "../../core/lib";
import * as constructs from "constructs";
import * as cfn_parse from "../../core/lib/helpers-internal";
import { ISpendingLimitRef, SpendingLimitReference } from "../../interfaces/generated/aws-braket-interfaces.generated";
/**
* Creates a spending limit for a specified quantum device.
*
* Spending limits help you control costs by setting maximum amounts that can be spent on quantum computing tasks within a specified time period.
*
* @cloudformationResource AWS::Braket::SpendingLimit
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-braket-spendinglimit.html
*/
export declare class CfnSpendingLimit extends cdk.CfnResource implements cdk.IInspectable, ISpendingLimitRef, cdk.ITaggableV2 {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME: string;
/**
* Build a CfnSpendingLimit from CloudFormation properties
*
* 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): CfnSpendingLimit;
/**
* Checks whether the given object is a CfnSpendingLimit
*/
static isCfnSpendingLimit(x: any): x is CfnSpendingLimit;
static arnForSpendingLimit(resource: ISpendingLimitRef): string;
/**
* Tag Manager which manages the tags for this resource
*/
readonly cdkTagManager: cdk.TagManager;
/**
* The Amazon Resource Name (ARN) of the quantum device to apply the spending limit to.
*/
private _deviceArn;
/**
* The maximum amount that can be spent on the specified device, in USD.
*/
private _spendingLimit;
/**
* The tags to apply to the spending limit.
*/
private _tags?;
/**
* Defines a time range for spending limits, specifying when the limit is active.
*/
private _timePeriod?;
protected readonly cfnPropertyNames: Record<string, string>;
/**
* Create a new `AWS::Braket::SpendingLimit`.
*
* @param scope Scope in which this resource is defined
* @param id Construct identifier for this resource (unique in its scope)
* @param props Resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnSpendingLimitProps);
get spendingLimitRef(): SpendingLimitReference;
/**
* The Amazon Resource Name (ARN) of the quantum device to apply the spending limit to.
*/
get deviceArn(): string;
/**
* The Amazon Resource Name (ARN) of the quantum device to apply the spending limit to.
*/
set deviceArn(value: string);
/**
* The maximum amount that can be spent on the specified device, in USD.
*/
get spendingLimit(): string;
/**
* The maximum amount that can be spent on the specified device, in USD.
*/
set spendingLimit(value: string);
/**
* The tags to apply to the spending limit.
*/
get tags(): Array<cdk.CfnTag> | undefined;
/**
* The tags to apply to the spending limit.
*/
set tags(value: Array<cdk.CfnTag> | undefined);
/**
* Defines a time range for spending limits, specifying when the limit is active.
*/
get timePeriod(): cdk.IResolvable | CfnSpendingLimit.TimePeriodProperty | undefined;
/**
* Defines a time range for spending limits, specifying when the limit is active.
*/
set timePeriod(value: cdk.IResolvable | CfnSpendingLimit.TimePeriodProperty | undefined);
/**
* The date and time when the spending limit was created, in ISO 8601 format.
*
* @cloudformationAttribute CreatedAt
*/
get attrCreatedAt(): string;
/**
* The amount currently queued for spending on the device, in USD.
*
* @cloudformationAttribute QueuedSpend
*/
get attrQueuedSpend(): string;
/**
* The Amazon Resource Name (ARN) that uniquely identifies the spending limit.
*
* @cloudformationAttribute SpendingLimitArn
*/
get attrSpendingLimitArn(): string;
/**
* The total amount spent on the device so far during the current time period, in USD.
*
* @cloudformationAttribute TotalSpend
*/
get attrTotalSpend(): string;
/**
* The date and time when the spending limit was last modified, in ISO 8601 format.
*
* @cloudformationAttribute UpdatedAt
*/
get attrUpdatedAt(): string;
protected get cfnProperties(): Record<string, any>;
/**
* Examines the CloudFormation resource and discloses attributes
*
* @param inspector tree inspector to collect and process attributes
*/
inspect(inspector: cdk.TreeInspector): void;
protected renderProperties(props: Record<string, any>): Record<string, any>;
}
export declare namespace CfnSpendingLimit {
/**
* Defines a time range for spending limits, specifying when the limit is active.
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-braket-spendinglimit-timeperiod.html
*/
interface TimePeriodProperty {
/**
* The end date and time for the spending limit period, in ISO 8601 format.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-braket-spendinglimit-timeperiod.html#cfn-braket-spendinglimit-timeperiod-endat
*/
readonly endAt: string;
/**
* The start date and time for the spending limit period, in ISO 8601 format.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-braket-spendinglimit-timeperiod.html#cfn-braket-spendinglimit-timeperiod-startat
*/
readonly startAt: string;
}
}
/**
* Properties for defining a `CfnSpendingLimit`
*
* @struct
* @stability external
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-braket-spendinglimit.html
*/
export interface CfnSpendingLimitProps {
/**
* The Amazon Resource Name (ARN) of the quantum device to apply the spending limit to.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-braket-spendinglimit.html#cfn-braket-spendinglimit-devicearn
*/
readonly deviceArn: string;
/**
* The maximum amount that can be spent on the specified device, in USD.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-braket-spendinglimit.html#cfn-braket-spendinglimit-spendinglimit
*/
readonly spendingLimit: string;
/**
* The tags to apply to the spending limit.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-braket-spendinglimit.html#cfn-braket-spendinglimit-tags
*/
readonly tags?: Array<cdk.CfnTag>;
/**
* Defines a time range for spending limits, specifying when the limit is active.
*
* @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-braket-spendinglimit.html#cfn-braket-spendinglimit-timeperiod
*/
readonly timePeriod?: cdk.IResolvable | CfnSpendingLimit.TimePeriodProperty;
}
export type { ISpendingLimitRef, SpendingLimitReference };