googlebillingbudget

package
v6.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 18, 2023 License: MPL-2.0 Imports: 7 Imported by: 0

README

google_billing_budget

Refer to the Terraform Registory for docs: google_billing_budget.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GoogleBillingBudget_IsConstruct

func GoogleBillingBudget_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.

Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.

Returns: true if `x` is an object created from a class which extends `Construct`.

func GoogleBillingBudget_IsTerraformElement

func GoogleBillingBudget_IsTerraformElement(x interface{}) *bool

Experimental.

func GoogleBillingBudget_IsTerraformResource

func GoogleBillingBudget_IsTerraformResource(x interface{}) *bool

Experimental.

func GoogleBillingBudget_TfResourceType

func GoogleBillingBudget_TfResourceType() *string

func NewGoogleBillingBudgetAllUpdatesRuleOutputReference_Override

func NewGoogleBillingBudgetAllUpdatesRuleOutputReference_Override(g GoogleBillingBudgetAllUpdatesRuleOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewGoogleBillingBudgetAmountOutputReference_Override

func NewGoogleBillingBudgetAmountOutputReference_Override(g GoogleBillingBudgetAmountOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewGoogleBillingBudgetAmountSpecifiedAmountOutputReference_Override

func NewGoogleBillingBudgetAmountSpecifiedAmountOutputReference_Override(g GoogleBillingBudgetAmountSpecifiedAmountOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewGoogleBillingBudgetBudgetFilterCustomPeriodEndDateOutputReference_Override

func NewGoogleBillingBudgetBudgetFilterCustomPeriodEndDateOutputReference_Override(g GoogleBillingBudgetBudgetFilterCustomPeriodEndDateOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewGoogleBillingBudgetBudgetFilterCustomPeriodOutputReference_Override

func NewGoogleBillingBudgetBudgetFilterCustomPeriodOutputReference_Override(g GoogleBillingBudgetBudgetFilterCustomPeriodOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewGoogleBillingBudgetBudgetFilterCustomPeriodStartDateOutputReference_Override

func NewGoogleBillingBudgetBudgetFilterCustomPeriodStartDateOutputReference_Override(g GoogleBillingBudgetBudgetFilterCustomPeriodStartDateOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewGoogleBillingBudgetBudgetFilterOutputReference_Override

func NewGoogleBillingBudgetBudgetFilterOutputReference_Override(g GoogleBillingBudgetBudgetFilterOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewGoogleBillingBudgetThresholdRulesList_Override

func NewGoogleBillingBudgetThresholdRulesList_Override(g GoogleBillingBudgetThresholdRulesList, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool)

func NewGoogleBillingBudgetThresholdRulesOutputReference_Override

func NewGoogleBillingBudgetThresholdRulesOutputReference_Override(g GoogleBillingBudgetThresholdRulesOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool)

func NewGoogleBillingBudgetTimeoutsOutputReference_Override

func NewGoogleBillingBudgetTimeoutsOutputReference_Override(g GoogleBillingBudgetTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)

func NewGoogleBillingBudget_Override

func NewGoogleBillingBudget_Override(g GoogleBillingBudget, scope constructs.Construct, id *string, config *GoogleBillingBudgetConfig)

Create a new {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget google_billing_budget} Resource.

Types

type GoogleBillingBudget

type GoogleBillingBudget interface {
	cdktf.TerraformResource
	AllUpdatesRule() GoogleBillingBudgetAllUpdatesRuleOutputReference
	AllUpdatesRuleInput() *GoogleBillingBudgetAllUpdatesRule
	Amount() GoogleBillingBudgetAmountOutputReference
	AmountInput() *GoogleBillingBudgetAmount
	BillingAccount() *string
	SetBillingAccount(val *string)
	BillingAccountInput() *string
	BudgetFilter() GoogleBillingBudgetBudgetFilterOutputReference
	BudgetFilterInput() *GoogleBillingBudgetBudgetFilter
	// Experimental.
	CdktfStack() cdktf.TerraformStack
	// Experimental.
	Connection() interface{}
	// Experimental.
	SetConnection(val interface{})
	// Experimental.
	ConstructNodeMetadata() *map[string]interface{}
	// Experimental.
	Count() *float64
	// Experimental.
	SetCount(val *float64)
	// Experimental.
	DependsOn() *[]*string
	// Experimental.
	SetDependsOn(val *[]*string)
	DisplayName() *string
	SetDisplayName(val *string)
	DisplayNameInput() *string
	// Experimental.
	ForEach() cdktf.ITerraformIterator
	// Experimental.
	SetForEach(val cdktf.ITerraformIterator)
	// Experimental.
	Fqn() *string
	// Experimental.
	FriendlyUniqueId() *string
	Id() *string
	SetId(val *string)
	IdInput() *string
	// Experimental.
	Lifecycle() *cdktf.TerraformResourceLifecycle
	// Experimental.
	SetLifecycle(val *cdktf.TerraformResourceLifecycle)
	Name() *string
	// The tree node.
	Node() constructs.Node
	// Experimental.
	Provider() cdktf.TerraformProvider
	// Experimental.
	SetProvider(val cdktf.TerraformProvider)
	// Experimental.
	Provisioners() *[]interface{}
	// Experimental.
	SetProvisioners(val *[]interface{})
	// Experimental.
	RawOverrides() interface{}
	// Experimental.
	TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata
	// Experimental.
	TerraformMetaArguments() *map[string]interface{}
	// Experimental.
	TerraformResourceType() *string
	ThresholdRules() GoogleBillingBudgetThresholdRulesList
	ThresholdRulesInput() interface{}
	Timeouts() GoogleBillingBudgetTimeoutsOutputReference
	TimeoutsInput() interface{}
	// Experimental.
	AddOverride(path *string, value interface{})
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable
	// Overrides the auto-generated logical ID with a specific ID.
	// Experimental.
	OverrideLogicalId(newLogicalId *string)
	PutAllUpdatesRule(value *GoogleBillingBudgetAllUpdatesRule)
	PutAmount(value *GoogleBillingBudgetAmount)
	PutBudgetFilter(value *GoogleBillingBudgetBudgetFilter)
	PutThresholdRules(value interface{})
	PutTimeouts(value *GoogleBillingBudgetTimeouts)
	ResetAllUpdatesRule()
	ResetBudgetFilter()
	ResetDisplayName()
	ResetId()
	// Resets a previously passed logical Id to use the auto-generated logical id again.
	// Experimental.
	ResetOverrideLogicalId()
	ResetThresholdRules()
	ResetTimeouts()
	SynthesizeAttributes() *map[string]interface{}
	// Experimental.
	ToMetadata() interface{}
	// Returns a string representation of this construct.
	ToString() *string
	// Adds this resource to the terraform JSON output.
	// Experimental.
	ToTerraform() interface{}
}

Represents a {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget google_billing_budget}.

func NewGoogleBillingBudget

func NewGoogleBillingBudget(scope constructs.Construct, id *string, config *GoogleBillingBudgetConfig) GoogleBillingBudget

Create a new {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget google_billing_budget} Resource.

type GoogleBillingBudgetAllUpdatesRule

type GoogleBillingBudgetAllUpdatesRule struct {
	// Boolean.
	//
	// When set to true, disables default notifications sent
	// when a threshold is exceeded. Default recipients are
	// those with Billing Account Administrators and Billing
	// Account Users IAM roles for the target account.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#disable_default_iam_recipients GoogleBillingBudget#disable_default_iam_recipients}
	DisableDefaultIamRecipients interface{} `field:"optional" json:"disableDefaultIamRecipients" yaml:"disableDefaultIamRecipients"`
	// The full resource name of a monitoring notification channel in the form projects/{project_id}/notificationChannels/{channel_id}. A maximum of 5 channels are allowed.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#monitoring_notification_channels GoogleBillingBudget#monitoring_notification_channels}
	MonitoringNotificationChannels *[]*string `field:"optional" json:"monitoringNotificationChannels" yaml:"monitoringNotificationChannels"`
	// The name of the Cloud Pub/Sub topic where budget related messages will be published, in the form projects/{project_id}/topics/{topic_id}.
	//
	// Updates are sent
	// at regular intervals to the topic.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#pubsub_topic GoogleBillingBudget#pubsub_topic}
	PubsubTopic *string `field:"optional" json:"pubsubTopic" yaml:"pubsubTopic"`
	// The schema version of the notification. Only "1.0" is accepted. It represents the JSON schema as defined in https://cloud.google.com/billing/docs/how-to/budgets#notification_format.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#schema_version GoogleBillingBudget#schema_version}
	SchemaVersion *string `field:"optional" json:"schemaVersion" yaml:"schemaVersion"`
}

type GoogleBillingBudgetAllUpdatesRuleOutputReference

type GoogleBillingBudgetAllUpdatesRuleOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	DisableDefaultIamRecipients() interface{}
	SetDisableDefaultIamRecipients(val interface{})
	DisableDefaultIamRecipientsInput() interface{}
	// Experimental.
	Fqn() *string
	InternalValue() *GoogleBillingBudgetAllUpdatesRule
	SetInternalValue(val *GoogleBillingBudgetAllUpdatesRule)
	MonitoringNotificationChannels() *[]*string
	SetMonitoringNotificationChannels(val *[]*string)
	MonitoringNotificationChannelsInput() *[]*string
	PubsubTopic() *string
	SetPubsubTopic(val *string)
	PubsubTopicInput() *string
	SchemaVersion() *string
	SetSchemaVersion(val *string)
	SchemaVersionInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetDisableDefaultIamRecipients()
	ResetMonitoringNotificationChannels()
	ResetPubsubTopic()
	ResetSchemaVersion()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetAllUpdatesRuleOutputReference

func NewGoogleBillingBudgetAllUpdatesRuleOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleBillingBudgetAllUpdatesRuleOutputReference

type GoogleBillingBudgetAmount

type GoogleBillingBudgetAmount struct {
	// Configures a budget amount that is automatically set to 100% of last period's spend.
	//
	// Boolean. Set value to true to use. Do not set to false, instead
	// use the 'specified_amount' block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#last_period_amount GoogleBillingBudget#last_period_amount}
	LastPeriodAmount interface{} `field:"optional" json:"lastPeriodAmount" yaml:"lastPeriodAmount"`
	// specified_amount block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#specified_amount GoogleBillingBudget#specified_amount}
	SpecifiedAmount *GoogleBillingBudgetAmountSpecifiedAmount `field:"optional" json:"specifiedAmount" yaml:"specifiedAmount"`
}

type GoogleBillingBudgetAmountOutputReference

type GoogleBillingBudgetAmountOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() *GoogleBillingBudgetAmount
	SetInternalValue(val *GoogleBillingBudgetAmount)
	LastPeriodAmount() interface{}
	SetLastPeriodAmount(val interface{})
	LastPeriodAmountInput() interface{}
	SpecifiedAmount() GoogleBillingBudgetAmountSpecifiedAmountOutputReference
	SpecifiedAmountInput() *GoogleBillingBudgetAmountSpecifiedAmount
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	PutSpecifiedAmount(value *GoogleBillingBudgetAmountSpecifiedAmount)
	ResetLastPeriodAmount()
	ResetSpecifiedAmount()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetAmountOutputReference

func NewGoogleBillingBudgetAmountOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleBillingBudgetAmountOutputReference

type GoogleBillingBudgetAmountSpecifiedAmount

type GoogleBillingBudgetAmountSpecifiedAmount struct {
	// The 3-letter currency code defined in ISO 4217.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#currency_code GoogleBillingBudget#currency_code}
	CurrencyCode *string `field:"optional" json:"currencyCode" yaml:"currencyCode"`
	// Number of nano (10^-9) units of the amount.
	//
	// The value must be between -999,999,999 and +999,999,999
	// inclusive. If units is positive, nanos must be positive or
	// zero. If units is zero, nanos can be positive, zero, or
	// negative. If units is negative, nanos must be negative or
	// zero. For example $-1.75 is represented as units=-1 and
	// nanos=-750,000,000.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#nanos GoogleBillingBudget#nanos}
	Nanos *float64 `field:"optional" json:"nanos" yaml:"nanos"`
	// The whole units of the amount. For example if currencyCode is "USD", then 1 unit is one US dollar.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#units GoogleBillingBudget#units}
	Units *string `field:"optional" json:"units" yaml:"units"`
}

type GoogleBillingBudgetAmountSpecifiedAmountOutputReference

type GoogleBillingBudgetAmountSpecifiedAmountOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	CurrencyCode() *string
	SetCurrencyCode(val *string)
	CurrencyCodeInput() *string
	// Experimental.
	Fqn() *string
	InternalValue() *GoogleBillingBudgetAmountSpecifiedAmount
	SetInternalValue(val *GoogleBillingBudgetAmountSpecifiedAmount)
	Nanos() *float64
	SetNanos(val *float64)
	NanosInput() *float64
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Units() *string
	SetUnits(val *string)
	UnitsInput() *string
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetCurrencyCode()
	ResetNanos()
	ResetUnits()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetAmountSpecifiedAmountOutputReference

func NewGoogleBillingBudgetAmountSpecifiedAmountOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleBillingBudgetAmountSpecifiedAmountOutputReference

type GoogleBillingBudgetBudgetFilter

type GoogleBillingBudgetBudgetFilter struct {
	// A CalendarPeriod represents the abstract concept of a recurring time period that has a canonical start.
	//
	// Grammatically, "the start of the current CalendarPeriod".
	// All calendar times begin at 12 AM US and Canadian Pacific Time (UTC-8).
	//
	// Exactly one of 'calendar_period', 'custom_period' must be provided. Possible values: ["MONTH", "QUARTER", "YEAR", "CALENDAR_PERIOD_UNSPECIFIED"]
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#calendar_period GoogleBillingBudget#calendar_period}
	CalendarPeriod *string `field:"optional" json:"calendarPeriod" yaml:"calendarPeriod"`
	// Optional.
	//
	// If creditTypesTreatment is INCLUDE_SPECIFIED_CREDITS,
	// this is a list of credit types to be subtracted from gross cost to determine the spend for threshold calculations. See a list of acceptable credit type values.
	// If creditTypesTreatment is not INCLUDE_SPECIFIED_CREDITS, this field must be empty.
	//
	// *Note:** If the field has a value in the config and needs to be removed, the field has to be an emtpy array in the config.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#credit_types GoogleBillingBudget#credit_types}
	CreditTypes *[]*string `field:"optional" json:"creditTypes" yaml:"creditTypes"`
	// Specifies how credits should be treated when determining spend for threshold calculations. Default value: "INCLUDE_ALL_CREDITS" Possible values: ["INCLUDE_ALL_CREDITS", "EXCLUDE_ALL_CREDITS", "INCLUDE_SPECIFIED_CREDITS"].
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#credit_types_treatment GoogleBillingBudget#credit_types_treatment}
	CreditTypesTreatment *string `field:"optional" json:"creditTypesTreatment" yaml:"creditTypesTreatment"`
	// custom_period block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#custom_period GoogleBillingBudget#custom_period}
	CustomPeriod *GoogleBillingBudgetBudgetFilterCustomPeriod `field:"optional" json:"customPeriod" yaml:"customPeriod"`
	// A single label and value pair specifying that usage from only this set of labeled resources should be included in the budget.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#labels GoogleBillingBudget#labels}
	Labels *map[string]*string `field:"optional" json:"labels" yaml:"labels"`
	// A set of projects of the form projects/{project_number}, specifying that usage from only this set of projects should be included in the budget.
	//
	// If omitted, the report will include
	// all usage for the billing account, regardless of which project
	// the usage occurred on.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#projects GoogleBillingBudget#projects}
	Projects *[]*string `field:"optional" json:"projects" yaml:"projects"`
	// A set of services of the form services/{service_id}, specifying that usage from only this set of services should be included in the budget.
	//
	// If omitted, the report will include
	// usage for all the services. The service names are available
	// through the Catalog API:
	// https://cloud.google.com/billing/v1/how-tos/catalog-api.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#services GoogleBillingBudget#services}
	Services *[]*string `field:"optional" json:"services" yaml:"services"`
	// A set of subaccounts of the form billingAccounts/{account_id}, specifying that usage from only this set of subaccounts should be included in the budget.
	//
	// If a subaccount is set to the name of
	// the parent account, usage from the parent account will be included.
	// If the field is omitted, the report will include usage from the parent
	// account and all subaccounts, if they exist.
	//
	// *Note:** If the field has a value in the config and needs to be removed, the field has to be an emtpy array in the config.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#subaccounts GoogleBillingBudget#subaccounts}
	Subaccounts *[]*string `field:"optional" json:"subaccounts" yaml:"subaccounts"`
}

type GoogleBillingBudgetBudgetFilterCustomPeriod

type GoogleBillingBudgetBudgetFilterCustomPeriod struct {
	// start_date block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#start_date GoogleBillingBudget#start_date}
	StartDate *GoogleBillingBudgetBudgetFilterCustomPeriodStartDate `field:"required" json:"startDate" yaml:"startDate"`
	// end_date block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#end_date GoogleBillingBudget#end_date}
	EndDate *GoogleBillingBudgetBudgetFilterCustomPeriodEndDate `field:"optional" json:"endDate" yaml:"endDate"`
}

type GoogleBillingBudgetBudgetFilterCustomPeriodEndDate

type GoogleBillingBudgetBudgetFilterCustomPeriodEndDate struct {
	// Day of a month. Must be from 1 to 31 and valid for the year and month.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#day GoogleBillingBudget#day}
	Day *float64 `field:"required" json:"day" yaml:"day"`
	// Month of a year. Must be from 1 to 12.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#month GoogleBillingBudget#month}
	Month *float64 `field:"required" json:"month" yaml:"month"`
	// Year of the date. Must be from 1 to 9999.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#year GoogleBillingBudget#year}
	Year *float64 `field:"required" json:"year" yaml:"year"`
}

type GoogleBillingBudgetBudgetFilterCustomPeriodEndDateOutputReference

type GoogleBillingBudgetBudgetFilterCustomPeriodEndDateOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	Day() *float64
	SetDay(val *float64)
	DayInput() *float64
	// Experimental.
	Fqn() *string
	InternalValue() *GoogleBillingBudgetBudgetFilterCustomPeriodEndDate
	SetInternalValue(val *GoogleBillingBudgetBudgetFilterCustomPeriodEndDate)
	Month() *float64
	SetMonth(val *float64)
	MonthInput() *float64
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Year() *float64
	SetYear(val *float64)
	YearInput() *float64
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetBudgetFilterCustomPeriodEndDateOutputReference

func NewGoogleBillingBudgetBudgetFilterCustomPeriodEndDateOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleBillingBudgetBudgetFilterCustomPeriodEndDateOutputReference

type GoogleBillingBudgetBudgetFilterCustomPeriodOutputReference

type GoogleBillingBudgetBudgetFilterCustomPeriodOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	EndDate() GoogleBillingBudgetBudgetFilterCustomPeriodEndDateOutputReference
	EndDateInput() *GoogleBillingBudgetBudgetFilterCustomPeriodEndDate
	// Experimental.
	Fqn() *string
	InternalValue() *GoogleBillingBudgetBudgetFilterCustomPeriod
	SetInternalValue(val *GoogleBillingBudgetBudgetFilterCustomPeriod)
	StartDate() GoogleBillingBudgetBudgetFilterCustomPeriodStartDateOutputReference
	StartDateInput() *GoogleBillingBudgetBudgetFilterCustomPeriodStartDate
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	PutEndDate(value *GoogleBillingBudgetBudgetFilterCustomPeriodEndDate)
	PutStartDate(value *GoogleBillingBudgetBudgetFilterCustomPeriodStartDate)
	ResetEndDate()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetBudgetFilterCustomPeriodOutputReference

func NewGoogleBillingBudgetBudgetFilterCustomPeriodOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleBillingBudgetBudgetFilterCustomPeriodOutputReference

type GoogleBillingBudgetBudgetFilterCustomPeriodStartDate

type GoogleBillingBudgetBudgetFilterCustomPeriodStartDate struct {
	// Day of a month. Must be from 1 to 31 and valid for the year and month.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#day GoogleBillingBudget#day}
	Day *float64 `field:"required" json:"day" yaml:"day"`
	// Month of a year. Must be from 1 to 12.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#month GoogleBillingBudget#month}
	Month *float64 `field:"required" json:"month" yaml:"month"`
	// Year of the date. Must be from 1 to 9999.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#year GoogleBillingBudget#year}
	Year *float64 `field:"required" json:"year" yaml:"year"`
}

type GoogleBillingBudgetBudgetFilterCustomPeriodStartDateOutputReference

type GoogleBillingBudgetBudgetFilterCustomPeriodStartDateOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	Day() *float64
	SetDay(val *float64)
	DayInput() *float64
	// Experimental.
	Fqn() *string
	InternalValue() *GoogleBillingBudgetBudgetFilterCustomPeriodStartDate
	SetInternalValue(val *GoogleBillingBudgetBudgetFilterCustomPeriodStartDate)
	Month() *float64
	SetMonth(val *float64)
	MonthInput() *float64
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Year() *float64
	SetYear(val *float64)
	YearInput() *float64
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetBudgetFilterCustomPeriodStartDateOutputReference

func NewGoogleBillingBudgetBudgetFilterCustomPeriodStartDateOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleBillingBudgetBudgetFilterCustomPeriodStartDateOutputReference

type GoogleBillingBudgetBudgetFilterOutputReference

type GoogleBillingBudgetBudgetFilterOutputReference interface {
	cdktf.ComplexObject
	CalendarPeriod() *string
	SetCalendarPeriod(val *string)
	CalendarPeriodInput() *string
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	CreditTypes() *[]*string
	SetCreditTypes(val *[]*string)
	CreditTypesInput() *[]*string
	CreditTypesTreatment() *string
	SetCreditTypesTreatment(val *string)
	CreditTypesTreatmentInput() *string
	CustomPeriod() GoogleBillingBudgetBudgetFilterCustomPeriodOutputReference
	CustomPeriodInput() *GoogleBillingBudgetBudgetFilterCustomPeriod
	// Experimental.
	Fqn() *string
	InternalValue() *GoogleBillingBudgetBudgetFilter
	SetInternalValue(val *GoogleBillingBudgetBudgetFilter)
	Labels() *map[string]*string
	SetLabels(val *map[string]*string)
	LabelsInput() *map[string]*string
	Projects() *[]*string
	SetProjects(val *[]*string)
	ProjectsInput() *[]*string
	Services() *[]*string
	SetServices(val *[]*string)
	ServicesInput() *[]*string
	Subaccounts() *[]*string
	SetSubaccounts(val *[]*string)
	SubaccountsInput() *[]*string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	PutCustomPeriod(value *GoogleBillingBudgetBudgetFilterCustomPeriod)
	ResetCalendarPeriod()
	ResetCreditTypes()
	ResetCreditTypesTreatment()
	ResetCustomPeriod()
	ResetLabels()
	ResetProjects()
	ResetServices()
	ResetSubaccounts()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetBudgetFilterOutputReference

func NewGoogleBillingBudgetBudgetFilterOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleBillingBudgetBudgetFilterOutputReference

type GoogleBillingBudgetConfig

type GoogleBillingBudgetConfig struct {
	// Experimental.
	Connection interface{} `field:"optional" json:"connection" yaml:"connection"`
	// Experimental.
	Count *float64 `field:"optional" json:"count" yaml:"count"`
	// Experimental.
	DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"`
	// Experimental.
	ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"`
	// Experimental.
	Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"`
	// Experimental.
	Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"`
	// Experimental.
	Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"`
	// amount block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#amount GoogleBillingBudget#amount}
	Amount *GoogleBillingBudgetAmount `field:"required" json:"amount" yaml:"amount"`
	// ID of the billing account to set a budget on.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#billing_account GoogleBillingBudget#billing_account}
	BillingAccount *string `field:"required" json:"billingAccount" yaml:"billingAccount"`
	// all_updates_rule block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#all_updates_rule GoogleBillingBudget#all_updates_rule}
	AllUpdatesRule *GoogleBillingBudgetAllUpdatesRule `field:"optional" json:"allUpdatesRule" yaml:"allUpdatesRule"`
	// budget_filter block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#budget_filter GoogleBillingBudget#budget_filter}
	BudgetFilter *GoogleBillingBudgetBudgetFilter `field:"optional" json:"budgetFilter" yaml:"budgetFilter"`
	// User data for display name in UI. Must be <= 60 chars.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#display_name GoogleBillingBudget#display_name}
	DisplayName *string `field:"optional" json:"displayName" yaml:"displayName"`
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#id GoogleBillingBudget#id}.
	//
	// Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
	// If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
	Id *string `field:"optional" json:"id" yaml:"id"`
	// threshold_rules block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#threshold_rules GoogleBillingBudget#threshold_rules}
	ThresholdRules interface{} `field:"optional" json:"thresholdRules" yaml:"thresholdRules"`
	// timeouts block.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#timeouts GoogleBillingBudget#timeouts}
	Timeouts *GoogleBillingBudgetTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"`
}

type GoogleBillingBudgetThresholdRules

type GoogleBillingBudgetThresholdRules struct {
	// Send an alert when this threshold is exceeded.
	//
	// This is a
	// 1.0-based percentage, so 0.5 = 50%. Must be >= 0.
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#threshold_percent GoogleBillingBudget#threshold_percent}
	ThresholdPercent *float64 `field:"required" json:"thresholdPercent" yaml:"thresholdPercent"`
	// The type of basis used to determine if spend has passed the threshold. Default value: "CURRENT_SPEND" Possible values: ["CURRENT_SPEND", "FORECASTED_SPEND"].
	//
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#spend_basis GoogleBillingBudget#spend_basis}
	SpendBasis *string `field:"optional" json:"spendBasis" yaml:"spendBasis"`
}

type GoogleBillingBudgetThresholdRulesList

type GoogleBillingBudgetThresholdRulesList interface {
	cdktf.ComplexList
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// The attribute on the parent resource this class is referencing.
	TerraformAttribute() *string
	SetTerraformAttribute(val *string)
	// The parent resource.
	TerraformResource() cdktf.IInterpolatingParent
	SetTerraformResource(val cdktf.IInterpolatingParent)
	// whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
	WrapsSet() *bool
	SetWrapsSet(val *bool)
	// Experimental.
	ComputeFqn() *string
	Get(index *float64) GoogleBillingBudgetThresholdRulesOutputReference
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetThresholdRulesList

func NewGoogleBillingBudgetThresholdRulesList(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, wrapsSet *bool) GoogleBillingBudgetThresholdRulesList

type GoogleBillingBudgetThresholdRulesOutputReference

type GoogleBillingBudgetThresholdRulesOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	SpendBasis() *string
	SetSpendBasis(val *string)
	SpendBasisInput() *string
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	ThresholdPercent() *float64
	SetThresholdPercent(val *float64)
	ThresholdPercentInput() *float64
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetSpendBasis()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetThresholdRulesOutputReference

func NewGoogleBillingBudgetThresholdRulesOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string, complexObjectIndex *float64, complexObjectIsFromSet *bool) GoogleBillingBudgetThresholdRulesOutputReference

type GoogleBillingBudgetTimeouts

type GoogleBillingBudgetTimeouts struct {
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#create GoogleBillingBudget#create}.
	Create *string `field:"optional" json:"create" yaml:"create"`
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#delete GoogleBillingBudget#delete}.
	Delete *string `field:"optional" json:"delete" yaml:"delete"`
	// Docs at Terraform Registry: {@link https://www.terraform.io/docs/providers/google-beta/r/google_billing_budget#update GoogleBillingBudget#update}.
	Update *string `field:"optional" json:"update" yaml:"update"`
}

type GoogleBillingBudgetTimeoutsOutputReference

type GoogleBillingBudgetTimeoutsOutputReference interface {
	cdktf.ComplexObject
	// the index of the complex object in a list.
	// Experimental.
	ComplexObjectIndex() interface{}
	// Experimental.
	SetComplexObjectIndex(val interface{})
	// set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items.
	// Experimental.
	ComplexObjectIsFromSet() *bool
	// Experimental.
	SetComplexObjectIsFromSet(val *bool)
	Create() *string
	SetCreate(val *string)
	CreateInput() *string
	// The creation stack of this resolvable which will be appended to errors thrown during resolution.
	//
	// If this returns an empty array the stack will not be attached.
	// Experimental.
	CreationStack() *[]*string
	Delete() *string
	SetDelete(val *string)
	DeleteInput() *string
	// Experimental.
	Fqn() *string
	InternalValue() interface{}
	SetInternalValue(val interface{})
	// Experimental.
	TerraformAttribute() *string
	// Experimental.
	SetTerraformAttribute(val *string)
	// Experimental.
	TerraformResource() cdktf.IInterpolatingParent
	// Experimental.
	SetTerraformResource(val cdktf.IInterpolatingParent)
	Update() *string
	SetUpdate(val *string)
	UpdateInput() *string
	// Experimental.
	ComputeFqn() *string
	// Experimental.
	GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{}
	// Experimental.
	GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable
	// Experimental.
	GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool
	// Experimental.
	GetListAttribute(terraformAttribute *string) *[]*string
	// Experimental.
	GetNumberAttribute(terraformAttribute *string) *float64
	// Experimental.
	GetNumberListAttribute(terraformAttribute *string) *[]*float64
	// Experimental.
	GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64
	// Experimental.
	GetStringAttribute(terraformAttribute *string) *string
	// Experimental.
	GetStringMapAttribute(terraformAttribute *string) *map[string]*string
	// Experimental.
	InterpolationAsList() cdktf.IResolvable
	// Experimental.
	InterpolationForAttribute(property *string) cdktf.IResolvable
	ResetCreate()
	ResetDelete()
	ResetUpdate()
	// Produce the Token's value at resolution time.
	// Experimental.
	Resolve(_context cdktf.IResolveContext) interface{}
	// Return a string representation of this resolvable object.
	//
	// Returns a reversible string representation.
	// Experimental.
	ToString() *string
}

func NewGoogleBillingBudgetTimeoutsOutputReference

func NewGoogleBillingBudgetTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) GoogleBillingBudgetTimeoutsOutputReference

Source Files

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL