@galihrivanto/node-libcurli
Version:
Node.js bindings for curl-impersonate library
1,122 lines • 303 kB
TypeScript
/**
* Copyright (c) Jonathan Cardoso Machado. All Rights Reserved.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import { CurlChunk } from '../enum/CurlChunk';
import { CurlFnMatchFunc } from '../enum/CurlFnMatchFunc';
import { CurlFtpMethod } from '../enum/CurlFtpMethod';
import { CurlFtpSsl } from '../enum/CurlFtpSsl';
import { CurlGssApi } from '../enum/CurlGssApi';
import { CurlHeader } from '../enum/CurlHeader';
import { CurlHsts, CurlHstsCacheCount, CurlHstsCacheEntry } from '../enum/CurlHsts';
import { CurlHttpVersion } from '../enum/CurlHttpVersion';
import { CurlInfoDebug } from '../enum/CurlInfoDebug';
import { CurlIpResolve } from '../enum/CurlIpResolve';
import { CurlNetrc } from '../enum/CurlNetrc';
import { CurlPreReqFunc } from '../enum/CurlPreReqFunc';
import { CurlProgressFunc } from '../enum/CurlProgressFunc';
import { CurlProtocol } from '../enum/CurlProtocol';
import { CurlProxy } from '../enum/CurlProxy';
import { CurlRtspRequest } from '../enum/CurlRtspRequest';
import { CurlSshAuth } from '../enum/CurlSshAuth';
import { CurlSslOpt } from '../enum/CurlSslOpt';
import { CurlSslVersion } from '../enum/CurlSslVersion';
import { CurlTimeCond } from '../enum/CurlTimeCond';
import { CurlUseSsl } from '../enum/CurlUseSsl';
import { EasyNativeBinding } from "../types/EasyNativeBinding";
import { Share as ShareFF } from '../ff/Share';
import { Share as ShareChrome } from "../chrome/Share";
/**
* @public
*/
export interface CurlOption {
/**
* Path to an abstract Unix domain socket.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_ABSTRACT_UNIX_SOCKET.html](https://curl.haxx.se/libcurl/c/CURLOPT_ABSTRACT_UNIX_SOCKET.html)
*/
readonly ABSTRACT_UNIX_SOCKET: "ABSTRACT_UNIX_SOCKET";
/**
* Accept-Encoding and automatic decompressing data.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_ACCEPT_ENCODING.html](https://curl.haxx.se/libcurl/c/CURLOPT_ACCEPT_ENCODING.html)
*/
readonly ACCEPT_ENCODING: "ACCEPT_ENCODING";
/**
* Timeout for waiting for the server's connect back to be accepted.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_ACCEPTTIMEOUT_MS.html](https://curl.haxx.se/libcurl/c/CURLOPT_ACCEPTTIMEOUT_MS.html)
*/
readonly ACCEPTTIMEOUT_MS: "ACCEPTTIMEOUT_MS";
/**
* IPv6 scope for local addresses.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_ADDRESS_SCOPE.html](https://curl.haxx.se/libcurl/c/CURLOPT_ADDRESS_SCOPE.html)
*/
readonly ADDRESS_SCOPE: "ADDRESS_SCOPE";
/**
* Specify the Alt-Svc: cache filename.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_ALTSVC.html](https://curl.haxx.se/libcurl/c/CURLOPT_ALTSVC.html)
*/
readonly ALTSVC: "ALTSVC";
/**
* Enable and configure Alt-Svc: treatment.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_ALTSVC_CTRL.html](https://curl.haxx.se/libcurl/c/CURLOPT_ALTSVC_CTRL.html)
*/
readonly ALTSVC_CTRL: "ALTSVC_CTRL";
/**
* Append to remote file.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_APPEND.html](https://curl.haxx.se/libcurl/c/CURLOPT_APPEND.html)
*/
readonly APPEND: "APPEND";
/**
* Automatically set Referer: header.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_AUTOREFERER.html](https://curl.haxx.se/libcurl/c/CURLOPT_AUTOREFERER.html)
*/
readonly AUTOREFERER: "AUTOREFERER";
/**
* AWS HTTP V4 Signature.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_AWS_SIGV4.html](https://curl.haxx.se/libcurl/c/CURLOPT_AWS_SIGV4.html)
*/
readonly AWS_SIGV4: "AWS_SIGV4";
/**
* Ask for alternate buffer size.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_BUFFERSIZE.html](https://curl.haxx.se/libcurl/c/CURLOPT_BUFFERSIZE.html)
*/
readonly BUFFERSIZE: "BUFFERSIZE";
/**
* Timeout for CA cache.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CA_CACHE_TIMEOUT.html](https://curl.haxx.se/libcurl/c/CURLOPT_CA_CACHE_TIMEOUT.html)
*/
readonly CA_CACHE_TIMEOUT: "CA_CACHE_TIMEOUT";
/**
* CA cert bundle.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CAINFO.html](https://curl.haxx.se/libcurl/c/CURLOPT_CAINFO.html)
*/
readonly CAINFO: "CAINFO";
/**
* CA cert bundle memory buffer.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CAINFO_BLOB.html](https://curl.haxx.se/libcurl/c/CURLOPT_CAINFO_BLOB.html)
*/
readonly CAINFO_BLOB: "CAINFO_BLOB";
/**
* Path to CA cert bundle.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CAPATH.html](https://curl.haxx.se/libcurl/c/CURLOPT_CAPATH.html)
*/
readonly CAPATH: "CAPATH";
/**
* Extract certificate info.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CERTINFO.html](https://curl.haxx.se/libcurl/c/CURLOPT_CERTINFO.html)
*/
readonly CERTINFO: "CERTINFO";
/**
* Callback for wildcard download start of chunk.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CHUNK_BGN_FUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_CHUNK_BGN_FUNCTION.html)
*/
readonly CHUNK_BGN_FUNCTION: "CHUNK_BGN_FUNCTION";
/**
* Callback for wildcard download end of chunk.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CHUNK_END_FUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_CHUNK_END_FUNCTION.html)
*/
readonly CHUNK_END_FUNCTION: "CHUNK_END_FUNCTION";
/**
* Only connect, nothing else.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CONNECT_ONLY.html](https://curl.haxx.se/libcurl/c/CURLOPT_CONNECT_ONLY.html)
*/
readonly CONNECT_ONLY: "CONNECT_ONLY";
/**
* Connect to a specific host and port.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CONNECT_TO.html](https://curl.haxx.se/libcurl/c/CURLOPT_CONNECT_TO.html)
*/
readonly CONNECT_TO: "CONNECT_TO";
/**
* Timeout for the connection phase.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CONNECTTIMEOUT.html](https://curl.haxx.se/libcurl/c/CURLOPT_CONNECTTIMEOUT.html)
*/
readonly CONNECTTIMEOUT: "CONNECTTIMEOUT";
/**
* Millisecond timeout for the connection phase.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CONNECTTIMEOUT_MS.html](https://curl.haxx.se/libcurl/c/CURLOPT_CONNECTTIMEOUT_MS.html)
*/
readonly CONNECTTIMEOUT_MS: "CONNECTTIMEOUT_MS";
/**
* Cookie(s) to send.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_COOKIE.html](https://curl.haxx.se/libcurl/c/CURLOPT_COOKIE.html)
*/
readonly COOKIE: "COOKIE";
/**
* File to read cookies from.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_COOKIEFILE.html](https://curl.haxx.se/libcurl/c/CURLOPT_COOKIEFILE.html)
*/
readonly COOKIEFILE: "COOKIEFILE";
/**
* File to write cookies to.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_COOKIEJAR.html](https://curl.haxx.se/libcurl/c/CURLOPT_COOKIEJAR.html)
*/
readonly COOKIEJAR: "COOKIEJAR";
/**
* Add or control cookies.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_COOKIELIST.html](https://curl.haxx.se/libcurl/c/CURLOPT_COOKIELIST.html)
*/
readonly COOKIELIST: "COOKIELIST";
/**
* Start a new cookie session.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_COOKIESESSION.html](https://curl.haxx.se/libcurl/c/CURLOPT_COOKIESESSION.html)
*/
readonly COOKIESESSION: "COOKIESESSION";
/**
* Convert newlines.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CRLF.html](https://curl.haxx.se/libcurl/c/CURLOPT_CRLF.html)
*/
readonly CRLF: "CRLF";
/**
* Certificate Revocation List.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CRLFILE.html](https://curl.haxx.se/libcurl/c/CURLOPT_CRLFILE.html)
*/
readonly CRLFILE: "CRLFILE";
/**
* Custom request/method.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_CUSTOMREQUEST.html](https://curl.haxx.se/libcurl/c/CURLOPT_CUSTOMREQUEST.html)
*/
readonly CUSTOMREQUEST: "CUSTOMREQUEST";
/**
* Callback for debug information.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DEBUGFUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_DEBUGFUNCTION.html)
*/
readonly DEBUGFUNCTION: "DEBUGFUNCTION";
/**
* Default protocol.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DEFAULT_PROTOCOL.html](https://curl.haxx.se/libcurl/c/CURLOPT_DEFAULT_PROTOCOL.html)
*/
readonly DEFAULT_PROTOCOL: "DEFAULT_PROTOCOL";
/**
* List only.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DIRLISTONLY.html](https://curl.haxx.se/libcurl/c/CURLOPT_DIRLISTONLY.html)
*/
readonly DIRLISTONLY: "DIRLISTONLY";
/**
* Do not allow username in URL.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DISALLOW_USERNAME_IN_URL.html](https://curl.haxx.se/libcurl/c/CURLOPT_DISALLOW_USERNAME_IN_URL.html)
*/
readonly DISALLOW_USERNAME_IN_URL: "DISALLOW_USERNAME_IN_URL";
/**
* Timeout for DNS cache.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DNS_CACHE_TIMEOUT.html](https://curl.haxx.se/libcurl/c/CURLOPT_DNS_CACHE_TIMEOUT.html)
*/
readonly DNS_CACHE_TIMEOUT: "DNS_CACHE_TIMEOUT";
/**
* Bind name resolves to this interface.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DNS_INTERFACE.html](https://curl.haxx.se/libcurl/c/CURLOPT_DNS_INTERFACE.html)
*/
readonly DNS_INTERFACE: "DNS_INTERFACE";
/**
* Bind name resolves to this IP4 address.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DNS_LOCAL_IP4.html](https://curl.haxx.se/libcurl/c/CURLOPT_DNS_LOCAL_IP4.html)
*/
readonly DNS_LOCAL_IP4: "DNS_LOCAL_IP4";
/**
* Bind name resolves to this IP6 address.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DNS_LOCAL_IP6.html](https://curl.haxx.se/libcurl/c/CURLOPT_DNS_LOCAL_IP6.html)
*/
readonly DNS_LOCAL_IP6: "DNS_LOCAL_IP6";
/**
* Preferred DNS servers.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DNS_SERVERS.html](https://curl.haxx.se/libcurl/c/CURLOPT_DNS_SERVERS.html)
*/
readonly DNS_SERVERS: "DNS_SERVERS";
/**
* Shuffle addresses before use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DNS_SHUFFLE_ADDRESSES.html](https://curl.haxx.se/libcurl/c/CURLOPT_DNS_SHUFFLE_ADDRESSES.html)
*/
readonly DNS_SHUFFLE_ADDRESSES: "DNS_SHUFFLE_ADDRESSES";
/**
* OBSOLETE Enable global DNS cache.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DNS_USE_GLOBAL_CACHE.html](https://curl.haxx.se/libcurl/c/CURLOPT_DNS_USE_GLOBAL_CACHE.html)
*/
readonly DNS_USE_GLOBAL_CACHE: "DNS_USE_GLOBAL_CACHE";
/**
* Verify the hostname in the DoH (DNS-over-HTTPS) SSL certificate.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DOH_SSL_VERIFYHOST.html](https://curl.haxx.se/libcurl/c/CURLOPT_DOH_SSL_VERIFYHOST.html)
*/
readonly DOH_SSL_VERIFYHOST: "DOH_SSL_VERIFYHOST";
/**
* Verify the DoH (DNS-over-HTTPS) SSL certificate.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DOH_SSL_VERIFYPEER.html](https://curl.haxx.se/libcurl/c/CURLOPT_DOH_SSL_VERIFYPEER.html)
*/
readonly DOH_SSL_VERIFYPEER: "DOH_SSL_VERIFYPEER";
/**
* Verify the DoH (DNS-over-HTTPS) SSL certificate's status.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DOH_SSL_VERIFYSTATUS.html](https://curl.haxx.se/libcurl/c/CURLOPT_DOH_SSL_VERIFYSTATUS.html)
*/
readonly DOH_SSL_VERIFYSTATUS: "DOH_SSL_VERIFYSTATUS";
/**
* Use this DoH server for name resolves.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_DOH_URL.html](https://curl.haxx.se/libcurl/c/CURLOPT_DOH_URL.html)
*/
readonly DOH_URL: "DOH_URL";
/**
* Set the configuration for ECH.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_ECH.html](https://curl.haxx.se/libcurl/c/CURLOPT_ECH.html)
*/
readonly ECH: "ECH";
/**
* OBSOLETE Identify EGD socket for entropy.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_EGDSOCKET.html](https://curl.haxx.se/libcurl/c/CURLOPT_EGDSOCKET.html)
*/
readonly EGDSOCKET: "EGDSOCKET";
/**
* 100-continue timeout.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_EXPECT_100_TIMEOUT_MS.html](https://curl.haxx.se/libcurl/c/CURLOPT_EXPECT_100_TIMEOUT_MS.html)
*/
readonly EXPECT_100_TIMEOUT_MS: "EXPECT_100_TIMEOUT_MS";
/**
* Fail on HTTP 4xx errors.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FAILONERROR.html](https://curl.haxx.se/libcurl/c/CURLOPT_FAILONERROR.html)
*/
readonly FAILONERROR: "FAILONERROR";
/**
* Request file modification date and time.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FILETIME.html](https://curl.haxx.se/libcurl/c/CURLOPT_FILETIME.html)
*/
readonly FILETIME: "FILETIME";
/**
* Callback for wildcard matching.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FNMATCH_FUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_FNMATCH_FUNCTION.html)
*/
readonly FNMATCH_FUNCTION: "FNMATCH_FUNCTION";
/**
* Follow HTTP redirects.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FOLLOWLOCATION.html](https://curl.haxx.se/libcurl/c/CURLOPT_FOLLOWLOCATION.html)
*/
readonly FOLLOWLOCATION: "FOLLOWLOCATION";
/**
* Prevent subsequent connections from reusing this.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FORBID_REUSE.html](https://curl.haxx.se/libcurl/c/CURLOPT_FORBID_REUSE.html)
*/
readonly FORBID_REUSE: "FORBID_REUSE";
/**
* Use a new connection.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FRESH_CONNECT.html](https://curl.haxx.se/libcurl/c/CURLOPT_FRESH_CONNECT.html)
*/
readonly FRESH_CONNECT: "FRESH_CONNECT";
/**
* Send ACCT command.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTP_ACCOUNT.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTP_ACCOUNT.html)
*/
readonly FTP_ACCOUNT: "FTP_ACCOUNT";
/**
* Alternative to USER.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTP_ALTERNATIVE_TO_USER.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTP_ALTERNATIVE_TO_USER.html)
*/
readonly FTP_ALTERNATIVE_TO_USER: "FTP_ALTERNATIVE_TO_USER";
/**
* Create missing directories on the remote server.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTP_CREATE_MISSING_DIRS.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTP_CREATE_MISSING_DIRS.html)
*/
readonly FTP_CREATE_MISSING_DIRS: "FTP_CREATE_MISSING_DIRS";
/**
* Specify how to reach files.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTP_FILEMETHOD.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTP_FILEMETHOD.html)
*/
readonly FTP_FILEMETHOD: "FTP_FILEMETHOD";
/**
* Ignore the IP address in the PASV response.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTP_SKIP_PASV_IP.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTP_SKIP_PASV_IP.html)
*/
readonly FTP_SKIP_PASV_IP: "FTP_SKIP_PASV_IP";
/**
* Back to non-TLS again after authentication.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTP_SSL_CCC.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTP_SSL_CCC.html)
*/
readonly FTP_SSL_CCC: "FTP_SSL_CCC";
/**
* Use EPRT.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTP_USE_EPRT.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTP_USE_EPRT.html)
*/
readonly FTP_USE_EPRT: "FTP_USE_EPRT";
/**
* Use EPSV.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTP_USE_EPSV.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTP_USE_EPSV.html)
*/
readonly FTP_USE_EPSV: "FTP_USE_EPSV";
/**
* Use PRET.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTP_USE_PRET.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTP_USE_PRET.html)
*/
readonly FTP_USE_PRET: "FTP_USE_PRET";
/**
* Use active FTP.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTPPORT.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTPPORT.html)
*/
readonly FTPPORT: "FTPPORT";
/**
* Control how to do TLS.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_FTPSSLAUTH.html](https://curl.haxx.se/libcurl/c/CURLOPT_FTPSSLAUTH.html)
*/
readonly FTPSSLAUTH: "FTPSSLAUTH";
/**
* Disable GSS-API delegation.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_GSSAPI_DELEGATION.html](https://curl.haxx.se/libcurl/c/CURLOPT_GSSAPI_DELEGATION.html)
*/
readonly GSSAPI_DELEGATION: "GSSAPI_DELEGATION";
/**
* Timeout for happy eyeballs.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.html](https://curl.haxx.se/libcurl/c/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.html)
*/
readonly HAPPY_EYEBALLS_TIMEOUT_MS: "HAPPY_EYEBALLS_TIMEOUT_MS";
/**
* Spoof the client IP in an HAProxy PROXY protocol v1 header.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HAPROXY_CLIENT_IP.html](https://curl.haxx.se/libcurl/c/CURLOPT_HAPROXY_CLIENT_IP.html)
*/
readonly HAPROXY_CLIENT_IP: "HAPROXY_CLIENT_IP";
/**
* Send an HAProxy PROXY protocol v1 header.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HAPROXYPROTOCOL.html](https://curl.haxx.se/libcurl/c/CURLOPT_HAPROXYPROTOCOL.html)
*/
readonly HAPROXYPROTOCOL: "HAPROXYPROTOCOL";
/**
* Include the header in the body output.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HEADER.html](https://curl.haxx.se/libcurl/c/CURLOPT_HEADER.html)
*/
readonly HEADER: "HEADER";
/**
* Callback for writing received headers.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HEADERFUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_HEADERFUNCTION.html)
*/
readonly HEADERFUNCTION: "HEADERFUNCTION";
/**
* Control custom headers.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HEADEROPT.html](https://curl.haxx.se/libcurl/c/CURLOPT_HEADEROPT.html)
*/
readonly HEADEROPT: "HEADEROPT";
/**
* Set HSTS cache file.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HSTS.html](https://curl.haxx.se/libcurl/c/CURLOPT_HSTS.html)
*/
readonly HSTS: "HSTS";
/**
* Enable HSTS.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HSTS_CTRL.html](https://curl.haxx.se/libcurl/c/CURLOPT_HSTS_CTRL.html)
*/
readonly HSTS_CTRL: "HSTS_CTRL";
/**
* Set HSTS read callback.
*
* You can either return a single `CurlHstsReadCallbackResult` object or an array of `CurlHstsReadCallbackResult` objects.
* If returning an array, the callback will only be called once per request.
* If returning a single object, the callback will be called multiple times until `null` is returned.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HSTSREADFUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_HSTSREADFUNCTION.html)
*/
readonly HSTSREADFUNCTION: "HSTSREADFUNCTION";
/**
* Set HSTS write callback.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HSTSWRITEFUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_HSTSWRITEFUNCTION.html)
*/
readonly HSTSWRITEFUNCTION: "HSTSWRITEFUNCTION";
/**
* Disable Content decoding.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTP_CONTENT_DECODING.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTP_CONTENT_DECODING.html)
*/
readonly HTTP_CONTENT_DECODING: "HTTP_CONTENT_DECODING";
/**
* Disable Transfer decoding.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTP_TRANSFER_DECODING.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTP_TRANSFER_DECODING.html)
*/
readonly HTTP_TRANSFER_DECODING: "HTTP_TRANSFER_DECODING";
/**
* HTTP version to use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTP_VERSION.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTP_VERSION.html)
*/
readonly HTTP_VERSION: "HTTP_VERSION";
/**
* Allow HTTP/0.9 responses.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTP09_ALLOWED.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTP09_ALLOWED.html)
*/
readonly HTTP09_ALLOWED: "HTTP09_ALLOWED";
/**
* Alternative versions of 200 OK.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTP200ALIASES.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTP200ALIASES.html)
*/
readonly HTTP200ALIASES: "HTTP200ALIASES";
/**
* HTTP server authentication methods.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTPAUTH.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTPAUTH.html)
*/
readonly HTTPAUTH: "HTTPAUTH";
/**
* Do an HTTP GET request.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTPGET.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTPGET.html)
*/
readonly HTTPGET: "HTTPGET";
/**
* Custom HTTP headers.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTPHEADER.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTPHEADER.html)
*/
readonly HTTPHEADER: "HTTPHEADER";
/**
* Deprecated option Multipart formpost HTTP POST.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTPPOST.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTPPOST.html)
*/
readonly HTTPPOST: "HTTPPOST";
/**
* Tunnel through the HTTP proxy.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_HTTPPROXYTUNNEL.html](https://curl.haxx.se/libcurl/c/CURLOPT_HTTPPROXYTUNNEL.html)
*/
readonly HTTPPROXYTUNNEL: "HTTPPROXYTUNNEL";
/**
* Ignore Content-Length.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_IGNORE_CONTENT_LENGTH.html](https://curl.haxx.se/libcurl/c/CURLOPT_IGNORE_CONTENT_LENGTH.html)
*/
readonly IGNORE_CONTENT_LENGTH: "IGNORE_CONTENT_LENGTH";
/**
* Size of file to send.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_INFILESIZE.html](https://curl.haxx.se/libcurl/c/CURLOPT_INFILESIZE.html)
*/
readonly INFILESIZE: "INFILESIZE";
/**
* Size of file to send.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_INFILESIZE_LARGE.html](https://curl.haxx.se/libcurl/c/CURLOPT_INFILESIZE_LARGE.html)
*/
readonly INFILESIZE_LARGE: "INFILESIZE_LARGE";
/**
* Bind connection locally to this.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_INTERFACE.html](https://curl.haxx.se/libcurl/c/CURLOPT_INTERFACE.html)
*/
readonly INTERFACE: "INTERFACE";
/**
* IP version to use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_IPRESOLVE.html](https://curl.haxx.se/libcurl/c/CURLOPT_IPRESOLVE.html)
*/
readonly IPRESOLVE: "IPRESOLVE";
/**
* Issuer certificate.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_ISSUERCERT.html](https://curl.haxx.se/libcurl/c/CURLOPT_ISSUERCERT.html)
*/
readonly ISSUERCERT: "ISSUERCERT";
/**
* Issuer certificate memory buffer.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_ISSUERCERT_BLOB.html](https://curl.haxx.se/libcurl/c/CURLOPT_ISSUERCERT_BLOB.html)
*/
readonly ISSUERCERT_BLOB: "ISSUERCERT_BLOB";
/**
* Keep sending on HTTP \>= 300 errors.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_KEEP_SENDING_ON_ERROR.html](https://curl.haxx.se/libcurl/c/CURLOPT_KEEP_SENDING_ON_ERROR.html)
*/
readonly KEEP_SENDING_ON_ERROR: "KEEP_SENDING_ON_ERROR";
/**
* Client key password.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_KEYPASSWD.html](https://curl.haxx.se/libcurl/c/CURLOPT_KEYPASSWD.html)
*/
readonly KEYPASSWD: "KEYPASSWD";
/**
* Kerberos security level.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_KRBLEVEL.html](https://curl.haxx.se/libcurl/c/CURLOPT_KRBLEVEL.html)
*/
readonly KRBLEVEL: "KRBLEVEL";
/**
* Bind connection locally to this port.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_LOCALPORT.html](https://curl.haxx.se/libcurl/c/CURLOPT_LOCALPORT.html)
*/
readonly LOCALPORT: "LOCALPORT";
/**
* Bind connection locally to port range.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_LOCALPORTRANGE.html](https://curl.haxx.se/libcurl/c/CURLOPT_LOCALPORTRANGE.html)
*/
readonly LOCALPORTRANGE: "LOCALPORTRANGE";
/**
* Login options.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_LOGIN_OPTIONS.html](https://curl.haxx.se/libcurl/c/CURLOPT_LOGIN_OPTIONS.html)
*/
readonly LOGIN_OPTIONS: "LOGIN_OPTIONS";
/**
* Low speed limit to abort transfer.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_LOW_SPEED_LIMIT.html](https://curl.haxx.se/libcurl/c/CURLOPT_LOW_SPEED_LIMIT.html)
*/
readonly LOW_SPEED_LIMIT: "LOW_SPEED_LIMIT";
/**
* Time to be below the speed to trigger low speed abort.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_LOW_SPEED_TIME.html](https://curl.haxx.se/libcurl/c/CURLOPT_LOW_SPEED_TIME.html)
*/
readonly LOW_SPEED_TIME: "LOW_SPEED_TIME";
/**
* Authentication address.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAIL_AUTH.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAIL_AUTH.html)
*/
readonly MAIL_AUTH: "MAIL_AUTH";
/**
* Address of the sender.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAIL_FROM.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAIL_FROM.html)
*/
readonly MAIL_FROM: "MAIL_FROM";
/**
* Address of the recipients.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAIL_RCPT.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAIL_RCPT.html)
*/
readonly MAIL_RCPT: "MAIL_RCPT";
/**
* Allow RCPT TO command to fail for some recipients.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAIL_RCPT_ALLOWFAILS.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAIL_RCPT_ALLOWFAILS.html)
*/
readonly MAIL_RCPT_ALLOWFAILS: "MAIL_RCPT_ALLOWFAILS";
/**
* Cap the download speed to this.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAX_RECV_SPEED_LARGE.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAX_RECV_SPEED_LARGE.html)
*/
readonly MAX_RECV_SPEED_LARGE: "MAX_RECV_SPEED_LARGE";
/**
* Cap the upload speed to this.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAX_SEND_SPEED_LARGE.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAX_SEND_SPEED_LARGE.html)
*/
readonly MAX_SEND_SPEED_LARGE: "MAX_SEND_SPEED_LARGE";
/**
* Limit the age (idle time) of connections for reuse.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAXAGE_CONN.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAXAGE_CONN.html)
*/
readonly MAXAGE_CONN: "MAXAGE_CONN";
/**
* Maximum number of connections in the connection pool.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAXCONNECTS.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAXCONNECTS.html)
*/
readonly MAXCONNECTS: "MAXCONNECTS";
/**
* Maximum file size to get.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAXFILESIZE.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAXFILESIZE.html)
*/
readonly MAXFILESIZE: "MAXFILESIZE";
/**
* Maximum file size to get.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAXFILESIZE_LARGE.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAXFILESIZE_LARGE.html)
*/
readonly MAXFILESIZE_LARGE: "MAXFILESIZE_LARGE";
/**
* Limit the age (since creation) of connections for reuse.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAXLIFETIME_CONN.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAXLIFETIME_CONN.html)
*/
readonly MAXLIFETIME_CONN: "MAXLIFETIME_CONN";
/**
* Maximum number of redirects to follow.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_MAXREDIRS.html](https://curl.haxx.se/libcurl/c/CURLOPT_MAXREDIRS.html)
*/
readonly MAXREDIRS: "MAXREDIRS";
/**
* Enable .netrc parsing.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_NETRC.html](https://curl.haxx.se/libcurl/c/CURLOPT_NETRC.html)
*/
readonly NETRC: "NETRC";
/**
* .netrc filename.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_NETRC_FILE.html](https://curl.haxx.se/libcurl/c/CURLOPT_NETRC_FILE.html)
*/
readonly NETRC_FILE: "NETRC_FILE";
/**
* Mode for creating new remote directories.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_NEW_DIRECTORY_PERMS.html](https://curl.haxx.se/libcurl/c/CURLOPT_NEW_DIRECTORY_PERMS.html)
*/
readonly NEW_DIRECTORY_PERMS: "NEW_DIRECTORY_PERMS";
/**
* Mode for creating new remote files.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_NEW_FILE_PERMS.html](https://curl.haxx.se/libcurl/c/CURLOPT_NEW_FILE_PERMS.html)
*/
readonly NEW_FILE_PERMS: "NEW_FILE_PERMS";
/**
* Do not get the body contents.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_NOBODY.html](https://curl.haxx.se/libcurl/c/CURLOPT_NOBODY.html)
*/
readonly NOBODY: "NOBODY";
/**
* Shut off the progress meter.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_NOPROGRESS.html](https://curl.haxx.se/libcurl/c/CURLOPT_NOPROGRESS.html)
*/
readonly NOPROGRESS: "NOPROGRESS";
/**
* Filter out hosts from proxy use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_NOPROXY.html](https://curl.haxx.se/libcurl/c/CURLOPT_NOPROXY.html)
*/
readonly NOPROXY: "NOPROXY";
/**
* Do not install signal handlers.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_NOSIGNAL.html](https://curl.haxx.se/libcurl/c/CURLOPT_NOSIGNAL.html)
*/
readonly NOSIGNAL: "NOSIGNAL";
/**
* Password.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PASSWORD.html](https://curl.haxx.se/libcurl/c/CURLOPT_PASSWORD.html)
*/
readonly PASSWORD: "PASSWORD";
/**
* Disable squashing /../ and /./ sequences in the path.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PATH_AS_IS.html](https://curl.haxx.se/libcurl/c/CURLOPT_PATH_AS_IS.html)
*/
readonly PATH_AS_IS: "PATH_AS_IS";
/**
* Set pinned SSL public key .
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PINNEDPUBLICKEY.html](https://curl.haxx.se/libcurl/c/CURLOPT_PINNEDPUBLICKEY.html)
*/
readonly PINNEDPUBLICKEY: "PINNEDPUBLICKEY";
/**
* Wait on connection to pipeline on it.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PIPEWAIT.html](https://curl.haxx.se/libcurl/c/CURLOPT_PIPEWAIT.html)
*/
readonly PIPEWAIT: "PIPEWAIT";
/**
* Port number to connect to.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PORT.html](https://curl.haxx.se/libcurl/c/CURLOPT_PORT.html)
*/
readonly PORT: "PORT";
/**
* Make an HTTP POST.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_POST.html](https://curl.haxx.se/libcurl/c/CURLOPT_POST.html)
*/
readonly POST: "POST";
/**
* The POST data is this big.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_POSTFIELDSIZE.html](https://curl.haxx.se/libcurl/c/CURLOPT_POSTFIELDSIZE.html)
*/
readonly POSTFIELDSIZE: "POSTFIELDSIZE";
/**
* The POST data is this big.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_POSTFIELDSIZE_LARGE.html](https://curl.haxx.se/libcurl/c/CURLOPT_POSTFIELDSIZE_LARGE.html)
*/
readonly POSTFIELDSIZE_LARGE: "POSTFIELDSIZE_LARGE";
/**
* Commands to run after transfer.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_POSTQUOTE.html](https://curl.haxx.se/libcurl/c/CURLOPT_POSTQUOTE.html)
*/
readonly POSTQUOTE: "POSTQUOTE";
/**
* How to act on redirects after POST.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_POSTREDIR.html](https://curl.haxx.se/libcurl/c/CURLOPT_POSTREDIR.html)
*/
readonly POSTREDIR: "POSTREDIR";
/**
* Socks proxy to use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PRE_PROXY.html](https://curl.haxx.se/libcurl/c/CURLOPT_PRE_PROXY.html)
*/
readonly PRE_PROXY: "PRE_PROXY";
/**
* Commands to run just before transfer.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PREQUOTE.html](https://curl.haxx.se/libcurl/c/CURLOPT_PREQUOTE.html)
*/
readonly PREQUOTE: "PREQUOTE";
/**
* Callback to be called after a connection is established but before a request is made on that connection.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PREREQFUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_PREREQFUNCTION.html)
*/
readonly PREREQFUNCTION: "PREREQFUNCTION";
/**
* OBSOLETE callback for progress meter.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROGRESSFUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROGRESSFUNCTION.html)
*/
readonly PROGRESSFUNCTION: "PROGRESSFUNCTION";
/**
* Deprecated option Allowed protocols.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROTOCOLS.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROTOCOLS.html)
*/
readonly PROTOCOLS: "PROTOCOLS";
/**
* Allowed protocols.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROTOCOLS_STR.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROTOCOLS_STR.html)
*/
readonly PROTOCOLS_STR: "PROTOCOLS_STR";
/**
* Proxy to use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY.html)
*/
readonly PROXY: "PROXY";
/**
* Proxy CA cert bundle.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_CAINFO.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_CAINFO.html)
*/
readonly PROXY_CAINFO: "PROXY_CAINFO";
/**
* Proxy CA cert bundle memory buffer.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_CAINFO_BLOB.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_CAINFO_BLOB.html)
*/
readonly PROXY_CAINFO_BLOB: "PROXY_CAINFO_BLOB";
/**
* Path to proxy CA cert bundle.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_CAPATH.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_CAPATH.html)
*/
readonly PROXY_CAPATH: "PROXY_CAPATH";
/**
* Proxy Certificate Revocation List.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_CRLFILE.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_CRLFILE.html)
*/
readonly PROXY_CRLFILE: "PROXY_CRLFILE";
/**
* Proxy issuer certificate.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_ISSUERCERT.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_ISSUERCERT.html)
*/
readonly PROXY_ISSUERCERT: "PROXY_ISSUERCERT";
/**
* Proxy issuer certificate memory buffer.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_ISSUERCERT_BLOB.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_ISSUERCERT_BLOB.html)
*/
readonly PROXY_ISSUERCERT_BLOB: "PROXY_ISSUERCERT_BLOB";
/**
* Proxy client key password.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_KEYPASSWD.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_KEYPASSWD.html)
*/
readonly PROXY_KEYPASSWD: "PROXY_KEYPASSWD";
/**
* Set the proxy's pinned SSL public key.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_PINNEDPUBLICKEY.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_PINNEDPUBLICKEY.html)
*/
readonly PROXY_PINNEDPUBLICKEY: "PROXY_PINNEDPUBLICKEY";
/**
* Proxy authentication service name.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SERVICE_NAME.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SERVICE_NAME.html)
*/
readonly PROXY_SERVICE_NAME: "PROXY_SERVICE_NAME";
/**
* Proxy ciphers to use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSL_CIPHER_LIST.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSL_CIPHER_LIST.html)
*/
readonly PROXY_SSL_CIPHER_LIST: "PROXY_SSL_CIPHER_LIST";
/**
* Control proxy SSL behavior.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSL_OPTIONS.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSL_OPTIONS.html)
*/
readonly PROXY_SSL_OPTIONS: "PROXY_SSL_OPTIONS";
/**
* Verify the hostname in the proxy SSL certificate.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSL_VERIFYHOST.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSL_VERIFYHOST.html)
*/
readonly PROXY_SSL_VERIFYHOST: "PROXY_SSL_VERIFYHOST";
/**
* Verify the proxy SSL certificate.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSL_VERIFYPEER.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSL_VERIFYPEER.html)
*/
readonly PROXY_SSL_VERIFYPEER: "PROXY_SSL_VERIFYPEER";
/**
* Proxy client cert.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLCERT.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLCERT.html)
*/
readonly PROXY_SSLCERT: "PROXY_SSLCERT";
/**
* Proxy client cert memory buffer.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLCERT_BLOB.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLCERT_BLOB.html)
*/
readonly PROXY_SSLCERT_BLOB: "PROXY_SSLCERT_BLOB";
/**
* Proxy client cert type.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLCERTTYPE.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLCERTTYPE.html)
*/
readonly PROXY_SSLCERTTYPE: "PROXY_SSLCERTTYPE";
/**
* Proxy client key.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLKEY.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLKEY.html)
*/
readonly PROXY_SSLKEY: "PROXY_SSLKEY";
/**
* Proxy client key.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLKEY_BLOB.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLKEY_BLOB.html)
*/
readonly PROXY_SSLKEY_BLOB: "PROXY_SSLKEY_BLOB";
/**
* Proxy client key type.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLKEYTYPE.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLKEYTYPE.html)
*/
readonly PROXY_SSLKEYTYPE: "PROXY_SSLKEYTYPE";
/**
* Proxy SSL version to use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLVERSION.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_SSLVERSION.html)
*/
readonly PROXY_SSLVERSION: "PROXY_SSLVERSION";
/**
* Proxy TLS 1.3 cipher suites to use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TLS13_CIPHERS.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TLS13_CIPHERS.html)
*/
readonly PROXY_TLS13_CIPHERS: "PROXY_TLS13_CIPHERS";
/**
* Proxy TLS authentication password.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TLSAUTH_PASSWORD.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TLSAUTH_PASSWORD.html)
*/
readonly PROXY_TLSAUTH_PASSWORD: "PROXY_TLSAUTH_PASSWORD";
/**
* Proxy TLS authentication methods.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TLSAUTH_TYPE.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TLSAUTH_TYPE.html)
*/
readonly PROXY_TLSAUTH_TYPE: "PROXY_TLSAUTH_TYPE";
/**
* Proxy TLS authentication username.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TLSAUTH_USERNAME.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TLSAUTH_USERNAME.html)
*/
readonly PROXY_TLSAUTH_USERNAME: "PROXY_TLSAUTH_USERNAME";
/**
* Add transfer mode to URL over proxy.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TRANSFER_MODE.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXY_TRANSFER_MODE.html)
*/
readonly PROXY_TRANSFER_MODE: "PROXY_TRANSFER_MODE";
/**
* HTTP proxy authentication methods.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXYAUTH.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXYAUTH.html)
*/
readonly PROXYAUTH: "PROXYAUTH";
/**
* Custom HTTP headers sent to proxy.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXYHEADER.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXYHEADER.html)
*/
readonly PROXYHEADER: "PROXYHEADER";
/**
* Proxy password.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXYPASSWORD.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXYPASSWORD.html)
*/
readonly PROXYPASSWORD: "PROXYPASSWORD";
/**
* Proxy port to use.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXYPORT.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXYPORT.html)
*/
readonly PROXYPORT: "PROXYPORT";
/**
* Proxy type.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXYTYPE.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXYTYPE.html)
*/
readonly PROXYTYPE: "PROXYTYPE";
/**
* Proxy username.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXYUSERNAME.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXYUSERNAME.html)
*/
readonly PROXYUSERNAME: "PROXYUSERNAME";
/**
* Proxy username and password.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PROXYUSERPWD.html](https://curl.haxx.se/libcurl/c/CURLOPT_PROXYUSERPWD.html)
*/
readonly PROXYUSERPWD: "PROXYUSERPWD";
/**
* Deprecated option Issue an HTTP PUT request.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_PUT.html](https://curl.haxx.se/libcurl/c/CURLOPT_PUT.html)
*/
readonly PUT: "PUT";
/**
* To be set by toplevel tools like "curl" to skip lengthy cleanups when they are about to call exit() anyway.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_QUICK_EXIT.html](https://curl.haxx.se/libcurl/c/CURLOPT_QUICK_EXIT.html)
*/
readonly QUICK_EXIT: "QUICK_EXIT";
/**
* Commands to run before transfer.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_QUOTE.html](https://curl.haxx.se/libcurl/c/CURLOPT_QUOTE.html)
*/
readonly QUOTE: "QUOTE";
/**
* OBSOLETE Provide source for entropy random data.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_RANDOM_FILE.html](https://curl.haxx.se/libcurl/c/CURLOPT_RANDOM_FILE.html)
*/
readonly RANDOM_FILE: "RANDOM_FILE";
/**
* Range requests.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_RANGE.html](https://curl.haxx.se/libcurl/c/CURLOPT_RANGE.html)
*/
readonly RANGE: "RANGE";
/**
* Data pointer to pass to the read callback.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_READDATA.html](https://curl.haxx.se/libcurl/c/CURLOPT_READDATA.html)
*/
readonly READDATA: "READDATA";
/**
* Callback for reading data.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_READFUNCTION.html](https://curl.haxx.se/libcurl/c/CURLOPT_READFUNCTION.html)
*/
readonly READFUNCTION: "READFUNCTION";
/**
* Deprecated option Protocols to allow redirects to.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_REDIR_PROTOCOLS.html](https://curl.haxx.se/libcurl/c/CURLOPT_REDIR_PROTOCOLS.html)
*/
readonly REDIR_PROTOCOLS: "REDIR_PROTOCOLS";
/**
* Protocols to allow redirects to.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_REDIR_PROTOCOLS_STR.html](https://curl.haxx.se/libcurl/c/CURLOPT_REDIR_PROTOCOLS_STR.html)
*/
readonly REDIR_PROTOCOLS_STR: "REDIR_PROTOCOLS_STR";
/**
* Referer: header.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_REFERER.html](https://curl.haxx.se/libcurl/c/CURLOPT_REFERER.html)
*/
readonly REFERER: "REFERER";
/**
* Set the request target.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_REQUEST_TARGET.html](https://curl.haxx.se/libcurl/c/CURLOPT_REQUEST_TARGET.html)
*/
readonly REQUEST_TARGET: "REQUEST_TARGET";
/**
* Provide fixed/fake name resolves.
*
* Official libcurl documentation: : [https://curl.haxx.se/libcurl/c/CURLOPT_RESOLVE.html](https://curl.haxx.se/libc