import type { FromBlockSnapshotPayload, FromBlockSnapshotResult, FromPageSnapshotPayload, FromPageSnapshotResult, FromSliceSnapshotPayload, FromSliceSnapshotResult } from '@blockeditor/store';
import { type AssetsManager } from '@blockeditor/store';
import { BaseAdapter } from '@blockeditor/store';
import { type BlockSnapshot, type PageSnapshot, type SliceSnapshot } from '@blockeditor/store';
export type NotionHtml = string;
type NotionHtmlToSliceSnapshotPayload = {
    file: NotionHtml;
    assets?: AssetsManager;
    blockVersions: Record<string, number>;
    pageVersion: number;
    workspaceVersion: number;
    workspaceId: string;
    pageId: string;
};
type NotionHtmlToPageSnapshotPayload = {
    file: NotionHtml;
    assets?: AssetsManager;
    pageId?: string;
    pageMap?: Map<string, string>;
};
type NotionHtmlToBlockSnapshotPayload = NotionHtmlToPageSnapshotPayload;
export declare class NotionHtmlAdapter extends BaseAdapter<NotionHtml> {
    fromPageSnapshot(_payload: FromPageSnapshotPayload): Promise<FromPageSnapshotResult<NotionHtml>>;
    fromBlockSnapshot(_payload: FromBlockSnapshotPayload): Promise<FromBlockSnapshotResult<NotionHtml>>;
    fromSliceSnapshot(_payload: FromSliceSnapshotPayload): Promise<FromSliceSnapshotResult<NotionHtml>>;
    toPageSnapshot(payload: NotionHtmlToPageSnapshotPayload): Promise<PageSnapshot>;
    toBlockSnapshot(payload: NotionHtmlToBlockSnapshotPayload): Promise<BlockSnapshot>;
    toSliceSnapshot(payload: NotionHtmlToSliceSnapshotPayload): Promise<SliceSnapshot | null>;
    private _htmlToAst;
    private _traverseNotionHtml;
    private _hastToDeltaSpreaded;
    private _hastToDelta;
}
export {};
//# sourceMappingURL=notion-html.d.ts.map