All files / shared/src/types/data tool.ts

100% Statements 31/31
100% Branches 0/0
100% Functions 0/0
100% Lines 31/31

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 401x   1x 1x 1x 1x 1x 1x 1x 1x 1x 1x     1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x       1x 1x 1x 1x 1x 1x 1x 1x 1x      
import { z } from 'zod';
 
export const Tool = z.object({
  id: z.uuid(),
  agent_id: z.uuid(),
  hash: z.string().min(1),
  type: z.string().min(1),
  name: z.string().min(1),
  raw_data: z.record(z.string(), z.unknown()),
  created_at: z.iso.datetime({ offset: true }),
  updated_at: z.iso.datetime({ offset: true }),
});
export type Tool = z.infer<typeof Tool>;
 
export const ToolQueryParams = z
  .object({
    id: z.uuid().optional(),
    agent_id: z.uuid().optional(),
    hash: z.string().min(1).optional(),
    type: z.string().min(1).optional(),
    name: z.string().min(1).optional(),
    limit: z.number().int().positive().optional(),
    offset: z.number().int().min(0).optional(),
  })
  .strict();
 
export type ToolQueryParams = z.infer<typeof ToolQueryParams>;
 
export const ToolCreateParams = z
  .object({
    agent_id: z.uuid(),
    hash: z.string().min(1),
    type: z.string().min(1),
    name: z.string().min(1),
    raw_data: z.record(z.string(), z.unknown()),
  })
  .strict();
 
export type ToolCreateParams = z.infer<typeof ToolCreateParams>;