плагин fastify-cors с машинописным текстом: «происхождение» не определено

#typescript #fastify

Вопрос:

Попытка настроить CORS для fastify с помощью плагина fastify в довольно строгой среде машинописи. Документы, показывающие асинхронную конфигурацию https://github.com/fastify/fastify-cors#configuring-cors-asynchronously

 import fp from 'fastify-plugin';
import cors from 'fastify-cors';

export default fp(async (fastify) => {
  fastify.register(cors, () => (callback: any): void => {
    let corsOptions;
    if (/localhost/.test(origin)) {
      corsOptions = { origin: false };
    } else {
      corsOptions = { origin: 'www.mywebsite.com' };
    }
    callback(null, corsOptions);
  });
});
 

Ошибка, которую я получаю, такова

 'origin' is not defined.eslintno-undef
Cannot find name 'origin'.ts(2304)
 

Как мне определить происхождение?

Если я попробую пример без асинхронности из источника документов, он все еще не определен

 import fp from 'fastify-plugin';
import cors from 'fastify-cors';

export default fp(async (fastify) => {
  fastify.register(cors, {
    origin: (origin, callback) => {
      // eslint-disable-next-line no-console
      console.log(origin); //<======== undefined
      if (/localhost/.test(origin)) {
        callback(null, true);
      } else {
        callback(new Error('Not allowed by CORS'), false);
      }
    },
  });
});
 

Комментарии:

1. Оператор if if (/localhost/.test(origin)) { использует исходную переменную, которая не определена. Если вы определите эту переменную, вы не получите ошибку.

2. из примера, приведенного в документации, я не понимаю, как определить происхождение