import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../../types/output"; /** * Creates a new Restore for the given RestorePlan. * Auto-naming is currently not supported for this resource. */ export declare class Restore extends pulumi.CustomResource { /** * Get an existing Restore 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Restore; /** * Returns true if the given object is an instance of Restore. 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 Restore; /** * Immutable. A reference to the Backup used as the source from which this Restore will restore. Note that this Backup must be a sub-resource of the RestorePlan's backup_plan. Format: `projects/*/locations/*/backupPlans/*/backups/*`. */ readonly backup: pulumi.Output; /** * The target cluster into which this Restore will restore data. Valid formats: - `projects/*/locations/*/clusters/*` - `projects/*/zones/*/clusters/*` Inherited from parent RestorePlan's cluster value. */ readonly cluster: pulumi.Output; /** * Timestamp of when the restore operation completed. */ readonly completeTime: pulumi.Output; /** * The timestamp when this Restore resource was created. */ readonly createTime: pulumi.Output; /** * User specified descriptive string for this Restore. */ readonly description: pulumi.Output; /** * `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a restore from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform restore updates in order to avoid race conditions: An `etag` is returned in the response to `GetRestore`, and systems are expected to put that etag in the request to `UpdateRestore` or `DeleteRestore` to ensure that their change will be applied to the same version of the resource. */ readonly etag: pulumi.Output; /** * A set of custom labels supplied by user. */ readonly labels: pulumi.Output<{ [key: string]: string; }>; readonly location: pulumi.Output; /** * The full name of the Restore resource. Format: `projects/*/locations/*/restorePlans/*/restores/*` */ readonly name: pulumi.Output; readonly project: pulumi.Output; /** * Number of resources excluded during the restore execution. */ readonly resourcesExcludedCount: pulumi.Output; /** * Number of resources that failed to be restored during the restore execution. */ readonly resourcesFailedCount: pulumi.Output; /** * Number of resources restored during the restore execution. */ readonly resourcesRestoredCount: pulumi.Output; /** * Configuration of the Restore. Inherited from parent RestorePlan's restore_config. */ readonly restoreConfig: pulumi.Output; /** * Required. The client-provided short name for the Restore resource. This name must: - be between 1 and 63 characters long (inclusive) - consist of only lower-case ASCII letters, numbers, and dashes - start with a lower-case letter - end with a lower-case letter or number - be unique within the set of Restores in this RestorePlan. */ readonly restoreId: pulumi.Output; readonly restorePlanId: pulumi.Output; /** * The current state of the Restore. */ readonly state: pulumi.Output; /** * Human-readable description of why the Restore is in its current state. */ readonly stateReason: pulumi.Output; /** * Server generated global unique identifier of [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier) format. */ readonly uid: pulumi.Output; /** * The timestamp when this Restore resource was last updated. */ readonly updateTime: pulumi.Output; /** * Number of volumes restored during the restore execution. */ readonly volumesRestoredCount: pulumi.Output; /** * Create a Restore 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: RestoreArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Restore resource. */ export interface RestoreArgs { /** * Immutable. A reference to the Backup used as the source from which this Restore will restore. Note that this Backup must be a sub-resource of the RestorePlan's backup_plan. Format: `projects/*/locations/*/backupPlans/*/backups/*`. */ backup: pulumi.Input; /** * User specified descriptive string for this Restore. */ description?: pulumi.Input; /** * A set of custom labels supplied by user. */ labels?: pulumi.Input<{ [key: string]: pulumi.Input; }>; location?: pulumi.Input; project?: pulumi.Input; /** * Required. The client-provided short name for the Restore resource. This name must: - be between 1 and 63 characters long (inclusive) - consist of only lower-case ASCII letters, numbers, and dashes - start with a lower-case letter - end with a lower-case letter or number - be unique within the set of Restores in this RestorePlan. */ restoreId: pulumi.Input; restorePlanId: pulumi.Input; }