UNPKG

rhizo-co-terraform-provider-oci

Version:

Prebuilt oci Provider for Terraform CDK (cdktf)

1,097 lines 67.7 kB
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface BdsAutoScalingConfigurationConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#bds_instance_id BdsAutoScalingConfiguration#bds_instance_id}
    */
    readonly bdsInstanceId: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#cluster_admin_password BdsAutoScalingConfiguration#cluster_admin_password}
    */
    readonly clusterAdminPassword: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#display_name BdsAutoScalingConfiguration#display_name}
    */
    readonly displayName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#id BdsAutoScalingConfiguration#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.
    */
    readonly id?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#is_enabled BdsAutoScalingConfiguration#is_enabled}
    */
    readonly isEnabled: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#node_type BdsAutoScalingConfiguration#node_type}
    */
    readonly nodeType: string;
    /**
    * policy block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#policy BdsAutoScalingConfiguration#policy}
    */
    readonly policy?: BdsAutoScalingConfigurationPolicy;
    /**
    * policy_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#policy_details BdsAutoScalingConfiguration#policy_details}
    */
    readonly policyDetails?: BdsAutoScalingConfigurationPolicyDetails;
    /**
    * timeouts block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#timeouts BdsAutoScalingConfiguration#timeouts}
    */
    readonly timeouts?: BdsAutoScalingConfigurationTimeouts;
}
export interface BdsAutoScalingConfigurationPolicyRulesMetricThreshold {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#duration_in_minutes BdsAutoScalingConfiguration#duration_in_minutes}
    */
    readonly durationInMinutes: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#operator BdsAutoScalingConfiguration#operator}
    */
    readonly operator: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#value BdsAutoScalingConfiguration#value}
    */
    readonly value: number;
}
export declare function bdsAutoScalingConfigurationPolicyRulesMetricThresholdToTerraform(struct?: BdsAutoScalingConfigurationPolicyRulesMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyRulesMetricThreshold): any;
export declare function bdsAutoScalingConfigurationPolicyRulesMetricThresholdToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyRulesMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyRulesMetricThreshold): any;
export declare class BdsAutoScalingConfigurationPolicyRulesMetricThresholdOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyRulesMetricThreshold | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyRulesMetricThreshold | undefined);
    private _durationInMinutes?;
    get durationInMinutes(): number;
    set durationInMinutes(value: number);
    get durationInMinutesInput(): number | undefined;
    private _operator?;
    get operator(): string;
    set operator(value: string);
    get operatorInput(): string | undefined;
    private _value?;
    get value(): number;
    set value(value: number);
    get valueInput(): number | undefined;
}
export interface BdsAutoScalingConfigurationPolicyRulesMetric {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric_type BdsAutoScalingConfiguration#metric_type}
    */
    readonly metricType: string;
    /**
    * threshold block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#threshold BdsAutoScalingConfiguration#threshold}
    */
    readonly threshold: BdsAutoScalingConfigurationPolicyRulesMetricThreshold;
}
export declare function bdsAutoScalingConfigurationPolicyRulesMetricToTerraform(struct?: BdsAutoScalingConfigurationPolicyRulesMetricOutputReference | BdsAutoScalingConfigurationPolicyRulesMetric): any;
export declare function bdsAutoScalingConfigurationPolicyRulesMetricToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyRulesMetricOutputReference | BdsAutoScalingConfigurationPolicyRulesMetric): any;
export declare class BdsAutoScalingConfigurationPolicyRulesMetricOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyRulesMetric | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyRulesMetric | undefined);
    private _metricType?;
    get metricType(): string;
    set metricType(value: string);
    get metricTypeInput(): string | undefined;
    private _threshold;
    get threshold(): BdsAutoScalingConfigurationPolicyRulesMetricThresholdOutputReference;
    putThreshold(value: BdsAutoScalingConfigurationPolicyRulesMetricThreshold): void;
    get thresholdInput(): BdsAutoScalingConfigurationPolicyRulesMetricThreshold | undefined;
}
export interface BdsAutoScalingConfigurationPolicyRules {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#action BdsAutoScalingConfiguration#action}
    */
    readonly action: string;
    /**
    * metric block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric BdsAutoScalingConfiguration#metric}
    */
    readonly metric: BdsAutoScalingConfigurationPolicyRulesMetric;
}
export declare function bdsAutoScalingConfigurationPolicyRulesToTerraform(struct?: BdsAutoScalingConfigurationPolicyRules | cdktf.IResolvable): any;
export declare function bdsAutoScalingConfigurationPolicyRulesToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyRules | cdktf.IResolvable): any;
export declare class BdsAutoScalingConfigurationPolicyRulesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    private resolvableValue?;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): BdsAutoScalingConfigurationPolicyRules | cdktf.IResolvable | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyRules | cdktf.IResolvable | undefined);
    private _action?;
    get action(): string;
    set action(value: string);
    get actionInput(): string | undefined;
    private _metric;
    get metric(): BdsAutoScalingConfigurationPolicyRulesMetricOutputReference;
    putMetric(value: BdsAutoScalingConfigurationPolicyRulesMetric): void;
    get metricInput(): BdsAutoScalingConfigurationPolicyRulesMetric | undefined;
}
export declare class BdsAutoScalingConfigurationPolicyRulesList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: BdsAutoScalingConfigurationPolicyRules[] | cdktf.IResolvable;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): BdsAutoScalingConfigurationPolicyRulesOutputReference;
}
export interface BdsAutoScalingConfigurationPolicy {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#policy_type BdsAutoScalingConfiguration#policy_type}
    */
    readonly policyType: string;
    /**
    * rules block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#rules BdsAutoScalingConfiguration#rules}
    */
    readonly rules: BdsAutoScalingConfigurationPolicyRules[] | cdktf.IResolvable;
}
export declare function bdsAutoScalingConfigurationPolicyToTerraform(struct?: BdsAutoScalingConfigurationPolicyOutputReference | BdsAutoScalingConfigurationPolicy): any;
export declare function bdsAutoScalingConfigurationPolicyToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyOutputReference | BdsAutoScalingConfigurationPolicy): any;
export declare class BdsAutoScalingConfigurationPolicyOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicy | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicy | undefined);
    private _policyType?;
    get policyType(): string;
    set policyType(value: string);
    get policyTypeInput(): string | undefined;
    private _rules;
    get rules(): BdsAutoScalingConfigurationPolicyRulesList;
    putRules(value: BdsAutoScalingConfigurationPolicyRules[] | cdktf.IResolvable): void;
    get rulesInput(): cdktf.IResolvable | BdsAutoScalingConfigurationPolicyRules[] | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThreshold {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#duration_in_minutes BdsAutoScalingConfiguration#duration_in_minutes}
    */
    readonly durationInMinutes?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#operator BdsAutoScalingConfiguration#operator}
    */
    readonly operator?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#value BdsAutoScalingConfiguration#value}
    */
    readonly value?: number;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThresholdToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThreshold): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThresholdToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThreshold): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThresholdOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThreshold | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThreshold | undefined);
    private _durationInMinutes?;
    get durationInMinutes(): number;
    set durationInMinutes(value: number);
    resetDurationInMinutes(): void;
    get durationInMinutesInput(): number | undefined;
    private _operator?;
    get operator(): string;
    set operator(value: string);
    resetOperator(): void;
    get operatorInput(): string | undefined;
    private _value?;
    get value(): number;
    set value(value: number);
    resetValue(): void;
    get valueInput(): number | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetric {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric_type BdsAutoScalingConfiguration#metric_type}
    */
    readonly metricType?: string;
    /**
    * threshold block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#threshold BdsAutoScalingConfiguration#threshold}
    */
    readonly threshold?: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThreshold;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetric): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetric): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetric | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetric | undefined);
    private _metricType?;
    get metricType(): string;
    set metricType(value: string);
    resetMetricType(): void;
    get metricTypeInput(): string | undefined;
    private _threshold;
    get threshold(): BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThresholdOutputReference;
    putThreshold(value: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThreshold): void;
    resetThreshold(): void;
    get thresholdInput(): BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricThreshold | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleDownConfig {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#memory_step_size BdsAutoScalingConfiguration#memory_step_size}
    */
    readonly memoryStepSize?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#min_memory_per_node BdsAutoScalingConfiguration#min_memory_per_node}
    */
    readonly minMemoryPerNode?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#min_ocpus_per_node BdsAutoScalingConfiguration#min_ocpus_per_node}
    */
    readonly minOcpusPerNode?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#ocpu_step_size BdsAutoScalingConfiguration#ocpu_step_size}
    */
    readonly ocpuStepSize?: number;
    /**
    * metric block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric BdsAutoScalingConfiguration#metric}
    */
    readonly metric?: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetric;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleDownConfigToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleDownConfig): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleDownConfigToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleDownConfig): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleDownConfig | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfig | undefined);
    private _memoryStepSize?;
    get memoryStepSize(): number;
    set memoryStepSize(value: number);
    resetMemoryStepSize(): void;
    get memoryStepSizeInput(): number | undefined;
    private _minMemoryPerNode?;
    get minMemoryPerNode(): number;
    set minMemoryPerNode(value: number);
    resetMinMemoryPerNode(): void;
    get minMemoryPerNodeInput(): number | undefined;
    private _minOcpusPerNode?;
    get minOcpusPerNode(): number;
    set minOcpusPerNode(value: number);
    resetMinOcpusPerNode(): void;
    get minOcpusPerNodeInput(): number | undefined;
    private _ocpuStepSize?;
    get ocpuStepSize(): number;
    set ocpuStepSize(value: number);
    resetOcpuStepSize(): void;
    get ocpuStepSizeInput(): number | undefined;
    private _metric;
    get metric(): BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetricOutputReference;
    putMetric(value: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetric): void;
    resetMetric(): void;
    get metricInput(): BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigMetric | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThreshold {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#duration_in_minutes BdsAutoScalingConfiguration#duration_in_minutes}
    */
    readonly durationInMinutes?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#operator BdsAutoScalingConfiguration#operator}
    */
    readonly operator?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#value BdsAutoScalingConfiguration#value}
    */
    readonly value?: number;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThresholdToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThreshold): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThresholdToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThreshold): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThresholdOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThreshold | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThreshold | undefined);
    private _durationInMinutes?;
    get durationInMinutes(): number;
    set durationInMinutes(value: number);
    resetDurationInMinutes(): void;
    get durationInMinutesInput(): number | undefined;
    private _operator?;
    get operator(): string;
    set operator(value: string);
    resetOperator(): void;
    get operatorInput(): string | undefined;
    private _value?;
    get value(): number;
    set value(value: number);
    resetValue(): void;
    get valueInput(): number | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetric {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric_type BdsAutoScalingConfiguration#metric_type}
    */
    readonly metricType?: string;
    /**
    * threshold block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#threshold BdsAutoScalingConfiguration#threshold}
    */
    readonly threshold?: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThreshold;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetric): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetric): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetric | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetric | undefined);
    private _metricType?;
    get metricType(): string;
    set metricType(value: string);
    resetMetricType(): void;
    get metricTypeInput(): string | undefined;
    private _threshold;
    get threshold(): BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThresholdOutputReference;
    putThreshold(value: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThreshold): void;
    resetThreshold(): void;
    get thresholdInput(): BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricThreshold | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleInConfig {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#min_node_count BdsAutoScalingConfiguration#min_node_count}
    */
    readonly minNodeCount?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#step_size BdsAutoScalingConfiguration#step_size}
    */
    readonly stepSize?: number;
    /**
    * metric block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric BdsAutoScalingConfiguration#metric}
    */
    readonly metric?: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetric;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleInConfigToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleInConfig): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleInConfigToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleInConfig): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleInConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleInConfig | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleInConfig | undefined);
    private _minNodeCount?;
    get minNodeCount(): number;
    set minNodeCount(value: number);
    resetMinNodeCount(): void;
    get minNodeCountInput(): number | undefined;
    private _stepSize?;
    get stepSize(): number;
    set stepSize(value: number);
    resetStepSize(): void;
    get stepSizeInput(): number | undefined;
    private _metric;
    get metric(): BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetricOutputReference;
    putMetric(value: BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetric): void;
    resetMetric(): void;
    get metricInput(): BdsAutoScalingConfigurationPolicyDetailsScaleInConfigMetric | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThreshold {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#duration_in_minutes BdsAutoScalingConfiguration#duration_in_minutes}
    */
    readonly durationInMinutes?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#operator BdsAutoScalingConfiguration#operator}
    */
    readonly operator?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#value BdsAutoScalingConfiguration#value}
    */
    readonly value?: number;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThresholdToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThreshold): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThresholdToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThreshold): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThresholdOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThreshold | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThreshold | undefined);
    private _durationInMinutes?;
    get durationInMinutes(): number;
    set durationInMinutes(value: number);
    resetDurationInMinutes(): void;
    get durationInMinutesInput(): number | undefined;
    private _operator?;
    get operator(): string;
    set operator(value: string);
    resetOperator(): void;
    get operatorInput(): string | undefined;
    private _value?;
    get value(): number;
    set value(value: number);
    resetValue(): void;
    get valueInput(): number | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetric {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric_type BdsAutoScalingConfiguration#metric_type}
    */
    readonly metricType?: string;
    /**
    * threshold block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#threshold BdsAutoScalingConfiguration#threshold}
    */
    readonly threshold?: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThreshold;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetric): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetric): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetric | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetric | undefined);
    private _metricType?;
    get metricType(): string;
    set metricType(value: string);
    resetMetricType(): void;
    get metricTypeInput(): string | undefined;
    private _threshold;
    get threshold(): BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThresholdOutputReference;
    putThreshold(value: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThreshold): void;
    resetThreshold(): void;
    get thresholdInput(): BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricThreshold | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleOutConfig {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#max_node_count BdsAutoScalingConfiguration#max_node_count}
    */
    readonly maxNodeCount?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#step_size BdsAutoScalingConfiguration#step_size}
    */
    readonly stepSize?: number;
    /**
    * metric block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric BdsAutoScalingConfiguration#metric}
    */
    readonly metric?: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetric;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleOutConfigToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleOutConfig): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleOutConfigToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleOutConfig): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleOutConfig | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfig | undefined);
    private _maxNodeCount?;
    get maxNodeCount(): number;
    set maxNodeCount(value: number);
    resetMaxNodeCount(): void;
    get maxNodeCountInput(): number | undefined;
    private _stepSize?;
    get stepSize(): number;
    set stepSize(value: number);
    resetStepSize(): void;
    get stepSizeInput(): number | undefined;
    private _metric;
    get metric(): BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetricOutputReference;
    putMetric(value: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetric): void;
    resetMetric(): void;
    get metricInput(): BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigMetric | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThreshold {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#duration_in_minutes BdsAutoScalingConfiguration#duration_in_minutes}
    */
    readonly durationInMinutes?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#operator BdsAutoScalingConfiguration#operator}
    */
    readonly operator?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#value BdsAutoScalingConfiguration#value}
    */
    readonly value?: number;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThresholdToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThreshold): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThresholdToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThresholdOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThreshold): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThresholdOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThreshold | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThreshold | undefined);
    private _durationInMinutes?;
    get durationInMinutes(): number;
    set durationInMinutes(value: number);
    resetDurationInMinutes(): void;
    get durationInMinutesInput(): number | undefined;
    private _operator?;
    get operator(): string;
    set operator(value: string);
    resetOperator(): void;
    get operatorInput(): string | undefined;
    private _value?;
    get value(): number;
    set value(value: number);
    resetValue(): void;
    get valueInput(): number | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetric {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric_type BdsAutoScalingConfiguration#metric_type}
    */
    readonly metricType?: string;
    /**
    * threshold block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#threshold BdsAutoScalingConfiguration#threshold}
    */
    readonly threshold?: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThreshold;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetric): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetric): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetric | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetric | undefined);
    private _metricType?;
    get metricType(): string;
    set metricType(value: string);
    resetMetricType(): void;
    get metricTypeInput(): string | undefined;
    private _threshold;
    get threshold(): BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThresholdOutputReference;
    putThreshold(value: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThreshold): void;
    resetThreshold(): void;
    get thresholdInput(): BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricThreshold | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScaleUpConfig {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#max_memory_per_node BdsAutoScalingConfiguration#max_memory_per_node}
    */
    readonly maxMemoryPerNode?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#max_ocpus_per_node BdsAutoScalingConfiguration#max_ocpus_per_node}
    */
    readonly maxOcpusPerNode?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#memory_step_size BdsAutoScalingConfiguration#memory_step_size}
    */
    readonly memoryStepSize?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#ocpu_step_size BdsAutoScalingConfiguration#ocpu_step_size}
    */
    readonly ocpuStepSize?: number;
    /**
    * metric block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#metric BdsAutoScalingConfiguration#metric}
    */
    readonly metric?: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetric;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleUpConfigToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleUpConfig): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScaleUpConfigToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigOutputReference | BdsAutoScalingConfigurationPolicyDetailsScaleUpConfig): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScaleUpConfig | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfig | undefined);
    private _maxMemoryPerNode?;
    get maxMemoryPerNode(): number;
    set maxMemoryPerNode(value: number);
    resetMaxMemoryPerNode(): void;
    get maxMemoryPerNodeInput(): number | undefined;
    private _maxOcpusPerNode?;
    get maxOcpusPerNode(): number;
    set maxOcpusPerNode(value: number);
    resetMaxOcpusPerNode(): void;
    get maxOcpusPerNodeInput(): number | undefined;
    private _memoryStepSize?;
    get memoryStepSize(): number;
    set memoryStepSize(value: number);
    resetMemoryStepSize(): void;
    get memoryStepSizeInput(): number | undefined;
    private _ocpuStepSize?;
    get ocpuStepSize(): number;
    set ocpuStepSize(value: number);
    resetOcpuStepSize(): void;
    get ocpuStepSizeInput(): number | undefined;
    private _metric;
    get metric(): BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetricOutputReference;
    putMetric(value: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetric): void;
    resetMetric(): void;
    get metricInput(): BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigMetric | undefined;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfig {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#target_node_count BdsAutoScalingConfiguration#target_node_count}
    */
    readonly targetNodeCount?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#time_recurrence BdsAutoScalingConfiguration#time_recurrence}
    */
    readonly timeRecurrence?: string;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfigToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfig | cdktf.IResolvable): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfigToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfig | cdktf.IResolvable): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    private resolvableValue?;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfig | cdktf.IResolvable | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfig | cdktf.IResolvable | undefined);
    private _targetNodeCount?;
    get targetNodeCount(): number;
    set targetNodeCount(value: number);
    resetTargetNodeCount(): void;
    get targetNodeCountInput(): number | undefined;
    private _timeRecurrence?;
    get timeRecurrence(): string;
    set timeRecurrence(value: string);
    resetTimeRecurrence(): void;
    get timeRecurrenceInput(): string | undefined;
}
export declare class BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfigList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfig[] | cdktf.IResolvable;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfigOutputReference;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfig {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#target_memory_per_node BdsAutoScalingConfiguration#target_memory_per_node}
    */
    readonly targetMemoryPerNode?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#target_ocpus_per_node BdsAutoScalingConfiguration#target_ocpus_per_node}
    */
    readonly targetOcpusPerNode?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#target_shape BdsAutoScalingConfiguration#target_shape}
    */
    readonly targetShape?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#time_recurrence BdsAutoScalingConfiguration#time_recurrence}
    */
    readonly timeRecurrence?: string;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfigToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfig | cdktf.IResolvable): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfigToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfig | cdktf.IResolvable): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    private resolvableValue?;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfig | cdktf.IResolvable | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfig | cdktf.IResolvable | undefined);
    private _targetMemoryPerNode?;
    get targetMemoryPerNode(): number;
    set targetMemoryPerNode(value: number);
    resetTargetMemoryPerNode(): void;
    get targetMemoryPerNodeInput(): number | undefined;
    private _targetOcpusPerNode?;
    get targetOcpusPerNode(): number;
    set targetOcpusPerNode(value: number);
    resetTargetOcpusPerNode(): void;
    get targetOcpusPerNodeInput(): number | undefined;
    private _targetShape?;
    get targetShape(): string;
    set targetShape(value: string);
    resetTargetShape(): void;
    get targetShapeInput(): string | undefined;
    private _timeRecurrence?;
    get timeRecurrence(): string;
    set timeRecurrence(value: string);
    resetTimeRecurrence(): void;
    get timeRecurrenceInput(): string | undefined;
}
export declare class BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfigList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfig[] | cdktf.IResolvable;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfigOutputReference;
}
export interface BdsAutoScalingConfigurationPolicyDetailsScheduleDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#schedule_type BdsAutoScalingConfiguration#schedule_type}
    */
    readonly scheduleType?: string;
    /**
    * time_and_horizontal_scaling_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#time_and_horizontal_scaling_config BdsAutoScalingConfiguration#time_and_horizontal_scaling_config}
    */
    readonly timeAndHorizontalScalingConfig?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfig[] | cdktf.IResolvable;
    /**
    * time_and_vertical_scaling_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#time_and_vertical_scaling_config BdsAutoScalingConfiguration#time_and_vertical_scaling_config}
    */
    readonly timeAndVerticalScalingConfig?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfig[] | cdktf.IResolvable;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsScheduleDetailsToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetails | cdktf.IResolvable): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsScheduleDetailsToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetails | cdktf.IResolvable): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    private resolvableValue?;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetailsScheduleDetails | cdktf.IResolvable | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetailsScheduleDetails | cdktf.IResolvable | undefined);
    private _scheduleType?;
    get scheduleType(): string;
    set scheduleType(value: string);
    resetScheduleType(): void;
    get scheduleTypeInput(): string | undefined;
    private _timeAndHorizontalScalingConfig;
    get timeAndHorizontalScalingConfig(): BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfigList;
    putTimeAndHorizontalScalingConfig(value: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfig[] | cdktf.IResolvable): void;
    resetTimeAndHorizontalScalingConfig(): void;
    get timeAndHorizontalScalingConfigInput(): cdktf.IResolvable | BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndHorizontalScalingConfig[] | undefined;
    private _timeAndVerticalScalingConfig;
    get timeAndVerticalScalingConfig(): BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfigList;
    putTimeAndVerticalScalingConfig(value: BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfig[] | cdktf.IResolvable): void;
    resetTimeAndVerticalScalingConfig(): void;
    get timeAndVerticalScalingConfigInput(): cdktf.IResolvable | BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsTimeAndVerticalScalingConfig[] | undefined;
}
export declare class BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetails[] | cdktf.IResolvable;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsOutputReference;
}
export interface BdsAutoScalingConfigurationPolicyDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#policy_type BdsAutoScalingConfiguration#policy_type}
    */
    readonly policyType: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#timezone BdsAutoScalingConfiguration#timezone}
    */
    readonly timezone?: string;
    /**
    * scale_down_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#scale_down_config BdsAutoScalingConfiguration#scale_down_config}
    */
    readonly scaleDownConfig?: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfig;
    /**
    * scale_in_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#scale_in_config BdsAutoScalingConfiguration#scale_in_config}
    */
    readonly scaleInConfig?: BdsAutoScalingConfigurationPolicyDetailsScaleInConfig;
    /**
    * scale_out_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#scale_out_config BdsAutoScalingConfiguration#scale_out_config}
    */
    readonly scaleOutConfig?: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfig;
    /**
    * scale_up_config block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#scale_up_config BdsAutoScalingConfiguration#scale_up_config}
    */
    readonly scaleUpConfig?: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfig;
    /**
    * schedule_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#schedule_details BdsAutoScalingConfiguration#schedule_details}
    */
    readonly scheduleDetails?: BdsAutoScalingConfigurationPolicyDetailsScheduleDetails[] | cdktf.IResolvable;
}
export declare function bdsAutoScalingConfigurationPolicyDetailsToTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsOutputReference | BdsAutoScalingConfigurationPolicyDetails): any;
export declare function bdsAutoScalingConfigurationPolicyDetailsToHclTerraform(struct?: BdsAutoScalingConfigurationPolicyDetailsOutputReference | BdsAutoScalingConfigurationPolicyDetails): any;
export declare class BdsAutoScalingConfigurationPolicyDetailsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationPolicyDetails | undefined;
    set internalValue(value: BdsAutoScalingConfigurationPolicyDetails | undefined);
    get actionType(): string;
    private _policyType?;
    get policyType(): string;
    set policyType(value: string);
    get policyTypeInput(): string | undefined;
    private _timezone?;
    get timezone(): string;
    set timezone(value: string);
    resetTimezone(): void;
    get timezoneInput(): string | undefined;
    get triggerType(): string;
    private _scaleDownConfig;
    get scaleDownConfig(): BdsAutoScalingConfigurationPolicyDetailsScaleDownConfigOutputReference;
    putScaleDownConfig(value: BdsAutoScalingConfigurationPolicyDetailsScaleDownConfig): void;
    resetScaleDownConfig(): void;
    get scaleDownConfigInput(): BdsAutoScalingConfigurationPolicyDetailsScaleDownConfig | undefined;
    private _scaleInConfig;
    get scaleInConfig(): BdsAutoScalingConfigurationPolicyDetailsScaleInConfigOutputReference;
    putScaleInConfig(value: BdsAutoScalingConfigurationPolicyDetailsScaleInConfig): void;
    resetScaleInConfig(): void;
    get scaleInConfigInput(): BdsAutoScalingConfigurationPolicyDetailsScaleInConfig | undefined;
    private _scaleOutConfig;
    get scaleOutConfig(): BdsAutoScalingConfigurationPolicyDetailsScaleOutConfigOutputReference;
    putScaleOutConfig(value: BdsAutoScalingConfigurationPolicyDetailsScaleOutConfig): void;
    resetScaleOutConfig(): void;
    get scaleOutConfigInput(): BdsAutoScalingConfigurationPolicyDetailsScaleOutConfig | undefined;
    private _scaleUpConfig;
    get scaleUpConfig(): BdsAutoScalingConfigurationPolicyDetailsScaleUpConfigOutputReference;
    putScaleUpConfig(value: BdsAutoScalingConfigurationPolicyDetailsScaleUpConfig): void;
    resetScaleUpConfig(): void;
    get scaleUpConfigInput(): BdsAutoScalingConfigurationPolicyDetailsScaleUpConfig | undefined;
    private _scheduleDetails;
    get scheduleDetails(): BdsAutoScalingConfigurationPolicyDetailsScheduleDetailsList;
    putScheduleDetails(value: BdsAutoScalingConfigurationPolicyDetailsScheduleDetails[] | cdktf.IResolvable): void;
    resetScheduleDetails(): void;
    get scheduleDetailsInput(): cdktf.IResolvable | BdsAutoScalingConfigurationPolicyDetailsScheduleDetails[] | undefined;
}
export interface BdsAutoScalingConfigurationTimeouts {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#create BdsAutoScalingConfiguration#create}
    */
    readonly create?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#delete BdsAutoScalingConfiguration#delete}
    */
    readonly delete?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#update BdsAutoScalingConfiguration#update}
    */
    readonly update?: string;
}
export declare function bdsAutoScalingConfigurationTimeoutsToTerraform(struct?: BdsAutoScalingConfigurationTimeouts | cdktf.IResolvable): any;
export declare function bdsAutoScalingConfigurationTimeoutsToHclTerraform(struct?: BdsAutoScalingConfigurationTimeouts | cdktf.IResolvable): any;
export declare class BdsAutoScalingConfigurationTimeoutsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    private resolvableValue?;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): BdsAutoScalingConfigurationTimeouts | cdktf.IResolvable | undefined;
    set internalValue(value: BdsAutoScalingConfigurationTimeouts | cdktf.IResolvable | undefined);
    private _create?;
    get create(): string;
    set create(value: string);
    resetCreate(): void;
    get createInput(): string | undefined;
    private _delete?;
    get delete(): string;
    set delete(value: string);
    resetDelete(): void;
    get deleteInput(): string | undefined;
    private _update?;
    get update(): string;
    set update(value: string);
    resetUpdate(): void;
    get updateInput(): string | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration oci_bds_auto_scaling_configuration}
*/
export declare class BdsAutoScalingConfiguration extends cdktf.TerraformResource {
    static readonly tfResourceType = "oci_bds_auto_scaling_configuration";
    /**
    * Generates CDKTF code for importing a BdsAutoScalingConfiguration resource upon running "cdktf plan <stack-name>"
    * @param scope The scope in which to define this construct
    * @param importToId The construct id used in the generated config for the BdsAutoScalingConfiguration to import
    * @param importFromId The id of the existing BdsAutoScalingConfiguration that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the BdsAutoScalingConfiguration to import is found
    */
    static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource;
    /**
    * Create a new {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/bds_auto_scaling_configuration oci_bds_auto_scaling_configuration} Resource
    *
    * @param scope The scope in which to define this construct
    * @param id The scoped construct ID. Must be unique amongst siblings in the same scope
    * @param options BdsAutoScalingConfigurationConfig
    */
    constructor(scope: Construct, id: string, config: BdsAutoScalingConfigurationConfig);
    private _bdsInstanceId?;
    get bdsInstanceId(): string;
    set bdsInstanceId(value: string);
    get bdsInstanceIdInput(): string | undefined;
    private _clusterAdminPassword?;
    get clusterAdminPassword(): string;
    set clusterAdminPassword(value: string);
    get clusterAdminPasswordInput(): string | undefined;
    private _displayName?;
    get displayName(): string;
    set displayName(value: string);
    resetDisplayName(): void;
    get displayNameInput(): string | undefined;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _isEnabled?;
    get isEnabled(): boolean | cdktf.IResolvable;
    set isEnabled(value: boolean | cdktf.IResolvable);
    get isEnabledInput(): boolean | cdktf.IResolvable | undefined;
    private _nodeType?;
    get nodeType(): string;
    set nodeType(value: string);
    get nodeTypeInput(): string | undefined;
    get state(): string;
    get timeCreated(): string;
    get timeUpdated(): string;
    private _policy;
    get policy(): BdsAutoScalingConfigurationPolicyOutputReference;
    putPolicy(value: BdsAutoScalingConfigurationPolicy): void;
    resetPolicy(): void;
    get policyInput(): BdsAutoScalingConfigurationPolicy | undefined;
    private _policyDetails;
    get policyDetails(): BdsAutoScalingConfigurationPolicyDetailsOutputReference;
    putPolicyDetails(value: BdsAutoScalingConfigurationPolicyDetails): void;
    resetPolicyDetails(): void;
    get policyDetailsInput(): BdsAutoScalingConfigurationPolicyDetails | undefined;
    private _timeouts;
    get timeouts(): BdsAutoScalingConfigurationTimeoutsOutputReference;
    putTimeouts(value: BdsAutoScalingConfigurationTimeouts): void;
    resetTimeouts(): void;
    get timeoutsInput(): cdktf.IResolvable | BdsAutoScalingConfigurationTimeouts | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}