alinea
Version:
Headless git-based CMS
22 lines (21 loc) • 475 B
TypeScript
import { type HasExpr, internalExpr } from './Internal.js';
declare const brand: unique symbol;
export declare class Expr<Value = unknown> implements HasExpr {
[brand]: Value;
[internalExpr]: ExprInternal;
constructor(data: ExprInternal);
}
export type ExprInternal = {
type: 'field';
} | {
type: 'entryField';
name: string;
} | {
type: 'call';
method: string;
args: Array<Expr>;
} | {
type: 'value';
value: unknown;
};
export {};