import type { BlockItem } from '@riverbankcms/editor-blocks';
import { type CompiledBlockRuntimeFields, type DesignBlockId, type PageDesignEditorReadModel } from '@riverbankcms/theme-core/site-styles/previewCompiler';
import type { PreviewPageDesignEditorState } from '../preview/PageDesignEditorStateContext';
type RuntimeFieldsByBlockId = ReadonlyMap<DesignBlockId, CompiledBlockRuntimeFields>;
type RuntimePreviewSource = Readonly<{
    kind: 'preserve-server-runtime';
}> | Readonly<{
    kind: 'apply-editor-model';
    editorModel: PageDesignEditorReadModel;
}>;
export declare function applyPageDesignRuntimeFieldsToBlockItems(blockItems: readonly BlockItem[], source: RuntimePreviewSource): BlockItem[];
export declare function buildPageDesignRuntimeFieldsByBlockId(editorModel: PageDesignEditorReadModel): RuntimeFieldsByBlockId;
export declare function resolveRuntimePreviewSource(pageDesignState: PreviewPageDesignEditorState): RuntimePreviewSource;
export {};
