UNPKG

@mdfriday/foundry

Version:

The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.

61 lines 2.15 kB
import { Tree as RadixTree } from '../radix'; export declare enum LockType { LockTypeNone = 0, LockTypeRead = 1, LockTypeWrite = 2 } export declare class Event<T> { name: string; path: string; source: T; private stopPropagationFlag; constructor(name: string, path: string, source: T); stopPropagation(): void; get shouldStopPropagation(): boolean; } export interface SimpleTreeInterface<T> { tree: RadixTree; } export declare class WalkContext<T> { private dataInstance?; private dataInitialized; private eventHandlers?; private events; hooksPost: Array<() => Promise<void> | void>; addEventListener(event: string, path: string, handler: (event: Event<T>) => void): void; addPostHook(handler: () => Promise<void> | void): void; data(): SimpleTreeInterface<any>; sendEvent(event: Event<T>): void; handleEvents(): Promise<void>; handleEventsAndHooks(): Promise<void>; } export interface MutableTree { delete(key: string): void; deleteAll(key: string): void; deletePrefix(prefix: string): Promise<number>; deletePrefixAll(prefix: string): Promise<number>; lock(writable: boolean): () => void; canLock(): boolean; } export interface WalkableTree<T> { walkPrefixRaw(prefix: string, walker: (key: string, value: T) => Promise<boolean>): void; } export declare class WalkableTrees<T> implements WalkableTree<T> { private trees; constructor(trees: WalkableTree<T>[]); walkPrefixRaw(prefix: string, walker: (key: string, value: T) => Promise<boolean>): void; } export declare class MutableTrees implements MutableTree { private trees; constructor(trees: MutableTree[]); delete(key: string): void; deleteAll(key: string): void; deletePrefix(prefix: string): Promise<number>; deletePrefixAll(prefix: string): Promise<number>; lock(writable: boolean): () => void; canLock(): boolean; } export declare function validateKey(key: string): Error | null; export declare function cleanKey(key: string): string; export declare function mustValidateKey(key: string): string; //# sourceMappingURL=support.d.ts.map