import type { EditContextType } from "../client/editContext";
type CommentsFeedbackContext = Pick<EditContextType, "setShowComments" | "showComments"> & Partial<Pick<EditContextType, "changeMode" | "mode" | "setShowSuggestedEdits" | "setShowSuggestedEditsDiff">>;
export declare function activateCommentsMode(editContext: CommentsFeedbackContext | undefined, options?: {
    reason?: string;
}): void;
/**
 * Turn on suggestions mode: edits made on the canvas are recorded as suggested
 * edits instead of direct changes, and the feedback surface is opened so the
 * suggestions are visible as they are made. Shared by the toolbar control and
 * the in-sidebar "Suggestions mode" toggle so both behave identically.
 */
export declare function enterSuggestionsMode(editContext: CommentsFeedbackContext | undefined, options?: {
    reason?: string;
}): void;
/**
 * Turn off suggestions mode and return the canvas to normal editing.
 */
export declare function exitSuggestionsMode(editContext: CommentsFeedbackContext | undefined, options?: {
    reason?: string;
}): void;
export declare function openCommentsFeedback(editContext: CommentsFeedbackContext | undefined): void;
export declare function toggleCommentsFeedback(editContext: CommentsFeedbackContext | undefined): void;
export declare function closeCommentsFeedback(editContext: CommentsFeedbackContext | undefined): void;
type SuggestionsAvailabilityContext = Pick<EditContextType, "getActiveSlotContext" | "item">;
/**
 * Suggestions mode only works for items edited on the WYSIWYG canvas (items
 * with a layout). Mirrors the `hasLayout` check used by the viewport toolbar so
 * the in-sidebar control is only offered where it actually does something.
 */
export declare function isSuggestionsModeAvailable(editContext: SuggestionsAvailabilityContext | undefined): boolean;
export {};
