import { DomainObject } from 'domain-objects'; import type { PickAny } from 'type-fns'; import { z } from 'zod'; import type { ProjectVariablesImplementation } from '../domain.objects/constants'; import { DeclaredPractices } from './DeclaredPractices'; export interface ActionUsePracticesConfig { rootDir: string; declared: DeclaredPractices; scope: PickAny<{ usecase: string | null; practices: string[]; }>; variables: ProjectVariablesImplementation; } export declare class ActionUsePracticesConfig extends DomainObject implements ActionUsePracticesConfig { static schema: z.ZodObject<{ rootDir: z.ZodString; declared: z.ZodObject<{ rootDir: z.ZodString; examples: z.ZodArray>; useCases: 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>>; 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>>; }, z.core.$strip>; scope: z.ZodObject<{ usecase: z.ZodNullable; practices: z.ZodOptional>; }, z.core.$strip>; variables: z.ZodRecord; }, z.core.$strip>; }