import { type Descriptor } from './descriptors'; import { Types as PropControllerTypes } from '@makeswift/prop-controllers'; import { type BoxDisplayModel, type ControlInstanceArgs, type ControlMessage, type InstanceType, type AnyControlInstance, ControlInstance } from '@makeswift/controls'; export type PropControllerMessage = ControlMessage; export declare const TableFormFieldsMessageType: { readonly TABLE_FORM_LAYOUT_CHANGE: "TABLE_FORM_LAYOUT_CHANGE"; readonly TABLE_FORM_FIELD_LAYOUT_CHANGE: "TABLE_FORM_FIELD_LAYOUT_CHANGE"; }; type TableLayoutTableFormFieldsMessage = { type: typeof TableFormFieldsMessageType.TABLE_FORM_LAYOUT_CHANGE; payload: { layout: BoxDisplayModel; }; }; type TableFieldLayoutTableFormFieldsMessage = { type: typeof TableFormFieldsMessageType.TABLE_FORM_FIELD_LAYOUT_CHANGE; payload: { layout: BoxDisplayModel; index: number; }; }; export type TableFormFieldsMessage = TableLayoutTableFormFieldsMessage | TableFieldLayoutTableFormFieldsMessage; export declare class TableFormFieldsPropController extends ControlInstance { recv: () => void; subscribe(_listener: () => void): () => void; isCompositeProp(): boolean; children(): ControlInstance[]; child(_key: string): ControlInstance | undefined; resolvesToRenderableNode(): boolean; tableFormLayoutChange(payload: { layout: BoxDisplayModel; }): void; tableFormFieldLayoutChange(payload: { layout: BoxDisplayModel; index: number; }): void; } type DescriptorPropController = T extends { type: typeof PropControllerTypes.TableFormFields; } ? TableFormFieldsPropController : InstanceType; export type DescriptorsPropControllers> = { [K in keyof T]: undefined extends T[K] ? DescriptorPropController> : DescriptorPropController; }; export type AnyPropController = AnyControlInstance | TableFormFieldsPropController; export declare function createPropController({ descriptor, ...args }: { descriptor: Descriptor; } & ControlInstanceArgs): AnyPropController; export {}; //# sourceMappingURL=instances.d.ts.map