import { z } from 'zod'; import { type ParseResult } from '../../lib/zod'; import { Schema } from '../../common'; import { type CopyContext, type MergeContext } from '../../context'; import { type IntrospectionTarget } from '../../introspection'; import { ControlDefinition, type SchemaType } from '../definition'; import { type ControlInstanceArgs } from '../instance'; import { ControlDefinitionVisitor } from '../visitor'; import { SlotControl } from './slot-control'; type Schema = typeof Definition.schema; type DataType = z.infer; type ValueType = z.infer; declare abstract class Definition = Record> extends ControlDefinition { static readonly type: "makeswift::controls::slot"; static get schema(): { type: z.ZodLiteral<"makeswift::controls::slot">; data: z.ZodObject<{ elements: z.ZodArray>; }, "strip", z.ZodTypeAny, { type: string; key: string; props: Record; }, { type: string; key: string; props: Record; }>, z.ZodObject<{ type: z.ZodLiteral<"reference">; key: z.ZodString; value: z.ZodString; }, "strip", z.ZodTypeAny, { type: "reference"; value: string; key: string; }, { type: "reference"; value: string; key: string; }>]>, z.ZodObject<{ deleted: z.ZodOptional; }, "strip", z.ZodTypeAny, { deleted?: boolean | undefined; }, { deleted?: boolean | undefined; }>>, "many">; columns: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { count: number; spans: number[][]; }, { count: number; spans: number[][]; }>; }, "strip", z.ZodTypeAny, { value: { count: number; spans: number[][]; }; deviceId: string; }, { value: { count: number; spans: number[][]; }; deviceId: string; }>, "many">; }, "strip", z.ZodTypeAny, { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; }, { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; }>; value: z.ZodObject<{ elements: z.ZodArray>; }, "strip", z.ZodTypeAny, { type: string; key: string; props: Record; }, { type: string; key: string; props: Record; }>, z.ZodObject<{ type: z.ZodLiteral<"reference">; key: z.ZodString; value: z.ZodString; }, "strip", z.ZodTypeAny, { type: "reference"; value: string; key: string; }, { type: "reference"; value: string; key: string; }>]>, z.ZodObject<{ deleted: z.ZodOptional; }, "strip", z.ZodTypeAny, { deleted?: boolean | undefined; }, { deleted?: boolean | undefined; }>>, "many">; columns: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { count: number; spans: number[][]; }, { count: number; spans: number[][]; }>; }, "strip", z.ZodTypeAny, { value: { count: number; spans: number[][]; }; deviceId: string; }, { value: { count: number; spans: number[][]; }; deviceId: string; }>, "many">; }, "strip", z.ZodTypeAny, { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; }, { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; }>; definition: z.ZodObject<{ type: z.ZodLiteral<"makeswift::controls::slot">; }, "strip", z.ZodTypeAny, { type: "makeswift::controls::slot"; }, { type: "makeswift::controls::slot"; }>; }; constructor(config?: Config); get controlType(): "makeswift::controls::slot"; get schema(): { resolvedValue: SchemaType; type: z.ZodLiteral<"makeswift::controls::slot">; data: z.ZodObject<{ elements: z.ZodArray>; }, "strip", z.ZodTypeAny, { type: string; key: string; props: Record; }, { type: string; key: string; props: Record; }>, z.ZodObject<{ type: z.ZodLiteral<"reference">; key: z.ZodString; value: z.ZodString; }, "strip", z.ZodTypeAny, { type: "reference"; value: string; key: string; }, { type: "reference"; value: string; key: string; }>]>, z.ZodObject<{ deleted: z.ZodOptional; }, "strip", z.ZodTypeAny, { deleted?: boolean | undefined; }, { deleted?: boolean | undefined; }>>, "many">; columns: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { count: number; spans: number[][]; }, { count: number; spans: number[][]; }>; }, "strip", z.ZodTypeAny, { value: { count: number; spans: number[][]; }; deviceId: string; }, { value: { count: number; spans: number[][]; }; deviceId: string; }>, "many">; }, "strip", z.ZodTypeAny, { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; }, { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; }>; value: z.ZodObject<{ elements: z.ZodArray>; }, "strip", z.ZodTypeAny, { type: string; key: string; props: Record; }, { type: string; key: string; props: Record; }>, z.ZodObject<{ type: z.ZodLiteral<"reference">; key: z.ZodString; value: z.ZodString; }, "strip", z.ZodTypeAny, { type: "reference"; value: string; key: string; }, { type: "reference"; value: string; key: string; }>]>, z.ZodObject<{ deleted: z.ZodOptional; }, "strip", z.ZodTypeAny, { deleted?: boolean | undefined; }, { deleted?: boolean | undefined; }>>, "many">; columns: z.ZodArray, "many">; }, "strip", z.ZodTypeAny, { count: number; spans: number[][]; }, { count: number; spans: number[][]; }>; }, "strip", z.ZodTypeAny, { value: { count: number; spans: number[][]; }; deviceId: string; }, { value: { count: number; spans: number[][]; }; deviceId: string; }>, "many">; }, "strip", z.ZodTypeAny, { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; }, { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; }>; definition: z.ZodObject<{ type: z.ZodLiteral<"makeswift::controls::slot">; }, "strip", z.ZodTypeAny, { type: "makeswift::controls::slot"; }, { type: "makeswift::controls::slot"; }>; }; get nodeSchema(): SchemaType; safeParse(data: unknown | undefined): ParseResult; fromData(data: DataType | undefined): ValueType | undefined; toData(value: ValueType): DataType; copyData(data: DataType | undefined, context: CopyContext): DataType | undefined; mergeData(base: { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; } | undefined, override: { elements: (({ type: string; key: string; props: Record; } | { type: "reference"; value: string; key: string; }) & { deleted?: boolean | undefined; })[]; columns: { value: { count: number; spans: number[][]; }; deviceId: string; }[]; } | undefined, context: MergeContext): DataType; createInstance(args: ControlInstanceArgs): SlotControl; accept(visitor: ControlDefinitionVisitor, ...args: unknown[]): R; introspect(data: DataType | undefined, target: IntrospectionTarget): R[]; } export { Definition as SlotDefinition }; //# sourceMappingURL=slot.d.ts.map