Import
import { RouteAst } from "@typed/router/AST";Access RouteAst.Transform through the imported RouteAst export. Its declaration below describes the member.
Signatures
interface Transform {
type: "transform";
from: RouteAst;
to: Top;
transformation: Transformation<any, any, any, any>;
}Why
Schema-backed parameters can change decoded types while retaining their encoded route shape.
Ownership and lifetime
Transform describes plain readonly AST data. Routes and Matchers retain the concrete nodes they receive by reference; the type itself owns no resource.
Property: from
The encoded Route AST consumed by a schema transformation.
Property: from: Why
The executor can decode from the path-shaped representation before producing the transformed type.
Property: from: Ownership and lifetime
RouteAst.Transform retains the encoded child Route AST by reference for later schema
projection and decoding.
Property: to
The target Effect Schema for transformed route parameters.
Property: to: Why
The route carries the exact decoded type and its service requirements.
Property: to: Ownership and lifetime
The containing Transform node retains its to Schema by reference; services are acquired only when that Schema runs.
Property: transformation
The Effect Schema transformation applied to route parameters.
Property: transformation: Why
Decode and encode behavior, errors, and service requirements remain in the schema contract.
Property: transformation: Ownership and lifetime
The transformation object is retained by reference. Any services it requires are acquired by the Effect that later runs the derived Schema.
Property: type
The discriminant identifying this AST variant.
Property: type: Why
Exhaustive switches can interpret syntax without instanceof checks or hidden classes.