import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface DataOciContainerengineClusterConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/containerengine_cluster#cluster_id DataOciContainerengineCluster#cluster_id}
    */
    readonly clusterId: string;
}
export interface DataOciContainerengineClusterClusterPodNetworkOptions {
}
export declare function dataOciContainerengineClusterClusterPodNetworkOptionsToTerraform(struct?: DataOciContainerengineClusterClusterPodNetworkOptions): any;
export declare function dataOciContainerengineClusterClusterPodNetworkOptionsToHclTerraform(struct?: DataOciContainerengineClusterClusterPodNetworkOptions): any;
export declare class DataOciContainerengineClusterClusterPodNetworkOptionsOutputReference 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(): DataOciContainerengineClusterClusterPodNetworkOptions | undefined;
    set internalValue(value: DataOciContainerengineClusterClusterPodNetworkOptions | undefined);
    get cniType(): string;
}
export declare class DataOciContainerengineClusterClusterPodNetworkOptionsList 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): DataOciContainerengineClusterClusterPodNetworkOptionsOutputReference;
}
export interface DataOciContainerengineClusterEndpointConfig {
}
export declare function dataOciContainerengineClusterEndpointConfigToTerraform(struct?: DataOciContainerengineClusterEndpointConfig): any;
export declare function dataOciContainerengineClusterEndpointConfigToHclTerraform(struct?: DataOciContainerengineClusterEndpointConfig): any;
export declare class DataOciContainerengineClusterEndpointConfigOutputReference 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(): DataOciContainerengineClusterEndpointConfig | undefined;
    set internalValue(value: DataOciContainerengineClusterEndpointConfig | undefined);
    get isPublicIpEnabled(): cdktf.IResolvable;
    get nsgIds(): string[];
    get subnetId(): string;
}
export declare class DataOciContainerengineClusterEndpointConfigList 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): DataOciContainerengineClusterEndpointConfigOutputReference;
}
export interface DataOciContainerengineClusterEndpoints {
}
export declare function dataOciContainerengineClusterEndpointsToTerraform(struct?: DataOciContainerengineClusterEndpoints): any;
export declare function dataOciContainerengineClusterEndpointsToHclTerraform(struct?: DataOciContainerengineClusterEndpoints): any;
export declare class DataOciContainerengineClusterEndpointsOutputReference 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(): DataOciContainerengineClusterEndpoints | undefined;
    set internalValue(value: DataOciContainerengineClusterEndpoints | undefined);
    get kubernetes(): string;
    get privateEndpoint(): string;
    get publicEndpoint(): string;
    get vcnHostnameEndpoint(): string;
}
export declare class DataOciContainerengineClusterEndpointsList 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): DataOciContainerengineClusterEndpointsOutputReference;
}
export interface DataOciContainerengineClusterImagePolicyConfigKeyDetails {
}
export declare function dataOciContainerengineClusterImagePolicyConfigKeyDetailsToTerraform(struct?: DataOciContainerengineClusterImagePolicyConfigKeyDetails): any;
export declare function dataOciContainerengineClusterImagePolicyConfigKeyDetailsToHclTerraform(struct?: DataOciContainerengineClusterImagePolicyConfigKeyDetails): any;
export declare class DataOciContainerengineClusterImagePolicyConfigKeyDetailsOutputReference 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(): DataOciContainerengineClusterImagePolicyConfigKeyDetails | undefined;
    set internalValue(value: DataOciContainerengineClusterImagePolicyConfigKeyDetails | undefined);
    get kmsKeyId(): string;
}
export declare class DataOciContainerengineClusterImagePolicyConfigKeyDetailsList 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): DataOciContainerengineClusterImagePolicyConfigKeyDetailsOutputReference;
}
export interface DataOciContainerengineClusterImagePolicyConfig {
}
export declare function dataOciContainerengineClusterImagePolicyConfigToTerraform(struct?: DataOciContainerengineClusterImagePolicyConfig): any;
export declare function dataOciContainerengineClusterImagePolicyConfigToHclTerraform(struct?: DataOciContainerengineClusterImagePolicyConfig): any;
export declare class DataOciContainerengineClusterImagePolicyConfigOutputReference 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(): DataOciContainerengineClusterImagePolicyConfig | undefined;
    set internalValue(value: DataOciContainerengineClusterImagePolicyConfig | undefined);
    get isPolicyEnabled(): cdktf.IResolvable;
    private _keyDetails;
    get keyDetails(): DataOciContainerengineClusterImagePolicyConfigKeyDetailsList;
}
export declare class DataOciContainerengineClusterImagePolicyConfigList 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): DataOciContainerengineClusterImagePolicyConfigOutputReference;
}
export interface DataOciContainerengineClusterMetadata {
}
export declare function dataOciContainerengineClusterMetadataToTerraform(struct?: DataOciContainerengineClusterMetadata): any;
export declare function dataOciContainerengineClusterMetadataToHclTerraform(struct?: DataOciContainerengineClusterMetadata): any;
export declare class DataOciContainerengineClusterMetadataOutputReference 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(): DataOciContainerengineClusterMetadata | undefined;
    set internalValue(value: DataOciContainerengineClusterMetadata | undefined);
    get createdByUserId(): string;
    get createdByWorkRequestId(): string;
    get deletedByUserId(): string;
    get deletedByWorkRequestId(): string;
    get timeCreated(): string;
    get timeCredentialExpiration(): string;
    get timeDeleted(): string;
    get timeUpdated(): string;
    get updatedByUserId(): string;
    get updatedByWorkRequestId(): string;
}
export declare class DataOciContainerengineClusterMetadataList 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): DataOciContainerengineClusterMetadataOutputReference;
}
export interface DataOciContainerengineClusterOptionsAddOns {
}
export declare function dataOciContainerengineClusterOptionsAddOnsToTerraform(struct?: DataOciContainerengineClusterOptionsAddOns): any;
export declare function dataOciContainerengineClusterOptionsAddOnsToHclTerraform(struct?: DataOciContainerengineClusterOptionsAddOns): any;
export declare class DataOciContainerengineClusterOptionsAddOnsOutputReference 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(): DataOciContainerengineClusterOptionsAddOns | undefined;
    set internalValue(value: DataOciContainerengineClusterOptionsAddOns | undefined);
    get isKubernetesDashboardEnabled(): cdktf.IResolvable;
    get isTillerEnabled(): cdktf.IResolvable;
}
export declare class DataOciContainerengineClusterOptionsAddOnsList 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): DataOciContainerengineClusterOptionsAddOnsOutputReference;
}
export interface DataOciContainerengineClusterOptionsAdmissionControllerOptions {
}
export declare function dataOciContainerengineClusterOptionsAdmissionControllerOptionsToTerraform(struct?: DataOciContainerengineClusterOptionsAdmissionControllerOptions): any;
export declare function dataOciContainerengineClusterOptionsAdmissionControllerOptionsToHclTerraform(struct?: DataOciContainerengineClusterOptionsAdmissionControllerOptions): any;
export declare class DataOciContainerengineClusterOptionsAdmissionControllerOptionsOutputReference 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(): DataOciContainerengineClusterOptionsAdmissionControllerOptions | undefined;
    set internalValue(value: DataOciContainerengineClusterOptionsAdmissionControllerOptions | undefined);
    get isPodSecurityPolicyEnabled(): cdktf.IResolvable;
}
export declare class DataOciContainerengineClusterOptionsAdmissionControllerOptionsList 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): DataOciContainerengineClusterOptionsAdmissionControllerOptionsOutputReference;
}
export interface DataOciContainerengineClusterOptionsKubernetesNetworkConfig {
}
export declare function dataOciContainerengineClusterOptionsKubernetesNetworkConfigToTerraform(struct?: DataOciContainerengineClusterOptionsKubernetesNetworkConfig): any;
export declare function dataOciContainerengineClusterOptionsKubernetesNetworkConfigToHclTerraform(struct?: DataOciContainerengineClusterOptionsKubernetesNetworkConfig): any;
export declare class DataOciContainerengineClusterOptionsKubernetesNetworkConfigOutputReference 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(): DataOciContainerengineClusterOptionsKubernetesNetworkConfig | undefined;
    set internalValue(value: DataOciContainerengineClusterOptionsKubernetesNetworkConfig | undefined);
    get podsCidr(): string;
    get servicesCidr(): string;
}
export declare class DataOciContainerengineClusterOptionsKubernetesNetworkConfigList 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): DataOciContainerengineClusterOptionsKubernetesNetworkConfigOutputReference;
}
export interface DataOciContainerengineClusterOptionsOpenIdConnectDiscovery {
}
export declare function dataOciContainerengineClusterOptionsOpenIdConnectDiscoveryToTerraform(struct?: DataOciContainerengineClusterOptionsOpenIdConnectDiscovery): any;
export declare function dataOciContainerengineClusterOptionsOpenIdConnectDiscoveryToHclTerraform(struct?: DataOciContainerengineClusterOptionsOpenIdConnectDiscovery): any;
export declare class DataOciContainerengineClusterOptionsOpenIdConnectDiscoveryOutputReference 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(): DataOciContainerengineClusterOptionsOpenIdConnectDiscovery | undefined;
    set internalValue(value: DataOciContainerengineClusterOptionsOpenIdConnectDiscovery | undefined);
    get isOpenIdConnectDiscoveryEnabled(): cdktf.IResolvable;
}
export declare class DataOciContainerengineClusterOptionsOpenIdConnectDiscoveryList 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): DataOciContainerengineClusterOptionsOpenIdConnectDiscoveryOutputReference;
}
export interface DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaims {
}
export declare function dataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaimsToTerraform(struct?: DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaims): any;
export declare function dataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaimsToHclTerraform(struct?: DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaims): any;
export declare class DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaimsOutputReference 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(): DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaims | undefined;
    set internalValue(value: DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaims | undefined);
    get key(): string;
    get value(): string;
}
export declare class DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaimsList 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): DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaimsOutputReference;
}
export interface DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfig {
}
export declare function dataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigToTerraform(struct?: DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfig): any;
export declare function dataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigToHclTerraform(struct?: DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfig): any;
export declare class DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigOutputReference 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(): DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfig | undefined;
    set internalValue(value: DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfig | undefined);
    get caCertificate(): string;
    get clientId(): string;
    get groupsClaim(): string;
    get groupsPrefix(): string;
    get isOpenIdConnectAuthEnabled(): cdktf.IResolvable;
    get issuerUrl(): string;
    private _requiredClaims;
    get requiredClaims(): DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigRequiredClaimsList;
    get signingAlgorithms(): string[];
    get usernameClaim(): string;
    get usernamePrefix(): string;
}
export declare class DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigList 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): DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigOutputReference;
}
export interface DataOciContainerengineClusterOptionsPersistentVolumeConfig {
}
export declare function dataOciContainerengineClusterOptionsPersistentVolumeConfigToTerraform(struct?: DataOciContainerengineClusterOptionsPersistentVolumeConfig): any;
export declare function dataOciContainerengineClusterOptionsPersistentVolumeConfigToHclTerraform(struct?: DataOciContainerengineClusterOptionsPersistentVolumeConfig): any;
export declare class DataOciContainerengineClusterOptionsPersistentVolumeConfigOutputReference 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(): DataOciContainerengineClusterOptionsPersistentVolumeConfig | undefined;
    set internalValue(value: DataOciContainerengineClusterOptionsPersistentVolumeConfig | undefined);
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
}
export declare class DataOciContainerengineClusterOptionsPersistentVolumeConfigList 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): DataOciContainerengineClusterOptionsPersistentVolumeConfigOutputReference;
}
export interface DataOciContainerengineClusterOptionsServiceLbConfig {
}
export declare function dataOciContainerengineClusterOptionsServiceLbConfigToTerraform(struct?: DataOciContainerengineClusterOptionsServiceLbConfig): any;
export declare function dataOciContainerengineClusterOptionsServiceLbConfigToHclTerraform(struct?: DataOciContainerengineClusterOptionsServiceLbConfig): any;
export declare class DataOciContainerengineClusterOptionsServiceLbConfigOutputReference 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(): DataOciContainerengineClusterOptionsServiceLbConfig | undefined;
    set internalValue(value: DataOciContainerengineClusterOptionsServiceLbConfig | undefined);
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
}
export declare class DataOciContainerengineClusterOptionsServiceLbConfigList 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): DataOciContainerengineClusterOptionsServiceLbConfigOutputReference;
}
export interface DataOciContainerengineClusterOptions {
}
export declare function dataOciContainerengineClusterOptionsToTerraform(struct?: DataOciContainerengineClusterOptions): any;
export declare function dataOciContainerengineClusterOptionsToHclTerraform(struct?: DataOciContainerengineClusterOptions): any;
export declare class DataOciContainerengineClusterOptionsOutputReference 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(): DataOciContainerengineClusterOptions | undefined;
    set internalValue(value: DataOciContainerengineClusterOptions | undefined);
    private _addOns;
    get addOns(): DataOciContainerengineClusterOptionsAddOnsList;
    private _admissionControllerOptions;
    get admissionControllerOptions(): DataOciContainerengineClusterOptionsAdmissionControllerOptionsList;
    private _kubernetesNetworkConfig;
    get kubernetesNetworkConfig(): DataOciContainerengineClusterOptionsKubernetesNetworkConfigList;
    private _openIdConnectDiscovery;
    get openIdConnectDiscovery(): DataOciContainerengineClusterOptionsOpenIdConnectDiscoveryList;
    private _openIdConnectTokenAuthenticationConfig;
    get openIdConnectTokenAuthenticationConfig(): DataOciContainerengineClusterOptionsOpenIdConnectTokenAuthenticationConfigList;
    private _persistentVolumeConfig;
    get persistentVolumeConfig(): DataOciContainerengineClusterOptionsPersistentVolumeConfigList;
    private _serviceLbConfig;
    get serviceLbConfig(): DataOciContainerengineClusterOptionsServiceLbConfigList;
    get serviceLbSubnetIds(): string[];
}
export declare class DataOciContainerengineClusterOptionsList 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): DataOciContainerengineClusterOptionsOutputReference;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/containerengine_cluster oci_containerengine_cluster}
*/
export declare class DataOciContainerengineCluster extends cdktf.TerraformDataSource {
    static readonly tfResourceType = "oci_containerengine_cluster";
    /**
    * Generates CDKTF code for importing a DataOciContainerengineCluster 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 DataOciContainerengineCluster to import
    * @param importFromId The id of the existing DataOciContainerengineCluster that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/data-sources/containerengine_cluster#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the DataOciContainerengineCluster 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/containerengine_cluster oci_containerengine_cluster} 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 DataOciContainerengineClusterConfig
    */
    constructor(scope: Construct, id: string, config: DataOciContainerengineClusterConfig);
    get availableKubernetesUpgrades(): string[];
    private _clusterId?;
    get clusterId(): string;
    set clusterId(value: string);
    get clusterIdInput(): string | undefined;
    private _clusterPodNetworkOptions;
    get clusterPodNetworkOptions(): DataOciContainerengineClusterClusterPodNetworkOptionsList;
    get compartmentId(): string;
    private _definedTags;
    get definedTags(): cdktf.StringMap;
    private _endpointConfig;
    get endpointConfig(): DataOciContainerengineClusterEndpointConfigList;
    private _endpoints;
    get endpoints(): DataOciContainerengineClusterEndpointsList;
    private _freeformTags;
    get freeformTags(): cdktf.StringMap;
    get id(): string;
    private _imagePolicyConfig;
    get imagePolicyConfig(): DataOciContainerengineClusterImagePolicyConfigList;
    get kmsKeyId(): string;
    get kubernetesVersion(): string;
    get lifecycleDetails(): string;
    private _metadata;
    get metadata(): DataOciContainerengineClusterMetadataList;
    get name(): string;
    get openIdConnectDiscoveryEndpoint(): string;
    private _options;
    get options(): DataOciContainerengineClusterOptionsList;
    get state(): string;
    get type(): string;
    get vcnId(): string;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
