import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface OpsiDatabaseInsightConfig extends cdktf.TerraformMetaArguments {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#compartment_id OpsiDatabaseInsight#compartment_id}
    */
    readonly compartmentId: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#connector_id OpsiDatabaseInsight#connector_id}
    */
    readonly connectorId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#database_connection_status_details OpsiDatabaseInsight#database_connection_status_details}
    */
    readonly databaseConnectionStatusDetails?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#database_id OpsiDatabaseInsight#database_id}
    */
    readonly databaseId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#database_resource_type OpsiDatabaseInsight#database_resource_type}
    */
    readonly databaseResourceType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#dbm_private_endpoint_id OpsiDatabaseInsight#dbm_private_endpoint_id}
    */
    readonly dbmPrivateEndpointId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#defined_tags OpsiDatabaseInsight#defined_tags}
    */
    readonly definedTags?: {
        [key: string]: string;
    };
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#deployment_type OpsiDatabaseInsight#deployment_type}
    */
    readonly deploymentType?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#enterprise_manager_bridge_id OpsiDatabaseInsight#enterprise_manager_bridge_id}
    */
    readonly enterpriseManagerBridgeId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#enterprise_manager_entity_identifier OpsiDatabaseInsight#enterprise_manager_entity_identifier}
    */
    readonly enterpriseManagerEntityIdentifier?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#enterprise_manager_identifier OpsiDatabaseInsight#enterprise_manager_identifier}
    */
    readonly enterpriseManagerIdentifier?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#entity_source OpsiDatabaseInsight#entity_source}
    */
    readonly entitySource: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#exadata_insight_id OpsiDatabaseInsight#exadata_insight_id}
    */
    readonly exadataInsightId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#freeform_tags OpsiDatabaseInsight#freeform_tags}
    */
    readonly freeformTags?: {
        [key: string]: string;
    };
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#id OpsiDatabaseInsight#id}
    *
    * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
    * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
    */
    readonly id?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#is_advanced_features_enabled OpsiDatabaseInsight#is_advanced_features_enabled}
    */
    readonly isAdvancedFeaturesEnabled?: boolean | cdktf.IResolvable;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#management_agent_id OpsiDatabaseInsight#management_agent_id}
    */
    readonly managementAgentId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#opsi_private_endpoint_id OpsiDatabaseInsight#opsi_private_endpoint_id}
    */
    readonly opsiPrivateEndpointId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#service_name OpsiDatabaseInsight#service_name}
    */
    readonly serviceName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#status OpsiDatabaseInsight#status}
    */
    readonly status?: string;
    /**
    * connection_credential_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#connection_credential_details OpsiDatabaseInsight#connection_credential_details}
    */
    readonly connectionCredentialDetails?: OpsiDatabaseInsightConnectionCredentialDetails;
    /**
    * connection_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#connection_details OpsiDatabaseInsight#connection_details}
    */
    readonly connectionDetails?: OpsiDatabaseInsightConnectionDetails;
    /**
    * credential_details block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#credential_details OpsiDatabaseInsight#credential_details}
    */
    readonly credentialDetails?: OpsiDatabaseInsightCredentialDetails;
    /**
    * timeouts block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#timeouts OpsiDatabaseInsight#timeouts}
    */
    readonly timeouts?: OpsiDatabaseInsightTimeouts;
}
export interface OpsiDatabaseInsightConnectionCredentialDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#credential_source_name OpsiDatabaseInsight#credential_source_name}
    */
    readonly credentialSourceName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#credential_type OpsiDatabaseInsight#credential_type}
    */
    readonly credentialType: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#password_secret_id OpsiDatabaseInsight#password_secret_id}
    */
    readonly passwordSecretId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#role OpsiDatabaseInsight#role}
    */
    readonly role?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#user_name OpsiDatabaseInsight#user_name}
    */
    readonly userName?: string;
}
export declare function opsiDatabaseInsightConnectionCredentialDetailsToTerraform(struct?: OpsiDatabaseInsightConnectionCredentialDetailsOutputReference | OpsiDatabaseInsightConnectionCredentialDetails): any;
export declare function opsiDatabaseInsightConnectionCredentialDetailsToHclTerraform(struct?: OpsiDatabaseInsightConnectionCredentialDetailsOutputReference | OpsiDatabaseInsightConnectionCredentialDetails): any;
export declare class OpsiDatabaseInsightConnectionCredentialDetailsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): OpsiDatabaseInsightConnectionCredentialDetails | undefined;
    set internalValue(value: OpsiDatabaseInsightConnectionCredentialDetails | undefined);
    private _credentialSourceName?;
    get credentialSourceName(): string;
    set credentialSourceName(value: string);
    resetCredentialSourceName(): void;
    get credentialSourceNameInput(): string | undefined;
    private _credentialType?;
    get credentialType(): string;
    set credentialType(value: string);
    get credentialTypeInput(): string | undefined;
    private _passwordSecretId?;
    get passwordSecretId(): string;
    set passwordSecretId(value: string);
    resetPasswordSecretId(): void;
    get passwordSecretIdInput(): string | undefined;
    private _role?;
    get role(): string;
    set role(value: string);
    resetRole(): void;
    get roleInput(): string | undefined;
    private _userName?;
    get userName(): string;
    set userName(value: string);
    resetUserName(): void;
    get userNameInput(): string | undefined;
}
export interface OpsiDatabaseInsightConnectionDetailsHosts {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#host_ip OpsiDatabaseInsight#host_ip}
    */
    readonly hostIp?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#port OpsiDatabaseInsight#port}
    */
    readonly port?: number;
}
export declare function opsiDatabaseInsightConnectionDetailsHostsToTerraform(struct?: OpsiDatabaseInsightConnectionDetailsHosts | cdktf.IResolvable): any;
export declare function opsiDatabaseInsightConnectionDetailsHostsToHclTerraform(struct?: OpsiDatabaseInsightConnectionDetailsHosts | cdktf.IResolvable): any;
export declare class OpsiDatabaseInsightConnectionDetailsHostsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    private resolvableValue?;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param complexObjectIndex the index of this item in the list
    * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
    get internalValue(): OpsiDatabaseInsightConnectionDetailsHosts | cdktf.IResolvable | undefined;
    set internalValue(value: OpsiDatabaseInsightConnectionDetailsHosts | cdktf.IResolvable | undefined);
    private _hostIp?;
    get hostIp(): string;
    set hostIp(value: string);
    resetHostIp(): void;
    get hostIpInput(): string | undefined;
    private _port?;
    get port(): number;
    set port(value: number);
    resetPort(): void;
    get portInput(): number | undefined;
}
export declare class OpsiDatabaseInsightConnectionDetailsHostsList extends cdktf.ComplexList {
    protected terraformResource: cdktf.IInterpolatingParent;
    protected terraformAttribute: string;
    protected wrapsSet: boolean;
    internalValue?: OpsiDatabaseInsightConnectionDetailsHosts[] | cdktf.IResolvable;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
    /**
    * @param index the index of the item to return
    */
    get(index: number): OpsiDatabaseInsightConnectionDetailsHostsOutputReference;
}
export interface OpsiDatabaseInsightConnectionDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#host_name OpsiDatabaseInsight#host_name}
    */
    readonly hostName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#port OpsiDatabaseInsight#port}
    */
    readonly port?: number;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#protocol OpsiDatabaseInsight#protocol}
    */
    readonly protocol?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#service_name OpsiDatabaseInsight#service_name}
    */
    readonly serviceName?: string;
    /**
    * hosts block
    *
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#hosts OpsiDatabaseInsight#hosts}
    */
    readonly hosts?: OpsiDatabaseInsightConnectionDetailsHosts[] | cdktf.IResolvable;
}
export declare function opsiDatabaseInsightConnectionDetailsToTerraform(struct?: OpsiDatabaseInsightConnectionDetailsOutputReference | OpsiDatabaseInsightConnectionDetails): any;
export declare function opsiDatabaseInsightConnectionDetailsToHclTerraform(struct?: OpsiDatabaseInsightConnectionDetailsOutputReference | OpsiDatabaseInsightConnectionDetails): any;
export declare class OpsiDatabaseInsightConnectionDetailsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): OpsiDatabaseInsightConnectionDetails | undefined;
    set internalValue(value: OpsiDatabaseInsightConnectionDetails | undefined);
    private _hostName?;
    get hostName(): string;
    set hostName(value: string);
    resetHostName(): void;
    get hostNameInput(): string | undefined;
    private _port?;
    get port(): number;
    set port(value: number);
    resetPort(): void;
    get portInput(): number | undefined;
    private _protocol?;
    get protocol(): string;
    set protocol(value: string);
    resetProtocol(): void;
    get protocolInput(): string | undefined;
    private _serviceName?;
    get serviceName(): string;
    set serviceName(value: string);
    resetServiceName(): void;
    get serviceNameInput(): string | undefined;
    private _hosts;
    get hosts(): OpsiDatabaseInsightConnectionDetailsHostsList;
    putHosts(value: OpsiDatabaseInsightConnectionDetailsHosts[] | cdktf.IResolvable): void;
    resetHosts(): void;
    get hostsInput(): cdktf.IResolvable | OpsiDatabaseInsightConnectionDetailsHosts[] | undefined;
}
export interface OpsiDatabaseInsightCredentialDetails {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#credential_source_name OpsiDatabaseInsight#credential_source_name}
    */
    readonly credentialSourceName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#credential_type OpsiDatabaseInsight#credential_type}
    */
    readonly credentialType: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#password_secret_id OpsiDatabaseInsight#password_secret_id}
    */
    readonly passwordSecretId?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#role OpsiDatabaseInsight#role}
    */
    readonly role?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#user_name OpsiDatabaseInsight#user_name}
    */
    readonly userName?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#wallet_secret_id OpsiDatabaseInsight#wallet_secret_id}
    */
    readonly walletSecretId?: string;
}
export declare function opsiDatabaseInsightCredentialDetailsToTerraform(struct?: OpsiDatabaseInsightCredentialDetailsOutputReference | OpsiDatabaseInsightCredentialDetails): any;
export declare function opsiDatabaseInsightCredentialDetailsToHclTerraform(struct?: OpsiDatabaseInsightCredentialDetailsOutputReference | OpsiDatabaseInsightCredentialDetails): any;
export declare class OpsiDatabaseInsightCredentialDetailsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): OpsiDatabaseInsightCredentialDetails | undefined;
    set internalValue(value: OpsiDatabaseInsightCredentialDetails | undefined);
    private _credentialSourceName?;
    get credentialSourceName(): string;
    set credentialSourceName(value: string);
    resetCredentialSourceName(): void;
    get credentialSourceNameInput(): string | undefined;
    private _credentialType?;
    get credentialType(): string;
    set credentialType(value: string);
    get credentialTypeInput(): string | undefined;
    private _passwordSecretId?;
    get passwordSecretId(): string;
    set passwordSecretId(value: string);
    resetPasswordSecretId(): void;
    get passwordSecretIdInput(): string | undefined;
    private _role?;
    get role(): string;
    set role(value: string);
    resetRole(): void;
    get roleInput(): string | undefined;
    private _userName?;
    get userName(): string;
    set userName(value: string);
    resetUserName(): void;
    get userNameInput(): string | undefined;
    private _walletSecretId?;
    get walletSecretId(): string;
    set walletSecretId(value: string);
    resetWalletSecretId(): void;
    get walletSecretIdInput(): string | undefined;
}
export interface OpsiDatabaseInsightTimeouts {
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#create OpsiDatabaseInsight#create}
    */
    readonly create?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#delete OpsiDatabaseInsight#delete}
    */
    readonly delete?: string;
    /**
    * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#update OpsiDatabaseInsight#update}
    */
    readonly update?: string;
}
export declare function opsiDatabaseInsightTimeoutsToTerraform(struct?: OpsiDatabaseInsightTimeouts | cdktf.IResolvable): any;
export declare function opsiDatabaseInsightTimeoutsToHclTerraform(struct?: OpsiDatabaseInsightTimeouts | cdktf.IResolvable): any;
export declare class OpsiDatabaseInsightTimeoutsOutputReference extends cdktf.ComplexObject {
    private isEmptyObject;
    private resolvableValue?;
    /**
    * @param terraformResource The parent resource
    * @param terraformAttribute The attribute on the parent resource this class is referencing
    */
    constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
    get internalValue(): OpsiDatabaseInsightTimeouts | cdktf.IResolvable | undefined;
    set internalValue(value: OpsiDatabaseInsightTimeouts | cdktf.IResolvable | undefined);
    private _create?;
    get create(): string;
    set create(value: string);
    resetCreate(): void;
    get createInput(): string | undefined;
    private _delete?;
    get delete(): string;
    set delete(value: string);
    resetDelete(): void;
    get deleteInput(): string | undefined;
    private _update?;
    get update(): string;
    set update(value: string);
    resetUpdate(): void;
    get updateInput(): string | undefined;
}
/**
* Represents a {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight oci_opsi_database_insight}
*/
export declare class OpsiDatabaseInsight extends cdktf.TerraformResource {
    static readonly tfResourceType = "oci_opsi_database_insight";
    /**
    * Generates CDKTF code for importing a OpsiDatabaseInsight 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 OpsiDatabaseInsight to import
    * @param importFromId The id of the existing OpsiDatabaseInsight that should be imported. Refer to the {@link https://registry.terraform.io/providers/oracle/oci/6.18.0/docs/resources/opsi_database_insight#import import section} in the documentation of this resource for the id to use
    * @param provider? Optional instance of the provider where the OpsiDatabaseInsight 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/resources/opsi_database_insight oci_opsi_database_insight} Resource
    *
    * @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 OpsiDatabaseInsightConfig
    */
    constructor(scope: Construct, id: string, config: OpsiDatabaseInsightConfig);
    private _compartmentId?;
    get compartmentId(): string;
    set compartmentId(value: string);
    get compartmentIdInput(): string | undefined;
    private _connectorId?;
    get connectorId(): string;
    set connectorId(value: string);
    resetConnectorId(): void;
    get connectorIdInput(): string | undefined;
    private _databaseConnectionStatusDetails?;
    get databaseConnectionStatusDetails(): string;
    set databaseConnectionStatusDetails(value: string);
    resetDatabaseConnectionStatusDetails(): void;
    get databaseConnectionStatusDetailsInput(): string | undefined;
    get databaseDisplayName(): string;
    private _databaseId?;
    get databaseId(): string;
    set databaseId(value: string);
    resetDatabaseId(): void;
    get databaseIdInput(): string | undefined;
    get databaseName(): string;
    private _databaseResourceType?;
    get databaseResourceType(): string;
    set databaseResourceType(value: string);
    resetDatabaseResourceType(): void;
    get databaseResourceTypeInput(): string | undefined;
    get databaseType(): string;
    get databaseVersion(): string;
    private _dbmPrivateEndpointId?;
    get dbmPrivateEndpointId(): string;
    set dbmPrivateEndpointId(value: string);
    resetDbmPrivateEndpointId(): void;
    get dbmPrivateEndpointIdInput(): string | undefined;
    private _definedTags?;
    get definedTags(): {
        [key: string]: string;
    };
    set definedTags(value: {
        [key: string]: string;
    });
    resetDefinedTags(): void;
    get definedTagsInput(): {
        [key: string]: string;
    } | undefined;
    private _deploymentType?;
    get deploymentType(): string;
    set deploymentType(value: string);
    resetDeploymentType(): void;
    get deploymentTypeInput(): string | undefined;
    private _enterpriseManagerBridgeId?;
    get enterpriseManagerBridgeId(): string;
    set enterpriseManagerBridgeId(value: string);
    resetEnterpriseManagerBridgeId(): void;
    get enterpriseManagerBridgeIdInput(): string | undefined;
    get enterpriseManagerEntityDisplayName(): string;
    private _enterpriseManagerEntityIdentifier?;
    get enterpriseManagerEntityIdentifier(): string;
    set enterpriseManagerEntityIdentifier(value: string);
    resetEnterpriseManagerEntityIdentifier(): void;
    get enterpriseManagerEntityIdentifierInput(): string | undefined;
    get enterpriseManagerEntityName(): string;
    get enterpriseManagerEntityType(): string;
    private _enterpriseManagerIdentifier?;
    get enterpriseManagerIdentifier(): string;
    set enterpriseManagerIdentifier(value: string);
    resetEnterpriseManagerIdentifier(): void;
    get enterpriseManagerIdentifierInput(): string | undefined;
    private _entitySource?;
    get entitySource(): string;
    set entitySource(value: string);
    get entitySourceInput(): string | undefined;
    private _exadataInsightId?;
    get exadataInsightId(): string;
    set exadataInsightId(value: string);
    resetExadataInsightId(): void;
    get exadataInsightIdInput(): string | undefined;
    private _freeformTags?;
    get freeformTags(): {
        [key: string]: string;
    };
    set freeformTags(value: {
        [key: string]: string;
    });
    resetFreeformTags(): void;
    get freeformTagsInput(): {
        [key: string]: string;
    } | undefined;
    private _id?;
    get id(): string;
    set id(value: string);
    resetId(): void;
    get idInput(): string | undefined;
    private _isAdvancedFeaturesEnabled?;
    get isAdvancedFeaturesEnabled(): boolean | cdktf.IResolvable;
    set isAdvancedFeaturesEnabled(value: boolean | cdktf.IResolvable);
    resetIsAdvancedFeaturesEnabled(): void;
    get isAdvancedFeaturesEnabledInput(): boolean | cdktf.IResolvable | undefined;
    get isHeatWaveClusterAttached(): cdktf.IResolvable;
    get isHighlyAvailable(): cdktf.IResolvable;
    get lifecycleDetails(): string;
    private _managementAgentId?;
    get managementAgentId(): string;
    set managementAgentId(value: string);
    resetManagementAgentId(): void;
    get managementAgentIdInput(): string | undefined;
    private _opsiPrivateEndpointId?;
    get opsiPrivateEndpointId(): string;
    set opsiPrivateEndpointId(value: string);
    resetOpsiPrivateEndpointId(): void;
    get opsiPrivateEndpointIdInput(): string | undefined;
    get parentId(): string;
    get processorCount(): number;
    get rootId(): string;
    private _serviceName?;
    get serviceName(): string;
    set serviceName(value: string);
    resetServiceName(): void;
    get serviceNameInput(): string | undefined;
    get state(): string;
    private _status?;
    get status(): string;
    set status(value: string);
    resetStatus(): void;
    get statusInput(): string | undefined;
    private _systemTags;
    get systemTags(): cdktf.StringMap;
    get timeCreated(): string;
    get timeUpdated(): string;
    private _connectionCredentialDetails;
    get connectionCredentialDetails(): OpsiDatabaseInsightConnectionCredentialDetailsOutputReference;
    putConnectionCredentialDetails(value: OpsiDatabaseInsightConnectionCredentialDetails): void;
    resetConnectionCredentialDetails(): void;
    get connectionCredentialDetailsInput(): OpsiDatabaseInsightConnectionCredentialDetails | undefined;
    private _connectionDetails;
    get connectionDetails(): OpsiDatabaseInsightConnectionDetailsOutputReference;
    putConnectionDetails(value: OpsiDatabaseInsightConnectionDetails): void;
    resetConnectionDetails(): void;
    get connectionDetailsInput(): OpsiDatabaseInsightConnectionDetails | undefined;
    private _credentialDetails;
    get credentialDetails(): OpsiDatabaseInsightCredentialDetailsOutputReference;
    putCredentialDetails(value: OpsiDatabaseInsightCredentialDetails): void;
    resetCredentialDetails(): void;
    get credentialDetailsInput(): OpsiDatabaseInsightCredentialDetails | undefined;
    private _timeouts;
    get timeouts(): OpsiDatabaseInsightTimeoutsOutputReference;
    putTimeouts(value: OpsiDatabaseInsightTimeouts): void;
    resetTimeouts(): void;
    get timeoutsInput(): cdktf.IResolvable | OpsiDatabaseInsightTimeouts | undefined;
    protected synthesizeAttributes(): {
        [name: string]: any;
    };
    protected synthesizeHclAttributes(): {
        [name: string]: any;
    };
}
