Skip to content

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[keyof Fields]>, Constructor<Fields>, { }, { }>

Defined in: node_modules/.pnpm/effect@3.15.2/node_modules/effect/dist/dts/Schema.d.ts:4264

Self = never

string

<Fields>(fieldsOr, annotations?): [Self] extends [never] ? "Missing `Self` generic - use `class Self extends Class<Self>()({ ... })`" : Class<Self, Fields, Encoded<Fields>, Context<Fields[keyof Fields]>, Constructor<Fields>, { }, { }>

Fields extends Fields

Fields | HasFields<Fields>

ClassAnnotations<Self, { [K in string | number | symbol]: Type<Fields>[K] }>

[Self] extends [never] ? "Missing `Self` generic - use `class Self extends Class<Self>()({ ... })`" : Class<Self, Fields, Encoded<Fields>, Context<Fields[keyof Fields]>, Constructor<Fields>, { }, { }>

import { Schema } from "effect"
class MyClass extends Schema.Class<MyClass>("MyClass")({
someField: Schema.String
}) {
someMethod() {
return this.someField + "bar"
}
}

3.10.0