import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataOciDevopsDeployStageConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/devops_deploy_stage#deploy_stage_id DataOciDevopsDeployStage#deploy_stage_id}
    */
    readonly deployStageId: string;
}
export interface DataOciDevopsDeployStageApprovalPolicy {
}
export declare function dataOciDevopsDeployStageApprovalPolicyToTerraform(struct?: DataOciDevopsDeployStageApprovalPolicy): any;
export declare function dataOciDevopsDeployStageApprovalPolicyToHclTerraform(struct?: DataOciDevopsDeployStageApprovalPolicy): any;
export declare class DataOciDevopsDeployStageApprovalPolicyOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageApprovalPolicy | undefined;
    set internalValue(value: DataOciDevopsDeployStageApprovalPolicy | undefined);
    get approvalPolicyType(): string;
    get numberOfApprovalsRequired(): number;
}
export declare class DataOciDevopsDeployStageApprovalPolicyList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageApprovalPolicyOutputReference;
}
export interface DataOciDevopsDeployStageBlueBackendIps {
}
export declare function dataOciDevopsDeployStageBlueBackendIpsToTerraform(struct?: DataOciDevopsDeployStageBlueBackendIps): any;
export declare function dataOciDevopsDeployStageBlueBackendIpsToHclTerraform(struct?: DataOciDevopsDeployStageBlueBackendIps): any;
export declare class DataOciDevopsDeployStageBlueBackendIpsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageBlueBackendIps | undefined;
    set internalValue(value: DataOciDevopsDeployStageBlueBackendIps | undefined);
    get items(): string[];
}
export declare class DataOciDevopsDeployStageBlueBackendIpsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageBlueBackendIpsOutputReference;
}
export interface DataOciDevopsDeployStageBlueGreenStrategy {
}
export declare function dataOciDevopsDeployStageBlueGreenStrategyToTerraform(struct?: DataOciDevopsDeployStageBlueGreenStrategy): any;
export declare function dataOciDevopsDeployStageBlueGreenStrategyToHclTerraform(struct?: DataOciDevopsDeployStageBlueGreenStrategy): any;
export declare class DataOciDevopsDeployStageBlueGreenStrategyOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageBlueGreenStrategy | undefined;
    set internalValue(value: DataOciDevopsDeployStageBlueGreenStrategy | undefined);
    get ingressName(): string;
    get namespaceA(): string;
    get namespaceB(): string;
    get strategyType(): string;
}
export declare class DataOciDevopsDeployStageBlueGreenStrategyList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageBlueGreenStrategyOutputReference;
}
export interface DataOciDevopsDeployStageCanaryStrategy {
}
export declare function dataOciDevopsDeployStageCanaryStrategyToTerraform(struct?: DataOciDevopsDeployStageCanaryStrategy): any;
export declare function dataOciDevopsDeployStageCanaryStrategyToHclTerraform(struct?: DataOciDevopsDeployStageCanaryStrategy): any;
export declare class DataOciDevopsDeployStageCanaryStrategyOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageCanaryStrategy | undefined;
    set internalValue(value: DataOciDevopsDeployStageCanaryStrategy | undefined);
    get ingressName(): string;
    get namespace(): string;
    get strategyType(): string;
}
export declare class DataOciDevopsDeployStageCanaryStrategyList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageCanaryStrategyOutputReference;
}
export interface DataOciDevopsDeployStageContainerConfigNetworkChannel {
}
export declare function dataOciDevopsDeployStageContainerConfigNetworkChannelToTerraform(struct?: DataOciDevopsDeployStageContainerConfigNetworkChannel): any;
export declare function dataOciDevopsDeployStageContainerConfigNetworkChannelToHclTerraform(struct?: DataOciDevopsDeployStageContainerConfigNetworkChannel): any;
export declare class DataOciDevopsDeployStageContainerConfigNetworkChannelOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageContainerConfigNetworkChannel | undefined;
    set internalValue(value: DataOciDevopsDeployStageContainerConfigNetworkChannel | undefined);
    get networkChannelType(): string;
    get nsgIds(): string[];
    get subnetId(): string;
}
export declare class DataOciDevopsDeployStageContainerConfigNetworkChannelList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageContainerConfigNetworkChannelOutputReference;
}
export interface DataOciDevopsDeployStageContainerConfigShapeConfig {
}
export declare function dataOciDevopsDeployStageContainerConfigShapeConfigToTerraform(struct?: DataOciDevopsDeployStageContainerConfigShapeConfig): any;
export declare function dataOciDevopsDeployStageContainerConfigShapeConfigToHclTerraform(struct?: DataOciDevopsDeployStageContainerConfigShapeConfig): any;
export declare class DataOciDevopsDeployStageContainerConfigShapeConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageContainerConfigShapeConfig | undefined;
    set internalValue(value: DataOciDevopsDeployStageContainerConfigShapeConfig | undefined);
    get memoryInGbs(): number;
    get ocpus(): number;
}
export declare class DataOciDevopsDeployStageContainerConfigShapeConfigList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageContainerConfigShapeConfigOutputReference;
}
export interface DataOciDevopsDeployStageContainerConfig {
}
export declare function dataOciDevopsDeployStageContainerConfigToTerraform(struct?: DataOciDevopsDeployStageContainerConfig): any;
export declare function dataOciDevopsDeployStageContainerConfigToHclTerraform(struct?: DataOciDevopsDeployStageContainerConfig): any;
export declare class DataOciDevopsDeployStageContainerConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageContainerConfig | undefined;
    set internalValue(value: DataOciDevopsDeployStageContainerConfig | undefined);
    get availabilityDomain(): string;
    get compartmentId(): string;
    get containerConfigType(): string;
    private _networkChannel;
    get networkChannel(): DataOciDevopsDeployStageContainerConfigNetworkChannelList;
    private _shapeConfig;
    get shapeConfig(): DataOciDevopsDeployStageContainerConfigShapeConfigList;
    get shapeName(): string;
}
export declare class DataOciDevopsDeployStageContainerConfigList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageContainerConfigOutputReference;
}
export interface DataOciDevopsDeployStageDeployStagePredecessorCollectionItems {
}
export declare function dataOciDevopsDeployStageDeployStagePredecessorCollectionItemsToTerraform(struct?: DataOciDevopsDeployStageDeployStagePredecessorCollectionItems): any;
export declare function dataOciDevopsDeployStageDeployStagePredecessorCollectionItemsToHclTerraform(struct?: DataOciDevopsDeployStageDeployStagePredecessorCollectionItems): any;
export declare class DataOciDevopsDeployStageDeployStagePredecessorCollectionItemsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageDeployStagePredecessorCollectionItems | undefined;
    set internalValue(value: DataOciDevopsDeployStageDeployStagePredecessorCollectionItems | undefined);
    get id(): string;
}
export declare class DataOciDevopsDeployStageDeployStagePredecessorCollectionItemsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageDeployStagePredecessorCollectionItemsOutputReference;
}
export interface DataOciDevopsDeployStageDeployStagePredecessorCollection {
}
export declare function dataOciDevopsDeployStageDeployStagePredecessorCollectionToTerraform(struct?: DataOciDevopsDeployStageDeployStagePredecessorCollection): any;
export declare function dataOciDevopsDeployStageDeployStagePredecessorCollectionToHclTerraform(struct?: DataOciDevopsDeployStageDeployStagePredecessorCollection): any;
export declare class DataOciDevopsDeployStageDeployStagePredecessorCollectionOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageDeployStagePredecessorCollection | undefined;
    set internalValue(value: DataOciDevopsDeployStageDeployStagePredecessorCollection | undefined);
    private _items;
    get items(): DataOciDevopsDeployStageDeployStagePredecessorCollectionItemsList;
}
export declare class DataOciDevopsDeployStageDeployStagePredecessorCollectionList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageDeployStagePredecessorCollectionOutputReference;
}
export interface DataOciDevopsDeployStageFailurePolicy {
}
export declare function dataOciDevopsDeployStageFailurePolicyToTerraform(struct?: DataOciDevopsDeployStageFailurePolicy): any;
export declare function dataOciDevopsDeployStageFailurePolicyToHclTerraform(struct?: DataOciDevopsDeployStageFailurePolicy): any;
export declare class DataOciDevopsDeployStageFailurePolicyOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageFailurePolicy | undefined;
    set internalValue(value: DataOciDevopsDeployStageFailurePolicy | undefined);
    get failureCount(): number;
    get failurePercentage(): number;
    get policyType(): string;
}
export declare class DataOciDevopsDeployStageFailurePolicyList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageFailurePolicyOutputReference;
}
export interface DataOciDevopsDeployStageGreenBackendIps {
}
export declare function dataOciDevopsDeployStageGreenBackendIpsToTerraform(struct?: DataOciDevopsDeployStageGreenBackendIps): any;
export declare function dataOciDevopsDeployStageGreenBackendIpsToHclTerraform(struct?: DataOciDevopsDeployStageGreenBackendIps): any;
export declare class DataOciDevopsDeployStageGreenBackendIpsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageGreenBackendIps | undefined;
    set internalValue(value: DataOciDevopsDeployStageGreenBackendIps | undefined);
    get items(): string[];
}
export declare class DataOciDevopsDeployStageGreenBackendIpsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageGreenBackendIpsOutputReference;
}
export interface DataOciDevopsDeployStageLoadBalancerConfig {
}
export declare function dataOciDevopsDeployStageLoadBalancerConfigToTerraform(struct?: DataOciDevopsDeployStageLoadBalancerConfig): any;
export declare function dataOciDevopsDeployStageLoadBalancerConfigToHclTerraform(struct?: DataOciDevopsDeployStageLoadBalancerConfig): any;
export declare class DataOciDevopsDeployStageLoadBalancerConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageLoadBalancerConfig | undefined;
    set internalValue(value: DataOciDevopsDeployStageLoadBalancerConfig | undefined);
    get backendPort(): number;
    get listenerName(): string;
    get loadBalancerId(): string;
    get state(): string;
}
export declare class DataOciDevopsDeployStageLoadBalancerConfigList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageLoadBalancerConfigOutputReference;
}
export interface DataOciDevopsDeployStageProductionLoadBalancerConfig {
}
export declare function dataOciDevopsDeployStageProductionLoadBalancerConfigToTerraform(struct?: DataOciDevopsDeployStageProductionLoadBalancerConfig): any;
export declare function dataOciDevopsDeployStageProductionLoadBalancerConfigToHclTerraform(struct?: DataOciDevopsDeployStageProductionLoadBalancerConfig): any;
export declare class DataOciDevopsDeployStageProductionLoadBalancerConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageProductionLoadBalancerConfig | undefined;
    set internalValue(value: DataOciDevopsDeployStageProductionLoadBalancerConfig | undefined);
    get backendPort(): number;
    get listenerName(): string;
    get loadBalancerId(): string;
    get state(): string;
}
export declare class DataOciDevopsDeployStageProductionLoadBalancerConfigList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageProductionLoadBalancerConfigOutputReference;
}
export interface DataOciDevopsDeployStageRollbackPolicy {
}
export declare function dataOciDevopsDeployStageRollbackPolicyToTerraform(struct?: DataOciDevopsDeployStageRollbackPolicy): any;
export declare function dataOciDevopsDeployStageRollbackPolicyToHclTerraform(struct?: DataOciDevopsDeployStageRollbackPolicy): any;
export declare class DataOciDevopsDeployStageRollbackPolicyOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageRollbackPolicy | undefined;
    set internalValue(value: DataOciDevopsDeployStageRollbackPolicy | undefined);
    get policyType(): string;
}
export declare class DataOciDevopsDeployStageRollbackPolicyList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageRollbackPolicyOutputReference;
}
export interface DataOciDevopsDeployStageRolloutPolicy {
}
export declare function dataOciDevopsDeployStageRolloutPolicyToTerraform(struct?: DataOciDevopsDeployStageRolloutPolicy): any;
export declare function dataOciDevopsDeployStageRolloutPolicyToHclTerraform(struct?: DataOciDevopsDeployStageRolloutPolicy): any;
export declare class DataOciDevopsDeployStageRolloutPolicyOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageRolloutPolicy | undefined;
    set internalValue(value: DataOciDevopsDeployStageRolloutPolicy | undefined);
    get batchCount(): number;
    get batchDelayInSeconds(): number;
    get batchPercentage(): number;
    get policyType(): string;
    get rampLimitPercent(): number;
}
export declare class DataOciDevopsDeployStageRolloutPolicyList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageRolloutPolicyOutputReference;
}
export interface DataOciDevopsDeployStageSetStringItems {
}
export declare function dataOciDevopsDeployStageSetStringItemsToTerraform(struct?: DataOciDevopsDeployStageSetStringItems): any;
export declare function dataOciDevopsDeployStageSetStringItemsToHclTerraform(struct?: DataOciDevopsDeployStageSetStringItems): any;
export declare class DataOciDevopsDeployStageSetStringItemsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageSetStringItems | undefined;
    set internalValue(value: DataOciDevopsDeployStageSetStringItems | undefined);
    get name(): string;
    get value(): string;
}
export declare class DataOciDevopsDeployStageSetStringItemsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageSetStringItemsOutputReference;
}
export interface DataOciDevopsDeployStageSetString {
}
export declare function dataOciDevopsDeployStageSetStringToTerraform(struct?: DataOciDevopsDeployStageSetString): any;
export declare function dataOciDevopsDeployStageSetStringToHclTerraform(struct?: DataOciDevopsDeployStageSetString): any;
export declare class DataOciDevopsDeployStageSetStringOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageSetString | undefined;
    set internalValue(value: DataOciDevopsDeployStageSetString | undefined);
    private _items;
    get items(): DataOciDevopsDeployStageSetStringItemsList;
}
export declare class DataOciDevopsDeployStageSetStringList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageSetStringOutputReference;
}
export interface DataOciDevopsDeployStageSetValuesItems {
}
export declare function dataOciDevopsDeployStageSetValuesItemsToTerraform(struct?: DataOciDevopsDeployStageSetValuesItems): any;
export declare function dataOciDevopsDeployStageSetValuesItemsToHclTerraform(struct?: DataOciDevopsDeployStageSetValuesItems): any;
export declare class DataOciDevopsDeployStageSetValuesItemsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageSetValuesItems | undefined;
    set internalValue(value: DataOciDevopsDeployStageSetValuesItems | undefined);
    get name(): string;
    get value(): string;
}
export declare class DataOciDevopsDeployStageSetValuesItemsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageSetValuesItemsOutputReference;
}
export interface DataOciDevopsDeployStageSetValues {
}
export declare function dataOciDevopsDeployStageSetValuesToTerraform(struct?: DataOciDevopsDeployStageSetValues): any;
export declare function dataOciDevopsDeployStageSetValuesToHclTerraform(struct?: DataOciDevopsDeployStageSetValues): any;
export declare class DataOciDevopsDeployStageSetValuesOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageSetValues | undefined;
    set internalValue(value: DataOciDevopsDeployStageSetValues | undefined);
    private _items;
    get items(): DataOciDevopsDeployStageSetValuesItemsList;
}
export declare class DataOciDevopsDeployStageSetValuesList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageSetValuesOutputReference;
}
export interface DataOciDevopsDeployStageTestLoadBalancerConfig {
}
export declare function dataOciDevopsDeployStageTestLoadBalancerConfigToTerraform(struct?: DataOciDevopsDeployStageTestLoadBalancerConfig): any;
export declare function dataOciDevopsDeployStageTestLoadBalancerConfigToHclTerraform(struct?: DataOciDevopsDeployStageTestLoadBalancerConfig): any;
export declare class DataOciDevopsDeployStageTestLoadBalancerConfigOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageTestLoadBalancerConfig | undefined;
    set internalValue(value: DataOciDevopsDeployStageTestLoadBalancerConfig | undefined);
    get backendPort(): number;
    get listenerName(): string;
    get loadBalancerId(): string;
    get state(): string;
}
export declare class DataOciDevopsDeployStageTestLoadBalancerConfigList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageTestLoadBalancerConfigOutputReference;
}
export interface DataOciDevopsDeployStageWaitCriteria {
}
export declare function dataOciDevopsDeployStageWaitCriteriaToTerraform(struct?: DataOciDevopsDeployStageWaitCriteria): any;
export declare function dataOciDevopsDeployStageWaitCriteriaToHclTerraform(struct?: DataOciDevopsDeployStageWaitCriteria): any;
export declare class DataOciDevopsDeployStageWaitCriteriaOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @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(): DataOciDevopsDeployStageWaitCriteria | undefined;
    set internalValue(value: DataOciDevopsDeployStageWaitCriteria | undefined);
    get waitDuration(): string;
    get waitType(): string;
}
export declare class DataOciDevopsDeployStageWaitCriteriaList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    /**
    * @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): DataOciDevopsDeployStageWaitCriteriaOutputReference;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/devops_deploy_stage oci_devops_deploy_stage}
*/
export declare class DataOciDevopsDeployStage extends cdktf.TerraformDataSource {
    static readonly tfResourceType = "oci_devops_deploy_stage";
    /**
    * Generates CDKTF code for importing a DataOciDevopsDeployStage 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 DataOciDevopsDeployStage to import
    * @param importFromId The id of the existing DataOciDevopsDeployStage that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/devops_deploy_stage#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataOciDevopsDeployStage 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/data-sources/devops_deploy_stage oci_devops_deploy_stage} Data Source
    *
    * @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 DataOciDevopsDeployStageConfig
    */
    constructor(scope: Construct, id: string, config: DataOciDevopsDeployStageConfig);
    private _approvalPolicy;
    get approvalPolicy(): DataOciDevopsDeployStageApprovalPolicyList;
    get areHooksEnabled(): cdktf.IResolvable;
    private _blueBackendIps;
    get blueBackendIps(): DataOciDevopsDeployStageBlueBackendIpsList;
    private _blueGreenStrategy;
    get blueGreenStrategy(): DataOciDevopsDeployStageBlueGreenStrategyList;
    private _canaryStrategy;
    get canaryStrategy(): DataOciDevopsDeployStageCanaryStrategyList;
    get commandSpecDeployArtifactId(): string;
    get compartmentId(): string;
    get computeInstanceGroupBlueGreenDeploymentDeployStageId(): string;
    get computeInstanceGroupCanaryDeployStageId(): string;
    get computeInstanceGroupCanaryTrafficShiftDeployStageId(): string;
    get computeInstanceGroupDeployEnvironmentId(): string;
    private _config;
    get config(): cdktf.StringMap;
    private _containerConfig;
    get containerConfig(): DataOciDevopsDeployStageContainerConfigList;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get deployArtifactId(): string;
    get deployArtifactIds(): string[];
    get deployEnvironmentIdA(): string;
    get deployEnvironmentIdB(): string;
    get deployPipelineId(): string;
    private _deployStageId?;
    get deployStageId(): string;
    set deployStageId(value: string);
    get deployStageIdInput(): string | undefined;
    private _deployStagePredecessorCollection;
    get deployStagePredecessorCollection(): DataOciDevopsDeployStageDeployStagePredecessorCollectionList;
    get deployStageType(): string;
    get deploymentSpecDeployArtifactId(): string;
    get description(): string;
    get displayName(): string;
    get dockerImageDeployArtifactId(): string;
    private _failurePolicy;
    get failurePolicy(): DataOciDevopsDeployStageFailurePolicyList;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get functionDeployEnvironmentId(): string;
    get functionTimeoutInSeconds(): number;
    private _greenBackendIps;
    get greenBackendIps(): DataOciDevopsDeployStageGreenBackendIpsList;
    get helmChartDeployArtifactId(): string;
    get helmCommandArtifactIds(): string[];
    get id(): string;
    get isAsync(): cdktf.IResolvable;
    get isDebugEnabled(): cdktf.IResolvable;
    get isForceEnabled(): cdktf.IResolvable;
    get isUninstallOnStageDelete(): cdktf.IResolvable;
    get isValidationEnabled(): cdktf.IResolvable;
    get kubernetesManifestDeployArtifactIds(): string[];
    get lifecycleDetails(): string;
    private _loadBalancerConfig;
    get loadBalancerConfig(): DataOciDevopsDeployStageLoadBalancerConfigList;
    get maxHistory(): number;
    get maxMemoryInMbs(): string;
    get namespace(): string;
    get okeBlueGreenDeployStageId(): string;
    get okeCanaryDeployStageId(): string;
    get okeCanaryTrafficShiftDeployStageId(): string;
    get okeClusterDeployEnvironmentId(): string;
    private _productionLoadBalancerConfig;
    get productionLoadBalancerConfig(): DataOciDevopsDeployStageProductionLoadBalancerConfigList;
    get projectId(): string;
    get purpose(): string;
    get releaseName(): string;
    private _rollbackPolicy;
    get rollbackPolicy(): DataOciDevopsDeployStageRollbackPolicyList;
    private _rolloutPolicy;
    get rolloutPolicy(): DataOciDevopsDeployStageRolloutPolicyList;
    private _setString;
    get setString(): DataOciDevopsDeployStageSetStringList;
    private _setValues;
    get setValues(): DataOciDevopsDeployStageSetValuesList;
    get shouldCleanupOnFail(): cdktf.IResolvable;
    get shouldNotWait(): cdktf.IResolvable;
    get shouldResetValues(): cdktf.IResolvable;
    get shouldReuseValues(): cdktf.IResolvable;
    get shouldSkipCrds(): cdktf.IResolvable;
    get shouldSkipRenderSubchartNotes(): cdktf.IResolvable;
    get state(): string;
    private _systemTags;
    get systemTags(): cdktf.StringMap;
    private _testLoadBalancerConfig;
    get testLoadBalancerConfig(): DataOciDevopsDeployStageTestLoadBalancerConfigList;
    get timeCreated(): string;
    get timeUpdated(): string;
    get timeoutInSeconds(): number;
    get trafficShiftTarget(): string;
    get valuesArtifactIds(): string[];
    private _waitCriteria;
    get waitCriteria(): DataOciDevopsDeployStageWaitCriteriaList;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
