mirror of
https://github.com/vczh-libraries/Release.git
synced 2026-08-18 01:44:28 +08:00
36 lines
596 B
TypeScript
36 lines
596 B
TypeScript
export type LiteralValue = "True" | "False" | "Null";
|
|
|
|
export type Node = Literal | String | Number | Array | Object;
|
|
|
|
export interface Literal {
|
|
$ast: "Literal";
|
|
value: LiteralValue;
|
|
}
|
|
|
|
export interface String {
|
|
$ast: "String";
|
|
content: string;
|
|
}
|
|
|
|
export interface Number {
|
|
$ast: "Number";
|
|
content: string;
|
|
}
|
|
|
|
export interface Array {
|
|
$ast: "Array";
|
|
items: (Node | null)[];
|
|
}
|
|
|
|
export interface ObjectField {
|
|
$ast: "ObjectField";
|
|
name: string;
|
|
value: Node | null;
|
|
}
|
|
|
|
export interface Object {
|
|
$ast: "Object";
|
|
fields: (ObjectField | null)[];
|
|
}
|
|
|