Каким должен быть тип createReadStream в TypeScript? - PullRequest
0 голосов
/ 12 марта 2020

Я пытаюсь использовать машинопись. Каким должен быть тип createReadStream ? Я нашел объявление типов, следующее из fs.d.ts файла из этого DefinitiveTyped ссылка на github

ОБНОВЛЕНИЕ

что Я пытаюсь сделать это загрузить файл из внешнего интерфейса . На backend (в основном узел) я получаю файл объекта . на уничтожая объект файла, я получаю следующее.

const { createReadStream, filename, mimetype, encoding } = await file;

Есть ли способ, я могу использовать этот тип?

обновленный вопрос

Теперь, как мне добавить тип объекта file , который я получаю в параметре функции функции, указанной ниже?

export const processUpload = async (file, DestinationDir) {

}

Тип, найденный в официальный node/fs.d.ts файл

function createReadStream(path: PathLike, options?: string | {
        flags?: string;
        encoding?: string;
        fd?: number;
        mode?: number;
        autoClose?: boolean;
        /**
         * @default false
         */
        emitClose?: boolean;
        start?: number;
        end?: number;
        highWaterMark?: number;
    }): ReadStream;

Пример кода

export const processUpload = async (
  file:
    | PromiseLike<{
        createReadStream: /** WHAT SHOULD BE THE TYPE */;
        filename: string;
        mimetype: string;
        encoding: string;
      }>
    | {
        createReadStream: /** WHAT SHOULD BE THE TYPE */;
        filename: string;
        mimetype: string;
        encoding: string;
      },

  { DestinationDir = "default" }: { DestinationDir: string }
) => {
  const { createReadStream, filename, mimetype, encoding } = await file;
  const stream = createReadStream();

  /** SOME CODE */ 

  return /*SOME RETURN TYPE*/
};
...