UNPKG

astronotion

Version:

Library to make Astro sites with content from Notion

33 lines (32 loc) 1.1 kB
import type { Decoration, ExtendedRecordMap } from "notion-types"; import type { AnContentBlock } from "./filter-blocks"; import { getCover } from "./get-cover"; declare type AnPageBase = { title: string; icon?: string; cover?: ReturnType<typeof getCover>; description?: Decoration[]; }; export declare type AnExcerpt = AnPageBase & { id: string; taxonomies: string[]; created: number; updated: number; }; export declare type AnParentPage = { pageType: "NOTION_PARENT"; pageData: AnPageBase & { childPages: AnExcerpt[]; }; }; export declare type AnEntryPage = { pageType: "NOTION_ENTRY"; pageData: AnExcerpt & { contents: AnContentBlock[]; }; }; export declare type AnTopLevelPage = AnParentPage | AnEntryPage; export declare const transformParentPage: (data: ExtendedRecordMap) => AnParentPage | undefined; export declare const transformEntryPage: (data: ExtendedRecordMap) => AnEntryPage | undefined; export declare const transformTopLevelPage: (data: ExtendedRecordMap) => AnParentPage | AnEntryPage | undefined; export {};