import { CustomObjectPageLayout, type CustomObjectPageLayoutProps } from "../custom-object-page-layout.mjs"; import type { CustomObjectFieldSection } from "../custom-object-field-section.mjs"; import type { Field } from "../field.mjs"; import { type ObjectReference, type DefinitionFieldReference, type SectionReference, type ObjectScoped } from "./custom-object.mjs"; export type PageLayoutOptions = LayoutInput>; export type DefinedPageLayout = ObjectScoped & { setTitleField(field: DefinitionFieldReference): DefinedPageLayout; setDescriptionField(field: DefinitionFieldReference): DefinedPageLayout; removeSection(section: SectionReference | string, options?: import("../custom-object-page-layout.mjs").RemovePageLayoutSectionOptions | import("../custom-object-page-layout.mjs").RemoveSystemPageLayoutSectionOptions): DefinedPageLayout; } & { [K in Exclude]: CustomObjectPageLayout[K] extends (...args: infer A) => unknown ? (...args: LayoutInput) => DefinedPageLayout : never; }>; export declare function definePageLayout(object: O, props: PageLayoutOptions>): DefinedPageLayout; type LayoutInput = T extends CustomObjectFieldSection ? SectionReference : T extends Field ? DefinitionFieldReference : T extends readonly unknown[] ? { [K in keyof T]: LayoutInput; } : T extends object ? { [K in keyof T]: K extends 'defaultValue' | 'visibilityConditions' | 'inputMapping' ? T[K] : K extends 'newRqlField' | 'newTitleField' | 'newDescriptionField' | 'rqlName' ? T[K] | DefinitionFieldReference : LayoutInput; } : T; type Mutations = Extract; export {}; //# sourceMappingURL=page-layout.d.mts.map