import { DVault } from "../../DVault"; import { GiscusConfig } from "./giscus"; import { GithubConfig } from "./github"; import { SEOConfig } from "./seo"; import { z } from "../../../parse"; export declare enum Theme { DARK = "dark", LIGHT = "light", CUSTOM = "custom" } export declare enum SearchMode { SEARCH = "search", LOOKUP = "lookup" } /** * Namespace for all publishing related configurations */ export declare type DendronPublishingConfig = { enableFMTitle?: boolean; enableHierarchyDisplay?: boolean; hierarchyDisplayTitle?: string; enableNoteTitleForLink?: boolean; enablePrettyRefs?: boolean; enableBackLinks?: boolean; enableKatex?: boolean; assetsPrefix?: string; copyAssets: boolean; canonicalBaseUrl?: string; customHeaderPath?: string; ga?: GoogleAnalyticsConfig; logoPath?: string; siteFaviconPath?: string; siteIndex?: string; siteHierarchies: string[]; enableSiteLastModified: boolean; siteRootDir: string; siteUrl?: string; enableFrontmatterTags: boolean; enableHashesForFMTags: boolean; enableRandomlyColoredTags?: boolean; enableTaskNotes?: boolean; hierarchy?: { [key: string]: HierarchyConfig; }; duplicateNoteBehavior?: DuplicateNoteBehavior; writeStubs: boolean; seo: SEOConfig; github?: GithubConfig; theme?: Theme; segmentKey?: string; cognitoUserPoolId?: string; cognitoClientId?: string; enablePrettyLinks: boolean; siteBanner?: string; giscus?: GiscusConfig; sidebarPath?: string | false; searchMode?: SearchMode; }; export declare type CleanDendronPublishingConfig = DendronPublishingConfig & Required>; export declare type DuplicateNoteAction = "useVault"; export declare type UseVaultBehaviorPayload = { vault: DVault; } | string[]; export declare type DuplicateNoteActionPayload = UseVaultBehaviorPayload; export declare type UseVaultBehavior = { action: DuplicateNoteAction; payload: DuplicateNoteActionPayload; }; export declare type DuplicateNoteBehavior = UseVaultBehavior; export declare type HierarchyConfig = { publishByDefault?: boolean | { [key: string]: boolean; }; customFrontmatter?: CustomFMEntry[]; }; export declare type CustomFMEntry = { key: string; value: any; }; export declare type GoogleAnalyticsConfig = { tracking?: string; }; export declare const publishingSchema: z.ZodObject<{ enableFMTitle: z.ZodDefault>; enableNoteTitleForLink: z.ZodDefault>; enablePrettyRefs: z.ZodDefault>; enableKatex: z.ZodDefault>; copyAssets: z.ZodDefault; siteHierarchies: z.ZodDefault>; writeStubs: z.ZodDefault; siteRootDir: z.ZodDefault; seo: z.ZodObject<{ title: z.ZodDefault>; description: z.ZodDefault>; author: z.ZodOptional; twitter: z.ZodOptional; image: z.ZodOptional>; }, "strip", z.ZodTypeAny, { image?: { url: string; alt: string; } | undefined; author?: string | undefined; twitter?: string | undefined; title: string; description: string; }, { title?: string | undefined; image?: { url: string; alt: string; } | undefined; description?: string | undefined; author?: string | undefined; twitter?: string | undefined; }>; github: z.ZodOptional; enableEditLink: z.ZodDefault; editLinkText: z.ZodDefault>; editBranch: z.ZodDefault>; editViewMode: z.ZodDefault, z.ZodLiteral]>>>; editRepository: z.ZodOptional; }, "strip", z.ZodTypeAny, { cname?: string | undefined; editRepository?: string | undefined; enableEditLink: boolean; editLinkText: string; editBranch: string; editViewMode: import("./github").GithubEditViewModeEnum; }, { cname?: string | undefined; enableEditLink?: boolean | undefined; editLinkText?: string | undefined; editBranch?: string | undefined; editViewMode?: import("./github").GithubEditViewModeEnum | undefined; editRepository?: string | undefined; }>>; enableSiteLastModified: z.ZodDefault; enableFrontmatterTags: z.ZodDefault; enableHashesForFMTags: z.ZodDefault; enableRandomlyColoredTags: z.ZodDefault>; enableTaskNotes: z.ZodDefault>; enablePrettyLinks: z.ZodDefault; searchMode: z.ZodDefault>>; }, "passthrough", z.ZodTypeAny, { github?: { cname?: string | undefined; editRepository?: string | undefined; enableEditLink: boolean; editLinkText: string; editBranch: string; editViewMode: import("./github").GithubEditViewModeEnum; } | undefined; enablePrettyRefs: boolean; enableFMTitle: boolean; enableNoteTitleForLink: boolean; enableKatex: boolean; copyAssets: boolean; siteHierarchies: string[]; enableSiteLastModified: boolean; siteRootDir: string; enableFrontmatterTags: boolean; enableHashesForFMTags: boolean; enableRandomlyColoredTags: boolean; enableTaskNotes: boolean; writeStubs: boolean; seo: { image?: { url: string; alt: string; } | undefined; author?: string | undefined; twitter?: string | undefined; title: string; description: string; }; enablePrettyLinks: boolean; searchMode: SearchMode; }, { enablePrettyRefs?: boolean | undefined; enableFMTitle?: boolean | undefined; enableNoteTitleForLink?: boolean | undefined; enableKatex?: boolean | undefined; copyAssets?: boolean | undefined; siteHierarchies?: string[] | undefined; enableSiteLastModified?: boolean | undefined; siteRootDir?: string | undefined; enableFrontmatterTags?: boolean | undefined; enableHashesForFMTags?: boolean | undefined; enableRandomlyColoredTags?: boolean | undefined; enableTaskNotes?: boolean | undefined; writeStubs?: boolean | undefined; github?: { cname?: string | undefined; enableEditLink?: boolean | undefined; editLinkText?: string | undefined; editBranch?: string | undefined; editViewMode?: import("./github").GithubEditViewModeEnum | undefined; editRepository?: string | undefined; } | undefined; enablePrettyLinks?: boolean | undefined; searchMode?: SearchMode | undefined; seo: { title?: string | undefined; image?: { url: string; alt: string; } | undefined; description?: string | undefined; author?: string | undefined; twitter?: string | undefined; }; }>; /** * Generate default {@link DendronPublishingConfig} * @returns DendronPublishingConfig */ export declare function genDefaultPublishingConfig(): DendronPublishingConfig;