import type { PartialDeep } from 'type-fest'; import { z } from 'zod'; import type { def } from './creator/index.js'; export declare const createAppSchema: (context: import("./creator/types.js").DefinitionSchemaParserContext) => z.ZodType<{ type: "backend"; devPort: number; id: string; name: string; enableSubscriptions?: boolean | undefined; enableAxios?: boolean | undefined; } | { devPort: number; type: "web"; includeAuth: boolean; title: string; description: string; includeUploadComponents: boolean; enableSubscriptions: boolean; adminApp: { enabled: boolean; pathPrefix: string; allowedRoles: string[]; sections: ({ id: string; name: string; featureRef: string; type: string; icon?: string | undefined; } & { type: "crud"; modelRef: string; nameFieldRef: string; disableCreate: boolean; table: { columns: { [x: string]: unknown; id: string; type: string; label: string; }[]; actions: { [x: string]: unknown; id: string; type: string; position: "inline" | "dropdown"; }[]; }; form: { fields: { [x: string]: unknown; id: string; type: string; label: string; }[]; }; embeddedForms?: ({ id: string; name: string; modelRef: string; type: "object"; form: { fields: { [x: string]: unknown; id: string; type: string; label: string; }[]; }; includeIdField?: boolean | undefined; } | { id: string; name: string; modelRef: string; type: "list"; table: { columns: { [x: string]: unknown; id: string; type: string; label: string; }[]; }; form: { fields: { [x: string]: unknown; id: string; type: string; label: string; }[]; }; includeIdField?: boolean | undefined; })[] | undefined; })[]; }; id: string; name: string; }, { type: "backend"; devPort: number; name: string; enableSubscriptions?: boolean | undefined; enableAxios?: boolean | undefined; id?: string | undefined; } | { devPort: number; type: "web"; name: string; includeAuth?: boolean | undefined; title?: string | undefined; description?: string | undefined; includeUploadComponents?: boolean | undefined; enableSubscriptions?: boolean | undefined; adminApp?: { enabled: boolean; pathPrefix?: string | undefined; allowedRoles?: string[] | undefined; sections?: ({ name: string; featureRef: string; type: string; id?: string | undefined; icon?: string | undefined; } & { type: "crud"; modelRef: string; nameFieldRef: string; table: { columns: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; actions?: { [x: string]: unknown; type: string; id?: string | undefined; position?: "inline" | "dropdown" | undefined; }[] | undefined; }; form: { fields: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; }; disableCreate?: boolean | undefined; embeddedForms?: ({ id: string; name: string; modelRef: string; type: "object"; form: { fields: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; }; includeIdField?: boolean | undefined; } | { id: string; name: string; modelRef: string; type: "list"; table: { columns: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; }; form: { fields: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; }; includeIdField?: boolean | undefined; })[] | undefined; })[] | undefined; } | undefined; id?: string | undefined; }, z.core.$ZodTypeInternals<{ type: "backend"; devPort: number; id: string; name: string; enableSubscriptions?: boolean | undefined; enableAxios?: boolean | undefined; } | { devPort: number; type: "web"; includeAuth: boolean; title: string; description: string; includeUploadComponents: boolean; enableSubscriptions: boolean; adminApp: { enabled: boolean; pathPrefix: string; allowedRoles: string[]; sections: ({ id: string; name: string; featureRef: string; type: string; icon?: string | undefined; } & { type: "crud"; modelRef: string; nameFieldRef: string; disableCreate: boolean; table: { columns: { [x: string]: unknown; id: string; type: string; label: string; }[]; actions: { [x: string]: unknown; id: string; type: string; position: "inline" | "dropdown"; }[]; }; form: { fields: { [x: string]: unknown; id: string; type: string; label: string; }[]; }; embeddedForms?: ({ id: string; name: string; modelRef: string; type: "object"; form: { fields: { [x: string]: unknown; id: string; type: string; label: string; }[]; }; includeIdField?: boolean | undefined; } | { id: string; name: string; modelRef: string; type: "list"; table: { columns: { [x: string]: unknown; id: string; type: string; label: string; }[]; }; form: { fields: { [x: string]: unknown; id: string; type: string; label: string; }[]; }; includeIdField?: boolean | undefined; })[] | undefined; })[]; }; id: string; name: string; }, { type: "backend"; devPort: number; name: string; enableSubscriptions?: boolean | undefined; enableAxios?: boolean | undefined; id?: string | undefined; } | { devPort: number; type: "web"; name: string; includeAuth?: boolean | undefined; title?: string | undefined; description?: string | undefined; includeUploadComponents?: boolean | undefined; enableSubscriptions?: boolean | undefined; adminApp?: { enabled: boolean; pathPrefix?: string | undefined; allowedRoles?: string[] | undefined; sections?: ({ name: string; featureRef: string; type: string; id?: string | undefined; icon?: string | undefined; } & { type: "crud"; modelRef: string; nameFieldRef: string; table: { columns: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; actions?: { [x: string]: unknown; type: string; id?: string | undefined; position?: "inline" | "dropdown" | undefined; }[] | undefined; }; form: { fields: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; }; disableCreate?: boolean | undefined; embeddedForms?: ({ id: string; name: string; modelRef: string; type: "object"; form: { fields: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; }; includeIdField?: boolean | undefined; } | { id: string; name: string; modelRef: string; type: "list"; table: { columns: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; }; form: { fields: { [x: string]: unknown; type: string; label: string; id?: string | undefined; }[]; }; includeIdField?: boolean | undefined; })[] | undefined; })[] | undefined; } | undefined; id?: string | undefined; }>>; export type AppConfig = def.InferOutput; export declare const createProjectDefinitionSchema: (context: import("./creator/types.js").DefinitionSchemaParserContext) => z.ZodObject<{ cliVersion: z.ZodOptional>; apps: z.ZodDefault>>>; libraries: z.ZodDefault>>>; features: z.ZodDefault>>>; models: z.ZodDefault>>>; enums: z.ZodOptional>>>; isInitialized: z.ZodDefault; schemaVersion: z.ZodNumber; plugins: z.ZodOptional>>>; settings: z.ZodObject<{ general: z.ZodObject<{ name: z.ZodString; packageScope: z.ZodDefault; portOffset: z.ZodNumber; }, z.core.$strip>; infrastructure: z.ZodOptional; }, z.core.$strip>>; }, z.core.$strip>>; monorepo: z.ZodOptional; librariesFolder: z.ZodDefault; }, z.core.$strip>>; templateExtractor: z.ZodOptional; fileIdRegexWhitelist: z.ZodDefault; }, z.core.$strip>>; theme: z.ZodOptional>; shades: z.ZodRecord, z.ZodString>; }, z.core.$strip>; primary: z.ZodObject<{ paletteName: z.ZodString; customBase: z.ZodOptional>; shades: z.ZodRecord, z.ZodString>; }, z.core.$strip>; }, z.core.$strip>; colors: z.ZodObject<{ light: z.ZodRecord, z.ZodOptional>; dark: z.ZodRecord, z.ZodOptional>; }, z.core.$strip>; }, z.core.$strip>>; }, z.core.$strip>; }, z.core.$strip>; export type ProjectDefinitionInput = def.InferInput; export type ProjectDefinition = def.InferOutput; export type ProjectDefinitionSchema = def.InferSchema; /** * A deeply partial version of ProjectDefinitionInput that recurses into arrays. * Use this for providing partial definition patches to `mergeDefinition` and `diffDefinition`. */ export type PartialProjectDefinitionInput = PartialDeep; //# sourceMappingURL=project-definition.d.ts.map