export interface Op { readonly eq: unique symbol; readonly ne: unique symbol; readonly in: unique symbol; readonly gt: unique symbol; readonly lt: unique symbol; readonly gte: unique symbol; readonly lte: unique symbol; readonly beginsWith: unique symbol; readonly endsWith: unique symbol; readonly contains: unique symbol; readonly notNull: unique symbol; readonly null: unique symbol; readonly like: unique symbol; readonly notLike: unique symbol; readonly and: unique symbol; } export declare const Op: Op; export interface WhereOperators { [Op.eq]?: number | string | Date; [Op.ne]?: number | string | Date; [Op.in]?: (number | string)[]; [Op.gt]?: number | string | Date; [Op.gte]?: number | string | Date; [Op.lt]?: number | string | Date; [Op.lte]?: number | string | Date; [Op.beginsWith]?: string; [Op.endsWith]?: string; [Op.contains]?: string; [Op.like]?: string; [Op.notLike]?: string; } export interface AndOperator { [Op.and]: WhereOptions[]; } export declare type WhereValue = string | number | boolean | symbol | Date | WhereOperators; export declare type WhereAttributeHash = { [P in keyof T]?: T[P] extends object ? WhereAttributeHash> : WhereValue; }; export declare type WhereOptions = WhereAttributeHash | AndOperator; export interface QueryOptions { startPosition?: number; maxResult?: number; } export declare enum QueryStatementType { Select = 0, Count = 1 }