import { nat } from "./primitives.js"; /** An immutable list. */ export declare class List implements Iterable { #private; private constructor(); static empty: List; static is(value: any): value is List; static from(...values: V[]): List; get isEmpty(): boolean; get head(): V | undefined; get tail(): List | undefined; get(index: nat): V; get length(): number; cons(head: V): List; [Symbol.iterator](): Iterator; toString(): string; }