// // Copyright 2024 DXOS.org // import type * as Schema from 'effect/Schema'; import { type TypeMeta } from '../Annotation'; import { type AnyEntity } from '../common/types'; /** * Definition for an object type that can be stored in an ECHO database. * Implements effect schema to define object properties. * Has a typename and version. * * In contrast to a stored `Type.Type` entity, this definition is not recorded in the database. * * @deprecated Use `Type.AnyObj` from `@dxos/echo` instead. */ export interface TypedObject extends TypeMeta, Schema.Schema {} /** * Typed object that could be used as a prototype in class definitions. * This is an internal API type. * * @deprecated Use `Type.AnyObj` from `@dxos/echo` instead. */ export interface TypedObjectPrototype extends TypedObject { /** Type constructor. */ new (): AnyEntity & A; }