import { z } from "zod"; import { type FieldDefinitionsFactory } from "./FieldDefinitionsBuilder.js"; import type { BaseModel } from "../base/BaseModel.js"; import type { PrivateCmsModel } from "./types.js"; import { FieldBuilder } from "./FieldBuilder.js"; import { type IFieldBuilderRegistry } from "../../models/cms/abstractions.js"; export interface IPrivateCmsModelBuilder { create, TFields extends z.ZodRawShape = any>(modelId: string, fieldDefinitions: FieldDefinitionsFactory): IPrivateCmsModelConfiguration; } export interface IPrivateCmsModelConfiguration> { withMethods(methods: TMethods & ThisType): IPrivateCmsModelConfiguration; extendFields(factory: (fields: IFieldBuilderRegistry) => Record>): IPrivateCmsModelConfiguration; build(): PrivateCmsModel; } declare class PrivateCmsModelBuilderImpl implements IPrivateCmsModelBuilder { private fieldBuilderRegistry; constructor(fieldBuilderRegistry: IFieldBuilderRegistry); create, TFields extends z.ZodRawShape = any>(modelId: string, fieldDefinitions: FieldDefinitionsFactory): IPrivateCmsModelConfiguration; } export declare const PrivateCmsModelBuilder: import("@webiny/di").Implementation; export {};