/**
 * The query operators.
 */
const QUERY_OPERATORS = [
  {
    name: '$all',
    value: '$all',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$and',
    value: '$and',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$bitsAllClear',
    value: '$bitsAllClear',
    score: 1,
    meta: 'query',
    version: '3.2.0',
    geospatial: false,
  },
  {
    name: '$bitsAllSet',
    value: '$bitsAllSet',
    score: 1,
    meta: 'query',
    version: '3.2.0',
    geospatial: false,
  },
  {
    name: '$bitsAnyClear',
    value: '$bitsAnyClear',
    score: 1,
    meta: 'query',
    version: '3.2.0',
    geospatial: false,
  },
  {
    name: '$bitsAnySet',
    value: '$bitsAnySet',
    score: 1,
    meta: 'query',
    version: '3.2.0',
    geospatial: false,
  },
  {
    name: '$comment',
    value: '$comment',
    score: 1,
    meta: 'query',
    version: '3.2.0',
    geospatial: false,
  },
  {
    name: '$elemMatch',
    value: '$elemMatch',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$eq',
    value: '$eq',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$exists',
    value: '$exists',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$expr',
    value: '$expr',
    score: 1,
    meta: 'query',
    version: '3.6.0',
    geospatial: false,
  },
  {
    name: '$geoIntersects',
    value: '$geoIntersects',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: true,
  },
  {
    name: '$geoWithin',
    value: '$geoWithin',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: true,
  },
  {
    name: '$gt',
    value: '$gt',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$gte',
    value: '$gte',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$in',
    value: '$in',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$jsonSchema',
    value: '$jsonSchema',
    score: 1,
    meta: 'query',
    version: '3.6.0',
    geospatial: false,
  },
  {
    name: '$lt',
    value: '$lt',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$lte',
    value: '$lte',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$mod',
    value: '$mod',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$ne',
    value: '$ne',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$near',
    value: '$near',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: true,
  },
  {
    name: '$nearSphere',
    value: '$nearSphere',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: true,
  },
  {
    name: '$nin',
    value: '$nin',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$not',
    value: '$not',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$nor',
    value: '$nor',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$or',
    value: '$or',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$regex',
    value: '$regex',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$size',
    value: '$size',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$slice',
    value: '$slice',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$text',
    value: '$text',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$type',
    value: '$type',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
  {
    name: '$where',
    value: '$where',
    score: 1,
    meta: 'query',
    version: '2.2.0',
    geospatial: false,
  },
] as const;

export { QUERY_OPERATORS };
