UNPKG

ifc-expressions

Version:

Parsing and evaluation of IFC expressions

15 lines (14 loc) 837 B
import { FuncArg } from "../FuncArg.js"; import { FunctionExpr } from "../FunctionExpr.js"; import { ExprEvalResult } from "../../ExprEvalResult.js"; import { ExpressionValue } from "../../../value/ExpressionValue.js"; import { ExprType } from "../../../type/ExprType.js"; type UnpackConstructor<T> = T extends new (boolean: any, string: any) => FuncArg<infer U> ? U : never; export declare class FuncArgUnion<T> extends FuncArg<T> { private readonly options; constructor(...options: FuncArg<T>[]); static of<T extends new (boolean: any, string: any) => FuncArg<any>>(required: boolean, name: string, constructors: T[]): FuncArgUnion<UnpackConstructor<T>>; transformValue(callingExpr: FunctionExpr, invocationValue: ExprEvalResult<ExpressionValue>): ExprEvalResult<ExpressionValue>; getType(): ExprType; } export {};