Schémas Effect avec Vérification de Parité de Type
Définir et vérifier des schémas Effect alignés avec les types de domaine TypeScript. Utilise satisfies, tsafe Equals et des assertions pour garantir la parité entre schémas et types.
Spar Skills Guide Bot
DeveloppementIntermédiaire0 vues0 installations02/03/2026Claude CodeCursorWindsurfCopilot
typescripteffect-schematype-safetyvalidationzerospin
name: effect-schema description: Define Effect schemas that are verified against domain types. Use when authoring or updating Effect Schema definitions, or when the user mentions schema/type parity, satisfies, or tsafe Equals checks.
Effect Schema Type Parity
Instructions
- Define the domain type first (prefer
interface), then define the schema and assert parity. - Always use
satisfies Schema.Schema<YourType, any>on the schema. - Add
assert<Equals<typeof YourSchema.Type, Readonly<YourType>>>()usingtsafe. - If the
assert<Equals<...>>isn't typed correctly but thesatisfiesis, you can optionally add the_check1/_check2assignments withvoid(seeZerospinCommandSchema). - When validating unknown input against an Effect schema, prefer
validateUnknownfromzerospinif available.
Example
import type { Equals } from 'tsafe';
import { Schema } from 'effect';
import { assert } from 'tsafe';
export interface IFoo {
bar: string;
}
export const ZFoo = Schema.Struct({
bar: Schema.String,
}) satisfies Schema.Schema<IFoo, any>;
const _check1: typeof ZFoo.Type = {} as IFoo;
const _check2: IFoo = {} as typeof ZFoo.Type;
void _check1;
void _check2;
assert<Equals<typeof ZFoo.Type, Readonly<IFoo>>>();
Skills similaires
Expert Next.js App Router
100
Un skill qui transforme Claude en expert Next.js App Router.
Claude CodeCursoradvanced
8902342513Admin
Générateur de README
100
Crée des README.md professionnels et complets pour vos projets.
claudeCursorWindsurfbeginner
25972520Admin
Rédacteur de Documentation API
100
Génère de la documentation API complète au format OpenAPI/Swagger.
claudeCursorWindsurfintermediate
15644375Admin