import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataOciCoreInstanceConfigurationConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configuration#instance_configuration_id DataOciCoreInstanceConfiguration#instance_configuration_id}
    */
    readonly instanceConfigurationId: string;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetails | 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 DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePolicies | undefined);
    get autotuneType(): string;
    get maxVpusPerGb(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesList 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): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicas | undefined);
    get availabilityDomain(): string;
    get displayName(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasList 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): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetails | undefined);
    get id(): string;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetails | undefined);
    private _autotunePolicies;
    get autotunePolicies(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsAutotunePoliciesList;
    get availabilityDomain(): string;
    get backupPolicyId(): string;
    private _blockVolumeReplicas;
    get blockVolumeReplicas(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsBlockVolumeReplicasList;
    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(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsSourceDetailsList;
    get vpusPerGb(): string;
    get xrcKmsKeyId(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumes {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumes): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumes): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumes | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumes | undefined);
    private _attachDetails;
    get attachDetails(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesAttachDetailsList;
    private _createDetails;
    get createDetails(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesCreateDetailsList;
    get volumeId(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesList 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): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfig | undefined);
    get desiredState(): string;
    get name(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfig | undefined);
    get areAllPluginsDisabled(): cdktf.IResolvable;
    get isManagementDisabled(): cdktf.IResolvable;
    get isMonitoringDisabled(): cdktf.IResolvable;
    private _pluginsConfig;
    get pluginsConfig(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigPluginsConfigList;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfig | undefined);
    get isLiveMigrationPreferred(): cdktf.IResolvable;
    get recoveryAction(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined);
    get ipv6Address(): string;
    get ipv6SubnetCidr(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetails | 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList;
    get nsgIds(): string[];
    get privateIp(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get skipSourceDestCheck(): cdktf.IResolvable;
    get subnetId(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptions {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptions): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptions): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptionsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptions | undefined);
    get areLegacyImdsEndpointsDisabled(): cdktf.IResolvable;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptionsList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptions {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptions): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptions): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptionsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptions | undefined);
    get bootVolumeType(): string;
    get firmware(): string;
    get isConsistentVolumeNamingEnabled(): cdktf.IResolvable;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get networkType(): string;
    get remoteDataVolumeType(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptionsList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfig | 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 DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionAction | undefined);
    get preserveBootVolume(): cdktf.IResolvable;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfig | undefined);
    private _preemptionAction;
    get preemptionAction(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigPreemptionActionList;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfig | undefined);
    get baselineOcpuUtilization(): string;
    get memoryInGbs(): number;
    get nvmes(): number;
    get ocpus(): number;
    get vcpus(): number;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails | undefined);
    get compartmentId(): string;
    private _definedTagsFilter;
    get definedTagsFilter(): cdktf.StringMap;
    get operatingSystem(): string;
    get operatingSystemVersion(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetails | undefined);
    get bootVolumeId(): string;
    get bootVolumeSizeInGbs(): string;
    get bootVolumeVpusPerGb(): string;
    get imageId(): string;
    private _instanceSourceImageFilterDetails;
    get instanceSourceImageFilterDetails(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsList;
    get kmsKeyId(): string;
    get sourceType(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetails | undefined);
    private _agentConfig;
    get agentConfig(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAgentConfigList;
    private _availabilityConfig;
    get availabilityConfig(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsAvailabilityConfigList;
    get availabilityDomain(): string;
    get capacityReservationId(): string;
    get clusterPlacementGroupId(): string;
    get compartmentId(): string;
    private _createVnicDetails;
    get createVnicDetails(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsCreateVnicDetailsList;
    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(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsInstanceOptionsList;
    get ipxeScript(): string;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get launchMode(): string;
    private _launchOptions;
    get launchOptions(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsLaunchOptionsList;
    private _metadata;
    get metadata(): cdktf.StringMap;
    private _platformConfig;
    get platformConfig(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPlatformConfigList;
    private _preemptibleInstanceConfig;
    get preemptibleInstanceConfig(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsPreemptibleInstanceConfigList;
    get preferredMaintenanceAction(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get shape(): string;
    private _shapeConfig;
    get shapeConfig(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsShapeConfigList;
    private _sourceDetails;
    get sourceDetails(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsSourceDetailsList;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetails | 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 DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePolicies | undefined);
    get autotuneType(): string;
    get maxVpusPerGb(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicas | undefined);
    get availabilityDomain(): string;
    get displayName(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetails | undefined);
    get id(): string;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetails | undefined);
    private _autotunePolicies;
    get autotunePolicies(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsAutotunePoliciesList;
    get availabilityDomain(): string;
    get backupPolicyId(): string;
    private _blockVolumeReplicas;
    get blockVolumeReplicas(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsBlockVolumeReplicasList;
    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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsSourceDetailsList;
    get vpusPerGb(): string;
    get xrcKmsKeyId(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumes {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumes): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumes): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumes | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumes | undefined);
    private _attachDetails;
    get attachDetails(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesAttachDetailsList;
    private _createDetails;
    get createDetails(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesCreateDetailsList;
    get volumeId(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfig | undefined);
    get desiredState(): string;
    get name(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfig | undefined);
    get areAllPluginsDisabled(): cdktf.IResolvable;
    get isManagementDisabled(): cdktf.IResolvable;
    get isMonitoringDisabled(): cdktf.IResolvable;
    private _pluginsConfig;
    get pluginsConfig(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigPluginsConfigList;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfig | undefined);
    get isLiveMigrationPreferred(): cdktf.IResolvable;
    get recoveryAction(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined);
    get ipv6Address(): string;
    get ipv6SubnetCidr(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetails | 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList;
    get nsgIds(): string[];
    get privateIp(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get skipSourceDestCheck(): cdktf.IResolvable;
    get subnetId(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptions {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptions): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptions): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptionsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptions | undefined);
    get areLegacyImdsEndpointsDisabled(): cdktf.IResolvable;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptionsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptions {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptions): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptions): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptionsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptions | undefined);
    get bootVolumeType(): string;
    get firmware(): string;
    get isConsistentVolumeNamingEnabled(): cdktf.IResolvable;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get networkType(): string;
    get remoteDataVolumeType(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptionsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfig | 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 DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionAction | undefined);
    get preserveBootVolume(): cdktf.IResolvable;
    get type(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfig | undefined);
    private _preemptionAction;
    get preemptionAction(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigPreemptionActionList;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfig {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfigToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfig): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfigToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfig): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfigOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfig | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfig | undefined);
    get baselineOcpuUtilization(): string;
    get memoryInGbs(): number;
    get nvmes(): number;
    get ocpus(): number;
    get vcpus(): number;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfigList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfigOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetails | undefined);
    get compartmentId(): string;
    private _definedTagsFilter;
    get definedTagsFilter(): cdktf.StringMap;
    get operatingSystem(): string;
    get operatingSystemVersion(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetails | undefined);
    get bootVolumeId(): string;
    get bootVolumeSizeInGbs(): string;
    get bootVolumeVpusPerGb(): string;
    get imageId(): string;
    private _instanceSourceImageFilterDetails;
    get instanceSourceImageFilterDetails(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsInstanceSourceImageFilterDetailsList;
    get kmsKeyId(): string;
    get sourceType(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetails | undefined);
    private _agentConfig;
    get agentConfig(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAgentConfigList;
    private _availabilityConfig;
    get availabilityConfig(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsAvailabilityConfigList;
    get availabilityDomain(): string;
    get capacityReservationId(): string;
    get clusterPlacementGroupId(): string;
    get compartmentId(): string;
    private _createVnicDetails;
    get createVnicDetails(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsCreateVnicDetailsList;
    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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsInstanceOptionsList;
    get ipxeScript(): string;
    get isPvEncryptionInTransitEnabled(): cdktf.IResolvable;
    get launchMode(): string;
    private _launchOptions;
    get launchOptions(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsLaunchOptionsList;
    private _metadata;
    get metadata(): cdktf.StringMap;
    private _platformConfig;
    get platformConfig(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPlatformConfigList;
    private _preemptibleInstanceConfig;
    get preemptibleInstanceConfig(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsPreemptibleInstanceConfigList;
    get preferredMaintenanceAction(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get shape(): string;
    private _shapeConfig;
    get shapeConfig(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsShapeConfigList;
    private _sourceDetails;
    get sourceDetails(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsSourceDetailsList;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined);
    get ipv6Address(): string;
    get ipv6SubnetCidr(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetails | 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList;
    get nsgIds(): string[];
    get privateIp(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get skipSourceDestCheck(): cdktf.IResolvable;
    get subnetId(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnics {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnics): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnics): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnics | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnics | undefined);
    private _createVnicDetails;
    get createVnicDetails(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsCreateVnicDetailsList;
    get displayName(): string;
    get nicIndex(): number;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsOptions {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptions): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsOptionsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsOptions): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsOptions | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsOptions | undefined);
    private _blockVolumes;
    get blockVolumes(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsBlockVolumesList;
    private _launchDetails;
    get launchDetails(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsLaunchDetailsList;
    private _secondaryVnics;
    get secondaryVnics(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsSecondaryVnicsList;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOptionsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOptionsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetails | undefined);
    get ipv6Address(): string;
    get ipv6SubnetCidr(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetails | 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(): DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsIpv6AddressIpv6SubnetCidrPairDetailsList;
    get nsgIds(): string[];
    get privateIp(): string;
    private _securityAttributes;
    get securityAttributes(): cdktf.StringMap;
    get skipSourceDestCheck(): cdktf.IResolvable;
    get subnetId(): string;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnics {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnics): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnics): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnics | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnics | undefined);
    private _createVnicDetails;
    get createVnicDetails(): DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsCreateVnicDetailsList;
    get displayName(): string;
    get nicIndex(): number;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsList 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): DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsOutputReference;
}
export interface DataOciCoreInstanceConfigurationInstanceDetails {
}
export declare function dataOciCoreInstanceConfigurationInstanceDetailsToTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetails): any;
export declare function dataOciCoreInstanceConfigurationInstanceDetailsToHclTerraform(struct?: DataOciCoreInstanceConfigurationInstanceDetails): any;
export declare class DataOciCoreInstanceConfigurationInstanceDetailsOutputReference 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(): DataOciCoreInstanceConfigurationInstanceDetails | undefined;
    set internalValue(value: DataOciCoreInstanceConfigurationInstanceDetails | undefined);
    private _blockVolumes;
    get blockVolumes(): DataOciCoreInstanceConfigurationInstanceDetailsBlockVolumesList;
    get instanceType(): string;
    private _launchDetails;
    get launchDetails(): DataOciCoreInstanceConfigurationInstanceDetailsLaunchDetailsList;
    private _options;
    get options(): DataOciCoreInstanceConfigurationInstanceDetailsOptionsList;
    private _secondaryVnics;
    get secondaryVnics(): DataOciCoreInstanceConfigurationInstanceDetailsSecondaryVnicsList;
}
export declare class DataOciCoreInstanceConfigurationInstanceDetailsList 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): DataOciCoreInstanceConfigurationInstanceDetailsOutputReference;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configuration oci_core_instance_configuration}
*/
export declare class DataOciCoreInstanceConfiguration extends cdktf.TerraformDataSource {
    static readonly tfResourceType = "oci_core_instance_configuration";
    /**
    * Generates CDKTF code for importing a DataOciCoreInstanceConfiguration 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 DataOciCoreInstanceConfiguration to import
    * @param importFromId The id of the existing DataOciCoreInstanceConfiguration that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/core_instance_configuration#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataOciCoreInstanceConfiguration 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_configuration oci_core_instance_configuration} 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 DataOciCoreInstanceConfigurationConfig
    */
    constructor(scope: Construct, id: string, config: DataOciCoreInstanceConfigurationConfig);
    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 _instanceConfigurationId?;
    get instanceConfigurationId(): string;
    set instanceConfigurationId(value: string);
    get instanceConfigurationIdInput(): string | undefined;
    private _instanceDetails;
    get instanceDetails(): DataOciCoreInstanceConfigurationInstanceDetailsList;
    get instanceId(): string;
    get source(): string;
    get timeCreated(): string;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
