// Generated by Lisette bindgen
// Source: net/http/fcgi (Go stdlib)
// Go: 1.25.5
// Lisette: 0.1.20

import "go:net"
import "go:net/http"

/// ProcessEnv returns FastCGI environment variables associated with the request r
/// for which no effort was made to be included in the request itself - the data
/// is hidden in the request's context. As an example, if REMOTE_USER is set for a
/// request, it will not be found anywhere in r, but it will be included in
/// ProcessEnv's response (via r's context).
pub fn ProcessEnv(r: Ref<http.Request>) -> Map<string, string>

/// Serve accepts incoming FastCGI connections on the listener l, creating a new
/// goroutine for each. The goroutine reads requests and then calls handler
/// to reply to them.
/// If l is nil, Serve accepts connections from os.Stdin.
/// If handler is nil, [http.DefaultServeMux] is used.
pub fn Serve(l: net.Listener, handler: http.Handler) -> Result<(), error>

/// ErrConnClosed is returned by Read when a handler attempts to read the body of
/// a request after the connection to the web server has been closed.
pub var ErrConnClosed: error

/// ErrRequestAborted is returned by Read when a handler attempts to read the
/// body of a request that has been aborted by the web server.
pub var ErrRequestAborted: error
