import type { RaxStorageLayout } from "./raxStorageLayout.js";
export type RaxStorageInitDirectory = {
    path: string;
    scope: "home" | "workspace" | "agent";
    existing: boolean;
};
export type RaxStorageInitPlan = {
    kind: "praxis.raxStorageInitPlan";
    layoutProtocol: RaxStorageLayout["protocolVersion"];
    directories: readonly RaxStorageInitDirectory[];
    files: readonly [];
    createsDirectories: true;
    createsFiles: false;
    writesSecrets: false;
    gitignoreRecommendation: readonly [".rax_workspace/"];
};
export type RaxStorageInitResult = {
    ok: true;
    createdDirectories: readonly string[];
    skippedDirectories: readonly string[];
    events: readonly string[];
};
export declare function planRaxStorageInit(layout: RaxStorageLayout): RaxStorageInitPlan;
export declare function applyRaxStorageInitPlan(plan: RaxStorageInitPlan): Promise<RaxStorageInitResult>;
