1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef PushError_h
6#define PushError_h
7
8#include "core/dom/DOMException.h"
9#include "platform/heap/Handle.h"
10#include "public/platform/WebPushError.h"
11
12namespace blink {
13
14class ScriptPromiseResolver;
15
16class PushError {
17    WTF_MAKE_NONCOPYABLE(PushError);
18public:
19    // For CallbackPromiseAdapter.
20    typedef WebPushError WebType;
21    static PassRefPtrWillBeRawPtr<DOMException> take(ScriptPromiseResolver*, WebType* webErrorRaw);
22    static void dispose(WebType* webErrorRaw);
23
24private:
25    PushError() WTF_DELETED_FUNCTION;
26};
27
28} // namespace blink
29
30#endif // PushError_h
31