/** * Input specification for SinglePalette mode. * * Single source of truth for SinglePalette inputs. * Complete schema defines required fields; Partial derives all-optional for progressive completion. */ import { Schema } from "effect"; /** * Complete SinglePalette input - all fields required. * This is the single source of truth for what SinglePalette needs. */ export declare const SinglePaletteCompleteSchema: Schema.Struct<{ /** Base color for palette generation */ color: Schema.refine; /** Stop position where base color appears */ stop: Schema.Literal<[100, 200, 300, 400, 500, 600, 700, 800, 900, 1000]>; /** Output color format */ format: Schema.Literal<["hex", "rgb", "oklch", "oklab"]>; /** Palette name for output */ name: Schema.refine; /** Pattern file path for generation */ pattern: typeof Schema.String; }>; export type SinglePaletteComplete = typeof SinglePaletteCompleteSchema.Type; /** * Partial SinglePalette input - all fields optional. * Derived from Complete via Schema.partial for DRY. * Used during input gathering when some fields may come from flags and others from prompts. */ export declare const SinglePalettePartialSchema: Schema.SchemaClass<{ readonly color?: string | undefined; readonly name?: string | undefined; readonly stop?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | 1000 | undefined; readonly format?: "hex" | "rgb" | "oklch" | "oklab" | undefined; readonly pattern?: string | undefined; }, { readonly color?: string | undefined; readonly name?: string | undefined; readonly stop?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | 1000 | undefined; readonly format?: "hex" | "rgb" | "oklch" | "oklab" | undefined; readonly pattern?: string | undefined; }, never>; export type SinglePalettePartial = typeof SinglePalettePartialSchema.Type; /** Decode unknown value to Complete type */ export declare const decodeSinglePaletteComplete: (u: unknown, overrideOptions?: import("effect/SchemaAST").ParseOptions) => import("effect/Effect").Effect<{ readonly color: string; readonly name: string; readonly stop: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | 1000; readonly format: "hex" | "rgb" | "oklch" | "oklab"; readonly pattern: string; }, import("effect/ParseResult").ParseError, never>; /** Decode unknown value to Partial type */ export declare const decodeSinglePalettePartial: (u: unknown, overrideOptions?: import("effect/SchemaAST").ParseOptions) => import("effect/Effect").Effect<{ readonly color?: string | undefined; readonly name?: string | undefined; readonly stop?: 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 | 1000 | undefined; readonly format?: "hex" | "rgb" | "oklch" | "oklab" | undefined; readonly pattern?: string | undefined; }, import("effect/ParseResult").ParseError, never>; //# sourceMappingURL=singlePalette.input.d.ts.map