ng2-qgrid
Version:
Angular Grid
35 lines (34 loc) • 1.45 kB
TypeScript
import { Node } from '../expression-builder/model/node';
import { Model } from 'ng2-qgrid/core/infrastructure/model';
export declare type Column = {
key: string;
title: string;
type: string;
};
export declare type ColumnMap = {
[key: string]: Column;
};
export interface IQueryBuilderSchema {
apply(node?: Node): Node;
attr(key: string, value: any): IQueryBuilderSchema;
node(id: string, build: (schema: IQueryBuilderSchema) => void): IQueryBuilderSchema;
group(id: string, build: (schema: IQueryBuilderSchema) => void): IQueryBuilderSchema;
get(id: string): IQueryBuilderSchema;
materialize(id: string): Node;
autocomplete(id: string, settings?: any): IQueryBuilderSchema;
button(id: string, settings?: any): IQueryBuilderSchema;
input(id: string, settings?: any): IQueryBuilderSchema;
iconButton(id: string, settings?: any): IQueryBuilderSchema;
label(id: string, settings?: any): IQueryBuilderSchema;
multiselect(id: string, settings?: any): IQueryBuilderSchema;
select(id: string, settings?: any): IQueryBuilderSchema;
}
export declare class QueryBuilderService {
private model;
constructor(model: Model);
columns(): Array<Column>;
columnMap(): ColumnMap;
submit(expression: any): void;
suggest(key: any, skip: any, take: any, search: any, selection?: Array<string>): Promise<string[]>;
build(): IQueryBuilderSchema;
}