asajs
Version:
Make your Minecraft JsonUI with ScriptingAPI
45 lines (44 loc) • 2.39 kB
TypeScript
import { UI } from "../components/UI";
import { OverrideInterface } from "../types/objects/Modify";
import { Binding } from "../types/values/Binding";
export interface BindingFunctionObject {
[key: string]: (arg: UI | OverrideInterface, params: Array<string>) => Binding;
}
export declare class BindingCompiler {
static compile(propertyName: string | string[], arg: UI | OverrideInterface): string;
static getCompilePart(propertyName: string | string[]): string;
static build(propertyName: string, arg: UI | OverrideInterface): string;
static buildNewPropertyBag(token: string, arg: UI | OverrideInterface): any;
static checkAndBuild(token: string, arg: UI | OverrideInterface): any;
static compileSpecialOperator(tokens: Array<string>, arg: UI | OverrideInterface): string[];
static lexer(propertyName: string, arg: UI | OverrideInterface): string[];
static splitString(propertyName: string): string[];
static stringHandler(token: string, arg: UI | OverrideInterface): string;
static getStringTokens(token: string): string[];
static functionHandler(token: string, arg: UI | OverrideInterface): string;
static readFunctionFromToken(tokens: Array<string>, arg: UI | OverrideInterface): {
name: string;
params: string[];
};
static readTokens(strTokens: Array<string>): string[];
static getTokens(strTokens: Array<string>): string[];
static buildNewBinding(token: string, arg: UI | OverrideInterface): string;
static findSourceBindings(token: string, sourceControlsName: string, lastResourceBindings?: any): {
reSourceBindings: Record<string, string>;
newTokens: string[];
};
static isCanCompile(token: string | string[]): boolean;
static isString(token: string): boolean;
static isStringCode(token: string): boolean;
static isStringPattern(token: string): boolean;
static isNegativeNumber(token: string): boolean;
static isScientificNotation(token: string): boolean;
static isFunction(token: string): boolean;
static isArray(token: string): boolean;
static isCodeBlock(token: string): boolean;
static maybeFunctionName(token: string): boolean;
static isBindingOrVariable(token: string): boolean;
static isOperator(token: string): boolean;
static isHasBinding(token: string): boolean;
static isNumber(value: string): boolean;
}