@quasarbright/projection
Version:
A static site generator that creates a beautiful, interactive gallery to showcase your coding projects. Features search, filtering, tags, responsive design, and an admin UI.
31 lines • 1.08 kB
TypeScript
import { Project, ProjectsData } from '../../types';
/**
* YAML file manager that preserves comments and formatting
* Uses the yaml package's Document API for surgical updates
*/
export declare class YAMLFileManager {
private doc;
private filePath;
constructor(filePath: string);
/**
* Read projects from YAML file
* Parses the file and stores the Document for future modifications
*/
readProjects(): Promise<ProjectsData>;
/**
* Update an existing project in the YAML file
* Modifies the Document node directly to preserve comments
*/
updateProject(projectId: string, updatedProject: Project): Promise<void>;
/**
* Add a new project to the YAML file
* Appends to the projects array while preserving existing structure
*/
addProject(project: Project): Promise<void>;
/**
* Delete a project from the YAML file
* Removes the project node while preserving other structure
*/
deleteProject(projectId: string): Promise<void>;
}
//# sourceMappingURL=yaml-file-manager.d.ts.map