/**
 * This Source Code is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 *
 * Copyright (c) Infonomic Company Limited
 *
 * Portions Copyright (c) Meta Platforms, Inc. and affiliates.
 */
import type * as React from 'react';
import { type LexicalCommand, type NodeKey } from 'lexical';
import type { InlineImageAttributes } from './node-types';
export type InsertInlineImagePayload = Readonly<InlineImageAttributes>;
export type UpdateInlineImagePayload = Readonly<{
    nodeKey: NodeKey;
    attributes: InlineImageAttributes;
}>;
export type OpenInlineImageModalPayload = Readonly<{
    nodeKey?: NodeKey;
}> | null;
/**
 * Asks the InlineImagePlugin to open its modal. Pass `null` (or omit
 * `nodeKey`) for insert mode; pass a `nodeKey` to edit an existing node
 * with its current attributes pre-filled.
 */
export declare const OPEN_INLINE_IMAGE_MODAL_COMMAND: LexicalCommand<OpenInlineImageModalPayload>;
/** Inserts a new InlineImageNode at the current selection. */
export declare const INSERT_INLINE_IMAGE_COMMAND: LexicalCommand<InsertInlineImagePayload>;
/** Updates the InlineImageNode identified by `nodeKey` in place. */
export declare const UPDATE_INLINE_IMAGE_COMMAND: LexicalCommand<UpdateInlineImagePayload>;
export declare function InlineImagePlugin(): React.JSX.Element;
export interface InlineImageConfig {
    /** Upload collection that the inline-image modal targets. Required. */
    collection: string;
}
export declare const InlineImageExtension: import("lexical").LexicalExtension<InlineImageConfig, "@byline/richtext-lexical/InlineImage", unknown, unknown>;
