В Mongoose, функция createIndexes() используется для создания индексов в базе данных. Однако, она не предназначена для поиска по текстовому совпадению. Для этой цели вам следует использовать оператор $text. В первую очередь, убедитесь, что вы создали индекс на поля, по которым хотите искать текстовые совпадения. В вашем случае, в схеме TopPageModel вы установили опцию text на поля title и seoText, поэтому вам необходимо создать индекс следующим образом: ```typescript TopPageSchemaFactory.index({ title: 'text', seoText: 'text' }); ``` После создания индекса, вы можете использовать функцию find() для выполнения поиска по текстовому совпадению: ```typescript async findByText(text: string) { const search = this.topPageModel.find({ $text: { $search: text } }); return search; } ``` Обратите внимание, что для использования оператора $text, ваша MongoDB версия должна быть 2.6 или выше. Также, в вашем коде вы используете функцию createIndexes() для создания индекса и пытаетесь получить результаты поиска с использованием этого созданного индекса. Это неправильное использование createIndexes(). Функция createIndexes() не возвращает результаты поиска, а только создает индексы. Вам нужно использовать функцию find() для получения результатов поиска. Итак, ваш код должен быть таким: ```typescript async findByText(text: string) { const search = this.topPageModel.find({ $text: { $search: text } }); return search; } ```