import { DomainObject } from 'domain-objects'; import { z } from 'zod'; import { ExampleDeclaration } from './ExampleDeclaration'; import { PracticeDeclaration } from './PracticeDeclaration'; export interface UseCaseDeclaration { name: string; practices: PracticeDeclaration[]; example: ExampleDeclaration | null; } export declare class UseCaseDeclaration extends DomainObject implements UseCaseDeclaration { static schema: z.ZodObject<{ name: z.ZodString; practices: z.ZodArray; checks: z.ZodArray; type: z.ZodEnum; required: z.ZodBoolean; check: z.ZodFunction; fix: z.ZodNullable>; contents: z.ZodNullable>; }, z.core.$strip>>; }, z.core.$strip>>; badPractices: z.ZodArray; checks: z.ZodArray; type: z.ZodEnum; required: z.ZodBoolean; check: z.ZodFunction; fix: z.ZodNullable>; contents: z.ZodNullable>; }, z.core.$strip>>; }, z.core.$strip>>; }, z.core.$strip>>; example: z.ZodNullable>; }, z.core.$strip>; }