#ifndef IOS_WEB_PUBLIC_UI_JAVA_SCRIPT_DIALOG_PRESENTER_H_
#define IOS_WEB_PUBLIC_UI_JAVA_SCRIPT_DIALOG_PRESENTER_H_
#import "base/functional/callback_forward.h"
#import "url/origin.h"
@class NSString;
namespace web {
class WebState;
class JavaScriptDialogPresenter {
public:
virtual ~JavaScriptDialogPresenter() = default;
virtual void RunJavaScriptAlertDialog(WebState* web_state,
const url::Origin& origin,
NSString* message_text,
base::OnceClosure callback) = 0;
virtual void RunJavaScriptConfirmDialog(
WebState* web_state,
const url::Origin& origin,
NSString* message_text,
base::OnceCallback<void(bool success)> callback) = 0;
virtual void RunJavaScriptPromptDialog(
WebState* web_state,
const url::Origin& origin,
NSString* message_text,
NSString* default_prompt_text,
base::OnceCallback<void(NSString* user_input)> callback) = 0;
virtual void CancelDialogs(WebState* web_state) = 0;
};
}
#endif