#pragma once

#include <AK/Utf16String.h>
#include <LibJS/Forward.h>
#include <LibJS/Runtime/Value.h>

namespace Web::Bindings {

enum class NavigationType : u8 {
    Push,
    Replace,
    Reload,
    Traverse,
};

JS::ThrowCompletionOr<NavigationType> convert_to_idl_value_for_navigation_type(JS::VM&, JS::Value);

Utf16String idl_enum_to_string(NavigationType);

} // namespace Web::Bindings
