@mojir/lits
Version:
Lits is a pure functional programming language implemented in TypeScript
17 lines (16 loc) • 1.54 kB
TypeScript
import type { Any } from '../interface';
import type { SourceCodeInfo } from '../tokenizer/token';
export declare function annotate<T>(value: T): T;
export declare function isVector(vector: unknown): vector is number[];
export declare function assertVector(vector: unknown, sourceCodeInfo: SourceCodeInfo | undefined): asserts vector is number[];
export declare function is2dVector(vector: unknown): vector is [number, number];
export declare function assert2dVector(vector: unknown, sourceCodeInfo: SourceCodeInfo | undefined): asserts vector is [number, number];
export declare function is3dVector(vector: unknown): vector is [number, number, number];
export declare function assert3dVector(vector: unknown, sourceCodeInfo: SourceCodeInfo | undefined): asserts vector is [number, number, number];
export declare function assertNonEmptyVector(vector: unknown, sourceCodeInfo: SourceCodeInfo | undefined): asserts vector is number[];
export declare function isGrid(grid: unknown): grid is unknown[][];
export declare function assertGrid(grid: unknown, sourceCodeInfo: SourceCodeInfo | undefined): asserts grid is Any[][];
export declare function isMatrix(matrix: unknown): matrix is number[][];
export declare function assertMatrix(matrix: unknown, sourceCodeInfo: SourceCodeInfo | undefined): asserts matrix is number[][];
export declare function assertSquareMatrix(matrix: unknown, sourceCodeInfo: SourceCodeInfo | undefined): asserts matrix is number[][];
export declare function isSquareMatrix(matrix: unknown): matrix is number[][];