import { type SessionHeader } from "@sheason/pi-coding-agent";
export interface HubWorkspacePaths {
    cwd: string;
    workspaceDir: string;
    sessionFile: string;
}
export interface InitializeWorkspaceResult {
    created: boolean;
    paths: HubWorkspacePaths;
    header: SessionHeader;
}
export interface WorkspaceStatus {
    paths: HubWorkspacePaths;
    initialized: boolean;
    sessionExists: boolean;
    header?: SessionHeader;
}
export interface WorkspaceArchiveResult {
    archivePath: string;
    paths: HubWorkspacePaths;
    includedRoots: string[];
}
export interface ImportWorkspaceArchiveOptions {
    force?: boolean;
}
export declare class WorkspaceNotInitializedError extends Error {
    constructor(cwd: string);
}
export declare function assertSafeAgentId(agentId: string): void;
export declare function getWorkspacePaths(cwd?: string): HubWorkspacePaths;
/** Resolved path for a child agent session file under the hub workspace (does not create directories). */
export declare function getAgentSessionFile(cwd: string, agentId: string): string;
export declare function isWorkspaceInitialized(cwd?: string): boolean;
export declare function readSessionHeader(sessionFile: string): SessionHeader | undefined;
export declare function initializeWorkspace(cwd?: string): InitializeWorkspaceResult;
export declare function cleanWorkspace(cwd?: string): HubWorkspacePaths;
export declare function getWorkspaceStatus(cwd?: string): WorkspaceStatus;
export declare function assertWorkspaceInitialized(cwd?: string): HubWorkspacePaths;
export declare function exportWorkspaceArchive(archivePath: string, cwd?: string): WorkspaceArchiveResult;
export declare function importWorkspaceArchive(archivePath: string, cwd?: string, options?: ImportWorkspaceArchiveOptions): WorkspaceArchiveResult;
//# sourceMappingURL=workspace.d.ts.map