summaryrefslogtreecommitdiff
path: root/multipart/formfile.ts
blob: 8bbdcffbca4424108eea34a9058b11b5a3a37ec8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.

/** FormFile object */
export interface FormFile {
  /** filename  */
  filename: string;
  /** content-type header value of file */
  type: string;
  /** byte size of file */
  size: number;
  /** in-memory content of file. Either content or tempfile is set  */
  content?: Uint8Array;
  /** temporal file path. Set if file size is bigger than specified max-memory size at reading form */
  tempfile?: string;
}

/** Type guard for FormFile */
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export function isFormFile(x: any): x is FormFile {
  return (
    typeof x === "object" &&
    x.hasOwnProperty("filename") &&
    x.hasOwnProperty("type")
  );
}