query.d.ts 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. import { LogicCommand } from './logic';
  2. import { InternalSymbol } from '../helper/symbol';
  3. import { Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon } from '../geo/index';
  4. import { CenterSphere } from '../typings';
  5. export declare const EQ = "eq";
  6. export declare const NEQ = "neq";
  7. export declare const GT = "gt";
  8. export declare const GTE = "gte";
  9. export declare const LT = "lt";
  10. export declare const LTE = "lte";
  11. export declare const IN = "in";
  12. export declare const NIN = "nin";
  13. export declare const ALL = "all";
  14. export declare const ELEM_MATCH = "elemMatch";
  15. export declare const EXISTS = "exists";
  16. export declare const SIZE = "size";
  17. export declare const MOD = "mod";
  18. export declare enum QUERY_COMMANDS_LITERAL {
  19. EQ = "eq",
  20. NEQ = "neq",
  21. GT = "gt",
  22. GTE = "gte",
  23. LT = "lt",
  24. LTE = "lte",
  25. IN = "in",
  26. NIN = "nin",
  27. ALL = "all",
  28. ELEM_MATCH = "elemMatch",
  29. EXISTS = "exists",
  30. SIZE = "size",
  31. MOD = "mod",
  32. GEO_NEAR = "geoNear",
  33. GEO_WITHIN = "geoWithin",
  34. GEO_INTERSECTS = "geoIntersects"
  35. }
  36. export declare class QueryCommand extends LogicCommand {
  37. operator: QUERY_COMMANDS_LITERAL;
  38. constructor(operator: QUERY_COMMANDS_LITERAL, operands: any, fieldName?: string | InternalSymbol);
  39. toJSON(): {
  40. ['$ne']: any;
  41. } | {
  42. [x: string]: any;
  43. $ne?: undefined;
  44. };
  45. _setFieldName(fieldName: string): QueryCommand;
  46. eq(val: any): LogicCommand;
  47. neq(val: any): LogicCommand;
  48. gt(val: any): LogicCommand;
  49. gte(val: any): LogicCommand;
  50. lt(val: any): LogicCommand;
  51. lte(val: any): LogicCommand;
  52. in(list: any[]): LogicCommand;
  53. nin(list: any[]): LogicCommand;
  54. geoNear(val: IGeoNearOptions): LogicCommand;
  55. geoWithin(val: IGeoWithinOptions): LogicCommand;
  56. geoIntersects(val: IGeoIntersectsOptions): LogicCommand;
  57. }
  58. export declare function isQueryCommand(object: any): object is QueryCommand;
  59. export declare function isKnownQueryCommand(object: any): object is QueryCommand;
  60. export declare function isComparisonCommand(object: any): object is QueryCommand;
  61. export default QueryCommand;
  62. export interface IGeoNearOptions {
  63. geometry: Point;
  64. maxDistance?: number;
  65. minDistance?: number;
  66. }
  67. export interface IGeoWithinOptions {
  68. geometry?: Polygon | MultiPolygon;
  69. centerSphere?: CenterSphere;
  70. }
  71. export interface IGeoIntersectsOptions {
  72. geometry: Point | LineString | Polygon | MultiPoint | MultiLineString | MultiPolygon;
  73. }