@visactor/vgrammar-core
Version:
VGrammar is a visual grammar library
37 lines (36 loc) • 1.55 kB
TypeScript
import type { IGrammarBase, DataSpec, IData, GrammarType, DataFormatSpec, IView, TransformSpec, ParameterFunctionType, IDataFilter } from '../types';
import { GrammarBase } from './grammar-base';
import type { Nil } from '../types/base';
export declare class Data extends GrammarBase implements IData {
readonly grammarType: GrammarType;
protected spec: DataSpec;
private _dataIDKey;
private _input;
private _values;
private _isLoaded?;
private _loadTasks;
private _postFilters;
constructor(view: IView, values?: any, format?: DataFormatSpec);
parse(spec: DataSpec): this;
private parseDataSource;
private ingest;
private load;
private relay;
evaluate(upstream: any, parameters: any): this;
output(): any[];
getDataIDKey(): string;
values(values: any | Nil, format?: ParameterFunctionType<DataFormatSpec>, load?: boolean): this;
url(url: ParameterFunctionType<string> | Nil, format?: ParameterFunctionType<DataFormatSpec>, load?: boolean): this;
source(source: string | string[] | IData | IData[] | Nil, format?: ParameterFunctionType<DataFormatSpec>, load?: boolean): this;
private parseLoad;
private setValues;
field(field: string): any[];
transform(transforms: TransformSpec[] | Nil): this;
getValue(): any[];
getInput(): any[];
addDataFilter(filter: IDataFilter | IDataFilter[]): this;
removeDataFilter(filter: IDataFilter | IDataFilter[]): this;
private _evaluateFilter;
reuse(grammar: IGrammarBase): this;
clear(): void;
}