@mdfriday/foundry
Version:
The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.
38 lines (37 loc) • 2.08 kB
TypeScript
import { Config } from '@internal/domain/config';
import { Modules, HttpClient } from "@internal/domain/module";
import { FsEntity as Fs } from "@internal/domain/fs";
import { Content } from "@internal/domain/content";
import { Site } from "@internal/domain/site/entity/site";
import { Resources } from "@internal/domain/resources/entity/resources";
import { MarkdownRenderer } from "@internal/domain/markdown";
import { PageTask } from "@pkg/page-filter";
export interface DomainInstances {
site: Site;
content: Content;
fs: Fs;
config: Config;
modules: Modules;
resources: Resources;
}
export declare function generateStaticSite(projDir: string, modulesDir: string, markdown?: MarkdownRenderer): Promise<void>;
export declare function processSSG(projDir: string, modulesDir: string, markdown?: MarkdownRenderer): Promise<void>;
export interface SSGProgressCallback {
(progress: {
stage: 'config' | 'modules' | 'filesystem' | 'content' | 'site' | 'template' | 'pages' | 'build' | 'completion';
message: string;
percentage: number;
moduleDownload?: {
modulePath: string;
downloadPercentage: number;
};
pageRender?: {
currentPage: number;
totalPages: number;
};
}): void;
}
export declare function generateStaticSiteWithProgress(projDir: string, modulesDir: string, markdown?: MarkdownRenderer, onProgress?: SSGProgressCallback, httpClient?: HttpClient): Promise<DomainInstances>;
export declare function processSSGWithProgress(projDir: string, modulesDir: string, markdown?: MarkdownRenderer, onProgress?: SSGProgressCallback, httpClient?: HttpClient): Promise<void>;
export declare function serveSSG(projDir: string, modulesDir: string, markdown?: MarkdownRenderer, onProgress?: SSGProgressCallback, httpClient?: HttpClient): Promise<DomainInstances>;
export declare function collectAllPageTasks(projDir: string, modulesDir: string, markdown?: MarkdownRenderer, onProgress?: SSGProgressCallback, httpClient?: HttpClient): Promise<PageTask[]>;