import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataOciDisasterRecoveryDrProtectionGroupConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/disaster_recovery_dr_protection_group#dr_protection_group_id DataOciDisasterRecoveryDrProtectionGroup#dr_protection_group_id}
    */
    readonly drProtectionGroupId: string;
}
export interface DataOciDisasterRecoveryDrProtectionGroupAssociation {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupAssociationToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupAssociation): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupAssociationToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupAssociation): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupAssociationOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupAssociation | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupAssociation | undefined);
    get peerId(): string;
    get peerRegion(): string;
    get role(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupAssociationList 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): DataOciDisasterRecoveryDrProtectionGroupAssociationOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupLogLocation {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupLogLocationToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupLogLocation): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupLogLocationToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupLogLocation): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupLogLocationOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupLogLocation | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupLogLocation | undefined);
    get bucket(): string;
    get namespace(): string;
    get object(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupLogLocationList 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): DataOciDisasterRecoveryDrProtectionGroupLogLocationOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappings {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappingsToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappings): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappingsToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappings): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappingsOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappings | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappings | undefined);
    get destinationBackendSetName(): string;
    get isBackendSetForNonMovable(): cdktf.IResolvable;
    get sourceBackendSetName(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappingsList 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): DataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappingsOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetails {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetailsToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetails): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetailsToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetails): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetailsOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetails | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetails | undefined);
    get volumeAttachmentReferenceInstanceId(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetailsList 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): DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetailsOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetails {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetailsToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetails): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetailsToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetails): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetailsOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetails | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetails | undefined);
    get mountPoint(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetailsList 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): DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetailsOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperations {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperations): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperations): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperations | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperations | undefined);
    private _attachmentDetails;
    get attachmentDetails(): DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsAttachmentDetailsList;
    get blockVolumeId(): string;
    private _mountDetails;
    get mountDetails(): DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsMountDetailsList;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsList 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): DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersExportMappings {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersExportMappingsToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersExportMappings): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersExportMappingsToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersExportMappings): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersExportMappingsOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersExportMappings | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersExportMappings | undefined);
    get destinationMountTargetId(): string;
    get exportId(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersExportMappingsList 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): DataOciDisasterRecoveryDrProtectionGroupMembersExportMappingsOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetails {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetailsToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetails): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetailsToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetails): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetailsOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetails | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetails | undefined);
    get mountTargetId(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetailsList 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): DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetailsOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetails {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetailsToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetails): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetailsToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetails): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetailsOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetails | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetails | undefined);
    get mountTargetId(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetailsList 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): DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetailsOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperations {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperations): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperations): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperations | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperations | undefined);
    get exportPath(): string;
    private _mountDetails;
    get mountDetails(): DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsMountDetailsList;
    get mountPoint(): string;
    get mountTargetId(): string;
    private _unmountDetails;
    get unmountDetails(): DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsUnmountDetailsList;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsList 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): DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersVnicMapping {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersVnicMapping): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersVnicMapping): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersVnicMapping | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersVnicMapping | undefined);
    get destinationNsgIdList(): string[];
    get destinationSubnetId(): string;
    get sourceVnicId(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingList 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): DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappings {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingsToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappings): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingsToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappings): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingsOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappings | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappings | undefined);
    get destinationNsgIdList(): string[];
    get destinationPrimaryPrivateIpAddress(): string;
    get destinationPrimaryPrivateIpHostnameLabel(): string;
    get destinationSubnetId(): string;
    get sourceVnicId(): string;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingsList 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): DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingsOutputReference;
}
export interface DataOciDisasterRecoveryDrProtectionGroupMembers {
}
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersToTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembers): any;
export declare function dataOciDisasterRecoveryDrProtectionGroupMembersToHclTerraform(struct?: DataOciDisasterRecoveryDrProtectionGroupMembers): any;
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersOutputReference 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(): DataOciDisasterRecoveryDrProtectionGroupMembers | undefined;
    set internalValue(value: DataOciDisasterRecoveryDrProtectionGroupMembers | undefined);
    get autonomousDatabaseStandbyTypeForDrDrills(): string;
    private _backendSetMappings;
    get backendSetMappings(): DataOciDisasterRecoveryDrProtectionGroupMembersBackendSetMappingsList;
    private _blockVolumeOperations;
    get blockVolumeOperations(): DataOciDisasterRecoveryDrProtectionGroupMembersBlockVolumeOperationsList;
    get bucket(): string;
    get connectionStringType(): string;
    get destinationAvailabilityDomain(): string;
    get destinationCapacityReservationId(): string;
    get destinationCompartmentId(): string;
    get destinationDedicatedVmHostId(): string;
    get destinationLoadBalancerId(): string;
    get destinationNetworkLoadBalancerId(): string;
    private _exportMappings;
    get exportMappings(): DataOciDisasterRecoveryDrProtectionGroupMembersExportMappingsList;
    private _fileSystemOperations;
    get fileSystemOperations(): DataOciDisasterRecoveryDrProtectionGroupMembersFileSystemOperationsList;
    get isMovable(): cdktf.IResolvable;
    get isRetainFaultDomain(): cdktf.IResolvable;
    get isStartStopEnabled(): cdktf.IResolvable;
    get memberId(): string;
    get memberType(): string;
    get namespace(): string;
    get passwordVaultSecretId(): string;
    private _vnicMapping;
    get vnicMapping(): DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingList;
    private _vnicMappings;
    get vnicMappings(): DataOciDisasterRecoveryDrProtectionGroupMembersVnicMappingsList;
}
export declare class DataOciDisasterRecoveryDrProtectionGroupMembersList 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): DataOciDisasterRecoveryDrProtectionGroupMembersOutputReference;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/disaster_recovery_dr_protection_group oci_disaster_recovery_dr_protection_group}
*/
export declare class DataOciDisasterRecoveryDrProtectionGroup extends cdktf.TerraformDataSource {
    static readonly tfResourceType = "oci_disaster_recovery_dr_protection_group";
    /**
    * Generates CDKTF code for importing a DataOciDisasterRecoveryDrProtectionGroup 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 DataOciDisasterRecoveryDrProtectionGroup to import
    * @param importFromId The id of the existing DataOciDisasterRecoveryDrProtectionGroup that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/disaster_recovery_dr_protection_group#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataOciDisasterRecoveryDrProtectionGroup 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/disaster_recovery_dr_protection_group oci_disaster_recovery_dr_protection_group} 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 DataOciDisasterRecoveryDrProtectionGroupConfig
    */
    constructor(scope: Construct, id: string, config: DataOciDisasterRecoveryDrProtectionGroupConfig);
    private _association;
    get association(): DataOciDisasterRecoveryDrProtectionGroupAssociationList;
    get compartmentId(): string;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get disassociateTrigger(): number;
    get displayName(): string;
    private _drProtectionGroupId?;
    get drProtectionGroupId(): string;
    set drProtectionGroupId(value: string);
    get drProtectionGroupIdInput(): string | undefined;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get id(): string;
    get lifeCycleDetails(): string;
    get lifecycleSubState(): string;
    private _logLocation;
    get logLocation(): DataOciDisasterRecoveryDrProtectionGroupLogLocationList;
    private _members;
    get members(): DataOciDisasterRecoveryDrProtectionGroupMembersList;
    get peerId(): string;
    get peerRegion(): string;
    get role(): string;
    get state(): string;
    private _systemTags;
    get systemTags(): cdktf.StringMap;
    get timeCreated(): string;
    get timeUpdated(): string;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
