2019-02-10 18:49:48 -05:00
|
|
|
// Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
|
2019-09-03 03:10:05 -04:00
|
|
|
import { hasOwnProperty } from "../util/has_own_property.ts";
|
2019-02-10 18:49:48 -05:00
|
|
|
|
|
|
|
/** FormFile object */
|
2019-03-04 19:53:35 -05:00
|
|
|
export interface FormFile {
|
2019-02-10 18:49:48 -05:00
|
|
|
/** 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;
|
2019-06-19 00:22:01 -04:00
|
|
|
/** temporal file path.
|
|
|
|
* Set if file size is bigger than specified max-memory size at reading form
|
|
|
|
* */
|
2019-02-10 18:49:48 -05:00
|
|
|
tempfile?: string;
|
2019-03-04 19:53:35 -05:00
|
|
|
}
|
2019-02-10 18:49:48 -05:00
|
|
|
|
|
|
|
/** Type guard for FormFile */
|
2019-03-04 19:53:35 -05:00
|
|
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
|
|
export function isFormFile(x: any): x is FormFile {
|
2019-09-03 03:10:05 -04:00
|
|
|
return hasOwnProperty(x, "filename") && hasOwnProperty(x, "type");
|
2019-02-10 18:49:48 -05:00
|
|
|
}
|