import { z as o } from "zod";
var n = /* @__PURE__ */ ((e) => (e.INSTALLED = "installed", e.INSTALLING = "installing", e.REPAIRING = "repairing", e.BROKEN = "broken", e.REMOVING = "removing", e))(n || {});
const i = o.object({
  written: o.boolean(),
  blockSize: o.union([o.number(), o.null()]).optional(),
  size: o.union([o.number(), o.null()]).optional()
}), l = o.object({
  blocks: o.record(o.string(), i),
  committed: o.boolean(),
  isDelta: o.boolean(),
  size: o.number().optional(),
  tempFileName: o.union([o.string(), o.null()]).optional()
}), r = o.object({
  removed: o.boolean()
});
o.object({
  status: o.nativeEnum(n),
  buildId: o.string(),
  appVersion: o.string(),
  files: o.record(o.string(), l),
  obsoleteFiles: o.record(o.string(), r)
});
export {
  i as ProgressBlockCodec,
  l as ProgressFileCodec,
  r as ProgressObsoleteFileCodec,
  n as ProgressStatus
};
