import type { ProjectStore } from "../store/project-store.js"; import type { Workspace } from "../types/workspace.js"; import { type FinanceProjectMetadata } from "./project-management.js"; export declare const PROJECT_CONTEXT_BUNDLE_SCHEMA: "hasna.projects.project_context_bundle.v3"; type LinkState = "linked" | "partial" | "unlinked"; export interface ProjectContextBundleV1 { schema: typeof PROJECT_CONTEXT_BUNDLE_SCHEMA; generated_at: string; hash: string; revision: string; freshness: "fresh"; resolution: { source: "id-or-slug"; conflict: false; create_allowed: false; }; authority: { owner: "projects"; transport: "local" | "http"; availability: "available"; }; project: { id: string; slug: string; name: string; kind: Workspace["kind"]; status: Workspace["status"]; path: string | null; updated_at: string; finance?: FinanceProjectMetadata; }; links: { todos: { state: LinkState; project_id: string | null; task_list_id: string | null; }; conversations: { state: LinkState; channel: string | null; }; mementos: { state: LinkState; project_id: string | null; scope: string | null; }; }; station: { station_id: string | null; machine_id: string | null; } | null; commands: Array<{ name: "show" | "context" | "why" | "context-bundle"; argv: string[]; }>; } export interface BuildProjectContextBundleOptions { generatedAt?: Date; env?: Record; hostname?: string; } export declare function computeProjectContextBundleHash(bundle: ProjectContextBundleV1): string; export declare function buildProjectContextBundle(store: ProjectStore, exactProjectId: string, options?: BuildProjectContextBundleOptions): Promise; export {}; //# sourceMappingURL=project-context-bundle.d.ts.map