mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
49 lines
1.3 KiB
TypeScript
49 lines
1.3 KiB
TypeScript
// Type definitions for graphql-upload 8.0
|
|
// Project: https://github.com/jaydenseric/graphql-upload#readme
|
|
// Definitions by: Mike Marcacci <https://github.com/mike-marcacci>
|
|
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
|
// TypeScript Version: 3.3
|
|
|
|
/* tslint:disable:no-unnecessary-generics */
|
|
|
|
import { IncomingMessage, ServerResponse } from "http";
|
|
import { GraphQLScalarType } from "graphql";
|
|
import { RequestHandler } from "express";
|
|
import { Middleware } from "koa";
|
|
import { ReadStream } from "fs-capacitor";
|
|
|
|
export interface UploadOptions {
|
|
maxFieldSize?: number;
|
|
maxFileSize?: number;
|
|
maxFiles?: number;
|
|
}
|
|
|
|
export interface GraphQLOperation {
|
|
query: string;
|
|
operationName?: null | string;
|
|
variables?: null | unknown;
|
|
}
|
|
|
|
export function processRequest(
|
|
request: IncomingMessage,
|
|
response: ServerResponse,
|
|
uploadOptions?: UploadOptions
|
|
): Promise<GraphQLOperation | GraphQLOperation[]>;
|
|
|
|
export function graphqlUploadExpress(
|
|
uploadOptions?: UploadOptions
|
|
): RequestHandler;
|
|
|
|
export function graphqlUploadKoa <StateT = any, CustomT = {}>(
|
|
uploadOptions?: UploadOptions
|
|
): Middleware<StateT, CustomT>;
|
|
|
|
export const GraphQLUpload: GraphQLScalarType;
|
|
|
|
export interface FileUpload {
|
|
filename: string;
|
|
mimetype: string;
|
|
encoding: string;
|
|
createReadStream(): ReadStream;
|
|
}
|