import { Effect, Schema } from 'effect'; import { ESchemaError, type AnyESchema, type AnyUnkeyedESchema } from '../../eschema/index.js'; import { type EntityMeta, type SingleEntityMeta } from './entity-meta.js'; export declare const EntityMetaSchema: Schema.Struct<{ readonly _e: Schema.String; readonly _d: Schema.Boolean; readonly _u: Schema.String; readonly _s: Schema.optional; readonly _c: Schema.optional; }>; export declare const SingleEntityMetaSchema: Schema.Struct<{ readonly _e: Schema.String; readonly _u: Schema.String; }>; export type { EntityMeta, SingleEntityMeta }; export type DecodedEntity = { readonly value: T; readonly meta: EntityMeta; }; export type EncodedEntity = { readonly value: T; readonly meta: EntityMeta; }; export type DecodedSingleEntity = { readonly value: T; readonly meta: SingleEntityMeta; }; export type EncodedSingleEntity = { readonly value: T; readonly meta: SingleEntityMeta; }; type EntitySchemaCodec = Schema.Codec, EncodedEntity> & { readonly latestVersion: S['latestVersion']; readonly decode: (input: unknown) => Effect.Effect, ESchemaError>; readonly encode: (input: DecodedEntity) => Effect.Effect, ESchemaError>; }; type SingleEntitySchemaCodec = Schema.Codec, EncodedSingleEntity> & { readonly latestVersion: S['latestVersion']; readonly decode: (input: unknown) => Effect.Effect, ESchemaError>; readonly encode: (input: DecodedSingleEntity) => Effect.Effect, ESchemaError>; }; export declare const EntitySchema: (eschema: S) => EntitySchemaCodec; export declare const SingleEntitySchema: (eschema: S) => SingleEntitySchemaCodec; //# sourceMappingURL=entity-schema.d.ts.map