@mdfriday/foundry
Version:
The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.
69 lines • 2.03 kB
TypeScript
import { Fs, DirsMerger, OverlayFsOptions } from '../type';
/**
* Default directory merger implementation
* TypeScript version of Go's defaultDirMerger
*/
export declare const defaultDirMerger: DirsMerger;
/**
* OverlayFs options value object
* TypeScript version of Go's Options struct
*/
export declare class OverlayOptions implements OverlayFsOptions {
readonly fss: Fs[];
readonly firstWritable: boolean;
readonly dirsMerger: DirsMerger;
constructor(options: {
fss: Fs[];
firstWritable?: boolean;
dirsMerger?: DirsMerger;
});
/**
* Create new options with additional filesystems
*/
withFilesystems(...additionalFss: Fs[]): OverlayOptions;
/**
* Create new options with different writability
*/
withFirstWritable(writable: boolean): OverlayOptions;
/**
* Create new options with different directory merger
*/
withDirsMerger(merger: DirsMerger): OverlayOptions;
/**
* Get writable filesystem (first if firstWritable is true)
*/
getWritableFs(): Fs | null;
/**
* Validate options
*/
isValid(): boolean;
/**
* Get filesystem count
*/
getFilesystemCount(): number;
/**
* Get filesystem by index
*/
getFilesystem(index: number): Fs | null;
/**
* Check if filesystem exists in overlay
*/
hasFilesystem(fs: Fs): boolean;
/**
* Get all filesystems as readonly array
*/
getFilesystems(): readonly Fs[];
}
/**
* Factory function to create OverlayOptions
*/
export declare function newOverlayOptions(fss: Fs[], firstWritable?: boolean, dirsMerger?: DirsMerger): OverlayOptions;
/**
* Create overlay options with default settings
*/
export declare function createDefaultOverlayOptions(fss: Fs[]): OverlayOptions;
/**
* Create overlay options for read-write scenario
*/
export declare function createWritableOverlayOptions(fss: Fs[], dirsMerger?: DirsMerger): OverlayOptions;
//# sourceMappingURL=overlayoptions.d.ts.map