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 Workspaces in Oracle Cloud Infrastructure Data Integration service.
 *
 * Retrieves a list of Data Integration workspaces.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testWorkspaces = oci.dataintegration.getWorkspaces({
 *     compartmentId: compartmentId,
 *     name: workspaceName,
 *     state: workspaceState,
 * });
 * ```
 */
export declare function getWorkspaces(args: GetWorkspacesArgs, opts?: pulumi.InvokeOptions): Promise<GetWorkspacesResult>;
/**
 * A collection of arguments for invoking getWorkspaces.
 */
export interface GetWorkspacesArgs {
    /**
     * The OCID of the compartment containing the resources you want to list.
     */
    compartmentId: string;
    filters?: inputs.DataIntegration.GetWorkspacesFilter[];
    /**
     * Used to filter by the name of the object.
     */
    name?: string;
    /**
     * The lifecycle state of a resource. When specified, the operation only returns resources that match the given lifecycle state. When not specified, all lifecycle states are processed as a match.
     */
    state?: string;
}
/**
 * A collection of values returned by getWorkspaces.
 */
export interface GetWorkspacesResult {
    /**
     * The OCID of the compartment that contains the workspace.
     */
    readonly compartmentId: string;
    readonly filters?: outputs.DataIntegration.GetWorkspacesFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly name?: string;
    /**
     * Lifecycle states for workspaces in Data Integration Service CREATING - The resource is being created and may not be usable until the entire metadata is defined UPDATING - The resource is being updated and may not be usable until all changes are commited DELETING - The resource is being deleted and might require deep cleanup of children. ACTIVE   - The resource is valid and available for access INACTIVE - The resource might be incomplete in its definition or might have been made unavailable for administrative reasons DELETED  - The resource has been deleted and isn't available FAILED   - The resource is in a failed state due to validation or other errors STARTING - The resource is being started and may not be usable until becomes ACTIVE again STOPPING - The resource is in the process of Stopping and may not be usable until it Stops or fails STOPPED  - The resource is in Stopped state due to stop operation.
     */
    readonly state?: string;
    /**
     * The list of workspaces.
     */
    readonly workspaces: outputs.DataIntegration.GetWorkspacesWorkspace[];
}
/**
 * This data source provides the list of Workspaces in Oracle Cloud Infrastructure Data Integration service.
 *
 * Retrieves a list of Data Integration workspaces.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testWorkspaces = oci.dataintegration.getWorkspaces({
 *     compartmentId: compartmentId,
 *     name: workspaceName,
 *     state: workspaceState,
 * });
 * ```
 */
export declare function getWorkspacesOutput(args: GetWorkspacesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetWorkspacesResult>;
/**
 * A collection of arguments for invoking getWorkspaces.
 */
export interface GetWorkspacesOutputArgs {
    /**
     * The OCID of the compartment containing the resources you want to list.
     */
    compartmentId: pulumi.Input<string>;
    filters?: pulumi.Input<pulumi.Input<inputs.DataIntegration.GetWorkspacesFilterArgs>[] | undefined>;
    /**
     * Used to filter by the name of the object.
     */
    name?: pulumi.Input<string | undefined>;
    /**
     * The lifecycle state of a resource. When specified, the operation only returns resources that match the given lifecycle state. When not specified, all lifecycle states are processed as a match.
     */
    state?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getWorkspaces.d.ts.map