/**
 * Returns an action generator used in signalling that editor has initialized with
 * the specified post object and editor settings.
 *
 * @param {Object} post       Post object.
 * @param {Object} edits      Initial edited attributes object.
 * @param {Array}  [template] Block Template.
 */
export declare const setupEditor: (post: Object, edits: Object, template?: Array) => ({ dispatch }: {
    dispatch: any;
}) => void;
/**
 * Returns an action object signalling that the editor is being destroyed and
 * that any necessary state or side-effect cleanup should occur.
 *
 * @deprecated
 *
 * @return {Object} Action object.
 */
export declare function __experimentalTearDownEditor(): Object;
/**
 * Returns an action object used in signalling that the latest version of the
 * post has been received, either by initialization or save.
 *
 * @deprecated Since WordPress 6.0.
 */
export declare function resetPost(): {
    type: string;
};
/**
 * Returns an action object used in signalling that a patch of updates for the
 * latest version of the post have been received.
 *
 * @return {Object} Action object.
 * @deprecated since Gutenberg 9.7.0.
 */
export declare function updatePost(): Object;
/**
 * Setup the editor state.
 *
 * @deprecated
 *
 * @param {Object} post Post object.
 */
export declare function setupEditorState(post: Object): Object;
/**
 * Returns an action that sets the current post Type and post ID.
 *
 * @param {string} postType Post Type.
 * @param {string} postId   Post ID.
 *
 * @return {Object} Action object.
 */
export declare function setEditedPost(postType: string, postId: string): Object;
/**
 * Returns an action object used in signalling that attributes of the post have
 * been edited.
 *
 * @param {Object} edits     Post attributes to edit.
 * @param {Object} [options] Options for the edit.
 *
 * @example
 * ```js
 * // Update the post title
 * wp.data.dispatch( 'core/editor' ).editPost( { title: `${ newTitle }` } );
 * ```
 *
 * @return {Object} Action object
 */
export declare const editPost: (edits: Object, options?: Object) => Object;
/**
 * Action for saving the current post in the editor.
 *
 * @param {Object} [options]
 */
export declare const savePost: (options?: Object) => ({ select, dispatch, registry }: {
    dispatch: any;
    registry: any;
    select: any;
}) => Promise<void>;
/**
 * Action for refreshing the current post.
 *
 * @deprecated Since WordPress 6.0.
 */
export declare function refreshPost(): {
    type: string;
};
/**
 * Action for trashing the current post in the editor.
 */
export declare const trashPost: () => ({ select, dispatch, registry }: {
    dispatch: any;
    registry: any;
    select: any;
}) => Promise<void>;
/**
 * Action that autosaves the current post.  This
 * includes server-side autosaving (default) and client-side (a.k.a. local)
 * autosaving (e.g. on the Web, the post might be committed to Session
 * Storage).
 *
 * @param {Object}  [options]       Extra flags to identify the autosave.
 * @param {boolean} [options.local] Whether to perform a local autosave.
 */
export declare const autosave: ({ local, ...options }?: {
    local?: boolean;
}) => ({ select, dispatch }: {
    dispatch: any;
    select: any;
}) => Promise<void>;
/**
 * Save for preview.
 *
 * @param {Object}  options                     Options object.
 * @param {boolean} options.forceIsAutosaveable Whether to force the post to be autosaveable.
 *
 * @return {Function} Thunk that saves for preview and returns the preview link.
 */
export declare const __unstableSaveForPreview: ({ forceIsAutosaveable }?: {
    forceIsAutosaveable: boolean;
}) => Function;
/**
 * Action that restores last popped state in undo history.
 */
export declare const redo: () => ({ registry }: {
    registry: any;
}) => void;
/**
 * Action that pops a record from undo history and undoes the edit.
 */
export declare const undo: () => ({ registry }: {
    registry: any;
}) => void;
/**
 * Action that creates an undo history record.
 *
 * @deprecated Since WordPress 6.0
 */
export declare function createUndoLevel(): {
    type: string;
};
/**
 * Action that locks the editor.
 *
 * @param {Object} lock Details about the post lock status, user, and nonce.
 * @return {Object} Action object.
 */
export declare function updatePostLock(lock: Object): Object;
/**
 * Enable the publish sidebar.
 */
export declare const enablePublishSidebar: () => ({ registry }: {
    registry: any;
}) => void;
/**
 * Disables the publish sidebar.
 */
export declare const disablePublishSidebar: () => ({ registry }: {
    registry: any;
}) => void;
/**
 * Action that locks post saving.
 *
 * @param {string} lockName The lock name.
 *
 * @example
 * ```
 * const { subscribe } = wp.data;
 *
 * const initialPostStatus = wp.data.select( 'core/editor' ).getEditedPostAttribute( 'status' );
 *
 * // Only allow publishing posts that are set to a future date.
 * if ( 'publish' !== initialPostStatus ) {
 *
 * 	// Track locking.
 * 	let locked = false;
 *
 * 	// Watch for the publish event.
 * 	let unssubscribe = subscribe( () => {
 * 		const currentPostStatus = wp.data.select( 'core/editor' ).getEditedPostAttribute( 'status' );
 * 		if ( 'publish' !== currentPostStatus ) {
 *
 * 			// Compare the post date to the current date, lock the post if the date isn't in the future.
 * 			const postDate = new Date( wp.data.select( 'core/editor' ).getEditedPostAttribute( 'date' ) );
 * 			const currentDate = new Date();
 * 			if ( postDate.getTime() <= currentDate.getTime() ) {
 * 				if ( ! locked ) {
 * 					locked = true;
 * 					wp.data.dispatch( 'core/editor' ).lockPostSaving( 'futurelock' );
 * 				}
 * 			} else {
 * 				if ( locked ) {
 * 					locked = false;
 * 					wp.data.dispatch( 'core/editor' ).unlockPostSaving( 'futurelock' );
 * 				}
 * 			}
 * 		}
 * 	} );
 * }
 * ```
 *
 * @return {Object} Action object
 */
export declare function lockPostSaving(lockName: string): Object;
/**
 * Action that unlocks post saving.
 *
 * @param {string} lockName The lock name.
 *
 * @example
 * ```
 * // Unlock post saving with the lock key `mylock`:
 * wp.data.dispatch( 'core/editor' ).unlockPostSaving( 'mylock' );
 * ```
 *
 * @return {Object} Action object
 */
export declare function unlockPostSaving(lockName: string): Object;
/**
 * Action that locks post autosaving.
 *
 * @param {string} lockName The lock name.
 *
 * @example
 * ```
 * // Lock post autosaving with the lock key `mylock`:
 * wp.data.dispatch( 'core/editor' ).lockPostAutosaving( 'mylock' );
 * ```
 *
 * @return {Object} Action object
 */
export declare function lockPostAutosaving(lockName: string): Object;
/**
 * Action that unlocks post autosaving.
 *
 * @param {string} lockName The lock name.
 *
 * @example
 * ```
 * // Unlock post saving with the lock key `mylock`:
 * wp.data.dispatch( 'core/editor' ).unlockPostAutosaving( 'mylock' );
 * ```
 *
 * @return {Object} Action object
 */
export declare function unlockPostAutosaving(lockName: string): Object;
/**
 * Returns an action object used to signal that the blocks have been updated.
 *
 * @param {Array}  blocks    Block Array.
 * @param {Object} [options] Optional options.
 */
export declare const resetEditorBlocks: (blocks: Array, options?: Object) => ({ select, dispatch, registry }: {
    dispatch: any;
    registry: any;
    select: any;
}) => void;
export declare function updateEditorSettings(settings: any): {
    type: string;
    settings: any;
};
/**
 * Returns an action used to set the rendering mode of the post editor. We support multiple rendering modes:
 *
 * -   `post-only`: This mode extracts the post blocks from the template and renders only those. The idea is to allow the user to edit the post/page in isolation without the wrapping template.
 * -   `template-locked`: This mode renders both the template and the post blocks but the template blocks are locked and can't be edited. The post blocks are editable.
 *
 * @param {string} mode Mode (one of 'post-only' or 'template-locked').
 */
export declare const setRenderingMode: (mode: string) => ({ dispatch, registry, select }: {
    dispatch: any;
    registry: any;
    select: any;
}) => void;
/**
 * Action that changes the width of the editing canvas.
 *
 * @param {string} deviceType
 *
 * @return {Object} Action object.
 */
export declare function setDeviceType(deviceType: string): Object;
/**
 * Returns an action object used to enable or disable a panel in the editor.
 *
 * @param {string} panelName A string that identifies the panel to enable or disable.
 *
 * @return {Object} Action object.
 */
export declare const toggleEditorPanelEnabled: (panelName: string) => Object;
/**
 * Opens a closed panel and closes an open panel.
 *
 * @param {string} panelName A string that identifies the panel to open or close.
 */
export declare const toggleEditorPanelOpened: (panelName: string) => ({ registry }: {
    registry: any;
}) => void;
/**
 * Returns an action object used to remove a panel from the editor.
 *
 * @param {string} panelName A string that identifies the panel to remove.
 *
 * @return {Object} Action object.
 */
export declare function removeEditorPanel(panelName: string): Object;
/**
 * Returns an action object used to open/close the inserter.
 *
 * @param {boolean|Object} value                Whether the inserter should be
 *                                              opened (true) or closed (false).
 *                                              To specify an insertion point,
 *                                              use an object.
 * @param {string}         value.rootClientId   The root client ID to insert at.
 * @param {number}         value.insertionIndex The index to insert at.
 * @param {string}         value.filterValue    A query to filter the inserter results.
 * @param {Function}       value.onSelect       A callback when an item is selected.
 * @param {string}         value.tab            The tab to open in the inserter.
 * @param {string}         value.category       The category to initialize in the inserter.
 *
 * @return {Object} Action object.
 */
export declare const setIsInserterOpened: (value: boolean | Object) => Object;
/**
 * Returns an action object used to open/close the list view.
 *
 * @param {boolean} isOpen A boolean representing whether the list view should be opened or closed.
 * @return {Object} Action object.
 */
export declare function setIsListViewOpened(isOpen: boolean): Object;
/**
 * Action that toggles Distraction free mode.
 * Distraction free mode expects there are no sidebars, as due to the
 * z-index values set, you can't close sidebars.
 *
 * @param {Object}  [options={}]                Optional configuration object
 * @param {boolean} [options.createNotice=true] Whether to create a notice
 */
export declare const toggleDistractionFree: ({ createNotice }?: {
    createNotice?: boolean;
}) => ({ dispatch, registry }: {
    dispatch: any;
    registry: any;
}) => void;
/**
 * Action that toggles the Spotlight Mode view option.
 */
export declare const toggleSpotlightMode: () => ({ registry }: {
    registry: any;
}) => void;
/**
 * Action that toggles the Top Toolbar view option.
 */
export declare const toggleTopToolbar: () => ({ registry }: {
    registry: any;
}) => void;
/**
 * Triggers an action used to switch editor mode.
 *
 * @param {string} mode The editor mode.
 */
export declare const switchEditorMode: (mode: string) => ({ dispatch, registry }: {
    dispatch: any;
    registry: any;
}) => void;
/**
 * Returns an action object used in signalling that the user opened the publish
 * sidebar.
 *
 * @return {Object} Action object
 */
export declare function openPublishSidebar(): Object;
/**
 * Returns an action object used in signalling that the user closed the
 * publish sidebar.
 *
 * @return {Object} Action object.
 */
export declare function closePublishSidebar(): Object;
/**
 * Returns an action object used in signalling that the user toggles the publish sidebar.
 *
 * @return {Object} Action object
 */
export declare function togglePublishSidebar(): Object;
/**
 * @see resetBlocks in core/block-editor store.
 */
export declare const resetBlocks: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see receiveBlocks in core/block-editor store.
 */
export declare const receiveBlocks: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see updateBlock in core/block-editor store.
 */
export declare const updateBlock: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see updateBlockAttributes in core/block-editor store.
 */
export declare const updateBlockAttributes: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see selectBlock in core/block-editor store.
 */
export declare const selectBlock: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see startMultiSelect in core/block-editor store.
 */
export declare const startMultiSelect: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see stopMultiSelect in core/block-editor store.
 */
export declare const stopMultiSelect: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see multiSelect in core/block-editor store.
 */
export declare const multiSelect: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see clearSelectedBlock in core/block-editor store.
 */
export declare const clearSelectedBlock: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see toggleSelection in core/block-editor store.
 */
export declare const toggleSelection: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see replaceBlocks in core/block-editor store.
 */
export declare const replaceBlocks: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see replaceBlock in core/block-editor store.
 */
export declare const replaceBlock: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see moveBlocksDown in core/block-editor store.
 */
export declare const moveBlocksDown: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see moveBlocksUp in core/block-editor store.
 */
export declare const moveBlocksUp: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see moveBlockToPosition in core/block-editor store.
 */
export declare const moveBlockToPosition: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see insertBlock in core/block-editor store.
 */
export declare const insertBlock: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see insertBlocks in core/block-editor store.
 */
export declare const insertBlocks: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see showInsertionPoint in core/block-editor store.
 */
export declare const showInsertionPoint: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see hideInsertionPoint in core/block-editor store.
 */
export declare const hideInsertionPoint: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see setTemplateValidity in core/block-editor store.
 */
export declare const setTemplateValidity: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see synchronizeTemplate in core/block-editor store.
 */
export declare const synchronizeTemplate: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see mergeBlocks in core/block-editor store.
 */
export declare const mergeBlocks: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see removeBlocks in core/block-editor store.
 */
export declare const removeBlocks: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see removeBlock in core/block-editor store.
 */
export declare const removeBlock: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see toggleBlockMode in core/block-editor store.
 */
export declare const toggleBlockMode: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see startTyping in core/block-editor store.
 */
export declare const startTyping: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see stopTyping in core/block-editor store.
 */
export declare const stopTyping: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see enterFormattedText in core/block-editor store.
 */
export declare const enterFormattedText: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see exitFormattedText in core/block-editor store.
 */
export declare const exitFormattedText: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see insertDefaultBlock in core/block-editor store.
 */
export declare const insertDefaultBlock: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
/**
 * @see updateBlockListSettings in core/block-editor store.
 */
export declare const updateBlockListSettings: (...args: any[]) => ({ registry }: {
    registry: any;
}) => void;
//# sourceMappingURL=actions.d.ts.map