Home / Type/ HandleRefinement Type — drizzle-orm Architecture

HandleRefinement Type — drizzle-orm Architecture

Architecture documentation for the HandleRefinement type/interface in schema.types.internal.ts from the drizzle-orm codebase.

Entity Profile

Dependency Diagram

graph TD
  6a84a47a_da65_d783_c6b7_e5c3a0f62455["HandleRefinement"]
  8beb3c26_f68c_2b02_ad7a_a436848c5635["schema.types.internal.ts"]
  6a84a47a_da65_d783_c6b7_e5c3a0f62455 -->|defined in| 8beb3c26_f68c_2b02_ad7a_a436848c5635
  style 6a84a47a_da65_d783_c6b7_e5c3a0f62455 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

drizzle-valibot/src/schema.types.internal.ts lines 31–41

type HandleRefinement<
	TType extends 'select' | 'insert' | 'update',
	TRefinement,
	TColumn extends Column,
> = TRefinement extends (schema: any) => v.GenericSchema ? (
		TColumn['_']['notNull'] extends true ? ReturnType<TRefinement>
			: v.NullableSchema<ReturnType<TRefinement>, undefined>
	) extends infer TSchema ? TType extends 'update' ? v.OptionalSchema<Assume<TSchema, v.GenericSchema>, undefined>
		: TSchema
	: v.AnySchema
	: TRefinement;

Frequently Asked Questions

What is the HandleRefinement type?
HandleRefinement is a type/interface in the drizzle-orm codebase, defined in drizzle-valibot/src/schema.types.internal.ts.
Where is HandleRefinement defined?
HandleRefinement is defined in drizzle-valibot/src/schema.types.internal.ts at line 31.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free