import { z } from "zod";
import type { WorkspaceInfo } from "../types/workspace";
export declare const WorkspaceInfoSchema: z.ZodObject<{
    rootPath: z.ZodString;
    hint: z.ZodOptional<z.ZodString>;
    associatedRemoteUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
    latestGitCommitHash: z.ZodOptional<z.ZodString>;
    latestGitBranchName: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const WorkspaceManifestSchema: z.ZodObject<{
    currentWorkspacePath: z.ZodOptional<z.ZodString>;
    workspaces: z.ZodRecord<z.ZodString, z.ZodObject<{
        rootPath: z.ZodString;
        hint: z.ZodOptional<z.ZodString>;
        associatedRemoteUrls: z.ZodOptional<z.ZodArray<z.ZodString>>;
        latestGitCommitHash: z.ZodOptional<z.ZodString>;
        latestGitBranchName: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export type WorkspaceManifest = z.infer<typeof WorkspaceManifestSchema>;
export declare function emptyWorkspaceManifest(): WorkspaceManifest;
export declare function normalizeWorkspacePath(workspacePath: string): string;
export declare function generateWorkspaceInfo(workspacePath: string): Promise<WorkspaceInfo>;
export declare function upsertWorkspaceInfo(manifest: WorkspaceManifest, info: WorkspaceInfo): WorkspaceManifest;
export declare function buildWorkspaceMetadata(cwd: string): Promise<string>;
