diff --git a/include/windows.foundation.collections.idl b/include/windows.foundation.collections.idl index 53513b4c1ab..50a678e410c 100644 --- a/include/windows.foundation.collections.idl +++ b/include/windows.foundation.collections.idl @@ -47,6 +47,31 @@ cpp_quote("#endif") ] delegate HRESULT EventHandler([in] IInspectable *sender, [in] T args); + interface IAsyncOperation; + + [ + contract(Windows.Foundation.FoundationContract, 1.0), + uuid(fcdcf02c-e5d8-4478-915a-4d90b74b83a5) + ] + delegate HRESULT AsyncOperationCompletedHandler([in] IAsyncOperation *info, [in] AsyncStatus status); + + [ + contract(Windows.Foundation.FoundationContract, 1.0), + uuid(9fc2b0bb-e446-44e2-aa61-9cab8f636af2) + ] + interface IAsyncOperation : IInspectable + { + [propput] HRESULT Completed([in] AsyncOperationCompletedHandler *handler); + [propget] HRESULT Completed([out, retval] AsyncOperationCompletedHandler **handler); + HRESULT GetResults([out, retval] TResult **results); + } + + [ + contract(Windows.Foundation.FoundationContract, 1.0), + uuid(9de1c534-6ae1-11e0-84e1-18a905bcc53f) + ] + delegate HRESULT TypedEventHandler([in] TSender sender, [in] TArgs args); + namespace Collections { [