/** * ModeResolver service * * Responsible for detecting and resolving the execution mode from CLI inputs. * Separates "what to do" (mode detection) from "how to do it" (execution). */ import { Effect, Option as O } from "effect"; import type { ParseError } from "effect/ParseResult"; import { TransformParseError } from "../parsers/transform-parser.js"; import { type ModeDetectionResult } from "./resolver.schema.js"; export interface ModeDetectionInput { readonly colorOpt: O.Option; readonly exportOpt: O.Option; readonly exportPath: O.Option; readonly formatOpt: O.Option; readonly nameOpt: O.Option; readonly patternOpt: O.Option; readonly stopOpt: O.Option; } declare const ModeResolver_base: Effect.Service.Class; }>; /** * ModeResolver service using Effect.Service pattern * * Detects execution mode from CLI inputs by analyzing color input syntax. * Supports single palette, batch palettes, and transformation modes. * * @example * ```typescript * Effect.gen(function*() { * const resolver = yield* ModeResolver * const result = yield* resolver.detectMode({ * colorOpt: O.some("#2D72D2"), * stopOpt: O.some(500), * // ... other options * }) * }).pipe(Effect.provide(ModeResolver.Default)) * ``` */ export declare class ModeResolver extends ModeResolver_base { /** * Test layer - same as Default since ModeResolver is pure (no side effects or dependencies) */ static readonly Test: import("effect/Layer").Layer; } /** Main mode detection logic */ declare function detectModeImpl(input: ModeDetectionInput): Effect.Effect; export {}; //# sourceMappingURL=resolver.d.ts.map