[{"data":1,"prerenderedAt":60},["ShallowReactive",2],{"docs:\u002Fplugins\u002Freference\u002FUnbroken.LaunchBox.Plugins.Services.Storage.IPluginSecretStore":3},{"kind":4,"title":5,"namespace":6,"namespaceUrl":7,"trail":8,"typeKind":14,"availability":15,"signature":18,"displaySignature":19,"signatureHtml":20,"documentation":21,"documented":22,"bases":23,"inheritedMembers":24,"members":25,"release":57,"section":59},"type","IPluginSecretStore","Unbroken.LaunchBox.Plugins.Services.Storage","\u002Fplugins\u002Fnamespaces\u002FUnbroken.LaunchBox.Plugins.Services.Storage",[9,12],{"title":10,"url":11},"Services","\u002Fplugins\u002Fnamespaces\u002FUnbroken.LaunchBox.Plugins.Services",{"title":13,"url":7},"Storage","Interface",{"firstSeen":16,"isBaseline":17,"declarationFirstSeen":16},"14.1",false,"public interface Unbroken.LaunchBox.Plugins.Services.Storage.IPluginSecretStore","public interface IPluginSecretStore","\u003Cpre class=\"shiki dark-plus\" style=\"background-color:#1E1E1E;color:#D4D4D4\" tabindex=\"0\" aria-label=\"C# code\">\u003Ccode>\u003Cspan class=\"line\">\u003Cspan style=\"color:#569CD6\">public\u003C\u002Fspan>\u003Cspan style=\"color:#569CD6\"> interface\u003C\u002Fspan>\u003Cspan style=\"color:#4EC9B0\"> \u003C\u002Fspan>\u003Cspan title=\"Unbroken.LaunchBox.Plugins.Services.Storage.IPluginSecretStore\">\u003Cspan style=\"color:#4EC9B0\">IPluginSecretStore\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\n            \u003Cdiv class=\"api-summary\">\n            Provides protected persistent storage scoped to the requesting plugin and current machine.\n            \u003C\u002Fdiv>\n            \u003Ch4>Remarks\u003C\u002Fh4>\n            Protected values may become unreadable after an operating-system or machine migration. Plugins should store only reacquirable secrets here and treat an unavailable value as requiring reconnection.\n            \n        ",true,[],[],[26,37,47],{"availability":27,"id":28,"name":29,"label":29,"kind":30,"summary":31,"signature":32,"displaySignature":33,"signatureHtml":34,"anchor":35,"documentation":36,"documented":22},{"firstSeen":16,"isBaseline":17,"declarationFirstSeen":16},"M:Unbroken.LaunchBox.Plugins.Services.Storage.IPluginSecretStore.GetValueAsync(Unbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreGetRequest,System.Threading.CancellationToken)","GetValueAsync","Method","Gets the requested protected value, or null when no value exists.","System.Threading.Tasks.Task\u003Cbyte[]?> GetValueAsync(Unbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreGetRequest request, System.Threading.CancellationToken cancellationToken)","Task\u003Cbyte[]?> GetValueAsync(\n    PluginSecretStoreGetRequest request,\n    CancellationToken cancellationToken\n)","\u003Cpre class=\"shiki dark-plus\" style=\"background-color:#1E1E1E;color:#D4D4D4\" tabindex=\"0\" aria-label=\"C# code\">\u003Ccode>\u003Cspan class=\"line\">\u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fdotnet\u002Fapi\u002Fsystem.threading.tasks.task-1\" title=\"System.Threading.Tasks.Task (Microsoft Learn)\">\u003Cspan style=\"color:#4EC9B0\">Task\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#D4D4D4\">&#x3C;\u003C\u002Fspan>\u003Cspan style=\"color:#569CD6\">byte\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">[]?> \u003C\u002Fspan>\u003Cspan style=\"color:#DCDCAA\">GetValueAsync\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">(\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#4EC9B0\">    \u003C\u002Fspan>\u003Ca href=\"\u002Fplugins\u002Freference\u002FUnbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreGetRequest\" title=\"Unbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreGetRequest\">\u003Cspan style=\"color:#4EC9B0\">PluginSecretStoreGetRequest\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#9CDCFE\"> request\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#4EC9B0\">    \u003C\u002Fspan>\u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fdotnet\u002Fapi\u002Fsystem.threading.cancellationtoken\" title=\"System.Threading.CancellationToken (Microsoft Learn)\">\u003Cspan style=\"color:#4EC9B0\">CancellationToken\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#9CDCFE\"> cancellationToken\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D4D4D4\">)\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","member-be778517293c0f500b04","\n            \u003Cdiv class=\"api-summary\">\n            Gets the requested protected value, or \u003Ccode>null\u003C\u002Fcode> when no value exists.\n            \u003C\u002Fdiv>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>request\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>The plugin-local key identifying the protected value.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>cancellationToken\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>A token requesting cancellation of the operation.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Ch4>Returns\u003C\u002Fh4>The unprotected bytes, or \u003Ccode>null\u003C\u002Fcode> when the key has no value.\n            \u003Cdl>\u003Cdt>Exception: \u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fdotnet\u002Fapi\u002Fsystem.io.invaliddataexception\" title=\"System.IO.InvalidDataException\">InvalidDataException\u003C\u002Fa>\u003C\u002Fdt>\u003Cdd>The saved payload is invalid or cannot be unprotected on this machine. The stored bytes are retained.\u003C\u002Fdd>\u003C\u002Fdl>\n        ",{"availability":38,"id":39,"name":40,"label":40,"kind":30,"summary":41,"signature":42,"displaySignature":43,"signatureHtml":44,"anchor":45,"documentation":46,"documented":22},{"firstSeen":16,"isBaseline":17,"declarationFirstSeen":16},"M:Unbroken.LaunchBox.Plugins.Services.Storage.IPluginSecretStore.RemoveValueAsync(Unbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreRemoveRequest,System.Threading.CancellationToken)","RemoveValueAsync","Removes the requested protected value.","System.Threading.Tasks.Task RemoveValueAsync(Unbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreRemoveRequest request, System.Threading.CancellationToken cancellationToken)","Task RemoveValueAsync(\n    PluginSecretStoreRemoveRequest request,\n    CancellationToken cancellationToken\n)","\u003Cpre class=\"shiki dark-plus\" style=\"background-color:#1E1E1E;color:#D4D4D4\" tabindex=\"0\" aria-label=\"C# code\">\u003Ccode>\u003Cspan class=\"line\">\u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fdotnet\u002Fapi\u002Fsystem.threading.tasks.task\" title=\"System.Threading.Tasks.Task (Microsoft Learn)\">\u003Cspan style=\"color:#4EC9B0\">Task\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#DCDCAA\"> RemoveValueAsync\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">(\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#4EC9B0\">    \u003C\u002Fspan>\u003Ca href=\"\u002Fplugins\u002Freference\u002FUnbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreRemoveRequest\" title=\"Unbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreRemoveRequest\">\u003Cspan style=\"color:#4EC9B0\">PluginSecretStoreRemoveRequest\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#9CDCFE\"> request\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#4EC9B0\">    \u003C\u002Fspan>\u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fdotnet\u002Fapi\u002Fsystem.threading.cancellationtoken\" title=\"System.Threading.CancellationToken (Microsoft Learn)\">\u003Cspan style=\"color:#4EC9B0\">CancellationToken\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#9CDCFE\"> cancellationToken\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D4D4D4\">)\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","member-3106ea99298db2e24ef3","\n            \u003Cdiv class=\"api-summary\">\n            Removes the requested protected value.\n            \u003C\u002Fdiv>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>request\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>The plugin-local key identifying the protected value to remove.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>cancellationToken\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>A token requesting cancellation of the operation.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Ch4>Returns\u003C\u002Fh4>A task representing the removal operation.\n        ",{"availability":48,"id":49,"name":50,"label":50,"kind":30,"summary":51,"signature":52,"displaySignature":53,"signatureHtml":54,"anchor":55,"documentation":56,"documented":22},{"firstSeen":16,"isBaseline":17,"declarationFirstSeen":16},"M:Unbroken.LaunchBox.Plugins.Services.Storage.IPluginSecretStore.SetValueAsync(Unbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreSetRequest,System.Threading.CancellationToken)","SetValueAsync","Protects and stores the requested value.","System.Threading.Tasks.Task SetValueAsync(Unbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreSetRequest request, System.Threading.CancellationToken cancellationToken)","Task SetValueAsync(\n    PluginSecretStoreSetRequest request,\n    CancellationToken cancellationToken\n)","\u003Cpre class=\"shiki dark-plus\" style=\"background-color:#1E1E1E;color:#D4D4D4\" tabindex=\"0\" aria-label=\"C# code\">\u003Ccode>\u003Cspan class=\"line\">\u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fdotnet\u002Fapi\u002Fsystem.threading.tasks.task\" title=\"System.Threading.Tasks.Task (Microsoft Learn)\">\u003Cspan style=\"color:#4EC9B0\">Task\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#DCDCAA\"> SetValueAsync\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">(\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#4EC9B0\">    \u003C\u002Fspan>\u003Ca href=\"\u002Fplugins\u002Freference\u002FUnbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreSetRequest\" title=\"Unbroken.LaunchBox.Plugins.Services.Storage.PluginSecretStoreSetRequest\">\u003Cspan style=\"color:#4EC9B0\">PluginSecretStoreSetRequest\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#9CDCFE\"> request\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">,\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#4EC9B0\">    \u003C\u002Fspan>\u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fdotnet\u002Fapi\u002Fsystem.threading.cancellationtoken\" title=\"System.Threading.CancellationToken (Microsoft Learn)\">\u003Cspan style=\"color:#4EC9B0\">CancellationToken\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#9CDCFE\"> cancellationToken\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#D4D4D4\">)\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","member-1c9c36abc439f498a7d9","\n            \u003Cdiv class=\"api-summary\">\n            Protects and stores the requested value.\n            \u003C\u002Fdiv>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>request\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>The plugin-local key and unprotected bytes to protect and persist.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>cancellationToken\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>A token requesting cancellation of the operation.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Ch4>Returns\u003C\u002Fh4>A task representing the storage operation.\n        ",{"currentRelease":16,"currentReleaseState":58},"stable","plugins",1794763758031]