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 Configurations in Oracle Cloud Infrastructure Psql service.
 *
 * Returns a list of configurations.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testConfigurations = oci.psql.getConfigurations({
 *     compartmentId: compartmentId,
 *     configType: configurationConfigType,
 *     configurationId: testConfiguration.id,
 *     dbVersion: configurationDbVersion,
 *     displayName: configurationDisplayName,
 *     instanceMemorySizeInGbs: Number(configurationInstanceMemorySizeInGbs),
 *     instanceOcpuCount: Number(configurationInstanceOcpuCount),
 *     shape: configurationShape,
 *     state: configurationState,
 * });
 * ```
 */
export declare function getConfigurations(args?: GetConfigurationsArgs, opts?: pulumi.InvokeOptions): Promise<GetConfigurationsResult>;
/**
 * A collection of arguments for invoking getConfigurations.
 */
export interface GetConfigurationsArgs {
    /**
     * The ID of the compartment in which to list resources.
     */
    compartmentId?: string;
    /**
     * A filter to return only resources if their `configType` matches the given `configType`.
     */
    configType?: string;
    /**
     * A unique identifier for the configuration.
     */
    configurationId?: string;
    /**
     * Version of the PostgreSQL database, such as 14.9.
     */
    dbVersion?: string;
    /**
     * A filter to return only resources that match the entire display name given.
     */
    displayName?: string;
    filters?: inputs.Psql.GetConfigurationsFilter[];
    /**
     * The instance memory size in GBs for the configuration.
     */
    instanceMemorySizeInGbs?: number;
    /**
     * The instance ocpu count for the configuration.
     */
    instanceOcpuCount?: number;
    /**
     * The compute name of the shape for the configuration.
     */
    shape?: string;
    /**
     * A filter to return only resources if their `lifecycleState` matches the given `lifecycleState`.
     */
    state?: string;
}
/**
 * A collection of values returned by getConfigurations.
 */
export interface GetConfigurationsResult {
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment that contains the configuration.
     */
    readonly compartmentId?: string;
    /**
     * The type of configuration. Either user-created or a default configuration.
     */
    readonly configType?: string;
    /**
     * The list of configuration_collection.
     */
    readonly configurationCollections: outputs.Psql.GetConfigurationsConfigurationCollection[];
    readonly configurationId?: string;
    /**
     * Version of the PostgreSQL database.
     */
    readonly dbVersion?: string;
    /**
     * A user-friendly display name for the configuration. Avoid entering confidential information.
     */
    readonly displayName?: string;
    readonly filters?: outputs.Psql.GetConfigurationsFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Memory size in gigabytes with 1GB increment.
     */
    readonly instanceMemorySizeInGbs?: number;
    /**
     * CPU core count.
     */
    readonly instanceOcpuCount?: number;
    /**
     * The name of the shape for the configuration.
     */
    readonly shape: string;
    /**
     * The current state of the configuration.
     */
    readonly state?: string;
}
/**
 * This data source provides the list of Configurations in Oracle Cloud Infrastructure Psql service.
 *
 * Returns a list of configurations.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testConfigurations = oci.psql.getConfigurations({
 *     compartmentId: compartmentId,
 *     configType: configurationConfigType,
 *     configurationId: testConfiguration.id,
 *     dbVersion: configurationDbVersion,
 *     displayName: configurationDisplayName,
 *     instanceMemorySizeInGbs: Number(configurationInstanceMemorySizeInGbs),
 *     instanceOcpuCount: Number(configurationInstanceOcpuCount),
 *     shape: configurationShape,
 *     state: configurationState,
 * });
 * ```
 */
export declare function getConfigurationsOutput(args?: GetConfigurationsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetConfigurationsResult>;
/**
 * A collection of arguments for invoking getConfigurations.
 */
export interface GetConfigurationsOutputArgs {
    /**
     * The ID of the compartment in which to list resources.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only resources if their `configType` matches the given `configType`.
     */
    configType?: pulumi.Input<string | undefined>;
    /**
     * A unique identifier for the configuration.
     */
    configurationId?: pulumi.Input<string | undefined>;
    /**
     * Version of the PostgreSQL database, such as 14.9.
     */
    dbVersion?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only resources that match the entire display name given.
     */
    displayName?: pulumi.Input<string | undefined>;
    filters?: pulumi.Input<pulumi.Input<inputs.Psql.GetConfigurationsFilterArgs>[] | undefined>;
    /**
     * The instance memory size in GBs for the configuration.
     */
    instanceMemorySizeInGbs?: pulumi.Input<number | undefined>;
    /**
     * The instance ocpu count for the configuration.
     */
    instanceOcpuCount?: pulumi.Input<number | undefined>;
    /**
     * The compute name of the shape for the configuration.
     */
    shape?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only resources if their `lifecycleState` matches the given `lifecycleState`.
     */
    state?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getConfigurations.d.ts.map