import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This data source provides the list of Database Insights in Oracle Cloud Infrastructure Opsi service.
 *
 * Gets a list of database insights based on the query parameters specified. Either compartmentId or id query parameter must be specified.
 * When both compartmentId and compartmentIdInSubtree are specified, a list of database insights in that compartment and in all sub-compartments will be returned.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testDatabaseInsights = oci.opsi.getDatabaseInsights({
 *     compartmentId: compartmentId,
 *     compartmentIdInSubtree: databaseInsightCompartmentIdInSubtree === "true",
 *     databaseIds: testDatabase.id,
 *     databaseTypes: databaseInsightDatabaseType,
 *     enterpriseManagerBridgeId: testEnterpriseManagerBridge.id,
 *     exadataInsightId: testExadataInsight.id,
 *     fields: databaseInsightFields,
 *     id: databaseInsightId,
 *     opsiPrivateEndpointId: testPrivateEndpoint.id,
 *     states: databaseInsightState,
 *     statuses: databaseInsightStatus,
 * });
 * ```
 */
export declare function getDatabaseInsights(args?: GetDatabaseInsightsArgs, opts?: pulumi.InvokeOptions): Promise<GetDatabaseInsightsResult>;
/**
 * A collection of arguments for invoking getDatabaseInsights.
 */
export interface GetDatabaseInsightsArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.
     */
    compartmentId?: string;
    /**
     * A flag to search all resources within a given compartment and all sub-compartments.
     */
    compartmentIdInSubtree?: boolean;
    /**
     * Optional list of database [OCIDs](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the associated DBaaS entity.
     */
    databaseIds?: string[];
    /**
     * Filter by one or more database type. Possible values are ADW-S, ATP-S, ADW-D, ATP-D, EXTERNAL-PDB, EXTERNAL-NONCDB.
     */
    databaseTypes?: string[];
    /**
     * Unique Enterprise Manager bridge identifier
     */
    enterpriseManagerBridgeId?: string;
    /**
     * [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of exadata insight resource.
     */
    exadataInsightId?: string;
    /**
     * Specifies the fields to return in a database summary response. By default all fields are returned if omitted.
     */
    fields?: string[];
    filters?: inputs.Opsi.GetDatabaseInsightsFilter[];
    /**
     * Optional list of database insight resource [OCIDs](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
     */
    id?: string;
    /**
     * Unique Operations Insights PrivateEndpoint identifier
     */
    opsiPrivateEndpointId?: string;
    /**
     * Lifecycle states
     */
    states?: string[];
    /**
     * Resource Status
     */
    statuses?: string[];
}
/**
 * A collection of values returned by getDatabaseInsights.
 */
export interface GetDatabaseInsightsResult {
    /**
     * Compartment identifier of the database
     */
    readonly compartmentId?: string;
    readonly compartmentIdInSubtree?: boolean;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the database.
     */
    readonly databaseIds?: string[];
    /**
     * The list of database_insights_collection.
     */
    readonly databaseInsightsCollections: outputs.Opsi.GetDatabaseInsightsDatabaseInsightsCollection[];
    /**
     * Ops Insights internal representation of the database type.
     */
    readonly databaseTypes?: string[];
    /**
     * OPSI Enterprise Manager Bridge OCID
     */
    readonly enterpriseManagerBridgeId?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the Exadata insight.
     */
    readonly exadataInsightId?: string;
    readonly fields?: string[];
    readonly filters?: outputs.Opsi.GetDatabaseInsightsFilter[];
    /**
     * Database insight identifier
     */
    readonly id?: string;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the OPSI private endpoint
     */
    readonly opsiPrivateEndpointId?: string;
    /**
     * The current state of the database.
     */
    readonly states?: string[];
    /**
     * Indicates the status of a database insight in Operations Insights
     */
    readonly statuses?: string[];
}
/**
 * This data source provides the list of Database Insights in Oracle Cloud Infrastructure Opsi service.
 *
 * Gets a list of database insights based on the query parameters specified. Either compartmentId or id query parameter must be specified.
 * When both compartmentId and compartmentIdInSubtree are specified, a list of database insights in that compartment and in all sub-compartments will be returned.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testDatabaseInsights = oci.opsi.getDatabaseInsights({
 *     compartmentId: compartmentId,
 *     compartmentIdInSubtree: databaseInsightCompartmentIdInSubtree === "true",
 *     databaseIds: testDatabase.id,
 *     databaseTypes: databaseInsightDatabaseType,
 *     enterpriseManagerBridgeId: testEnterpriseManagerBridge.id,
 *     exadataInsightId: testExadataInsight.id,
 *     fields: databaseInsightFields,
 *     id: databaseInsightId,
 *     opsiPrivateEndpointId: testPrivateEndpoint.id,
 *     states: databaseInsightState,
 *     statuses: databaseInsightStatus,
 * });
 * ```
 */
export declare function getDatabaseInsightsOutput(args?: GetDatabaseInsightsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetDatabaseInsightsResult>;
/**
 * A collection of arguments for invoking getDatabaseInsights.
 */
export interface GetDatabaseInsightsOutputArgs {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    /**
     * A flag to search all resources within a given compartment and all sub-compartments.
     */
    compartmentIdInSubtree?: pulumi.Input<boolean | undefined>;
    /**
     * Optional list of database [OCIDs](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the associated DBaaS entity.
     */
    databaseIds?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Filter by one or more database type. Possible values are ADW-S, ATP-S, ADW-D, ATP-D, EXTERNAL-PDB, EXTERNAL-NONCDB.
     */
    databaseTypes?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Unique Enterprise Manager bridge identifier
     */
    enterpriseManagerBridgeId?: pulumi.Input<string | undefined>;
    /**
     * [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of exadata insight resource.
     */
    exadataInsightId?: pulumi.Input<string | undefined>;
    /**
     * Specifies the fields to return in a database summary response. By default all fields are returned if omitted.
     */
    fields?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.Opsi.GetDatabaseInsightsFilterArgs>[] | undefined>;
    /**
     * Optional list of database insight resource [OCIDs](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm).
     */
    id?: pulumi.Input<string | undefined>;
    /**
     * Unique Operations Insights PrivateEndpoint identifier
     */
    opsiPrivateEndpointId?: pulumi.Input<string | undefined>;
    /**
     * Lifecycle states
     */
    states?: pulumi.Input<pulumi.Input<string>[] | undefined>;
    /**
     * Resource Status
     */
    statuses?: pulumi.Input<pulumi.Input<string>[] | undefined>;
}
//# sourceMappingURL=getDatabaseInsights.d.ts.map