# Resource registration
<gh-file:pulumi#proto/pulumi/resource.proto>

## Services

(pulumirpc.ResourceMonitor)=
### 🔌 ResourceMonitor
ResourceMonitor is the interface a source uses to talk back to the planning monitor orchestrating the execution.


(pulumirpc.ResourceMonitor.SupportsFeature)=
#### 📞 SupportsFeature

⤵️ [SupportsFeatureRequest](#pulumirpc.SupportsFeatureRequest) ⤴️ [SupportsFeatureResponse](#pulumirpc.SupportsFeatureResponse)




(pulumirpc.ResourceMonitor.Invoke)=
#### 📞 Invoke

⤵️ [ResourceInvokeRequest](#pulumirpc.ResourceInvokeRequest) ⤴️ [InvokeResponse](#pulumirpc.InvokeResponse)




(pulumirpc.ResourceMonitor.Call)=
#### 📞 Call

⤵️ [ResourceCallRequest](#pulumirpc.ResourceCallRequest) ⤴️ [CallResponse](#pulumirpc.CallResponse)




(pulumirpc.ResourceMonitor.ReadResource)=
#### 📞 ReadResource

⤵️ [ReadResourceRequest](#pulumirpc.ReadResourceRequest) ⤴️ [ReadResourceResponse](#pulumirpc.ReadResourceResponse)




(pulumirpc.ResourceMonitor.RegisterResource)=
#### 📞 RegisterResource

⤵️ [RegisterResourceRequest](#pulumirpc.RegisterResourceRequest) ⤴️ [RegisterResourceResponse](#pulumirpc.RegisterResourceResponse)




(pulumirpc.ResourceMonitor.RegisterResourceOutputs)=
#### 📞 RegisterResourceOutputs

⤵️ [RegisterResourceOutputsRequest](#pulumirpc.RegisterResourceOutputsRequest) ⤴️ [.google.protobuf.Empty](#google.protobuf.Empty)




(pulumirpc.ResourceMonitor.RegisterStackTransform)=
#### 📞 RegisterStackTransform

⤵️ [Callback](#pulumirpc.Callback) ⤴️ [.google.protobuf.Empty](#google.protobuf.Empty)

Register a resource transform for the stack


(pulumirpc.ResourceMonitor.RegisterStackInvokeTransform)=
#### 📞 RegisterStackInvokeTransform

⤵️ [Callback](#pulumirpc.Callback) ⤴️ [.google.protobuf.Empty](#google.protobuf.Empty)

Register an invoke transform for the stack


(pulumirpc.ResourceMonitor.RegisterResourceHook)=
#### 📞 RegisterResourceHook

⤵️ [RegisterResourceHookRequest](#pulumirpc.RegisterResourceHookRequest) ⤴️ [.google.protobuf.Empty](#google.protobuf.Empty)

Register a resource hook that can be called by the engine during certain
steps of a resource's lifecycle.


(pulumirpc.ResourceMonitor.RegisterErrorHook)=
#### 📞 RegisterErrorHook

⤵️ [RegisterErrorHookRequest](#pulumirpc.RegisterErrorHookRequest) ⤴️ [.google.protobuf.Empty](#google.protobuf.Empty)

Register an error hook that can be called by the engine when an operation fails and is retryable.

Error hooks are a separate type of hook to other life cycle hooks as they have different inputs and outputs.


(pulumirpc.ResourceMonitor.RegisterPackage)=
#### 📞 RegisterPackage

⤵️ [RegisterPackageRequest](#pulumirpc.RegisterPackageRequest) ⤴️ [RegisterPackageResponse](#pulumirpc.RegisterPackageResponse)

Registers a package and allocates a packageRef. The same package can be registered multiple times in Pulumi.
Multiple requests are idempotent and guaranteed to return the same result.


(pulumirpc.ResourceMonitor.SignalAndWaitForShutdown)=
#### 📞 SignalAndWaitForShutdown

⤵️ [.google.protobuf.Empty](#google.protobuf.Empty) ⤴️ [.google.protobuf.Empty](#google.protobuf.Empty)

SignalAndWaitForShutdown lets the resource monitor know that no more
events will be generated. This call blocks until the resource monitor is
finished, which will happen once all the steps have executed. This allows
the language runtime to stay running and handle callback requests, even
after the user program has completed. Runtime SDKs should call this after
executing the user's program. This can only be called once.

## Messages
(pulumirpc.ErrorHookRequest)=
### 📨 ErrorHookRequest
ErrorHookRequest is the request object for error hook callbacks in CallbackInvokeRequest.


`urn` [string](#string)
:   the urn of the resource for which the hook is called.


`id` [string](#string)
:   the optional urn of the resource for which the hook is called.


`name` [string](#string)
:   the name of the resource for which the hook is called.


`type` [string](#string)
:   the type of the resource for which the hook is called.


`new_inputs` [google.protobuf.Struct](#google.protobuf.Struct)
:   the optional checked new inputs of the resource.


`old_inputs` [google.protobuf.Struct](#google.protobuf.Struct)
:   the optional checked old inputs of the resource.


`old_outputs` [google.protobuf.Struct](#google.protobuf.Struct)
:   the optional old outputs of the resource.


`failed_operation` [string](#string)
:   the operation that failed (create, read, update, or delete).


`errors` [string](#string)
:   the errors that have been seen so far (newest-first).

(pulumirpc.ErrorHookResponse)=
### 📨 ErrorHookResponse
ErrorHookResponse is the response object for error hook callbacks in CallbackInvokeResponse.


`error` [string](#string)
:   an optional error message to return from the hook.


`retry` [bool](#bool)
:   whether we should retry the operation.

(pulumirpc.Parameterization)=
### 📨 Parameterization



`name` [string](#string)
:   the parameterized package name.


`version` [string](#string)
:   the parameterized package version.


`value` [bytes](#bytes)
:   the parameter value for the parameterized package.

(pulumirpc.ReadResourceRequest)=
### 📨 ReadResourceRequest
ReadResourceRequest contains enough information to uniquely qualify and read a resource's state.


`id` [string](#string)
:   the ID of the resource to read.


`type` [string](#string)
:   the type of the resource object.


`name` [string](#string)
:   the name, for URN purposes, of the object.


`parent` [string](#string)
:   an optional parent URN that this child resource belongs to.


`properties` [google.protobuf.Struct](#google.protobuf.Struct)
:   optional state sufficient to uniquely identify the resource.


`dependencies` [string](#string)
:   a list of URNs that this read depends on, as observed by the language host.


`provider` [string](#string)
:   an optional reference to the provider to use for this read.


`version` [string](#string)
:   the version of the provider to use when servicing this request.


`acceptSecrets` [bool](#bool)
:   when true operations should return secrets as strongly typed.


`additionalSecretOutputs` [string](#string)
:   a list of output properties that should also be treated as secret, in addition to ones we detect.


`acceptResources` [bool](#bool)
:   when true operations should return resource references as strongly typed.


`pluginDownloadURL` [string](#string)
:   the server url of the provider to use when servicing this request.


`pluginChecksums` [ReadResourceRequest.PluginChecksumsEntry](#pulumirpc.ReadResourceRequest.PluginChecksumsEntry)
:   a map of checksums of the provider to use when servicing this request.


`sourcePosition` [SourcePosition](#pulumirpc.SourcePosition)
:   the optional source position of the user code that initiated the read.


`stackTrace` [StackTrace](#pulumirpc.StackTrace)
:   the optional stack trace at the time of the request.


`parentStackTraceHandle` [string](#string)
:   the optional parent stack trace handle for the request. Supports stitching stack traces across plugins.


`packageRef` [string](#string)
:   a reference from RegisterPackageRequest.

(pulumirpc.ReadResourceRequest.PluginChecksumsEntry)=
### 📨 PluginChecksumsEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [bytes](#bytes)
: &lt;No description&gt;

(pulumirpc.ReadResourceResponse)=
### 📨 ReadResourceResponse
ReadResourceResponse contains the result of reading a resource's state.


`urn` [string](#string)
:   the URN for this resource.


`properties` [google.protobuf.Struct](#google.protobuf.Struct)
:   the state of the resource read from the live environment.

(pulumirpc.RegisterErrorHookRequest)=
### 📨 RegisterErrorHookRequest



`name` [string](#string)
:   The name of the hook. Must be unique within a program, registering the
  same name twice is an error.


`callback` [Callback](#pulumirpc.Callback)
:   the callback that the engine can call to run the hook.

(pulumirpc.RegisterPackageRequest)=
### 📨 RegisterPackageRequest



`name` [string](#string)
:   the plugin name.


`version` [string](#string)
:   the plugin version.


`download_url` [string](#string)
:   the optional plugin download url.


`checksums` [RegisterPackageRequest.ChecksumsEntry](#pulumirpc.RegisterPackageRequest.ChecksumsEntry)
:   the optional plugin checksums.


`parameterization` [Parameterization](#pulumirpc.Parameterization)
:   the optional parameterization for this package.

(pulumirpc.RegisterPackageRequest.ChecksumsEntry)=
### 📨 ChecksumsEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [bytes](#bytes)
: &lt;No description&gt;

(pulumirpc.RegisterPackageResponse)=
### 📨 RegisterPackageResponse



`ref` [string](#string)
:   The UUID package reference for this registered package.
  
  Lifecycle methods accept this reference in the 'packageRef' field.

(pulumirpc.RegisterResourceHookRequest)=
### 📨 RegisterResourceHookRequest



`name` [string](#string)
:   The name of the hook. Must be unique within a program, registering the
  same name twice is an error.


`callback` [Callback](#pulumirpc.Callback)
:   the callback that the engine can call to run the hook.


`on_dry_run` [bool](#bool)
:   whether to run the hook on dry runs.

(pulumirpc.RegisterResourceOutputsRequest)=
### 📨 RegisterResourceOutputsRequest
RegisterResourceOutputsRequest adds extra resource outputs created by the program after registration has occurred.


`urn` [string](#string)
:   the URN for the resource to attach output properties to.


`outputs` [google.protobuf.Struct](#google.protobuf.Struct)
:   additional output properties to add to the existing resource.

(pulumirpc.RegisterResourceRequest)=
### 📨 RegisterResourceRequest
RegisterResourceRequest contains information about a resource object that was newly allocated.


`type` [string](#string)
:   the type of the object allocated.


`name` [string](#string)
:   the name, for URN purposes, of the object.


`parent` [string](#string)
:   an optional parent URN that this child resource belongs to.


`custom` [bool](#bool)
:   true if the resource is a custom, managed by a plugin's CRUD operations.


`object` [google.protobuf.Struct](#google.protobuf.Struct)
:   an object produced by the interpreter/source.


`protect` [bool](#bool)
:   true if the resource should be marked protected.


`dependencies` [string](#string)
:   a list of URNs that this resource depends on, as observed by the language host.


`provider` [string](#string)
:   an optional reference to the provider to manage this resource's CRUD operations.


`propertyDependencies` [RegisterResourceRequest.PropertyDependenciesEntry](#pulumirpc.RegisterResourceRequest.PropertyDependenciesEntry)
:   a map from property keys to the dependencies of the property.


`deleteBeforeReplace` [bool](#bool)
:   true if this resource should be deleted before replacement.


`version` [string](#string)
:   the version of the provider to use when servicing this request.


`ignoreChanges` [string](#string)
:   a list of property selectors to ignore during updates.


`acceptSecrets` [bool](#bool)
:   when true operations should return secrets as strongly typed.


`additionalSecretOutputs` [string](#string)
:   a list of output properties that should also be treated as secret, in addition to ones we detect.


`aliasURNs` [string](#string)
:   a list of additional URNs that should be considered the same.


`importId` [string](#string)
:   if set, this resource's state should be imported from the given ID.


`customTimeouts` [RegisterResourceRequest.CustomTimeouts](#pulumirpc.RegisterResourceRequest.CustomTimeouts)
:   ability to pass a custom Timeout block.


`deleteBeforeReplaceDefined` [bool](#bool)
:   true if the deleteBeforeReplace property should be treated as defined even if it is false.


`supportsPartialValues` [bool](#bool)
:   true if the request is from an SDK that supports partially-known properties during preview.


`remote` [bool](#bool)
:   true if the resource is a plugin-managed component resource.


`acceptResources` [bool](#bool)
:   when true operations should return resource references as strongly typed.


`providers` [RegisterResourceRequest.ProvidersEntry](#pulumirpc.RegisterResourceRequest.ProvidersEntry)
:   an optional reference to the provider map to manage this resource's CRUD operations.


`replaceOnChanges` [string](#string)
:   a list of properties that if changed should force a replacement.


`pluginDownloadURL` [string](#string)
:   the server URL of the provider to use when servicing this request.


`pluginChecksums` [RegisterResourceRequest.PluginChecksumsEntry](#pulumirpc.RegisterResourceRequest.PluginChecksumsEntry)
:   a map of checksums expected for the provider plugin.


`retainOnDelete` [bool](#bool)
:   if true the engine will not call the resource providers delete method for this resource.


`aliases` [Alias](#pulumirpc.Alias)
:   a list of additional aliases that should be considered the same.


`deletedWith` [string](#string)
:   if set the engine will not call the resource providers delete method for this resource when specified resource is deleted.


`replace_with` [string](#string)
:   if set the engine will replace this resource when any of the specified resources are replaced.


`replacement_trigger` [google.protobuf.Value](#google.protobuf.Value)
:   if set, the engine will diff this with the last recorded value, and trigger a replace if they are not equal.


`aliasSpecs` [bool](#bool)
:   Indicates that alias specs are specified correctly according to the spec.
  Older versions of the Node.js SDK did not send alias specs correctly.
  If this is not set to true and the engine detects the request is from the
  Node.js runtime, the engine will transform incorrect alias specs into
  correct ones.
  Other SDKs that are correctly specifying alias specs could set this to
  true, but it's not necessary.


`sourcePosition` [SourcePosition](#pulumirpc.SourcePosition)
:   the optional source position of the user code that initiated the register.


`stackTrace` [StackTrace](#pulumirpc.StackTrace)
:   the optional stack trace at the time of the request.


`parentStackTraceHandle` [string](#string)
:   the optional parent stack trace handle for the request. Supports stitching stack traces across plugins.


`transforms` [Callback](#pulumirpc.Callback)
:   a list of transforms to apply to the resource before registering it.


`supportsResultReporting` [bool](#bool)
:   true if the request is from an SDK that supports the result field in the response.


`packageRef` [string](#string)
:   a reference from RegisterPackageRequest.


`hooks` [RegisterResourceRequest.ResourceHooksBinding](#pulumirpc.RegisterResourceRequest.ResourceHooksBinding)
:   The resource hooks that should run at certain points in the resource's lifecycle.


`hideDiffs` [string](#string)
: &lt;No description&gt;


`envVarMappings` [RegisterResourceRequest.EnvVarMappingsEntry](#pulumirpc.RegisterResourceRequest.EnvVarMappingsEntry)
:   environment variable remappings for provider resources (NEW_KEY -> OLD_KEY)

(pulumirpc.RegisterResourceRequest.CustomTimeouts)=
### 📨 CustomTimeouts
CustomTimeouts allows a user to be able to create a set of custom timeout parameters.


`create` [string](#string)
:   The create resource timeout represented as a string e.g. 5m.


`update` [string](#string)
:   The update resource timeout represented as a string e.g. 5m.


`delete` [string](#string)
:   The delete resource timeout represented as a string e.g. 5m.

(pulumirpc.RegisterResourceRequest.EnvVarMappingsEntry)=
### 📨 EnvVarMappingsEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [string](#string)
: &lt;No description&gt;

(pulumirpc.RegisterResourceRequest.PluginChecksumsEntry)=
### 📨 PluginChecksumsEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [bytes](#bytes)
: &lt;No description&gt;

(pulumirpc.RegisterResourceRequest.PropertyDependencies)=
### 📨 PropertyDependencies
PropertyDependencies describes the resources that a particular property depends on.


`urns` [string](#string)
:   A list of URNs this property depends on.

(pulumirpc.RegisterResourceRequest.PropertyDependenciesEntry)=
### 📨 PropertyDependenciesEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [RegisterResourceRequest.PropertyDependencies](#pulumirpc.RegisterResourceRequest.PropertyDependencies)
: &lt;No description&gt;

(pulumirpc.RegisterResourceRequest.ProvidersEntry)=
### 📨 ProvidersEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [string](#string)
: &lt;No description&gt;

(pulumirpc.RegisterResourceRequest.ResourceHooksBinding)=
### 📨 ResourceHooksBinding



`before_create` [string](#string)
: &lt;No description&gt;


`after_create` [string](#string)
: &lt;No description&gt;


`before_update` [string](#string)
: &lt;No description&gt;


`after_update` [string](#string)
: &lt;No description&gt;


`before_delete` [string](#string)
: &lt;No description&gt;


`after_delete` [string](#string)
: &lt;No description&gt;


`on_error` [string](#string)
: &lt;No description&gt;

(pulumirpc.RegisterResourceResponse)=
### 📨 RegisterResourceResponse
RegisterResourceResponse is returned by the engine after a resource has finished being initialized.  It includes the
auto-assigned URN, the provider-assigned ID, and any other properties initialized by the engine.


`urn` [string](#string)
:   the URN assigned by the engine.


`id` [string](#string)
:   the unique ID assigned by the provider.


`object` [google.protobuf.Struct](#google.protobuf.Struct)
:   the resulting object properties, including provider defaults.


`stable` [bool](#bool)
:   if true, the object's state is stable and may be trusted not to change.


`stables` [string](#string)
:   an optional list of guaranteed-stable properties.


`propertyDependencies` [RegisterResourceResponse.PropertyDependenciesEntry](#pulumirpc.RegisterResourceResponse.PropertyDependenciesEntry)
:   a map from property keys to the dependencies of the property.


`result` [Result](#pulumirpc.Result)
:   the reason, whether the resource registration was successful, failed, or skipped.

(pulumirpc.RegisterResourceResponse.PropertyDependencies)=
### 📨 PropertyDependencies
PropertyDependencies describes the resources that a particular property depends on.


`urns` [string](#string)
:   A list of URNs this property depends on.

(pulumirpc.RegisterResourceResponse.PropertyDependenciesEntry)=
### 📨 PropertyDependenciesEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [RegisterResourceResponse.PropertyDependencies](#pulumirpc.RegisterResourceResponse.PropertyDependencies)
: &lt;No description&gt;

(pulumirpc.ResourceCallRequest)=
### 📨 ResourceCallRequest



`tok` [string](#string)
:   the function token to invoke.


`args` [google.protobuf.Struct](#google.protobuf.Struct)
:   the arguments for the function invocation.


`argDependencies` [ResourceCallRequest.ArgDependenciesEntry](#pulumirpc.ResourceCallRequest.ArgDependenciesEntry)
:   a map from argument keys to the dependencies of the argument.


`provider` [string](#string)
:   an optional reference to the provider to use for this invoke.


`version` [string](#string)
:   the version of the provider to use when servicing this request.


`pluginDownloadURL` [string](#string)
:   the pluginDownloadURL of the provider to use when servicing this request.


`pluginChecksums` [ResourceCallRequest.PluginChecksumsEntry](#pulumirpc.ResourceCallRequest.PluginChecksumsEntry)
:   a map of checksums of the provider to use when servicing this request.


`sourcePosition` [SourcePosition](#pulumirpc.SourcePosition)
:   the optional source position of the user code that initiated the call.


`stackTrace` [StackTrace](#pulumirpc.StackTrace)
:   the optional stack trace at the time of the request.


`parentStackTraceHandle` [string](#string)
:   the optional parent stack trace handle for the request. Supports stitching stack traces across plugins.


`packageRef` [string](#string)
:   a reference from RegisterPackageRequest.

(pulumirpc.ResourceCallRequest.ArgDependenciesEntry)=
### 📨 ArgDependenciesEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [ResourceCallRequest.ArgumentDependencies](#pulumirpc.ResourceCallRequest.ArgumentDependencies)
: &lt;No description&gt;

(pulumirpc.ResourceCallRequest.ArgumentDependencies)=
### 📨 ArgumentDependencies
ArgumentDependencies describes the resources that a particular argument depends on.


`urns` [string](#string)
:   A list of URNs this argument depends on.

(pulumirpc.ResourceCallRequest.PluginChecksumsEntry)=
### 📨 PluginChecksumsEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [bytes](#bytes)
: &lt;No description&gt;

(pulumirpc.ResourceHookRequest)=
### 📨 ResourceHookRequest
ResourceHookRequest is the request object for resource hook callbacks in CallbackInvokeRequest.


`urn` [string](#string)
:   the urn of the resource for which the hook is called.


`id` [string](#string)
:   the optional urn of the resource for which the hook is called.


`name` [string](#string)
:   the name of the resource for which the hook is called.


`type` [string](#string)
:   the type of the resource for which the hook is called.


`new_inputs` [google.protobuf.Struct](#google.protobuf.Struct)
:   the optional checked new inputs of the resource.


`old_inputs` [google.protobuf.Struct](#google.protobuf.Struct)
:   the optional checked old inputs of the resource.


`new_outputs` [google.protobuf.Struct](#google.protobuf.Struct)
:   the optional new outputs of the resource.


`old_outputs` [google.protobuf.Struct](#google.protobuf.Struct)
:   the optional old outputs of the resource.

(pulumirpc.ResourceHookResponse)=
### 📨 ResourceHookResponse
ResourceHookResponse is the response object for resource hook callbacks in CallbackInvokeResponse.


`error` [string](#string)
:   an optional error message to return from the hook.

(pulumirpc.ResourceInvokeRequest)=
### 📨 ResourceInvokeRequest



`tok` [string](#string)
:   the function token to invoke.


`args` [google.protobuf.Struct](#google.protobuf.Struct)
:   the arguments for the function invocation.


`provider` [string](#string)
:   an optional reference to the provider version to use for this invoke.


`version` [string](#string)
:   the version of the provider to use when servicing this request.


`acceptResources` [bool](#bool)
:   when true operations should return resource references as strongly typed.


`pluginDownloadURL` [string](#string)
:   an optional reference to the provider url to use for this invoke.


`pluginChecksums` [ResourceInvokeRequest.PluginChecksumsEntry](#pulumirpc.ResourceInvokeRequest.PluginChecksumsEntry)
:   a map of checksums expected for the provider plugin.


`sourcePosition` [SourcePosition](#pulumirpc.SourcePosition)
:   the optional source position of the user code that initiated the invoke.


`stackTrace` [StackTrace](#pulumirpc.StackTrace)
:   the optional stack trace at the time of the request.


`parentStackTraceHandle` [string](#string)
:   the optional parent stack trace handle for the request. Supports stitching stack traces across plugins.


`packageRef` [string](#string)
:   a reference from RegisterPackageRequest.

(pulumirpc.ResourceInvokeRequest.PluginChecksumsEntry)=
### 📨 PluginChecksumsEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [bytes](#bytes)
: &lt;No description&gt;

(pulumirpc.SupportsFeatureRequest)=
### 📨 SupportsFeatureRequest
SupportsFeatureRequest allows a client to test if the resource monitor supports a certain feature, which it may use
to control the format or types of messages it sends.


`id` [string](#string)
:   the ID of the feature to test support for.

(pulumirpc.SupportsFeatureResponse)=
### 📨 SupportsFeatureResponse



`hasSupport` [bool](#bool)
:   true when the resource monitor supports this feature.

(pulumirpc.TransformInvokeOptions)=
### 📨 TransformInvokeOptions
TransformInvokeOptions is a subset of all invoke options that are relevant to transforms.


`provider` [string](#string)
: &lt;No description&gt;


`plugin_download_url` [string](#string)
: &lt;No description&gt;


`version` [string](#string)
: &lt;No description&gt;


`plugin_checksums` [TransformInvokeOptions.PluginChecksumsEntry](#pulumirpc.TransformInvokeOptions.PluginChecksumsEntry)
: &lt;No description&gt;

(pulumirpc.TransformInvokeOptions.PluginChecksumsEntry)=
### 📨 PluginChecksumsEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [bytes](#bytes)
: &lt;No description&gt;

(pulumirpc.TransformInvokeRequest)=
### 📨 TransformInvokeRequest
TransformInvokeRequest is the request object for the TransformInvoke RPC.


`token` [string](#string)
:   the token for the invoke request.


`args` [google.protobuf.Struct](#google.protobuf.Struct)
:   the input args of the resource.


`options` [TransformInvokeOptions](#pulumirpc.TransformInvokeOptions)
:   the options for the resource.

(pulumirpc.TransformInvokeResponse)=
### 📨 TransformInvokeResponse
TransformInvokeResponse is the response object for the TransformInvoke RPC.


`args` [google.protobuf.Struct](#google.protobuf.Struct)
:   the transformed input args.


`options` [TransformInvokeOptions](#pulumirpc.TransformInvokeOptions)
:   the options for the resource.

(pulumirpc.TransformRequest)=
### 📨 TransformRequest



`type` [string](#string)
:   the type of the resource.


`name` [string](#string)
:   the name of the resource.


`custom` [bool](#bool)
:   true if the resource is a custom resource, else it's a component resource.


`parent` [string](#string)
:   the parent of the resource, this can't be changed by the transform.


`properties` [google.protobuf.Struct](#google.protobuf.Struct)
:   the input properties of the resource.


`options` [TransformResourceOptions](#pulumirpc.TransformResourceOptions)
:   the options for the resource.

(pulumirpc.TransformResourceOptions)=
### 📨 TransformResourceOptions
TransformResourceOptions is a subset of all resource options that are relevant to transforms.


`depends_on` [string](#string)
: &lt;No description&gt;


`protect` [bool](#bool)
: &lt;No description&gt;


`ignore_changes` [string](#string)
: &lt;No description&gt;


`replace_on_changes` [string](#string)
: &lt;No description&gt;


`version` [string](#string)
: &lt;No description&gt;


`aliases` [Alias](#pulumirpc.Alias)
: &lt;No description&gt;


`provider` [string](#string)
: &lt;No description&gt;


`custom_timeouts` [RegisterResourceRequest.CustomTimeouts](#pulumirpc.RegisterResourceRequest.CustomTimeouts)
: &lt;No description&gt;


`plugin_download_url` [string](#string)
: &lt;No description&gt;


`retain_on_delete` [bool](#bool)
: &lt;No description&gt;


`deleted_with` [string](#string)
: &lt;No description&gt;


`delete_before_replace` [bool](#bool)
: &lt;No description&gt;


`additional_secret_outputs` [string](#string)
: &lt;No description&gt;


`providers` [TransformResourceOptions.ProvidersEntry](#pulumirpc.TransformResourceOptions.ProvidersEntry)
: &lt;No description&gt;


`plugin_checksums` [TransformResourceOptions.PluginChecksumsEntry](#pulumirpc.TransformResourceOptions.PluginChecksumsEntry)
: &lt;No description&gt;


`hooks` [RegisterResourceRequest.ResourceHooksBinding](#pulumirpc.RegisterResourceRequest.ResourceHooksBinding)
: &lt;No description&gt;


`import` [string](#string)
: &lt;No description&gt;


`hide_diff` [string](#string)
: &lt;No description&gt;


`replace_with` [string](#string)
: &lt;No description&gt;


`replacement_trigger` [google.protobuf.Value](#google.protobuf.Value)
: &lt;No description&gt;

(pulumirpc.TransformResourceOptions.PluginChecksumsEntry)=
### 📨 PluginChecksumsEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [bytes](#bytes)
: &lt;No description&gt;

(pulumirpc.TransformResourceOptions.ProvidersEntry)=
### 📨 ProvidersEntry



`key` [string](#string)
: &lt;No description&gt;


`value` [string](#string)
: &lt;No description&gt;

(pulumirpc.TransformResponse)=
### 📨 TransformResponse



`properties` [google.protobuf.Struct](#google.protobuf.Struct)
:   the transformed input properties.


`options` [TransformResourceOptions](#pulumirpc.TransformResourceOptions)
:   the options for the resource.

