Skip to content

ccusage / data-loader / sessionUsageSchema

Variable: sessionUsageSchema

ts
const sessionUsageSchema: ZodObject<{
  sessionId: ZodBranded<ZodString, "SessionId">;
  projectPath: ZodBranded<ZodString, "ProjectPath">;
  inputTokens: ZodNumber;
  outputTokens: ZodNumber;
  cacheCreationTokens: ZodNumber;
  cacheReadTokens: ZodNumber;
  totalCost: ZodNumber;
  lastActivity: ZodBranded<ZodString, "ActivityDate">;
  versions: ZodArray<ZodBranded<ZodString, "Version">, "many">;
  modelsUsed: ZodArray<ZodBranded<ZodString, "ModelName">, "many">;
  modelBreakdowns: ZodArray<ZodObject<{
     modelName: ZodBranded<ZodString, "ModelName">;
     inputTokens: ZodNumber;
     outputTokens: ZodNumber;
     cacheCreationTokens: ZodNumber;
     cacheReadTokens: ZodNumber;
     cost: ZodNumber;
   }, "strip", ZodTypeAny, {
     modelName: string & BRAND<"ModelName">;
     inputTokens: number;
     outputTokens: number;
     cacheCreationTokens: number;
     cacheReadTokens: number;
     cost: number;
   }, {
     modelName: string;
     inputTokens: number;
     outputTokens: number;
     cacheCreationTokens: number;
     cacheReadTokens: number;
     cost: number;
  }>, "many">;
}, "strip", ZodTypeAny, {
  sessionId: string & BRAND<"SessionId">;
  projectPath: string & BRAND<"ProjectPath">;
  inputTokens: number;
  outputTokens: number;
  cacheCreationTokens: number;
  cacheReadTokens: number;
  totalCost: number;
  lastActivity: string & BRAND<"ActivityDate">;
  versions: string & BRAND<"Version">[];
  modelsUsed: string & BRAND<"ModelName">[];
  modelBreakdowns: object[];
}, {
  sessionId: string;
  projectPath: string;
  inputTokens: number;
  outputTokens: number;
  cacheCreationTokens: number;
  cacheReadTokens: number;
  totalCost: number;
  lastActivity: string;
  versions: string[];
  modelsUsed: string[];
  modelBreakdowns: object[];
}>;

Zod schema for session-based usage aggregation data

Released under the MIT License.