import { a as NotionBlock, s as PageLinkMap } from "./types-B8b2hjw1.mjs";
import { NormalizedBlock, ResolvedLink } from "@notion-headless-cms/cms";
//#region src/v3.d.ts
/**
* v3 の正規化 block(`NormalizedBlock`)を、既存の react-renderer が期待する
* `NotionBlock`(Notion API の `BlockObjectResponse` 形状)へ変換する。
*
* v3 の同期パイプライン(`normalizeBlock`)は `block[block.type]` のサブオブジェクトを
* そのまま `data` に保持しているため、既存のブロックコンポーネント約 30 種を
* 一切変更せずに再利用できる。`created_time` 等のブロックコンポーネントが参照しない
* フィールドはダミー値で埋める(型適合のための境界変換であり、実データではない)。
*
* @example
* ```tsx
* const post = await cms.posts.find(slug);
* return (
*
* );
* ```
*/
declare function denormalizeBlocks(blocks: readonly NormalizedBlock[]): NotionBlock[];
/**
* v3 の `EntrySnapshot.links`(正規化 pageId → 解決済みリンク)を、
* 既存の `NotionRenderer` `pageLinks` プロップにそのまま渡せる形へ変換する。
* `buildPageLinkMap(cms)` の手動呼び出しが不要になる(#437 の摩擦点解消)。
*/
declare function toPageLinkMap(links: Readonly>): PageLinkMap;
//#endregion
export { denormalizeBlocks, toPageLinkMap };
//# sourceMappingURL=v3.d.mts.map