import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
* This operation Restore a recovery point identified by {extId}.
* A comma separated list of the created VM and volume group external identifiers can be found in the task completion details under the keys `vmExtIds` and `volumeGroupExtIds` respectively.
*
* ## Example Usage
*
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as nutanix from "@pierskarsenbarg/nutanix";
*
* // restore RP
* const rp_restore = new nutanix.RecoveryPointRestoreV2("rp-restore", {
* extId: "150a7ed0-9d05-4f35-a060-16dac4c835d0",
* clusterExtId: "1cefd0f5-6d38-4c9b-a07c-bdd2db004224",
* vmRecoveryPointRestoreOverrides: [{
* vmRecoveryPointExtId: "1cefd0f5-6d38-4c9b-a07c-bdd2db004224",
* }],
* volumeGroupRecoveryPointRestoreOverrides: [{
* volumeGroupRecoveryPointExtId: "8a938cc5-282b-48c4-81be-de22de145d07",
* volumeGroupOverrideSpecs: [{
* name: "vg_restored",
* }],
* }],
* });
* ```
*
*/
export declare class RecoveryPointRestoreV2 extends pulumi.CustomResource {
/**
* Get an existing RecoveryPointRestoreV2 resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input, state?: RecoveryPointRestoreV2State, opts?: pulumi.CustomResourceOptions): RecoveryPointRestoreV2;
/**
* Returns true if the given object is an instance of RecoveryPointRestoreV2. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is RecoveryPointRestoreV2;
/**
* -(Required) External identifier of the cluster.
*/
readonly clusterExtId: pulumi.Output;
/**
* -(Required) The external identifier that can be used to retrieve the recovery point using its URL.
*/
readonly extId: pulumi.Output;
/**
* - List of external identifiers of the created(restored) VMs.
*/
readonly vmExtIds: pulumi.Output;
/**
* -(Optional) List of specifications to restore a specific VM recovery point(s) that are a part of the top-level recovery point. A specific VM recovery point can be selected for restore by specifying its external identifier along with override specification (if any).
*/
readonly vmRecoveryPointRestoreOverrides: pulumi.Output;
/**
* - List of external identifiers of the created(restored) volume groups.
*/
readonly volumeGroupExtIds: pulumi.Output;
/**
* -(Optional) List of specifications to restore a specific volume group recovery point(s) that are a part of the top-level recovery point. A specific volume group recovery point can be selected for restore by specifying its external identifier along with override specification (if any).
*/
readonly volumeGroupRecoveryPointRestoreOverrides: pulumi.Output;
/**
* Create a RecoveryPointRestoreV2 resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: RecoveryPointRestoreV2Args, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering RecoveryPointRestoreV2 resources.
*/
export interface RecoveryPointRestoreV2State {
/**
* -(Required) External identifier of the cluster.
*/
clusterExtId?: pulumi.Input;
/**
* -(Required) The external identifier that can be used to retrieve the recovery point using its URL.
*/
extId?: pulumi.Input;
/**
* - List of external identifiers of the created(restored) VMs.
*/
vmExtIds?: pulumi.Input[] | undefined>;
/**
* -(Optional) List of specifications to restore a specific VM recovery point(s) that are a part of the top-level recovery point. A specific VM recovery point can be selected for restore by specifying its external identifier along with override specification (if any).
*/
vmRecoveryPointRestoreOverrides?: pulumi.Input[] | undefined>;
/**
* - List of external identifiers of the created(restored) volume groups.
*/
volumeGroupExtIds?: pulumi.Input[] | undefined>;
/**
* -(Optional) List of specifications to restore a specific volume group recovery point(s) that are a part of the top-level recovery point. A specific volume group recovery point can be selected for restore by specifying its external identifier along with override specification (if any).
*/
volumeGroupRecoveryPointRestoreOverrides?: pulumi.Input[] | undefined>;
}
/**
* The set of arguments for constructing a RecoveryPointRestoreV2 resource.
*/
export interface RecoveryPointRestoreV2Args {
/**
* -(Required) External identifier of the cluster.
*/
clusterExtId: pulumi.Input;
/**
* -(Required) The external identifier that can be used to retrieve the recovery point using its URL.
*/
extId: pulumi.Input;
/**
* -(Optional) List of specifications to restore a specific VM recovery point(s) that are a part of the top-level recovery point. A specific VM recovery point can be selected for restore by specifying its external identifier along with override specification (if any).
*/
vmRecoveryPointRestoreOverrides?: pulumi.Input[] | undefined>;
/**
* -(Optional) List of specifications to restore a specific volume group recovery point(s) that are a part of the top-level recovery point. A specific volume group recovery point can be selected for restore by specifying its external identifier along with override specification (if any).
*/
volumeGroupRecoveryPointRestoreOverrides?: pulumi.Input[] | undefined>;
}
//# sourceMappingURL=recoveryPointRestoreV2.d.ts.map