import * as Schema from 'effect/Schema'; /** * Entity function for creating schemas with a nicer API. * Takes a schema configuration object and a property ID mapping object. * * @example * ```typescript * const User = EntityDefinition({ * name: Type.String, * age: Type.Number, * }, { * name: "grc-20-name", * age: "grc-20-age" * }); * ``` */ export declare function EntitySchema Schema.Schema | Schema.PropertySignature>, P extends Record>(schemaTypes: T, mapping: { types: Array; properties: P; }): Schema.Struct<{ [K in keyof T]: ReturnType & { id: string; }; }>; export declare function encodeToGrc20Json(schema: Schema.Schema, value: T): Record; export declare function decodeFromGrc20Json(schema: Schema.Schema, grc20Data: Record): T; declare const EntityNotFoundError_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: "EntityNotFoundError"; } & Readonly; export declare class EntityNotFoundError extends EntityNotFoundError_base<{ id: string; type: Schema.Schema.AnyNoContext; cause?: unknown; }> { } export {}; //# sourceMappingURL=entity.d.ts.map