import type { ZodSchema } from 'zod'; import { PropertyHooks } from './PropertyHooks'; export class PropertyConfig { public out = false; public in = false; public config = false; public static = false; public required = true; public get?: 'server' | 'connection' | 'connection-controller' | 'box' | 'adapter' | 'socket' | 'store' | 'headers' | 'cookies' | 'set-cookies'; public schema?: ZodSchema; public outputSchema?: ZodSchema; public client?: any; public hooks: Partial> = {}; public depends: string[] = []; } /** * 1. Простые поля входящие/исходящие * 2. Статические поля (шарим между экземплярами) * 3. Хуки * 4. Валидация входящего * 5. Валидация исходящего * * 6. Шаренные значения * 7. Только чтение на клиенте */