import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataOciCoreInstanceConfigurationsConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configurations#compartment_id DataOciCoreInstanceConfigurations#compartment_id}
    */
    readonly compartmentId: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configurations#id DataOciCoreInstanceConfigurations#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;
    /**
    * filter block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configurations#filter DataOciCoreInstanceConfigurations#filter}
    */
    readonly filter?: DataOciCoreInstanceConfigurationsFilter[] | cdktf.IResolvable;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetails | undefined);
    get device(): string;
    get displayName(): string;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get isReadOnly(): cdktf.IResolvable;
    get isShareable(): cdktf.IResolvable;
    get type(): string;
    get useChap(): cdktf.IResolvable;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies | undefined);
    get autotuneType(): string;
    get maxVpusPerGb(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas | undefined);
    get availabilityDomain(): string;
    get displayName(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetails | undefined);
    get id(): string;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetails | undefined);
    private _autotunePolicies;
    get autotunePolicies(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesList;
    get availabilityDomain(): string;
    get backupPolicyId(): string;
    private _blockVolumeReplicas;
    get blockVolumeReplicas(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasList;
    get clusterPlacementGroupId(): string;
    get compartmentId(): string;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get isAutoTuneEnabled(): cdktf.IResolvable;
    get kmsKeyId(): string;
    get sizeInGbs(): string;
    private _sourceDetails;
    get sourceDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsSourceDetailsList;
    get vpusPerGb(): string;
    get xrcKmsKeyId(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumes {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumes): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumes): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumes | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumes | undefined);
    private _attachDetails;
    get attachDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesAttachDetailsList;
    private _createDetails;
    get createDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesCreateDetailsList;
    get volumeId(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfig | undefined);
    get desiredState(): string;
    get name(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfig | undefined);
    get areAllPluginsDisabled(): cdktf.IResolvable;
    get isManagementDisabled(): cdktf.IResolvable;
    get isMonitoringDisabled(): cdktf.IResolvable;
    private _pluginsConfig;
    get pluginsConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigPluginsConfigList;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfig | undefined);
    get isLiveMigrationPreferred(): cdktf.IResolvable;
    get recoveryAction(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined);
    get ipv6Address(): string;
    get ipv6SubnetCidr(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetails | undefined);
    get assignIpv6Ip(): cdktf.IResolvable;
    get assignPrivateDnsRecord(): cdktf.IResolvable;
    get assignPublicIp(): cdktf.IResolvable;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get hostnameLabel(): string;
    private _ipv6AddressIpv6SubnetCidrPairDetails;
    get ipv6AddressIpv6SubnetCidrPairDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList;
    get nsgIds(): string[];
    get privateIp(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get skipSourceDestCheck(): cdktf.IResolvable;
    get subnetId(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptions {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptions): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptions): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptionsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptions | undefined);
    get areLegacyImdsEndpointsDisabled(): cdktf.IResolvable;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptionsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptions {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptions): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptions): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptionsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptions | undefined);
    get bootVolumeType(): string;
    get firmware(): string;
    get isConsistentVolumeNamingEnabled(): cdktf.IResolvable;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get networkType(): string;
    get remoteDataVolumeType(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptionsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfig | undefined);
    get areVirtualInstructionsEnabled(): cdktf.IResolvable;
    private _configMap;
    get configMap(): cdktf.StringMap;
    get isAccessControlServiceEnabled(): cdktf.IResolvable;
    get isInputOutputMemoryManagementUnitEnabled(): cdktf.IResolvable;
    get isMeasuredBootEnabled(): cdktf.IResolvable;
    get isMemoryEncryptionEnabled(): cdktf.IResolvable;
    get isSecureBootEnabled(): cdktf.IResolvable;
    get isSymmetricMultiThreadingEnabled(): cdktf.IResolvable;
    get isTrustedPlatformModuleEnabled(): cdktf.IResolvable;
    get numaNodesPerSocket(): string;
    get percentageOfCoresEnabled(): number;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction | undefined);
    get preserveBootVolume(): cdktf.IResolvable;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfig | undefined);
    private _preemptionAction;
    get preemptionAction(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionList;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfig | undefined);
    get baselineOcpuUtilization(): string;
    get memoryInGbs(): number;
    get nvmes(): number;
    get ocpus(): number;
    get vcpus(): number;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails | undefined);
    get compartmentId(): string;
    private _definedTagsFilter;
    get definedTagsFilter(): cdktf.StringMap;
    get operatingSystem(): string;
    get operatingSystemVersion(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetails | undefined);
    get bootVolumeId(): string;
    get bootVolumeSizeInGbs(): string;
    get bootVolumeVpusPerGb(): string;
    get imageId(): string;
    private _instanceSourceImageFilterDetails;
    get instanceSourceImageFilterDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsList;
    get kmsKeyId(): string;
    get sourceType(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetails | undefined);
    private _agentConfig;
    get agentConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAgentConfigList;
    private _availabilityConfig;
    get availabilityConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsAvailabilityConfigList;
    get availabilityDomain(): string;
    get capacityReservationId(): string;
    get clusterPlacementGroupId(): string;
    get compartmentId(): string;
    private _createVnicDetails;
    get createVnicDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsCreateVnicDetailsList;
    get dedicatedVmHostId(): string;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    private _extendedMetadata;
    get extendedMetadata(): cdktf.StringMap;
    get faultDomain(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    private _instanceOptions;
    get instanceOptions(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsInstanceOptionsList;
    get ipxeScript(): string;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get launchMode(): string;
    private _launchOptions;
    get launchOptions(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsLaunchOptionsList;
    private _metadata;
    get metadata(): cdktf.StringMap;
    private _platformConfig;
    get platformConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPlatformConfigList;
    private _preemptibleInstanceConfig;
    get preemptibleInstanceConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsPreemptibleInstanceConfigList;
    get preferredMaintenanceAction(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get shape(): string;
    private _shapeConfig;
    get shapeConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsShapeConfigList;
    private _sourceDetails;
    get sourceDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsSourceDetailsList;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetails | undefined);
    get device(): string;
    get displayName(): string;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get isReadOnly(): cdktf.IResolvable;
    get isShareable(): cdktf.IResolvable;
    get type(): string;
    get useChap(): cdktf.IResolvable;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies | undefined);
    get autotuneType(): string;
    get maxVpusPerGb(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas | undefined);
    get availabilityDomain(): string;
    get displayName(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails | undefined);
    get id(): string;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetails | undefined);
    private _autotunePolicies;
    get autotunePolicies(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesList;
    get availabilityDomain(): string;
    get backupPolicyId(): string;
    private _blockVolumeReplicas;
    get blockVolumeReplicas(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasList;
    get clusterPlacementGroupId(): string;
    get compartmentId(): string;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get isAutoTuneEnabled(): cdktf.IResolvable;
    get kmsKeyId(): string;
    get sizeInGbs(): string;
    private _sourceDetails;
    get sourceDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsList;
    get vpusPerGb(): string;
    get xrcKmsKeyId(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumes {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumes): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumes): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumes | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumes | undefined);
    private _attachDetails;
    get attachDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesAttachDetailsList;
    private _createDetails;
    get createDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesCreateDetailsList;
    get volumeId(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig | undefined);
    get desiredState(): string;
    get name(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfig | undefined);
    get areAllPluginsDisabled(): cdktf.IResolvable;
    get isManagementDisabled(): cdktf.IResolvable;
    get isMonitoringDisabled(): cdktf.IResolvable;
    private _pluginsConfig;
    get pluginsConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigList;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfig | undefined);
    get isLiveMigrationPreferred(): cdktf.IResolvable;
    get recoveryAction(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined);
    get ipv6Address(): string;
    get ipv6SubnetCidr(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetails | undefined);
    get assignIpv6Ip(): cdktf.IResolvable;
    get assignPrivateDnsRecord(): cdktf.IResolvable;
    get assignPublicIp(): cdktf.IResolvable;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get hostnameLabel(): string;
    private _ipv6AddressIpv6SubnetCidrPairDetails;
    get ipv6AddressIpv6SubnetCidrPairDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList;
    get nsgIds(): string[];
    get privateIp(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get skipSourceDestCheck(): cdktf.IResolvable;
    get subnetId(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptions {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptions): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptions): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptionsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptions | undefined);
    get areLegacyImdsEndpointsDisabled(): cdktf.IResolvable;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptionsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptions {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptions): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptions): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptionsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptions | undefined);
    get bootVolumeType(): string;
    get firmware(): string;
    get isConsistentVolumeNamingEnabled(): cdktf.IResolvable;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get networkType(): string;
    get remoteDataVolumeType(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptionsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfig | undefined);
    get areVirtualInstructionsEnabled(): cdktf.IResolvable;
    get isAccessControlServiceEnabled(): cdktf.IResolvable;
    get isInputOutputMemoryManagementUnitEnabled(): cdktf.IResolvable;
    get isMeasuredBootEnabled(): cdktf.IResolvable;
    get isMemoryEncryptionEnabled(): cdktf.IResolvable;
    get isSecureBootEnabled(): cdktf.IResolvable;
    get isSymmetricMultiThreadingEnabled(): cdktf.IResolvable;
    get isTrustedPlatformModuleEnabled(): cdktf.IResolvable;
    get numaNodesPerSocket(): string;
    get percentageOfCoresEnabled(): number;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction | undefined);
    get preserveBootVolume(): cdktf.IResolvable;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig | undefined);
    private _preemptionAction;
    get preemptionAction(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionList;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfig {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfigToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfig): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfig): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfigOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfig | undefined);
    get baselineOcpuUtilization(): string;
    get memoryInGbs(): number;
    get nvmes(): number;
    get ocpus(): number;
    get vcpus(): number;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfigList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails | undefined);
    get compartmentId(): string;
    private _definedTagsFilter;
    get definedTagsFilter(): cdktf.StringMap;
    get operatingSystem(): string;
    get operatingSystemVersion(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetails | undefined);
    get bootVolumeId(): string;
    get bootVolumeSizeInGbs(): string;
    get bootVolumeVpusPerGb(): string;
    get imageId(): string;
    private _instanceSourceImageFilterDetails;
    get instanceSourceImageFilterDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsList;
    get kmsKeyId(): string;
    get sourceType(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetails | undefined);
    private _agentConfig;
    get agentConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAgentConfigList;
    private _availabilityConfig;
    get availabilityConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsAvailabilityConfigList;
    get availabilityDomain(): string;
    get capacityReservationId(): string;
    get clusterPlacementGroupId(): string;
    get compartmentId(): string;
    private _createVnicDetails;
    get createVnicDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsList;
    get dedicatedVmHostId(): string;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    private _extendedMetadata;
    get extendedMetadata(): cdktf.StringMap;
    get faultDomain(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    private _instanceOptions;
    get instanceOptions(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsInstanceOptionsList;
    get ipxeScript(): string;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get launchMode(): string;
    private _launchOptions;
    get launchOptions(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsLaunchOptionsList;
    private _metadata;
    get metadata(): cdktf.StringMap;
    private _platformConfig;
    get platformConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPlatformConfigList;
    private _preemptibleInstanceConfig;
    get preemptibleInstanceConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigList;
    get preferredMaintenanceAction(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get shape(): string;
    private _shapeConfig;
    get shapeConfig(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsShapeConfigList;
    private _sourceDetails;
    get sourceDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsSourceDetailsList;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined);
    get ipv6Address(): string;
    get ipv6SubnetCidr(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails | undefined);
    get assignIpv6Ip(): cdktf.IResolvable;
    get assignPrivateDnsRecord(): cdktf.IResolvable;
    get assignPublicIp(): cdktf.IResolvable;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get hostnameLabel(): string;
    private _ipv6AddressIpv6SubnetCidrPairDetails;
    get ipv6AddressIpv6SubnetCidrPairDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList;
    get nsgIds(): string[];
    get privateIp(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get skipSourceDestCheck(): cdktf.IResolvable;
    get subnetId(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnics {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnics): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnics): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnics | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnics | undefined);
    private _createVnicDetails;
    get createVnicDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsList;
    get displayName(): string;
    get nicIndex(): number;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptions {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptions): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptions): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptions | undefined);
    private _blockVolumes;
    get blockVolumes(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsBlockVolumesList;
    private _launchDetails;
    get launchDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsLaunchDetailsList;
    private _secondaryVnics;
    get secondaryVnics(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsSecondaryVnicsList;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined);
    get ipv6Address(): string;
    get ipv6SubnetCidr(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetails | undefined);
    get assignIpv6Ip(): cdktf.IResolvable;
    get assignPrivateDnsRecord(): cdktf.IResolvable;
    get assignPublicIp(): cdktf.IResolvable;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get hostnameLabel(): string;
    private _ipv6AddressIpv6SubnetCidrPairDetails;
    get ipv6AddressIpv6SubnetCidrPairDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList;
    get nsgIds(): string[];
    get privateIp(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get skipSourceDestCheck(): cdktf.IResolvable;
    get subnetId(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnics {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnics): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnics): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnics | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnics | undefined);
    private _createVnicDetails;
    get createVnicDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsCreateVnicDetailsList;
    get displayName(): string;
    get nicIndex(): number;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetails {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetails): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetails): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetails | undefined);
    private _blockVolumes;
    get blockVolumes(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsBlockVolumesList;
    get instanceType(): string;
    private _launchDetails;
    get launchDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsLaunchDetailsList;
    private _options;
    get options(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOptionsList;
    private _secondaryVnics;
    get secondaryVnics(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsSecondaryVnicsList;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsInstanceConfigurations {
}
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsToTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurations): any;
export declare function dataOciCoreInstanceConfigurationsInstanceConfigurationsToHclTerraform(struct?: DataOciCoreInstanceConfigurationsInstanceConfigurations): any;
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsOutputReference 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(): DataOciCoreInstanceConfigurationsInstanceConfigurations | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsInstanceConfigurations | undefined);
    get compartmentId(): string;
    get deferredFields(): string[];
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    get displayName(): string;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get id(): string;
    private _instanceDetails;
    get instanceDetails(): DataOciCoreInstanceConfigurationsInstanceConfigurationsInstanceDetailsList;
    get instanceId(): string;
    get source(): string;
    get timeCreated(): string;
}
export declare class DataOciCoreInstanceConfigurationsInstanceConfigurationsList 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): DataOciCoreInstanceConfigurationsInstanceConfigurationsOutputReference;
}
export interface DataOciCoreInstanceConfigurationsFilter {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configurations#name DataOciCoreInstanceConfigurations#name}
    */
    readonly name: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configurations#regex DataOciCoreInstanceConfigurations#regex}
    */
    readonly regex?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configurations#values DataOciCoreInstanceConfigurations#values}
    */
    readonly values: string[];
}
export declare function dataOciCoreInstanceConfigurationsFilterToTerraform(struct?: DataOciCoreInstanceConfigurationsFilter | cdktf.IResolvable): any;
export declare function dataOciCoreInstanceConfigurationsFilterToHclTerraform(struct?: DataOciCoreInstanceConfigurationsFilter | cdktf.IResolvable): any;
export declare class DataOciCoreInstanceConfigurationsFilterOutputReference 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(): DataOciCoreInstanceConfigurationsFilter | cdktf.IResolvable | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationsFilter | cdktf.IResolvable | undefined);
    private _name?;
    get name(): string;
    set name(value: string);
    get nameInput(): string | undefined;
    private _regex?;
    get regex(): boolean | cdktf.IResolvable;
    set regex(value: boolean | cdktf.IResolvable);
    resetRegex(): void;
    get regexInput(): boolean | cdktf.IResolvable | undefined;
    private _values?;
    get values(): string[];
    set values(value: string[]);
    get valuesInput(): string[] | undefined;
}
export declare class DataOciCoreInstanceConfigurationsFilterList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: DataOciCoreInstanceConfigurationsFilter[] | 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): DataOciCoreInstanceConfigurationsFilterOutputReference;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configurations oci_core_instance_configurations}
*/
export declare class DataOciCoreInstanceConfigurations extends cdktf.TerraformDataSource {
    static readonly tfResourceType = "oci_core_instance_configurations";
    /**
    * Generates CDKTF code for importing a DataOciCoreInstanceConfigurations 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 DataOciCoreInstanceConfigurations to import
    * @param importFromId The id of the existing DataOciCoreInstanceConfigurations that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configurations#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataOciCoreInstanceConfigurations 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/core_instance_configurations oci_core_instance_configurations} 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 DataOciCoreInstanceConfigurationsConfig
    */
    constructor(scope: Construct, id: string, config: DataOciCoreInstanceConfigurationsConfig);
    private _compartmentId?;
    get compartmentId(): string;
    set compartmentId(value: string);
    get compartmentIdInput(): string | undefined;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _instanceConfigurations;
    get instanceConfigurations(): DataOciCoreInstanceConfigurationsInstanceConfigurationsList;
    private _filter;
    get filter(): DataOciCoreInstanceConfigurationsFilterList;
    putFilter(value: DataOciCoreInstanceConfigurationsFilter[] | cdktf.IResolvable): void;
    resetFilter(): void;
    get filterInput(): cdktf.IResolvable | DataOciCoreInstanceConfigurationsFilter[] | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
