/** * Parse a type alias declaration: type Name = TypeExpr * Or with type parameters: type Name = TypeExpr * * Type declarations are type-only — they tell the typechecker about * named type aliases. They produce a null AST node at runtime (erased). * * Syntax: * type Nullable = Number | Null * type Pair = [Number, Number] * type Result = {tag: :ok, value: T} | {tag: :error, error: E} */ import type { AstNode } from '../types'; import type { ParserContext } from '../ParserContext'; export declare function parseTypeDeclaration(ctx: ParserContext): AstNode;