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 Dr Plans in Oracle Cloud Infrastructure Disaster Recovery service.
 *
 * Get a summary list of all DR plans for a DR protection group.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testDrPlans = oci.disasterrecovery.getDrPlans({
 *     drProtectionGroupId: testDrProtectionGroup.id,
 *     displayName: drPlanDisplayName,
 *     drPlanId: testDrPlan.id,
 *     drPlanType: drPlanDrPlanType,
 *     lifecycleSubState: drPlanLifecycleSubState,
 *     state: drPlanState,
 * });
 * ```
 */
export declare function getDrPlans(args: GetDrPlansArgs, opts?: pulumi.InvokeOptions): Promise<GetDrPlansResult>;
/**
 * A collection of arguments for invoking getDrPlans.
 */
export interface GetDrPlansArgs {
    /**
     * A filter to return only resources that match the given display name.  Example: `MyResourceDisplayName`
     */
    displayName?: string;
    /**
     * The OCID of the DR plan.  Example: `ocid1.drplan.oc1..uniqueID`
     */
    drPlanId?: string;
    /**
     * The DR plan type.
     */
    drPlanType?: string;
    /**
     * The OCID of the DR protection group. Mandatory query param.  Example: `ocid1.drprotectiongroup.oc1..uniqueID`
     */
    drProtectionGroupId: string;
    filters?: inputs.DisasterRecovery.GetDrPlansFilter[];
    /**
     * A filter to return only DR plans that match the given lifecycle sub-state.
     */
    lifecycleSubState?: string;
    /**
     * A filter to return only DR plans that match the given lifecycle state.
     */
    state?: string;
}
/**
 * A collection of values returned by getDrPlans.
 */
export interface GetDrPlansResult {
    /**
     * The display name of the group.  Example: `DATABASE_SWITCHOVER`
     */
    readonly displayName?: string;
    /**
     * The list of dr_plan_collection.
     */
    readonly drPlanCollections: outputs.DisasterRecovery.GetDrPlansDrPlanCollection[];
    readonly drPlanId?: string;
    readonly drPlanType?: string;
    /**
     * The OCID of the DR protection group to which this DR plan belongs.  Example: `ocid1.drplan.oc1..uniqueID`
     */
    readonly drProtectionGroupId: string;
    readonly filters?: outputs.DisasterRecovery.GetDrPlansFilter[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * The current state of the DR plan.
     */
    readonly lifecycleSubState?: string;
    /**
     * The current state of the DR plan.
     */
    readonly state?: string;
}
/**
 * This data source provides the list of Dr Plans in Oracle Cloud Infrastructure Disaster Recovery service.
 *
 * Get a summary list of all DR plans for a DR protection group.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testDrPlans = oci.disasterrecovery.getDrPlans({
 *     drProtectionGroupId: testDrProtectionGroup.id,
 *     displayName: drPlanDisplayName,
 *     drPlanId: testDrPlan.id,
 *     drPlanType: drPlanDrPlanType,
 *     lifecycleSubState: drPlanLifecycleSubState,
 *     state: drPlanState,
 * });
 * ```
 */
export declare function getDrPlansOutput(args: GetDrPlansOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetDrPlansResult>;
/**
 * A collection of arguments for invoking getDrPlans.
 */
export interface GetDrPlansOutputArgs {
    /**
     * A filter to return only resources that match the given display name.  Example: `MyResourceDisplayName`
     */
    displayName?: pulumi.Input<string | undefined>;
    /**
     * The OCID of the DR plan.  Example: `ocid1.drplan.oc1..uniqueID`
     */
    drPlanId?: pulumi.Input<string | undefined>;
    /**
     * The DR plan type.
     */
    drPlanType?: pulumi.Input<string | undefined>;
    /**
     * The OCID of the DR protection group. Mandatory query param.  Example: `ocid1.drprotectiongroup.oc1..uniqueID`
     */
    drProtectionGroupId: pulumi.Input<string>;
    filters?: pulumi.Input<pulumi.Input<inputs.DisasterRecovery.GetDrPlansFilterArgs>[] | undefined>;
    /**
     * A filter to return only DR plans that match the given lifecycle sub-state.
     */
    lifecycleSubState?: pulumi.Input<string | undefined>;
    /**
     * A filter to return only DR plans that match the given lifecycle state.
     */
    state?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getDrPlans.d.ts.map