///
import * as t from './type';
import { Response, NextFunction } from 'express';
export declare type Next = NextFunction;
export interface Upload {
/** Field name specified in the form */
fieldname: string;
/** Name of the file on the user's computer */
originalname: string;
/** Encoding type of the file */
encoding: string;
/** Mime type of the file */
mimetype: string;
/** Size of the file in bytes */
size: number;
/** The folder to which the file has been saved (DiskStorage) */
destination: string;
/** The name of the file within the destination (DiskStorage) */
filename: string;
/** Location of the uploaded file (DiskStorage) */
path: string;
/** A Buffer of the entire file (MemoryStorage) */
buffer: Buffer;
}
export declare type Uploads = {
[fieldname: string]: Upload[];
} | Upload[];
interface SessionCookieData {
originalMaxAge: number;
path: string;
maxAge: number | null;
secure?: boolean;
httpOnly: boolean;
domain?: string;
expires: Date | boolean;
sameSite?: boolean | string;
}
interface SessionCookie extends SessionCookieData {
serialize(name: string, value: string): string;
}
interface SessionData {
[key: string]: any;
cookie: SessionCookieData;
}
export interface Session extends SessionData {
id: string;
regenerate(callback: (err: any) => void): void;
destroy(callback: (err: any) => void): void;
reload(callback: (err: any) => void): void;
save(callback: (err: any) => void): void;
touch(callback: (err: any) => void): void;
cookie: SessionCookie;
}
import { Request } from 'hapi';
export declare type Res = Response;
export interface Req extends Request {
user: any;
}
export interface Redirect {
(url: string): void;
(status: number, url: string): void;
(url: string, status: number): void;
}
export interface Query {
[key: string]: any;
}
export interface Body {
[key: string]: any;
}
export declare const Addon: (metadataDef?: t.AddonOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Controller: (metadataDef?: t.ControllerOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Template: (metadataDef?: t.TemplateOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Typeorm: (metadataDef?: t.TypeormOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Version: (metadataDef?: t.VersionOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Body: (metadataDef?: string & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Next: (metadataDef?: t.NextOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Query: (metadataDef?: string & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Redirect: (metadataDef?: t.RedirectOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Req: (metadataDef?: t.ReqOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Res: (metadataDef?: t.ResOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Session: (metadataDef?: t.SessionOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Upload: (metadataDef?: string & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export declare const Uploads: (metadataDef?: t.UploadsOptions & {
sourceRoot?: string;
imports?: any[];
providers?: import("../../../../ims-decorator/lib").Provider[];
}) => (target: any, propertyKey?: string | symbol, descriptor?: number | TypedPropertyDescriptor) => any;
export {};