import { z } from 'zod'; import { type ParseResult } from '../../lib/zod'; import { type CopyContext } from '../../context'; import { type DeserializedRecord } from '../../serialization'; import { ControlDefinition, type Resolvable, type SchemaType } from '../definition'; import { DefaultControlInstance, type ControlInstanceArgs } from '../instance'; import { ControlDefinitionVisitor } from '../visitor'; type Config = z.infer; type SchemaByDefaultValue = undefined extends D ? typeof Definition.schema.relaxed : typeof Definition.schema.strict; type Schema = SchemaByDefaultValue; type DataType = z.infer['data']>; type ValueType = z.infer['value']>; type ResolvedValueType = z.infer['resolvedValue']>; type ReturnedSchemaType = { definition: typeof Definition.schema.relaxed.definition; type: typeof Definition.schema.relaxed.type; data: SchemaType>; value: SchemaType>; resolvedValue: SchemaType>; }; /**Except for its name, control type, and the showInput config prop, this control is identical to Number. * Consider consolidating their implementation in the future. */ declare class Definition extends ControlDefinition, ValueType, ResolvedValueType> { readonly version: z.infer; private static readonly v1DataType; private static readonly dataSignature; static readonly type: "makeswift::controls::slider"; static get schema(): { version: z.ZodOptional>; relaxed: { type: z.ZodLiteral<"makeswift::controls::slider">; data: SchemaType; value: SchemaType; resolvedValue: SchemaType; config: z.ZodObject<{ label: z.ZodOptional; description: z.ZodOptional; defaultValue: SchemaType; min: z.ZodOptional; max: z.ZodOptional; step: z.ZodOptional; showInput: z.ZodOptional; }, "strip", z.ZodTypeAny, { label?: string | undefined; description?: string | undefined; defaultValue?: number | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }, { label?: string | undefined; description?: string | undefined; defaultValue?: number | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }>; definition: z.ZodObject<{ type: z.ZodLiteral<"makeswift::controls::slider">; config: z.ZodObject<{ label: z.ZodOptional; description: z.ZodOptional; defaultValue: SchemaType; min: z.ZodOptional; max: z.ZodOptional; step: z.ZodOptional; showInput: z.ZodOptional; }, "strip", z.ZodTypeAny, { label?: string | undefined; description?: string | undefined; defaultValue?: number | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }, { label?: string | undefined; description?: string | undefined; defaultValue?: number | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }>; version: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type: "makeswift::controls::slider"; config: { label?: string | undefined; description?: string | undefined; defaultValue?: number | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }; version?: 1 | undefined; }, { type: "makeswift::controls::slider"; config: { label?: string | undefined; description?: string | undefined; defaultValue?: number | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }; version?: 1 | undefined; }>; versionedData: z.ZodObject<{ "@@makeswift/type": z.ZodEnum<["number", "number::v1", "prop-controllers::number::v1"]>; value: z.ZodNumber; }, "strip", z.ZodTypeAny, { value: number; "@@makeswift/type": "number" | "number::v1" | "prop-controllers::number::v1"; }, { value: number; "@@makeswift/type": "number" | "number::v1" | "prop-controllers::number::v1"; }>; version: z.ZodOptional>; }; strict: { type: z.ZodLiteral<"makeswift::controls::slider">; data: SchemaType; value: SchemaType; resolvedValue: SchemaType; config: z.ZodObject<{ label: z.ZodOptional; description: z.ZodOptional; defaultValue: SchemaType; min: z.ZodOptional; max: z.ZodOptional; step: z.ZodOptional; showInput: z.ZodOptional; }, "strip", z.ZodTypeAny, { defaultValue: number; label?: string | undefined; description?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }, { defaultValue: number; label?: string | undefined; description?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }>; definition: z.ZodObject<{ type: z.ZodLiteral<"makeswift::controls::slider">; config: z.ZodObject<{ label: z.ZodOptional; description: z.ZodOptional; defaultValue: SchemaType; min: z.ZodOptional; max: z.ZodOptional; step: z.ZodOptional; showInput: z.ZodOptional; }, "strip", z.ZodTypeAny, { defaultValue: number; label?: string | undefined; description?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }, { defaultValue: number; label?: string | undefined; description?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }>; version: z.ZodOptional>; }, "strip", z.ZodTypeAny, { type: "makeswift::controls::slider"; config: { defaultValue: number; label?: string | undefined; description?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }; version?: 1 | undefined; }, { type: "makeswift::controls::slider"; config: { defaultValue: number; label?: string | undefined; description?: string | undefined; min?: number | undefined; max?: number | undefined; step?: number | undefined; showInput?: boolean | undefined; }; version?: 1 | undefined; }>; versionedData: z.ZodObject<{ "@@makeswift/type": z.ZodEnum<["number", "number::v1", "prop-controllers::number::v1"]>; value: z.ZodNumber; }, "strip", z.ZodTypeAny, { value: number; "@@makeswift/type": "number" | "number::v1" | "prop-controllers::number::v1"; }, { value: number; "@@makeswift/type": "number" | "number::v1" | "prop-controllers::number::v1"; }>; version: z.ZodOptional>; }; }; static deserialize(data: DeserializedRecord): SliderDefinition; constructor(config: C, version: z.infer); get controlType(): "makeswift::controls::slider"; get schema(): ReturnedSchemaType; get dataSchema(): SchemaType | SchemaType; safeParse(data: unknown | undefined): ParseResult | undefined>; fromData(data: DataType | undefined): ValueType | undefined; toData(value: ValueType): DataType; copyData(data: DataType | undefined, _context: CopyContext): DataType | undefined; resolveValue(data: DataType | undefined): Resolvable | undefined>; createInstance(args: ControlInstanceArgs): DefaultControlInstance; accept(visitor: ControlDefinitionVisitor, ...args: unknown[]): R; } export declare class SliderDefinition extends Definition { } type UserConfig = Config & { defaultValue?: D; }; type NormedConfig = z.infer['config']>; export declare function Slider(config?: UserConfig): SliderDefinition>; export {}; //# sourceMappingURL=slider.d.ts.map