/** * @import { UplcBuiltin, UplcCall, UplcConst, UplcDelay, UplcError, UplcForce, UplcLambda, UplcVar, UplcTerm, UplcValue } from "../index.js" */ /** * @param {UplcTerm} expr * @param {UplcValue[]} args * @returns {UplcTerm} */ export function apply(expr: UplcTerm, args: UplcValue[]): UplcTerm; /** * @param {UplcTerm} root * @param {{ * anyTerm?: (term: UplcTerm, index: number) => void * builtinTerm?: (term: UplcBuiltin, index: number) => void * callTerm?: (term: UplcCall, index: number) => void * constTerm?: (term: UplcConst, index: number) => void * delayTerm?: (term: UplcDelay, index: number) => void * errorTerm?: (term: UplcError, index: number) => void * forceTerm?: (term: UplcForce, index: number) => void * lambdaTerm?: (term: UplcLambda, index: number) => void * varTerm?: (term: UplcVar, index: number) => void * }} callbacks */ export function traverse(root: UplcTerm, callbacks: { anyTerm?: (term: UplcTerm, index: number) => void; builtinTerm?: (term: UplcBuiltin, index: number) => void; callTerm?: (term: UplcCall, index: number) => void; constTerm?: (term: UplcConst, index: number) => void; delayTerm?: (term: UplcDelay, index: number) => void; errorTerm?: (term: UplcError, index: number) => void; forceTerm?: (term: UplcForce, index: number) => void; lambdaTerm?: (term: UplcLambda, index: number) => void; varTerm?: (term: UplcVar, index: number) => void; }): void; import type { UplcTerm } from "../index.js"; import type { UplcValue } from "../index.js"; import type { UplcBuiltin } from "../index.js"; import type { UplcCall } from "../index.js"; import type { UplcConst } from "../index.js"; import type { UplcDelay } from "../index.js"; import type { UplcError } from "../index.js"; import type { UplcForce } from "../index.js"; import type { UplcLambda } from "../index.js"; import type { UplcVar } from "../index.js"; //# sourceMappingURL=ops.d.ts.map