message: fix(types): change "IndexOptions" to extend from "mongoose.IndexOptions"
diff: @@ -433,61 +433,12 @@ export type DecoratedPropertyMetadataMap = Map<string | symbol, DecoratedPropert
  /**
  * copy-paste from mongodb package (should be same as IndexOptions from 'mongodb')
  */
  -export interface IndexOptions<T> {
  +export interface IndexOptions<T> extends mongoose.IndexOptions {
  /**
  * Mongoose-specific syntactic sugar, uses ms to convert
  * expires option into seconds for the expireAfterSeconds in the above link.
  */
  expires?: string;
  - /**
  - * Creates an unique index.
  - */
  - unique?: boolean;
  - /**
  - * Creates a sparse index.
  - */
  - sparse?: boolean;
  - /**
  - * Creates the index in the background, yielding whenever possible.
  - */
  - background?: boolean;
  - /**
  - * A unique index cannot be created on a key that has pre-existing duplicate values.
  - * If you would like to create the index anyway, keeping the first document the database indexes and
  - * deleting all subsequent documents that have duplicate value
  - */
  - dropDups?: boolean;
  - /**
  - * For geo spatial indexes set the lower bound for the co-ordinates.
  - */
  - min?: number;
  - /**
  - * For geo spatial indexes set the high bound for the co-ordinates.
  - */
  - max?: number;
  - /**
  - * Specify the format version of the indexes.
  - */
  - v?: number;
  - /**
  - * Allows you to expire data on indexes applied to a data (MongoDB 2.2 or higher)
  - */
  - expireAfterSeconds?: number;
  - /**
  - * Override the auto generated index name (useful if the resulting name is larger than 128 bytes)
  - */
  - name?: string;
  - /**
  - * Creates a partial index based on the given filter object (MongoDB 3.2 or higher)
  - */
  - partialFilterExpression?: any;
  - collation?: BeAnObject;
  - default_language?: string;
  - language_override?: string;
  -
  - lowercase?: boolean; // whether to always call .toLowerCase() on the value
  - uppercase?: boolean; // whether to always call .toUpperCase() on the value
  - trim?: boolean; // whether to always call .trim() on the value
  weights?: Partial<Record<keyof T, number>>;
  }
  