import type { DashboardDTO, DashboardScope } from '@memoarchitect/tools'; export declare const DASHBOARD_SCOPES: readonly DashboardScope[]; /** The ignore rule for user dashboards, as written into `.gitignore`. */ export declare const USER_DASHBOARDS_IGNORE = "dashboards/user/"; /** Directory holding one scope's dashboard files. */ export declare function dashboardDir(projectRoot: string, scope: DashboardScope): string; /** * Make sure the project's `.gitignore` keeps user dashboards out of git. * * Appends one line, never rewrites the file. Already covered is judged by an * exact line match on the common spellings; anything cleverer is the user's * own rule to keep. */ export declare function ensureUserDashboardsIgnored(projectRoot: string): void; /** Frontmatter `title`, else the first `#` heading, else the id. */ export declare function dashboardTitle(content: string, id: string): string; /** Every dashboard in both scopes, shared first, each sorted by title. */ export declare function loadDashboards(projectRoot: string): DashboardDTO[]; export declare function saveDashboard(projectRoot: string, scope: DashboardScope, id: string, content: string): string; export declare function deleteDashboard(projectRoot: string, scope: DashboardScope, id: string): boolean; /** * Move a dashboard between scopes. * * Refuses to overwrite: sharing a user page onto a shared one of the same id * would destroy the team's copy, and that must be a deliberate delete first. */ export declare function moveDashboard(projectRoot: string, id: string, from: DashboardScope, to: DashboardScope): string; //# sourceMappingURL=dashboard-store.d.ts.map