syntax = "proto3";
package generated;
option go_package = "github.com/vmware-tanzu/velero/pkg/plugin/generated";

import "Shared.proto";

message RestoreItemActionExecuteRequest {
    string plugin = 1;
    bytes item = 2;
    bytes restore = 3;
    bytes itemFromBackup = 4;
}

message RestoreItemActionExecuteResponse {
    bytes item = 1;
    repeated ResourceIdentifier additionalItems = 2;
    bool skipRestore = 3;
}

service RestoreItemAction {
    rpc AppliesTo(RestoreItemActionAppliesToRequest) returns (RestoreItemActionAppliesToResponse);
    rpc Execute(RestoreItemActionExecuteRequest) returns (RestoreItemActionExecuteResponse);
}

message RestoreItemActionAppliesToRequest {
    string plugin = 1;
}

message RestoreItemActionAppliesToResponse {
    ResourceSelector ResourceSelector = 1;
}
