[{"data":1,"prerenderedAt":50},["ShallowReactive",2],{"docs:\u002Fplugins\u002Freference\u002FUnbroken.LaunchBox.Plugins.Components.GameData.IGameMatchCapability":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":47,"section":49},"type","IGameMatchCapability","Unbroken.LaunchBox.Plugins.Components.GameData","\u002Fplugins\u002Fnamespaces\u002FUnbroken.LaunchBox.Plugins.Components.GameData",[9,12],{"title":10,"url":11},"Components","\u002Fplugins\u002Fnamespaces\u002FUnbroken.LaunchBox.Plugins.Components",{"title":13,"url":7},"GameData","Interface",{"firstSeen":16,"isBaseline":17,"declarationFirstSeen":16},"14.1",false,"public interface Unbroken.LaunchBox.Plugins.Components.GameData.IGameMatchCapability","public interface IGameMatchCapability","\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.Components.GameData.IGameMatchCapability\">\u003Cspan style=\"color:#4EC9B0\">IGameMatchCapability\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>","\n            \u003Cdiv class=\"api-summary\">Finds source-local game candidates for a library game that has no known source ID.\u003C\u002Fdiv>\n            \u003Ch4>Remarks\u003C\u002Fh4>\n            Sources that can only be queried with a known ID need not implement this capability, but such sources only participate for games that already carry an association.\n            Return candidates in preference order and mark exact title matches; LaunchBox does not automatically select an inexact candidate from a plugin source.\n            \n        ",true,[],[],[26,37],{"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.Components.GameData.IGameMatchCapability.FindMatchesAsync(Unbroken.LaunchBox.Plugins.Components.GameData.GameMatchRequest,System.Threading.CancellationToken)","FindMatchesAsync","Method","Finds candidate games for the supplied library game details.","System.Threading.Tasks.Task\u003CUnbroken.LaunchBox.Plugins.Components.GameData.GameMatchResult> FindMatchesAsync(Unbroken.LaunchBox.Plugins.Components.GameData.GameMatchRequest request, System.Threading.CancellationToken cancellationToken)","Task\u003CGameMatchResult> FindMatchesAsync(\n    GameMatchRequest 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>\u003Ca href=\"\u002Fplugins\u002Freference\u002FUnbroken.LaunchBox.Plugins.Components.GameData.GameMatchResult\" title=\"Unbroken.LaunchBox.Plugins.Components.GameData.GameMatchResult\">\u003Cspan style=\"color:#4EC9B0\">GameMatchResult\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#D4D4D4\">> \u003C\u002Fspan>\u003Cspan style=\"color:#DCDCAA\">FindMatchesAsync\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.Components.GameData.GameMatchRequest\" title=\"Unbroken.LaunchBox.Plugins.Components.GameData.GameMatchRequest\">\u003Cspan style=\"color:#4EC9B0\">GameMatchRequest\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-f926463af8b4134d474b","\n            \u003Cdiv class=\"api-summary\">Finds candidate games for the supplied library game details.\u003C\u002Fdiv>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>request\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>The title and optional platform, file, region, and alternate titles of one library game.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>cancellationToken\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>Cancels the operation.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Ch4>Returns\u003C\u002Fh4>Candidates in preference order and diagnostics.\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.Components.GameData.IGameMatchCapability.IsPlatformSupportedAsync(System.String,System.Collections.Generic.IReadOnlyCollection{System.String},System.Threading.CancellationToken)","IsPlatformSupportedAsync","Checks whether matching should proceed for the supplied platform. The default implementation returns true.","System.Threading.Tasks.Task\u003Cbool> IsPlatformSupportedAsync(string platform, System.Collections.Generic.IReadOnlyCollection\u003Cstring> alternateNames, System.Threading.CancellationToken cancellationToken)","Task\u003Cbool> IsPlatformSupportedAsync(\n    string platform,\n    IReadOnlyCollection\u003Cstring> alternateNames,\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\">bool\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">> \u003C\u002Fspan>\u003Cspan style=\"color:#DCDCAA\">IsPlatformSupportedAsync\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">(\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:#569CD6\">    string\u003C\u002Fspan>\u003Cspan style=\"color:#9CDCFE\"> platform\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.collections.generic.ireadonlycollection-1\" title=\"System.Collections.Generic.IReadOnlyCollection (Microsoft Learn)\">\u003Cspan style=\"color:#4EC9B0\">IReadOnlyCollection\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan style=\"color:#D4D4D4\">&#x3C;\u003C\u002Fspan>\u003Cspan style=\"color:#569CD6\">string\u003C\u002Fspan>\u003Cspan style=\"color:#D4D4D4\">> \u003C\u002Fspan>\u003Cspan style=\"color:#9CDCFE\">alternateNames\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-c5e33551b634e6567fcb","\n            \u003Cdiv class=\"api-summary\">Checks whether matching should proceed for the supplied platform. The default implementation returns true.\u003C\u002Fdiv>\n            \u003Ch4>Remarks\u003C\u002Fh4>Override when the source can determine platform coverage before matching individual games. Source-local platform identifiers remain private to the source.\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>platform\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>The library platform name.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>alternateNames\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>Other known names for the same platform, including its canonical name when available.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Cdl>\u003Cdt class=\"version-row\">\u003Cspan>\u003Ccode>cancellationToken\u003C\u002Fcode>\u003C\u002Fspan>\u003C\u002Fdt>\u003Cdd>Cancels the lookup.\u003C\u002Fdd>\u003C\u002Fdl>\n            \u003Ch4>Returns\u003C\u002Fh4>True when game matching should proceed, or false after establishing that the platform has no supported games. Failures and account changes must throw rather than return false.\n        ",{"currentRelease":16,"currentReleaseState":48},"stable","plugins",1794763752366]