lambdaorm-base
Version:
69 lines (68 loc) • 2.07 kB
TypeScript
import { Property, Relation, Behavior, Constraint } from '../../schema/domain';
import { Parameter, Operand, Position } from '3xpr';
import { Type } from 'typ3s';
import { SentenceAction } from '../../schema/domain/sentence';
export declare class Constant extends Operand {
eval(): any;
}
export declare class Field extends Operand {
entity: string;
alias?: string;
isRoot?: boolean;
prefix?: string;
constructor(pos: Position, entity: string, name: string, returnType?: Type, alias?: string, isRoot?: boolean);
fieldName(): any;
clone(): Field;
}
export declare class Clause extends Operand {
alias: string;
entity: string;
constructor(pos: Position, name: string, children: Operand[], entity: string, alias: string);
}
export declare class Map extends Clause {
}
export declare class Filter extends Clause {
}
export declare class GroupBy extends Clause {
}
export declare class Having extends Clause {
}
export declare class Sort extends Clause {
}
export declare class Page extends Clause {
}
export declare class From extends Clause {
}
export declare class Join extends Clause {
}
export declare class Insert extends Clause {
}
export declare class BulkInsert extends Clause {
}
export declare class Update extends Clause {
}
export declare class Upsert extends Clause {
}
export declare class Delete extends Clause {
}
export declare class BulkDelete extends Clause {
}
export declare class BulkMerge extends Clause {
}
export declare class Sentence extends Operand {
columns: Property[];
parameters: Parameter[];
entity: string;
alias: string;
action: SentenceAction;
constraints: Constraint[];
values: Behavior[];
defaults: Behavior[];
constructor(pos: Position, name: string, children: Operand[], entity: string, alias: string);
getIncludes(): SentenceInclude[];
getCompositeIncludes(): SentenceInclude[];
}
export declare class SentenceInclude extends Operand {
relation: Relation;
constructor(pos: Position, name: string, children: Operand[], relation: Relation);
}