@stackpress/idea-parser
Version:
Parses ideas to AST and readable JSON.
17 lines (16 loc) • 1.25 kB
TypeScript
import type { Data, DataToken, ArrayToken, EnumConfig, PropConfig, TypeConfig, ModelConfig, ObjectToken, ImportToken, SchemaToken, SchemaConfig, LiteralToken, UseReferences, PluginConfig, IdentifierToken, DeclarationToken, FinalSchemaConfig } from './types.js';
export default class Compiler {
static array<T = Data[]>(token: ArrayToken, references?: UseReferences): T;
static data(token: DataToken, references?: UseReferences): Data;
static enum(token: DeclarationToken): [string, EnumConfig];
static final(token: SchemaToken): FinalSchemaConfig;
static identifier(token: IdentifierToken, references?: UseReferences): any;
static literal(token: LiteralToken): any;
static model(token: DeclarationToken, references?: UseReferences): [string, ModelConfig];
static object<T = Data>(token: ObjectToken, references?: UseReferences): Record<string, T>;
static plugin(token: DeclarationToken): [string, PluginConfig];
static prop(token: DeclarationToken, references?: UseReferences): [string, PropConfig];
static schema(token: SchemaToken, finalize?: boolean): SchemaConfig;
static type(token: DeclarationToken, references?: UseReferences): [string, TypeConfig];
static use(token: ImportToken): any;
}