@stackbit/utils
Version:
Stackbit utilities
30 lines • 1.65 kB
TypeScript
/// <reference types="node" />
import fs from 'fs';
export interface ReadDirRecursivelyOptionsBase {
filter?: (filePath: string, stats: fs.Stats) => boolean;
absoluteFilePaths?: boolean;
includeDirs?: boolean;
includeStats?: false;
}
export interface ReadDirRecursivelyOptionsWithStats extends Omit<ReadDirRecursivelyOptionsBase, 'includeStats'> {
includeStats: true;
}
export type ReadDirRecursivelyOptions = ReadDirRecursivelyOptionsWithStats | ReadDirRecursivelyOptionsBase;
export interface ReadDirResultWithStats {
filePath: string;
stats: fs.Stats;
}
export declare function readDirRecursively(dir: string, options?: ReadDirRecursivelyOptionsBase): Promise<string[]>;
export declare function readDirRecursively(dir: string, options?: ReadDirRecursivelyOptionsWithStats): Promise<ReadDirResultWithStats[]>;
export declare function readDirRecursivelyWithExtensions(dirPath: string, allowedExtensions: string[]): Promise<string[]>;
export declare function parseFirstExistingFile(fileNames: string[], inputDir: string): Promise<any>;
export declare function getFirstExistingFile(fileNames: string[], inputDir: string): Promise<string | undefined>;
export declare function parseFile(filePath: string): Promise<any>;
export declare function parseDataByFilePath(string: string, filePath: string): any;
export declare function parseMarkdownWithFrontMatter(string: string): {
frontmatter: any;
markdown: string;
};
export declare function outputData(filePath: string, data: any): Promise<void>;
export declare function stringifyDataByFilePath(data: any, filePath: string): string;
//# sourceMappingURL=file-utils.d.ts.map