import type { _DOMCSSStyleDeclaration } from "./DOMCSSStyleDeclaration.js";
import type { _DOMNode } from "./DOMNode.js";
import type { _DOMRange } from "./DOMRange.js";
import type { _WebView } from "./WebView.js";
import type { _NSNotification } from "../Foundation/NSNotification.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { _NSUndoManager } from "../Foundation/NSUndoManager.js";
import type { WebViewInsertAction } from "./WebViewInsertAction.js";
import type { NSSelectionAffinity } from "../AppKit/NSSelectionAffinity.js";
export interface _WebEditingDelegate {
    webView$shouldBeginEditingInDOMRange$?(webView: _WebView, range: _DOMRange): boolean;
    webView$shouldEndEditingInDOMRange$?(webView: _WebView, range: _DOMRange): boolean;
    webView$shouldInsertNode$replacingDOMRange$givenAction$?(webView: _WebView, node: _DOMNode, range: _DOMRange, action: WebViewInsertAction): boolean;
    webView$shouldInsertText$replacingDOMRange$givenAction$?(webView: _WebView, text: _NSString, range: _DOMRange, action: WebViewInsertAction): boolean;
    webView$shouldDeleteDOMRange$?(webView: _WebView, range: _DOMRange): boolean;
    webView$shouldChangeSelectedDOMRange$toDOMRange$affinity$stillSelecting$?(webView: _WebView, currentRange: _DOMRange, proposedRange: _DOMRange, selectionAffinity: NSSelectionAffinity, flag: boolean): boolean;
    webView$shouldApplyStyle$toElementsInDOMRange$?(webView: _WebView, style: _DOMCSSStyleDeclaration, range: _DOMRange): boolean;
    webView$shouldChangeTypingStyle$toStyle$?(webView: _WebView, currentStyle: _DOMCSSStyleDeclaration, proposedStyle: _DOMCSSStyleDeclaration): boolean;
    webView$doCommandBySelector$?(webView: _WebView, selector: string): boolean;
    webViewDidBeginEditing$?(notification: _NSNotification): void;
    webViewDidChange$?(notification: _NSNotification): void;
    webViewDidEndEditing$?(notification: _NSNotification): void;
    webViewDidChangeTypingStyle$?(notification: _NSNotification): void;
    webViewDidChangeSelection$?(notification: _NSNotification): void;
    undoManagerForWebView$?(webView: _WebView): _NSUndoManager;
}
