Skip to content

Variable: UseCaseSchema

const UseCaseSchema: ZodObject<{
  apiVersion: ZodLiteral<"github.com/ruinosus/dna/v1">;
  kind: ZodLiteral<"UseCase">;
  metadata: ZodObject<{
     description: ZodDefault<ZodOptional<ZodString>>;
     group: ZodDefault<ZodOptional<ZodString>>;
     icon: ZodDefault<ZodOptional<ZodString>>;
     labels: ZodDefault<ZodRecord<ZodString, ZodString>>;
     name: ZodString;
     version: ZodDefault<ZodOptional<ZodString>>;
   }, "strip", ZodTypeAny, {
     description: string;
     group: string;
     icon: string;
     labels: Record<string, string>;
     name: string;
     version: string;
   }, {
     description?: string;
     group?: string;
     icon?: string;
     labels?: Record<string, string>;
     name: string;
     version?: string;
  }>;
  spec: ZodDefault<ZodObject<{
     agents: ZodDefault<ZodArray<ZodString, "many">>;
     alternate_flows: ZodDefault<ZodArray<ZodRecord<ZodString, ZodUnknown>, "many">>;
     guardrails: ZodDefault<ZodArray<ZodString, "many">>;
     main_flow: ZodDefault<ZodArray<ZodString, "many">>;
     postconditions: ZodDefault<ZodArray<ZodString, "many">>;
     preconditions: ZodDefault<ZodArray<ZodString, "many">>;
     primary_actor: ZodOptional<ZodString>;
     skills: ZodDefault<ZodArray<ZodString, "many">>;
     soul: ZodOptional<ZodString>;
     success_criteria: ZodDefault<ZodArray<ZodString, "many">>;
     supporting_actors: ZodDefault<ZodArray<ZodString, "many">>;
     tools: ZodDefault<ZodArray<ZodString, "many">>;
   }, "strip", ZodTypeAny, {
     agents: string[];
     alternate_flows: Record<string, unknown>[];
     guardrails: string[];
     main_flow: string[];
     postconditions: string[];
     preconditions: string[];
     primary_actor?: string;
     skills: string[];
     soul?: string;
     success_criteria: string[];
     supporting_actors: string[];
     tools: string[];
   }, {
     agents?: string[];
     alternate_flows?: Record<string, unknown>[];
     guardrails?: string[];
     main_flow?: string[];
     postconditions?: string[];
     preconditions?: string[];
     primary_actor?: string;
     skills?: string[];
     soul?: string;
     success_criteria?: string[];
     supporting_actors?: string[];
     tools?: string[];
  }>>;
}, "strip", ZodTypeAny, {
  apiVersion: "github.com/ruinosus/dna/v1";
  kind: "UseCase";
  metadata: {
     description: string;
     group: string;
     icon: string;
     labels: Record<string, string>;
     name: string;
     version: string;
  };
  spec: {
     agents: string[];
     alternate_flows: Record<string, unknown>[];
     guardrails: string[];
     main_flow: string[];
     postconditions: string[];
     preconditions: string[];
     primary_actor?: string;
     skills: string[];
     soul?: string;
     success_criteria: string[];
     supporting_actors: string[];
     tools: string[];
  };
}, {
  apiVersion: "github.com/ruinosus/dna/v1";
  kind: "UseCase";
  metadata: {
     description?: string;
     group?: string;
     icon?: string;
     labels?: Record<string, string>;
     name: string;
     version?: string;
  };
  spec?: {
     agents?: string[];
     alternate_flows?: Record<string, unknown>[];
     guardrails?: string[];
     main_flow?: string[];
     postconditions?: string[];
     preconditions?: string[];
     primary_actor?: string;
     skills?: string[];
     soul?: string;
     success_criteria?: string[];
     supporting_actors?: string[];
     tools?: string[];
  };
}>;