/**
* Export service for palette output
*
* Provides:
* - Export to JSON file
* - Export to clipboard
* - Batch export support
*
* Uses Effect's FileSystem service for better testing and abstraction.
*/
import { FileSystem, Path } from "@effect/platform";
import { Effect } from "effect";
import type { BatchGeneratedPaletteOutput } from "../schemas/batch.js";
import type { ExportConfig } from "../schemas/export.js";
import type { GeneratedPaletteOutput } from "../schemas/generate-palette.js";
declare const ExportError_base: new = {}>(args: import("effect/Types").Equals extends true ? void : { readonly [P in keyof A as P extends "_tag" ? never : P]: A[P]; }) => import("effect/Cause").YieldableError & {
readonly _tag: "ExportError";
} & Readonly;
/**
* Error type for export failures
*/
export declare class ExportError extends ExportError_base<{
readonly message: string;
readonly cause?: unknown;
}> {
}
declare const ExportService_base: Effect.Service.Class Effect.Effect;
exportBatch: (batch: BatchGeneratedPaletteOutput, config: ExportConfig) => Effect.Effect;
}, never, FileSystem.FileSystem | Path.Path>;
readonly dependencies: readonly [import("effect/Layer").Layer, import("effect/Layer").Layer];
}>;
/**
* Export service using Effect.Service pattern
*
* @example
* ```typescript
* Effect.gen(function*() {
* const service = yield* ExportService
* yield* service.exportPalette(palette, {
* target: "json",
* jsonPath: "./output/palette.json",
* includeOKLCH: true
* })
* }).pipe(Effect.provide(ExportService.Default))
* ```
*/
export declare class ExportService extends ExportService_base {
}
export {};
//# sourceMappingURL=ExportService.d.ts.map