// Code generated by depstubber. DO NOT EDIT.
// This is a simple stub for github.com/beego/beego/v2/server/web, strictly for use in testing.

// See the LICENSE file for information about the licensing of the original library.
// Source: github.com/beego/beego/v2/server/web (exports: Controller; functions: Run,Router)

// Package web is a stub of github.com/beego/beego/v2/server/web, generated by depstubber.
package web

import (
	multipart "mime/multipart"
	http "net/http"
	url "net/url"
	time "time"
)

type Config struct {
	AppName             string
	RunMode             string
	RouterCaseSensitive bool
	RecoverPanic        bool
	CopyRequestBody     bool
	EnableGzip          bool
	EnableErrorsShow    bool
	EnableErrorsRender  bool
	ServerName          string
	RecoverFunc         func(interface{}, *Config)
	MaxMemory           int64
	MaxUploadSize       int64
	Listen              Listen
	WebConfig           WebConfig
	Log                 LogConfig
}

type Controller struct {
	Ctx            interface{}
	Data           map[interface{}]interface{}
	AppController  interface{}
	TplName        string
	ViewPath       string
	Layout         string
	LayoutSections map[string]string
	TplPrefix      string
	TplExt         string
	EnableRender   bool
	EnableXSRF     bool
	XSRFExpire     int
	CruSession     interface{}
}

func (_ *Controller) Abort(_ string) {}

func (_ *Controller) Bind(_ interface{}) error {
	return nil
}

func (_ *Controller) BindForm(_ interface{}) error {
	return nil
}

func (_ *Controller) BindJSON(_ interface{}) error {
	return nil
}

func (_ *Controller) BindProtobuf(_ interface{}) error {
	return nil
}

func (_ *Controller) BindXML(_ interface{}) error {
	return nil
}

func (_ *Controller) BindYAML(_ interface{}) error {
	return nil
}

func (_ *Controller) CheckXSRFCookie() bool {
	return false
}

func (_ *Controller) CustomAbort(_ int, _ string) {}

func (_ *Controller) DelSession(_ interface{}) error {
	return nil
}

func (_ *Controller) Delete() {}

func (_ *Controller) DestroySession() error {
	return nil
}

func (_ *Controller) Finish() {}

func (_ *Controller) Get() {}

func (_ *Controller) GetBool(_ string, _ ...bool) (bool, error) {
	return false, nil
}

func (_ *Controller) GetControllerAndAction() (string, string) {
	return "", ""
}

func (_ *Controller) GetFile(_ string) (multipart.File, *multipart.FileHeader, error) {
	return nil, nil, nil
}

func (_ *Controller) GetFiles(_ string) ([]*multipart.FileHeader, error) {
	return nil, nil
}

func (_ *Controller) GetFloat(_ string, _ ...float64) (float64, error) {
	return 0, nil
}

func (_ *Controller) GetInt(_ string, _ ...int) (int, error) {
	return 0, nil
}

func (_ *Controller) GetInt16(_ string, _ ...int16) (int16, error) {
	return 0, nil
}

func (_ *Controller) GetInt32(_ string, _ ...int32) (int32, error) {
	return 0, nil
}

func (_ *Controller) GetInt64(_ string, _ ...int64) (int64, error) {
	return 0, nil
}

func (_ *Controller) GetInt8(_ string, _ ...int8) (int8, error) {
	return 0, nil
}

func (_ *Controller) GetSecureCookie(_ string, _ string) (string, bool) {
	return "", false
}

func (_ *Controller) GetSession(_ interface{}) interface{} {
	return nil
}

func (_ *Controller) GetString(_ string, _ ...string) string {
	return ""
}

func (_ *Controller) GetStrings(_ string, _ ...[]string) []string {
	return nil
}

func (_ *Controller) GetUint16(_ string, _ ...uint16) (uint16, error) {
	return 0, nil
}

func (_ *Controller) GetUint32(_ string, _ ...uint32) (uint32, error) {
	return 0, nil
}

func (_ *Controller) GetUint64(_ string, _ ...uint64) (uint64, error) {
	return 0, nil
}

func (_ *Controller) GetUint8(_ string, _ ...byte) (byte, error) {
	return 0, nil
}

func (_ *Controller) HandlerFunc(_ string) bool {
	return false
}

func (_ *Controller) Head() {}

func (_ *Controller) Init(_ interface{}, _ string, _ string, _ interface{}) {}

func (_ *Controller) Input() (url.Values, error) {
	return nil, nil
}

func (_ *Controller) IsAjax() bool {
	return false
}

func (_ *Controller) JSONResp(_ interface{}) error {
	return nil
}

func (_ *Controller) Mapping(_ string, _ func()) {}

func (_ *Controller) Options() {}

func (_ *Controller) ParseForm(_ interface{}) error {
	return nil
}

func (_ *Controller) Patch() {}

func (_ *Controller) Post() {}

func (_ *Controller) Prepare() {}

func (_ *Controller) Put() {}

func (_ *Controller) Redirect(_ string, _ int) {}

func (_ *Controller) Render() error {
	return nil
}

func (_ *Controller) RenderBytes() ([]byte, error) {
	return nil, nil
}

func (_ *Controller) RenderString() (string, error) {
	return "", nil
}

func (_ *Controller) Resp(_ interface{}) error {
	return nil
}

func (_ *Controller) SaveToFile(_ string, _ string) error {
	return nil
}

func (_ *Controller) SaveToFileWithBuffer(_ string, _ string, _ []byte) error {
	return nil
}

func (_ *Controller) ServeFormatted(_ ...bool) error {
	return nil
}

func (_ *Controller) ServeJSON(_ ...bool) error {
	return nil
}

func (_ *Controller) ServeJSONP() error {
	return nil
}

func (_ *Controller) ServeXML() error {
	return nil
}

func (_ *Controller) ServeYAML() error {
	return nil
}

func (_ *Controller) SessionRegenerateID() error {
	return nil
}

func (_ *Controller) SetData(_ interface{}) {}

func (_ *Controller) SetSecureCookie(_ string, _ string, _ string, _ ...interface{}) {}

func (_ *Controller) SetSession(_ interface{}, _ interface{}) error {
	return nil
}

func (_ *Controller) StartSession() interface{} {
	return nil
}

func (_ *Controller) StopRun() {}

func (_ *Controller) Trace() {}

func (_ *Controller) URLFor(_ string, _ ...interface{}) string {
	return ""
}

func (_ *Controller) URLMapping() {}

func (_ *Controller) XMLResp(_ interface{}) error {
	return nil
}

func (_ *Controller) XSRFFormHTML() string {
	return ""
}

func (_ *Controller) XSRFToken() string {
	return ""
}

func (_ *Controller) YamlResp(_ interface{}) error {
	return nil
}

type ControllerInfo struct{}

func (_ *ControllerInfo) GetMethod() map[string]string {
	return nil
}

func (_ *ControllerInfo) GetPattern() string {
	return ""
}

type ControllerInterface interface {
	CheckXSRFCookie() bool
	Delete()
	Finish()
	Get()
	HandlerFunc(_ string) bool
	Head()
	Init(_ interface{}, _ string, _ string, _ interface{})
	Options()
	Patch()
	Post()
	Prepare()
	Put()
	Render() error
	Trace()
	URLMapping()
	XSRFToken() string
}

type ControllerOption func(*ControllerInfo)

type ControllerRegister struct{}

func (_ *ControllerRegister) Add(_ string, _ ControllerInterface, _ ...ControllerOption) {}

func (_ *ControllerRegister) AddAuto(_ ControllerInterface) {}

func (_ *ControllerRegister) AddAutoPrefix(_ string, _ ControllerInterface) {}

func (_ *ControllerRegister) AddMethod(_ string, _ string, _ HandleFunc) {}

func (_ *ControllerRegister) AddRouterMethod(_ string, _ string, _ interface{}) {}

func (_ *ControllerRegister) Any(_ string, _ HandleFunc) {}

func (_ *ControllerRegister) CtrlAny(_ string, _ interface{}) {}

func (_ *ControllerRegister) CtrlDelete(_ string, _ interface{}) {}

func (_ *ControllerRegister) CtrlGet(_ string, _ interface{}) {}

func (_ *ControllerRegister) CtrlHead(_ string, _ interface{}) {}

func (_ *ControllerRegister) CtrlOptions(_ string, _ interface{}) {}

func (_ *ControllerRegister) CtrlPatch(_ string, _ interface{}) {}

func (_ *ControllerRegister) CtrlPost(_ string, _ interface{}) {}

func (_ *ControllerRegister) CtrlPut(_ string, _ interface{}) {}

func (_ *ControllerRegister) Delete(_ string, _ HandleFunc) {}

func (_ *ControllerRegister) FindPolicy(_ interface{}) []PolicyFunc {
	return nil
}

func (_ *ControllerRegister) FindRouter(_ interface{}) (*ControllerInfo, bool) {
	return nil, false
}

func (_ *ControllerRegister) Get(_ string, _ HandleFunc) {}

func (_ *ControllerRegister) GetAllControllerInfo() []*ControllerInfo {
	return nil
}

func (_ *ControllerRegister) GetContext() interface{} {
	return nil
}

func (_ *ControllerRegister) GiveBackContext(_ interface{}) {}

func (_ *ControllerRegister) Handler(_ string, _ http.Handler, _ ...interface{}) {}

func (_ *ControllerRegister) Head(_ string, _ HandleFunc) {}

func (_ *ControllerRegister) Include(_ ...ControllerInterface) {}

func (_ *ControllerRegister) Init() {}

func (_ *ControllerRegister) InsertFilter(_ string, _ int, _ HandleFunc, _ ...FilterOpt) error {
	return nil
}

func (_ *ControllerRegister) InsertFilterChain(_ string, _ FilterChain, _ ...FilterOpt) {}

func (_ *ControllerRegister) Options(_ string, _ HandleFunc) {}

func (_ *ControllerRegister) Patch(_ string, _ HandleFunc) {}

func (_ *ControllerRegister) Post(_ string, _ HandleFunc) {}

func (_ *ControllerRegister) Put(_ string, _ HandleFunc) {}

func (_ *ControllerRegister) ServeHTTP(_ http.ResponseWriter, _ *http.Request) {}

func (_ *ControllerRegister) URLFor(_ string, _ ...interface{}) string {
	return ""
}

type FilterChain func(HandleFunc) HandleFunc

type FilterOpt func(interface{})

type HandleFunc func(interface{})

type HttpServer struct {
	Handlers           *ControllerRegister
	Server             *http.Server
	Cfg                *Config
	LifeCycleCallbacks []LifeCycleCallback
}

func (_ *HttpServer) Any(_ string, _ HandleFunc) *HttpServer {
	return nil
}

func (_ *HttpServer) AutoPrefix(_ string, _ ControllerInterface) *HttpServer {
	return nil
}

func (_ *HttpServer) AutoRouter(_ ControllerInterface) *HttpServer {
	return nil
}

func (_ *HttpServer) CtrlAny(_ string, _ interface{}) *HttpServer {
	return nil
}

func (_ *HttpServer) CtrlDelete(_ string, _ interface{}) *HttpServer {
	return nil
}

func (_ *HttpServer) CtrlGet(_ string, _ interface{}) *HttpServer {
	return nil
}

func (_ *HttpServer) CtrlHead(_ string, _ interface{}) *HttpServer {
	return nil
}

func (_ *HttpServer) CtrlOptions(_ string, _ interface{}) *HttpServer {
	return nil
}

func (_ *HttpServer) CtrlPatch(_ string, _ interface{}) *HttpServer {
	return nil
}

func (_ *HttpServer) CtrlPost(_ string, _ interface{}) *HttpServer {
	return nil
}

func (_ *HttpServer) CtrlPut(_ string, _ interface{}) *HttpServer {
	return nil
}

func (_ *HttpServer) Delete(_ string, _ HandleFunc) *HttpServer {
	return nil
}

func (_ *HttpServer) Get(_ string, _ HandleFunc) *HttpServer {
	return nil
}

func (_ *HttpServer) Handler(_ string, _ http.Handler, _ ...interface{}) *HttpServer {
	return nil
}

func (_ *HttpServer) Head(_ string, _ HandleFunc) *HttpServer {
	return nil
}

func (_ *HttpServer) Include(_ ...ControllerInterface) *HttpServer {
	return nil
}

func (_ *HttpServer) InsertFilter(_ string, _ int, _ HandleFunc, _ ...FilterOpt) *HttpServer {
	return nil
}

func (_ *HttpServer) InsertFilterChain(_ string, _ FilterChain, _ ...FilterOpt) *HttpServer {
	return nil
}

func (_ *HttpServer) LogAccess(_ interface{}, _ *time.Time, _ int) {}

func (_ *HttpServer) Options(_ string, _ HandleFunc) *HttpServer {
	return nil
}

func (_ *HttpServer) Patch(_ string, _ HandleFunc) *HttpServer {
	return nil
}

func (_ *HttpServer) Post(_ string, _ HandleFunc) *HttpServer {
	return nil
}

func (_ *HttpServer) PrintTree() M {
	return nil
}

func (_ *HttpServer) Put(_ string, _ HandleFunc) *HttpServer {
	return nil
}

func (_ *HttpServer) RESTRouter(_ string, _ ControllerInterface) *HttpServer {
	return nil
}

func (_ *HttpServer) Router(_ string, _ ControllerInterface, _ ...string) *HttpServer {
	return nil
}

func (_ *HttpServer) RouterWithOpts(_ string, _ ControllerInterface, _ ...ControllerOption) *HttpServer {
	return nil
}

func (_ *HttpServer) Run(_ string, _ ...MiddleWare) {}

func (_ *HttpServer) UnregisterFixedRoute(_ string, _ string) *HttpServer {
	return nil
}

type LifeCycleCallback interface {
	AfterStart(_ *HttpServer)
	BeforeShutdown(_ *HttpServer)
}

type Listen struct {
	Graceful          bool
	ListenTCP4        bool
	EnableHTTP        bool
	AutoTLS           bool
	EnableHTTPS       bool
	EnableMutualHTTPS bool
	EnableAdmin       bool
	EnableFcgi        bool
	EnableStdIo       bool
	ServerTimeOut     int64
	HTTPAddr          string
	HTTPPort          int
	Domains           []string
	TLSCacheDir       string
	HTTPSAddr         string
	HTTPSPort         int
	HTTPSCertFile     string
	HTTPSKeyFile      string
	TrustCaFile       string
	AdminAddr         string
	AdminPort         int
	ClientAuth        int
}

type LogConfig struct {
	AccessLogs       bool
	EnableStaticLogs bool
	FileLineNum      bool
	AccessLogsFormat string
	Outputs          map[string]string
}

type M map[string]interface{}

type MiddleWare func(http.Handler) http.Handler

type PolicyFunc func(interface{})

func Router(_ string, _ ControllerInterface, _ ...string) *HttpServer {
	return nil
}

func Run(_ ...string) {}

type SessionConfig struct {
	SessionOn                    bool
	SessionAutoSetCookie         bool
	SessionDisableHTTPOnly       bool
	SessionEnableSidInHTTPHeader bool
	SessionEnableSidInURLQuery   bool
	SessionProvider              string
	SessionName                  string
	SessionGCMaxLifetime         int64
	SessionProviderConfig        string
	SessionCookieLifeTime        int
	SessionDomain                string
	SessionNameInHTTPHeader      string
	SessionCookieSameSite        http.SameSite
	SessionIDPrefix              string
}

type WebConfig struct {
	AutoRender             bool
	EnableDocs             bool
	EnableXSRF             bool
	DirectoryIndex         bool
	FlashName              string
	FlashSeparator         string
	StaticDir              map[string]string
	StaticExtensionsToGzip []string
	StaticCacheFileSize    int
	StaticCacheFileNum     int
	TemplateLeft           string
	TemplateRight          string
	ViewsPath              string
	CommentRouterPath      string
	XSRFKey                string
	XSRFExpire             int
	Session                SessionConfig
}
