/**
* Effect Schema decode/encode wrappers that map ParseError to ValidationError.
*
* These functions bridge Effect Schema's parse errors into the database's
* ValidationError type for consistent error handling across CRUD operations.
*/
import { Effect, Schema } from "effect";
import { ValidationError } from "../errors/index.js";
import { type HasId } from "../storage/derived-id.js";
import type { DerivedIdConfig } from "../types/database-config-types.js";
/**
* Decode unknown data through an Effect Schema, producing a typed entity.
* Maps Schema ParseError to the database's ValidationError.
*/
export declare const validateEntity: (schema: Schema.Codec, data: unknown) => Effect.Effect;
export declare const validateEntityWithDerivedId: (schema: Schema.Codec, data: A, derivedId?: DerivedIdConfig) => Effect.Effect;
/**
* Encode a typed entity through an Effect Schema, producing the encoded (on-disk) form.
* Maps Schema ParseError to the database's ValidationError.
*/
export declare const encodeEntity: (schema: Schema.Codec, entity: A) => Effect.Effect;
//# sourceMappingURL=schema-validator.d.ts.map