export interface IQueryPart { literal?: string; hasArgument?: boolean; argument?: any; } export interface IQueryFragments { add(query: IQuery): IQueryFragments; add(query: TemplateStringsArray, ...args: any[]): IQueryFragments; } export interface IQuery { toQuery(): IQueryWithParameters; toQueryArguments(): { command: string; arguments: any[]; }; } declare function fragments(separator: string): IQueryFragments; declare function fragments(prefix: string, separator?: string): IQueryFragments; declare class QueryObject { static create(query: TemplateStringsArray, ...args: any[]): IQuery; static literal(text: string, escape?: ((t: string) => string)): IQuery; private fragments; constructor(fragments: IQueryPart[]); /** * Returns key value pair style parameters and command * @param prefix Parameter Prefix */ toQuery(prefix?: string): IQueryWithParameters; /** * Returns question mark and arguments array */ toQueryArguments(): { command: string; arguments: any[]; }; } export interface IQueryWithParameters { command: string; parameters: { [key: string]: any; }; } declare const Query: { create: typeof QueryObject.create; literal: typeof QueryObject.literal; fragments: typeof fragments; }; export default Query; //# sourceMappingURL=Query.d.ts.map