import { SafePlugin } from '@atlaskit/editor-common/safe-plugin';
import type { ExtractInjectionAPI, PMPluginFactoryParams } from '@atlaskit/editor-common/types';
import { PluginKey } from '@atlaskit/editor-prosemirror/state';
import { DecorationSet } from '@atlaskit/editor-prosemirror/view';
import type { SyncBlockStoreManager } from '@atlaskit/editor-synced-block-provider';
import type { SyncedBlockPlugin, SyncedBlockPluginOptions } from '../syncedBlockPluginType';
import type { ActiveFlag, BodiedSyncBlockDeletionStatus, RetryCreationPosMap } from '../types';
export declare const syncedBlockPluginKey: PluginKey;
type SyncedBlockPluginState = {
    activeFlag: ActiveFlag;
    bodiedSyncBlockDeletionStatus?: BodiedSyncBlockDeletionStatus;
    hasUnsavedBodiedSyncBlockChanges?: boolean;
    retryCreationPosMap: RetryCreationPosMap;
    selectionDecorationSet: DecorationSet;
    syncBlockStore: SyncBlockStoreManager;
};
export declare const createPlugin: (options: SyncedBlockPluginOptions | undefined, pmPluginFactoryParams: PMPluginFactoryParams, syncBlockStore: SyncBlockStoreManager, api?: ExtractInjectionAPI<SyncedBlockPlugin>) => SafePlugin<SyncedBlockPluginState>;
export {};
