Class
Class<
Self
>(identifier
): <Fields
>(fieldsOr
,annotations
?) => [Self
] extends [never
] ?"Missing `Self` generic - use `class Self extends Class<Self>()({ ... })`"
:Class
<Self
,Fields
,Encoded
<Fields
>,Context
<Fields
[keyofFields
]>,Constructor
<Fields
>, {}, {}>
Defined in: node_modules/.pnpm/effect@3.14.8/node_modules/effect/dist/dts/Schema.d.ts:4386
Type Parameters
• Self = never
Parameters
identifier
string
Returns
Function
Type Parameters
• Fields extends Fields
Parameters
fieldsOr
Fields
| HasFields
<Fields
>
annotations?
ClassAnnotations
<Self
, { [K in string | number | symbol]: Type<Fields>[K] }>
Returns
[Self
] extends [never
] ? "Missing `Self` generic - use `class Self extends Class<Self>()({ ... })`"
: Class
<Self
, Fields
, Encoded
<Fields
>, Context
<Fields
[keyof Fields
]>, Constructor
<Fields
>, {}, {}>
Example
import { Schema } from "effect"
class MyClass extends Schema.Class<MyClass>("MyClass")({ someField: Schema.String}) { someMethod() { return this.someField + "bar" }}
Since
3.10.0