harperdb
Version:
HarperDB is a distributed database, caching service, streaming broker, and application development platform focused on performance and ease of use.
798 lines (797 loc) • 37.7 kB
TypeScript
/**
* This module contains common variables/values that will be used across the project.
* Using these constant values helps with consistency across the project.
*
* All variables should use a JSDoc comment to explain what it is, and any objects should be marked as `as const` for better type checking.
*/
/** HarperDB Root Config File */
export declare const HDB_CONFIG_FILE = "harperdb-config.yaml";
/** HarperDB Default Config File */
export declare const HDB_DEFAULT_CONFIG_FILE = "defaultConfig.yaml";
/** HarperDB Root Directory Name */
export declare const HDB_ROOT_DIR_NAME = "hdb";
/** HarperDB Component Config File */
export declare const HDB_COMPONENT_CONFIG_FILE = "config.yaml";
/** Name of the HarperDB Process Script */
export declare const HDB_PROC_NAME = "harperdb.js";
/** Name of the HarperDB Restart Script */
export declare const HDB_RESTART_SCRIPT = "restartHdb.js";
/**
* Process Descriptor Map
*
* Used throughout the project to map process descriptors to their respective process names.
*/
export declare const PROCESS_DESCRIPTORS: {
readonly HDB: "HarperDB";
readonly CLUSTERING_HUB: "Clustering Hub";
readonly CLUSTERING_LEAF: "Clustering Leaf";
readonly CLUSTERING_INGEST_SERVICE: "Clustering Ingest Service";
readonly CLUSTERING_REPLY_SERVICE: "Clustering Reply Service";
readonly CUSTOM_FUNCTIONS: "Custom Functions";
readonly RESTART_HDB: "Restart HDB";
readonly INSTALL: "Install";
readonly RUN: "Run";
readonly STOP: "Stop";
readonly UPGRADE: "Upgrade";
readonly REGISTER: "Register";
readonly JOB: "Job";
readonly CLUSTERING_UPGRADE_4_0_0: "Upgrade-4-0-0";
};
/**
* Process Services Map
*
* These are the services that the HarperDB process provides.
* This object is used primarily in the restart workflow to determine which services to restart.
*/
export declare const HDB_PROCESS_SERVICES: {
readonly harperdb: "HarperDB";
readonly 'clustering hub': "Clustering Hub";
readonly 'clustering leaf': "Clustering Leaf";
readonly 'custom functions': "Custom Functions";
readonly custom_functions: "Custom Functions";
readonly clustering: "clustering";
readonly 'clustering config': "clustering config";
readonly clustering_config: "clustering_config";
readonly http_workers: "http_workers";
readonly http: "http";
};
/**
* Clustering Process Services Map
*
* Used for process management to easily iterate over the clustering processes.
*/
export declare const CLUSTERING_PROCESSES: {
readonly CLUSTERING_HUB_PROC_DESCRIPTOR: "Clustering Hub";
readonly CLUSTERING_LEAF_PROC_DESCRIPTOR: "Clustering Leaf";
};
/** HarperDB Process Identifier File Name */
export declare const HDB_PID_FILE = "hdb.pid";
/** Default database name */
export declare const DEFAULT_DATABASE_NAME = "data";
/** Log File Names */
export declare const LOG_NAMES: {
readonly HDB: "hdb.log";
readonly INSTALL: "install.log";
readonly CLUSTERING_HUB: "clustering_hub.log";
readonly CLUSTERING_LEAF: "clustering_leaf.log";
};
/** Log Levels */
export declare const LOG_LEVELS: {
readonly NOTIFY: "notify";
readonly FATAL: "fatal";
readonly ERROR: "error";
readonly WARN: "warn";
readonly INFO: "info";
readonly DEBUG: "debug";
readonly TRACE: "trace";
};
/** Launch Service script paths */
export declare const LAUNCH_SERVICE_SCRIPTS: {
readonly MAIN: "bin/harperdb.js";
readonly NATS_INGEST_SERVICE: string;
readonly NATS_REPLY_SERVICE: string;
readonly NODES_UPGRADE_4_0_0: string;
};
/** Specifies user role types */
export declare const ROLE_TYPES_ENUM: {
readonly SUPER_USER: "super_user";
readonly CLUSTER_USER: "cluster_user";
};
/** Email address for support requests */
export declare const HDB_SUPPORT_ADDRESS = "support@harperdb.io";
/** Support Help Message */
export declare const SUPPORT_HELP_MSG = "For support, please submit a request at https://harperdbhelp.zendesk.com/hc/en-us/requests/new or contact support@harperdb.io";
/** Message when records cannot be found for a DELETE operation */
export declare const SEARCH_NOT_FOUND_MESSAGE = "None of the specified records were found.";
/** Unicode for the `.` character */
export declare const UNICODE_PERIOD = "U+002E";
/** Regex for matching the `/` character */
export declare const FORWARD_SLASH_REGEX: RegExp;
/** Unicode for the `/` character */
export declare const UNICODE_FORWARD_SLASH = "U+002F";
/** Regex for matching an escaped `/` character */
export declare const ESCAPED_FORWARD_SLASH_REGEX: RegExp;
/** CLI Argument for setting the memory value */
export declare const MEM_SETTING_KEY = "--max-old-space-size=";
/** Name of the System schema */
export declare const SYSTEM_SCHEMA_NAME = "system";
/** HarperDB Home directory */
export declare const HDB_HOME_DIR_NAME = ".harperdb";
/** License Key directory */
export declare const LICENSE_KEY_DIR_NAME = "keys";
/** HarperDB Boot Properties file name */
export declare const BOOT_PROPS_FILE_NAME = "hdb_boot_properties.file";
/** Restart timeout (milliseconds) */
export declare const RESTART_TIMEOUT_MS = 60000;
/** HarperDB File Permissions Mode */
export declare const HDB_FILE_PERMISSIONS = 448;
/** Database directory */
export declare const DATABASES_DIR_NAME = "database";
/** Legacy Database directory */
export declare const LEGACY_DATABASES_DIR_NAME = "schema";
/** Transaction directory */
export declare const TRANSACTIONS_DIR_NAME = "transactions";
/** Key for specifying process specific environment variables */
export declare const PROCESS_NAME_ENV_PROP = "PROCESS_NAME";
/** Boot sequence property parameters */
export declare const BOOT_PROP_PARAMS: {
readonly SETTINGS_PATH_KEY: "settings_path";
};
/** Installation prompt map */
export declare const INSTALL_PROMPTS: {
readonly TC_AGREEMENT: "TC_AGREEMENT";
readonly CLUSTERING_USER: "CLUSTERING_USER";
readonly CLUSTERING_PASSWORD: "CLUSTERING_PASSWORD";
readonly HDB_ADMIN_USERNAME: "HDB_ADMIN_USERNAME";
readonly HDB_ADMIN_PASSWORD: "HDB_ADMIN_PASSWORD";
readonly OPERATIONSAPI_ROOT: "OPERATIONSAPI_ROOT";
readonly ROOTPATH: "ROOTPATH";
readonly CLUSTERING_NODENAME: "CLUSTERING_NODENAME";
readonly CLUSTERING_ENABLED: "CLUSTERING_ENABLED";
readonly HDB_CONFIG: "HDB_CONFIG";
readonly DEFAULTS_MODE: "DEFAULTS_MODE";
readonly REPLICATION_HOSTNAME: "REPLICATION_HOSTNAME";
readonly CLUSTERING_PORT: "CLUSTERING_PORT";
readonly HDB_ROOT: "HDB_ROOT";
readonly SERVER_PORT: "SERVER_PORT";
readonly NODE_NAME: "NODE_NAME";
readonly CLUSTERING: "CLUSTERING";
};
/** Insert operation max character size */
export declare const INSERT_MAX_CHARACTER_SIZE = 250;
/** Upgrade JSON field map */
export declare const UPGRADE_JSON_FIELD_NAMES_ENUM: {
readonly DATA_VERSION: "data_version";
readonly UPGRADE_VERSION: "upgrade_version";
};
/** System table names */
export declare const SYSTEM_TABLE_NAMES: {
readonly JOB_TABLE_NAME: "hdb_job";
readonly NODE_TABLE_NAME: "hdb_nodes";
readonly ATTRIBUTE_TABLE_NAME: "hdb_attribute";
readonly LICENSE_TABLE_NAME: "hdb_license";
readonly ROLE_TABLE_NAME: "hdb_role";
readonly SCHEMA_TABLE_NAME: "hdb_schema";
readonly TABLE_TABLE_NAME: "hdb_table";
readonly USER_TABLE_NAME: "hdb_user";
readonly INFO_TABLE_NAME: "hdb_info";
};
/** Hash attribute for the system info table */
export declare const INFO_TABLE_HASH_ATTRIBUTE = "info_id";
/** System default attributes */
export declare const SYSTEM_DEFAULT_ATTRIBUTE_NAMES: {
readonly ATTR_ATTRIBUTE_KEY: "attribute";
readonly ATTR_CREATEDDATE_KEY: "createddate";
readonly ATTR_HASH_ATTRIBUTE_KEY: "hash_attribute";
readonly ATTR_ID_KEY: "id";
readonly ATTR_NAME_KEY: "name";
readonly ATTR_PASSWORD_KEY: "password";
readonly ATTR_RESIDENCE_KEY: "residence";
readonly ATTR_ROLE_KEY: "role";
readonly ATTR_SCHEMA_KEY: "schema";
readonly ATTR_SCHEMA_TABLE_KEY: "schema_table";
readonly ATTR_TABLE_KEY: "table";
readonly ATTR_USERNAME_KEY: "username";
};
/** Registration key file name */
export declare const REG_KEY_FILE_NAME = "060493.ks";
/** License file name */
export declare const LICENSE_FILE_NAME = ".license";
/** Describes the available statuses for jobs */
export declare const JOB_STATUS_ENUM: {
readonly CREATED: "CREATED";
readonly IN_PROGRESS: "IN_PROGRESS";
readonly COMPLETE: "COMPLETE";
readonly ERROR: "ERROR";
};
/** Operations */
export declare const OPERATIONS_ENUM: {
readonly INSERT: "insert";
readonly UPDATE: "update";
readonly UPSERT: "upsert";
readonly SEARCH_BY_CONDITIONS: "search_by_conditions";
readonly SEARCH_BY_HASH: "search_by_hash";
readonly SEARCH_BY_ID: "search_by_id";
readonly SEARCH_BY_VALUE: "search_by_value";
readonly SEARCH: "search";
readonly SQL: "sql";
readonly CSV_DATA_LOAD: "csv_data_load";
readonly CSV_FILE_LOAD: "csv_file_load";
readonly CSV_URL_LOAD: "csv_url_load";
readonly CREATE_SCHEMA: "create_schema";
readonly CREATE_DATABASE: "create_database";
readonly CREATE_TABLE: "create_table";
readonly CREATE_ATTRIBUTE: "create_attribute";
readonly DROP_SCHEMA: "drop_schema";
readonly DROP_DATABASE: "drop_database";
readonly DROP_TABLE: "drop_table";
readonly DESCRIBE_SCHEMA: "describe_schema";
readonly DESCRIBE_DATABASE: "describe_database";
readonly DESCRIBE_TABLE: "describe_table";
readonly DESCRIBE_ALL: "describe_all";
readonly DELETE: "delete";
readonly ADD_USER: "add_user";
readonly ALTER_USER: "alter_user";
readonly DROP_USER: "drop_user";
readonly LIST_USERS: "list_users";
readonly LIST_ROLES: "list_roles";
readonly ADD_ROLE: "add_role";
readonly ALTER_ROLE: "alter_role";
readonly DROP_ROLE: "drop_role";
readonly USER_INFO: "user_info";
readonly READ_LOG: "read_log";
readonly ADD_NODE: "add_node";
readonly UPDATE_NODE: "update_node";
readonly SET_NODE_REPLICATION: "set_node_replication";
readonly EXPORT_TO_S3: "export_to_s3";
readonly IMPORT_FROM_S3: "import_from_s3";
readonly DELETE_FILES_BEFORE: "delete_files_before";
readonly DELETE_RECORDS_BEFORE: "delete_records_before";
readonly EXPORT_LOCAL: "export_local";
readonly SEARCH_JOBS_BY_START_DATE: "search_jobs_by_start_date";
readonly GET_JOB: "get_job";
readonly DELETE_JOB: "delete_job";
readonly UPDATE_JOB: "update_job";
readonly GET_FINGERPRINT: "get_fingerprint";
readonly SET_LICENSE: "set_license";
readonly GET_REGISTRATION_INFO: "registration_info";
readonly CONFIGURE_CLUSTER: "configure_cluster";
readonly SET_CONFIGURATION: "set_configuration";
readonly CLUSTER_STATUS: "cluster_status";
readonly CLUSTER_NETWORK: "cluster_network";
readonly DROP_ATTRIBUTE: "drop_attribute";
readonly REMOVE_NODE: "remove_node";
readonly RESTART: "restart";
readonly RESTART_SERVICE: "restart_service";
readonly CATCHUP: "catchup";
readonly SYSTEM_INFORMATION: "system_information";
readonly DELETE_AUDIT_LOGS_BEFORE: "delete_audit_logs_before";
readonly READ_AUDIT_LOG: "read_audit_log";
readonly CREATE_AUTHENTICATION_TOKENS: "create_authentication_tokens";
readonly LOGIN: "login";
readonly LOGOUT: "logout";
readonly REFRESH_OPERATION_TOKEN: "refresh_operation_token";
readonly GET_CONFIGURATION: "get_configuration";
readonly CUSTOM_FUNCTIONS_STATUS: "custom_functions_status";
readonly GET_CUSTOM_FUNCTIONS: "get_custom_functions";
readonly GET_CUSTOM_FUNCTION: "get_custom_function";
readonly SET_CUSTOM_FUNCTION: "set_custom_function";
readonly GET_COMPONENTS: "get_components";
readonly GET_COMPONENT_FILE: "get_component_file";
readonly SET_COMPONENT_FILE: "set_component_file";
readonly DROP_COMPONENT: "drop_component";
readonly DROP_CUSTOM_FUNCTION: "drop_custom_function";
readonly ADD_CUSTOM_FUNCTION_PROJECT: "add_custom_function_project";
readonly ADD_COMPONENT: "add_component";
readonly DROP_CUSTOM_FUNCTION_PROJECT: "drop_custom_function_project";
readonly PACKAGE_CUSTOM_FUNCTION_PROJECT: "package_custom_function_project";
readonly DEPLOY_CUSTOM_FUNCTION_PROJECT: "deploy_custom_function_project";
readonly PACKAGE_COMPONENT: "package_component";
readonly DEPLOY_COMPONENT: "deploy_component";
readonly CLUSTER_SET_ROUTES: "cluster_set_routes";
readonly CLUSTER_DELETE_ROUTES: "cluster_delete_routes";
readonly CLUSTER_GET_ROUTES: "cluster_get_routes";
readonly READ_TRANSACTION_LOG: "read_transaction_log";
readonly DELETE_TRANSACTION_LOGS_BEFORE: "delete_transaction_logs_before";
readonly INSTALL_NODE_MODULES: "install_node_modules";
readonly AUDIT_NODE_MODULES: "audit_node_modules";
readonly PURGE_STREAM: "purge_stream";
readonly GET_BACKUP: "get_backup";
readonly SIGN_CERTIFICATE: "sign_certificate";
readonly CREATE_CSR: "create_csr";
readonly LIST_CERTIFICATES: "list_certificates";
readonly ADD_CERTIFICATES: "add_certificate";
readonly REMOVE_CERTIFICATE: "remove_certificate";
readonly ADD_NODE_BACK: "add_node_back";
readonly REMOVE_NODE_BACK: "remove_node_back";
readonly ADD_SSH_KEY: "add_ssh_key";
readonly UPDATE_SSH_KEY: "update_ssh_key";
readonly DELETE_SSH_KEY: "delete_ssh_key";
readonly LIST_SSH_KEYS: "list_ssh_keys";
readonly SET_SSH_KNOWN_HOSTS: "set_ssh_known_hosts";
readonly GET_SSH_KNOWN_HOSTS: "get_ssh_known_hosts";
readonly GET_KEY: "get_key";
};
/** Defines valid file types that we are able to handle in 'import_from_s3' ops */
export declare const VALID_S3_FILE_TYPES: {
readonly CSV: ".csv";
readonly JSON: ".json";
};
/** Defines the keys required in a request body for accessing a S3 bucket */
export declare const S3_BUCKET_AUTH_KEYS: {
readonly AWS_ACCESS_KEY: "aws_access_key_id";
readonly AWS_SECRET: "aws_secret_access_key";
readonly AWS_BUCKET: "bucket";
readonly AWS_FILE_KEY: "key";
readonly REGION: "region";
};
/**
* Defines valid SQL operations to be used in the processAST method - this ensure we have appropriate unit test coverage
* for all SQL operations that are dynamically set after the chooseOperation method which behaves differently for the evaluateSQL operation.
*/
export declare const VALID_SQL_OPS_ENUM: {
readonly SELECT: "select";
readonly INSERT: "insert";
readonly UPDATE: "update";
readonly DELETE: "delete";
};
/** Defines operations that should be propagated to the cluster. */
export declare const CLUSTER_OPERATIONS: {
readonly insert: "insert";
readonly update: "update";
readonly upsert: "upsert";
readonly delete: "delete";
};
/** Available service actions */
export declare const SERVICE_ACTIONS_ENUM: {
readonly DEV: "dev";
readonly RUN: "run";
readonly START: "start";
readonly INSTALL: "install";
readonly REGISTER: "register";
readonly STOP: "stop";
readonly RESTART: "restart";
readonly VERSION: "version";
readonly UPGRADE: "upgrade";
readonly HELP: "help";
readonly STATUS: "status";
readonly OPERATION: "operation";
readonly RENEWCERTS: "renew-certs";
readonly COPYDB: "copy-db";
};
/** describes the Geo Conversion types */
export declare const GEO_CONVERSION_ENUM: {
readonly point: "point";
readonly lineString: "lineString";
readonly multiLineString: "multiLineString";
readonly multiPoint: "multiPoint";
readonly multiPolygon: "multiPolygon";
readonly polygon: "polygon";
};
/**
* These values are relics of before the config was converted to yaml.
* The should no longer be used. Instead use CONFIG_PARAMS.
*/
export declare const HDB_SETTINGS_NAMES: {
readonly HDB_ROOT_KEY: "HDB_ROOT";
readonly SERVER_PORT_KEY: "SERVER_PORT";
readonly CERT_KEY: "CERTIFICATE";
readonly PRIVATE_KEY_KEY: "PRIVATE_KEY";
readonly HTTP_SECURE_ENABLED_KEY: "HTTPS_ON";
readonly CORS_ENABLED_KEY: "CORS_ON";
readonly CORS_WHITELIST_KEY: "CORS_WHITELIST";
readonly LOG_LEVEL_KEY: "LOG_LEVEL";
readonly LOGGER_KEY: "LOGGER";
readonly LOG_PATH_KEY: "LOG_PATH";
readonly LOG_ROTATE: "LOG_ROTATE";
readonly LOG_ROTATE_MAX_SIZE: "LOG_ROTATE_MAX_SIZE";
readonly LOG_ROTATE_RETAIN: "LOG_ROTATE_RETAIN";
readonly LOG_ROTATE_COMPRESS: "LOG_ROTATE_COMPRESS";
readonly LOG_ROTATE_DATE_FORMAT: "LOG_ROTATE_DATE_FORMAT";
readonly LOG_ROTATE_ROTATE_MODULE: "LOG_ROTATE_ROTATE_MODULE";
readonly LOG_ROTATE_WORKER_INTERVAL: "LOG_ROTATE_WORKER_INTERVAL";
readonly LOG_ROTATE_ROTATE_INTERVAL: "LOG_ROTATE_ROTATE_INTERVAL";
readonly LOG_ROTATE_TIMEZONE: "LOG_ROTATE_TIMEZONE";
readonly LOG_DAILY_ROTATE_KEY: "LOG_DAILY_ROTATE";
readonly LOG_MAX_DAILY_FILES_KEY: "LOG_MAX_DAILY_FILES";
readonly PROPS_ENV_KEY: "NODE_ENV";
readonly SETTINGS_PATH_KEY: "settings_path";
readonly CLUSTERING_PORT_KEY: "CLUSTERING_PORT";
readonly CLUSTERING_NODE_NAME_KEY: "NODE_NAME";
readonly CLUSTERING_ENABLED_KEY: "CLUSTERING";
readonly ALLOW_SELF_SIGNED_SSL_CERTS: "ALLOW_SELF_SIGNED_SSL_CERTS";
readonly MAX_HDB_PROCESSES: "MAX_HDB_PROCESSES";
readonly INSTALL_USER: "install_user";
readonly CLUSTERING_USER_KEY: "CLUSTERING_USER";
readonly MAX_CLUSTERING_PROCESSES: "MAX_CLUSTERING_PROCESSES";
readonly SERVER_TIMEOUT_KEY: "SERVER_TIMEOUT_MS";
readonly SERVER_KEEP_ALIVE_TIMEOUT_KEY: "SERVER_KEEP_ALIVE_TIMEOUT";
readonly SERVER_HEADERS_TIMEOUT_KEY: "SERVER_HEADERS_TIMEOUT";
readonly DISABLE_TRANSACTION_LOG_KEY: "DISABLE_TRANSACTION_LOG";
readonly OPERATION_TOKEN_TIMEOUT_KEY: "OPERATION_TOKEN_TIMEOUT";
readonly REFRESH_TOKEN_TIMEOUT_KEY: "REFRESH_TOKEN_TIMEOUT";
readonly CUSTOM_FUNCTIONS_ENABLED_KEY: "CUSTOM_FUNCTIONS";
readonly CUSTOM_FUNCTIONS_PORT_KEY: "CUSTOM_FUNCTIONS_PORT";
readonly CUSTOM_FUNCTIONS_DIRECTORY_KEY: "CUSTOM_FUNCTIONS_DIRECTORY";
readonly MAX_CUSTOM_FUNCTION_PROCESSES: "MAX_CUSTOM_FUNCTION_PROCESSES";
readonly LOG_TO_FILE: "LOG_TO_FILE";
readonly LOG_TO_STDSTREAMS: "LOG_TO_STDSTREAMS";
readonly RUN_IN_FOREGROUND: "RUN_IN_FOREGROUND";
readonly LOCAL_STUDIO_ON: "LOCAL_STUDIO_ON";
readonly STORAGE_WRITE_ASYNC: "STORAGE_WRITE_ASYNC";
};
/** Legacy configuration parameters */
export declare const LEGACY_CONFIG_PARAMS: {
readonly CUSTOMFUNCTIONS_ENABLED: "customFunctions_enabled";
readonly CUSTOMFUNCTIONS_NETWORK_PORT: "customFunctions_network_port";
readonly CUSTOMFUNCTIONS_TLS_CERTIFICATE: "customFunctions_tls_certificate";
readonly CUSTOMFUNCTIONS_NETWORK_CORS: "customFunctions_network_cors";
readonly CUSTOMFUNCTIONS_NETWORK_CORSACCESSLIST: "customFunctions_network_corsAccessList";
readonly CUSTOMFUNCTIONS_NETWORK_HEADERSTIMEOUT: "customFunctions_network_headersTimeout";
readonly CUSTOMFUNCTIONS_NETWORK_HTTPS: "customFunctions_network_https";
readonly CUSTOMFUNCTIONS_NETWORK_KEEPALIVETIMEOUT: "customFunctions_network_keepAliveTimeout";
readonly CUSTOMFUNCTIONS_TLS_PRIVATEKEY: "customFunctions_tls_privateKey";
readonly CUSTOMFUNCTIONS_TLS_CERT_AUTH: "customFunctions_tls_certificateAuthority";
readonly CUSTOMFUNCTIONS_NETWORK_TIMEOUT: "customFunctions_network_timeout";
readonly CUSTOMFUNCTIONS_NODEENV: "customFunctions_nodeEnv";
readonly CUSTOMFUNCTIONS_ROOT: "customFunctions_root";
};
/**
* All configuration parameters for HarperDB
*
* If a param is added to config it must also be added here.
*/
export declare const CONFIG_PARAMS: {
readonly ANALYTICS_AGGREGATEPERIOD: "analytics_aggregatePeriod";
readonly AUTHENTICATION_AUTHORIZELOCAL: "authentication_authorizeLocal";
readonly AUTHENTICATION_CACHETTL: "authentication_cacheTTL";
readonly AUTHENTICATION_COOKIE_DOMAINS: "authentication_cookie_domains";
readonly AUTHENTICATION_COOKIE_EXPIRES: "authentication_cookie_expires";
readonly AUTHENTICATION_ENABLESESSIONS: "authentication_enableSessions";
readonly AUTHENTICATION_OPERATIONTOKENTIMEOUT: "authentication_operationTokenTimeout";
readonly AUTHENTICATION_REFRESHTOKENTIMEOUT: "authentication_refreshTokenTimeout";
readonly AUTHENTICATION_HASHFUNCTION: "authentication_hashFunction";
readonly CLUSTERING_USER: "clustering_user";
readonly CLUSTERING_ENABLED: "clustering_enabled";
readonly CLUSTERING_HUBSERVER_CLUSTER_NAME: "clustering_hubServer_cluster_name";
readonly CLUSTERING_HUBSERVER_CLUSTER_NETWORK_PORT: "clustering_hubServer_cluster_network_port";
readonly CLUSTERING_HUBSERVER_CLUSTER_NETWORK_ROUTES: "clustering_hubServer_cluster_network_routes";
readonly CLUSTERING_HUBSERVER_LEAFNODES_NETWORK_PORT: "clustering_hubServer_leafNodes_network_port";
readonly CLUSTERING_HUBSERVER_NETWORK_PORT: "clustering_hubServer_network_port";
readonly CLUSTERING_LEAFSERVER_NETWORK_PORT: "clustering_leafServer_network_port";
readonly CLUSTERING_LEAFSERVER_NETWORK_ROUTES: "clustering_leafServer_network_routes";
readonly CLUSTERING_LEAFSERVER_STREAMS_MAXAGE: "clustering_leafServer_streams_maxAge";
readonly CLUSTERING_LEAFSERVER_STREAMS_MAXBYTES: "clustering_leafServer_streams_maxBytes";
readonly CLUSTERING_LEAFSERVER_STREAMS_MAXMSGS: "clustering_leafServer_streams_maxMsgs";
readonly CLUSTERING_LEAFSERVER_STREAMS_MAXCONSUMEMSGS: "clustering_leafServer_streams_maxConsumeMsgs";
readonly CLUSTERING_LEAFSERVER_STREAMS_MAXINGESTTHREADS: "clustering_leafServer_streams_maxIngestThreads";
readonly CLUSTERING_LEAFSERVER_STREAMS_PATH: "clustering_leafServer_streams_path";
readonly CLUSTERING_NODENAME: "clustering_nodeName";
readonly CLUSTERING_TLS_CERTIFICATE: "clustering_tls_certificate";
readonly CLUSTERING_TLS_PRIVATEKEY: "clustering_tls_privateKey";
readonly CLUSTERING_TLS_CERT_AUTH: "clustering_tls_certificateAuthority";
readonly CLUSTERING_TLS_INSECURE: "clustering_tls_insecure";
readonly CLUSTERING_TLS_VERIFY: "clustering_tls_verify";
readonly CLUSTERING_LOGLEVEL: "clustering_logLevel";
readonly CLUSTERING_REPUBLISHMESSAGES: "clustering_republishMessages";
readonly CLUSTERING_DATABASELEVEL: "clustering_databaseLevel";
readonly CUSTOMFUNCTIONS_NETWORK_HTTPS: "customFunctions_network_https";
readonly THREADS: "threads";
readonly THREADS_COUNT: "threads_count";
readonly THREADS_DEBUG: "threads_debug";
readonly THREADS_DEBUG_STARTINGPORT: "threads_debug_startingPort";
readonly THREADS_DEBUG_PORT: "threads_debug_port";
readonly THREADS_DEBUG_HOST: "threads_debug_host";
readonly THREADS_DEBUG_WAITFORDEBUGGER: "threads_debug_waitForDebugger";
readonly THREADS_MAXHEAPMEMORY: "threads_maxHeapMemory";
readonly HTTP_SESSIONAFFINITY: "http_sessionAffinity";
readonly HTTP_COMPRESSIONTHRESHOLD: "http_compressionThreshold";
readonly HTTP_CORS: "http_cors";
readonly HTTP_CORSACCESSLIST: "http_corsAccessList";
readonly HTTP_CORSACCESSCONTROLALLOWHEADERS: "http_corsAccessControlAllowHeaders";
readonly HTTP_HEADERSTIMEOUT: "http_headersTimeout";
readonly HTTP_KEEPALIVETIMEOUT: "http_keepAliveTimeout";
readonly HTTP_MAXPARAMLENGTH: "http_maxParamLength";
readonly HTTP_TIMEOUT: "http_timeout";
readonly HTTP_PORT: "http_port";
readonly HTTP_SECUREPORT: "http_securePort";
readonly HTTP_MTLS: "http_mtls";
readonly HTTP_MTLS_REQUIRED: "http_mtls_required";
readonly HTTP_MTLS_USER: "http_mtls_user";
readonly HTTP_MAXHEADERSIZE: "http_maxHeaderSize";
readonly HTTP_THREADRANGE: "http_threadRange";
readonly HTTP_HTTP2: "http_http2";
readonly LOCALSTUDIO_ENABLED: "localStudio_enabled";
readonly LOGGING_CONSOLE: "logging_console";
readonly LOGGING_FILE: "logging_file";
readonly LOGGING_LEVEL: "logging_level";
readonly LOGGING_ROOT: "logging_root";
readonly LOGGING_ROTATION_ENABLED: "logging_rotation_enabled";
readonly LOGGING_ROTATION_COMPRESS: "logging_rotation_compress";
readonly LOGGING_ROTATION_INTERVAL: "logging_rotation_interval";
readonly LOGGING_ROTATION_MAXSIZE: "logging_rotation_maxSize";
readonly LOGGING_ROTATION_PATH: "logging_rotation_path";
readonly LOGGING_ROTATION_RETENTION: "logging_rotation_retention";
readonly LOGGING_STDSTREAMS: "logging_stdStreams";
readonly LOGGING_AUDITLOG: "logging_auditLog";
readonly LOGGING_AUDITRETENTION: "logging_auditRetention";
readonly LOGGING_AUDITAUTHEVENTS_LOGFAILED: "logging_auditAuthEvents_logFailed";
readonly LOGGING_AUDITAUTHEVENTS_LOGSUCCESSFUL: "logging_auditAuthEvents_logSuccessful";
readonly OPERATIONSAPI_NETWORK_CORS: "operationsApi_network_cors";
readonly OPERATIONSAPI_NETWORK_CORSACCESSLIST: "operationsApi_network_corsAccessList";
readonly OPERATIONSAPI_NETWORK_HEADERSTIMEOUT: "operationsApi_network_headersTimeout";
readonly OPERATIONSAPI_NETWORK_HTTPS: "operationsApi_network_https";
readonly OPERATIONSAPI_NETWORK_KEEPALIVETIMEOUT: "operationsApi_network_keepAliveTimeout";
readonly OPERATIONSAPI_NETWORK_PORT: "operationsApi_network_port";
readonly OPERATIONSAPI_NETWORK_DOMAINSOCKET: "operationsApi_network_domainSocket";
readonly OPERATIONSAPI_NETWORK_SECUREPORT: "operationsApi_network_securePort";
readonly OPERATIONSAPI_NETWORK_HTTP2: "operationsApi_network_http2";
readonly OPERATIONSAPI_TLS: "operationsApi_tls";
readonly OPERATIONSAPI_TLS_CERTIFICATE: "operationsApi_tls_certificate";
readonly OPERATIONSAPI_TLS_PRIVATEKEY: "operationsApi_tls_privateKey";
readonly OPERATIONSAPI_TLS_CERTIFICATEAUTHORITY: "operationsApi_tls_certificateAuthority";
readonly OPERATIONSAPI_NETWORK_TIMEOUT: "operationsApi_network_timeout";
readonly OPERATIONSAPI_SYSINFO_NETWORK: "operationsApi_sysInfo_network";
readonly OPERATIONSAPI_SYSINFO_DISK: "operationsApi_sysInfo_disk";
readonly REPLICATION: "replication";
readonly REPLICATION_HOSTNAME: "replication_hostname";
readonly REPLICATION_URL: "replication_url";
readonly REPLICATION_PORT: "replication_port";
readonly REPLICATION_SECUREPORT: "replication_securePort";
readonly REPLICATION_ROUTES: "replication_routes";
readonly REPLICATION_DATABASES: "replication_databases";
readonly REPLICATION_ENABLEROOTCAS: "replication_enableRootCAs";
readonly REPLICATION_SHARD: "replication_shard";
readonly REPLICATION_BLOBTIMEOUT: "replication_blobTimeout";
readonly ROOTPATH: "rootPath";
readonly SERIALIZATION_BIGINT: "serialization_bigInt";
readonly STORAGE_WRITEASYNC: "storage_writeAsync";
readonly STORAGE_OVERLAPPINGSYNC: "storage_overlappingSync";
readonly STORAGE_CACHING: "storage_caching";
readonly STORAGE_COMPRESSION: "storage_compression";
readonly STORAGE_NOREADAHEAD: "storage_noReadAhead";
readonly STORAGE_PREFETCHWRITES: "storage_prefetchWrites";
readonly STORAGE_ENCRYPTION: "storage_encryption";
readonly STORAGE_MAXTRANSACTIONQUEUETIME: "storage_maxTransactionQueueTime";
readonly STORAGE_PATH: "storage_path";
readonly STORAGE_BLOBPATHS: "storage_blobPaths";
readonly STORAGE_AUDIT_PATH: "storage_audit_path";
readonly STORAGE_MAXFREESPACETOLOAD: "storage_maxFreeSpaceToLoad";
readonly STORAGE_MAXFREESPACETORETAIN: "storage_maxFreeSpaceToRetain";
readonly STORAGE_PAGESIZE: "storage_pageSize";
readonly STORAGE_COMPRESSION_DICTIONARY: "storage_compression_dictionary";
readonly STORAGE_COMPRESSION_THRESHOLD: "storage_compression_threshold";
readonly STORAGE_COMPACTONSTART: "storage_compactOnStart";
readonly STORAGE_COMPACTONSTARTKEEPBACKUP: "storage_compactOnStartKeepBackup";
readonly STORAGE_RECLAMATION_THRESHOLD: "storage_reclamation_threshold";
readonly STORAGE_RECLAMATION_INTERVAL: "storage_reclamation_interval";
readonly STORAGE_RECLAMATION_EVICTIONFACTOR: "storage_reclamation_evictionFactor";
readonly DATABASES: "databases";
readonly IGNORE_SCRIPTS: "ignoreScripts";
readonly MQTT_NETWORK_PORT: "mqtt_network_port";
readonly MQTT_WEBSOCKET: "mqtt_webSocket";
readonly MQTT_NETWORK_SECUREPORT: "mqtt_network_securePort";
readonly MQTT_NETWORK_MTLS: "mqtt_network_mtls";
readonly MQTT_NETWORK_MTLS_REQUIRED: "mqtt_network_mtls_required";
readonly MQTT_NETWORK_MTLS_CERTIFICATEAUTHORITY: "mqtt_network_mtls_certificateAuthority";
readonly MQTT_NETWORK_MTLS_USER: "mqtt_network_mtls_user";
readonly MQTT_REQUIREAUTHENTICATION: "mqtt_requireAuthentication";
readonly COMPONENTSROOT: "componentsRoot";
readonly TLS_CERTIFICATE: "tls_certificate";
readonly TLS_PRIVATEKEY: "tls_privateKey";
readonly TLS_CERTIFICATEAUTHORITY: "tls_certificateAuthority";
readonly TLS_CIPHERS: "tls_ciphers";
readonly TLS: "tls";
readonly CLONED: "cloned";
};
/**
* This constant maps user-provided configuration parameters (from CLI, environment variables, etc.) to the
* case-sensitive configuration parameters. New parameters added to the CONFIG_PARAMS constant above are
* dynamically included in this mapping via the subsequent for loop, eliminating the need for manual updates.
* Additionally, this constant serves to map old configuration parameters to their updated counterparts.
*/
export declare const CONFIG_PARAM_MAP: {
settings_path: "settings_path";
hdb_root_key: "rootPath";
hdb_root: "rootPath";
rootpath: "rootPath";
server_port_key: "operationsApi_network_port";
server_port: "operationsApi_network_port";
cert_key: "tls_certificate";
certificate: "tls_certificate";
private_key_key: "tls_privateKey";
private_key: "tls_privateKey";
http_secure_enabled_key: "operationsApi_network_https";
https_on: "operationsApi_network_https";
cors_enabled_key: "operationsApi_network_cors";
cors_on: "operationsApi_network_cors";
cors_whitelist_key: "operationsApi_network_corsAccessList";
cors_whitelist: "operationsApi_network_corsAccessList";
cors_accesslist_key: "operationsApi_network_corsAccessList";
cors_accesslist: "operationsApi_network_corsAccessList";
log_level_key: "logging_level";
log_level: "logging_level";
log_path_key: "logging_root";
log_path: "logging_root";
clustering_node_name_key: "clustering_nodeName";
node_name: "clustering_nodeName";
clustering_enabled_key: "clustering_enabled";
clustering: "clustering_enabled";
max_http_threads: "threads_count";
max_hdb_processes: "threads_count";
server_timeout_key: "operationsApi_network_timeout";
server_timeout_ms: "operationsApi_network_timeout";
server_keep_alive_timeout_key: "operationsApi_network_keepAliveTimeout";
server_keep_alive_timeout: "operationsApi_network_keepAliveTimeout";
server_headers_timeout_key: "operationsApi_network_headersTimeout";
server_headers_timeout: "operationsApi_network_headersTimeout";
disable_transaction_log_key: "logging_auditLog";
disable_transaction_log: "logging_auditLog";
operation_token_timeout_key: "authentication_operationTokenTimeout";
operation_token_timeout: "authentication_operationTokenTimeout";
refresh_token_timeout_key: "authentication_refreshTokenTimeout";
refresh_token_timeout: "authentication_refreshTokenTimeout";
custom_functions_port_key: "http_port";
custom_functions_port: "http_port";
custom_functions_directory_key: "componentsRoot";
custom_functions_directory: "componentsRoot";
max_custom_function_processes: "threads_count";
logging_console: "logging_console";
log_to_file: "logging_file";
log_to_stdstreams: "logging_stdStreams";
local_studio_on: "localStudio_enabled";
clustering_port: "clustering_hubServer_cluster_network_port";
clustering_user: "clustering_user";
customfunctions_network_port: "http_port";
customfunctions_tls_certificate: "tls_certificate";
customfunctions_network_cors: "http_cors";
customfunctions_network_corsaccesslist: "http_corsAccessList";
customfunctions_network_headerstimeout: "http_headersTimeout";
customfunctions_network_https: "customFunctions_network_https";
customfunctions_network_keepalivetimeout: "http_keepAliveTimeout";
customfunctions_tls_privatekey: "tls_privateKey";
customfunctions_tls_certificateauthority: "tls_certificateAuthority";
customfunctions_network_timeout: "http_timeout";
customfunctions_tls: "tls";
http_threads: "threads_count";
threads: "threads_count";
threads_count: "threads_count";
customfunctions_processes: "threads_count";
customfunctions_root: "componentsRoot";
operationsapi_root: "rootPath";
};
/** Database parameter config */
export declare const DATABASES_PARAM_CONFIG: {
readonly TABLES: "tables";
readonly PATH: "path";
readonly AUDIT_PATH: "auditPath";
};
/** Describes all available job types */
export declare const JOB_TYPE_ENUM: {
readonly csv_file_load: "csv_file_load";
readonly csv_data_load: "csv_data_load";
readonly csv_url_load: "csv_url_load";
readonly delete_files_before: "delete_files_before";
readonly delete_records_before: "delete_records_before";
readonly delete_audit_logs_before: "delete_audit_logs_before";
readonly delete_transaction_logs_before: "delete_transaction_logs_before";
readonly empty_trash: "empty_trash";
readonly export_local: "export_local";
readonly export_to_s3: "export_to_s3";
readonly import_from_s3: "import_from_s3";
readonly restart_service: "restart_service";
};
/** Clustering Message types */
export declare const CLUSTER_MESSAGE_TYPE_ENUM: {
readonly CLUSTERING_PAYLOAD: "clustering_payload";
readonly DELEGATE_THREAD_RESPONSE: "delegate_thread_response";
readonly CLUSTERING: "clustering";
readonly SCHEMA: "schema";
readonly CLUSTER_STATUS: "cluster_status";
readonly JOB: "job";
readonly CHILD_STARTED: "child_started";
readonly CHILD_STOPPED: "child_stopped";
readonly USER: "user";
readonly RESTART: "restart";
};
/** Specifies values for licenses */
export declare const LICENSE_VALUES: {
readonly VERSION_DEFAULT: "2.2.0";
};
/** The maximum ram allocation in MB per HDB child process */
export declare const RAM_ALLOCATION_ENUM: {
readonly DEVELOPMENT: 8192;
readonly DEFAULT: 512;
};
/** Common Node.js Error Codes */
export declare const NODE_ERROR_CODES: {
readonly ENOENT: "ENOENT";
readonly EACCES: "EACCES";
readonly EEXIST: "EEXIST";
readonly ERR_INVALID_ARG_TYPE: "ERR_INVALID_ARG_TYPE";
};
/** Symbol for metadata */
export declare const METADATA_PROPERTY: unique symbol;
/** Clustering flag */
export declare const CLUSTERING_FLAG = "__clustering__";
/** Timestamp keys */
export declare const TIME_STAMP_NAMES_ENUM: {
readonly CREATED_TIME: "__createdtime__";
readonly UPDATED_TIME: "__updatedtime__";
};
/** Timestamp values */
export declare const TIME_STAMP_NAMES: readonly ["__createdtime__", "__updatedtime__"];
/**
* This value is used to help evaluate whether or not a permissions translation error is related to old permissions values or if it could be another code-related bug/error.
*/
export declare const PERMS_UPDATE_RELEASE_TIMESTAMP = 1598486400000;
/** Search comparator value strings */
export declare const VALUE_SEARCH_COMPARATORS: {
readonly LESS: "<";
readonly LESS_OR_EQ: "<=";
readonly GREATER: ">";
readonly GREATER_OR_EQ: ">=";
readonly BETWEEN: "...";
};
/** Inverted form of VALUE_SEARCH_COMPARATORS */
export declare const VALUE_SEARCH_COMPARATORS_REVERSE_LOOKUP: {
readonly '<': "LESS";
readonly '<=': "LESS_OR_EQ";
readonly '>': "GREATER";
readonly '>=': "GREATER_OR_EQ";
readonly '...': "BETWEEN";
};
/** Standard CRUD operation map */
export declare const PERMS_CRUD_ENUM: {
readonly READ: "read";
readonly INSERT: "insert";
readonly UPDATE: "update";
readonly DELETE: "delete";
};
/** Search wildcards */
export declare const SEARCH_WILDCARDS: readonly ["*", "%"];
/** Function value used in data layer and SQL transactions */
export declare const FUNC_VAL = "func_val";
/** Audit log search types for read operation */
export declare const READ_AUDIT_LOG_SEARCH_TYPES_ENUM: {
readonly HASH_VALUE: "hash_value";
readonly TIMESTAMP: "timestamp";
readonly USERNAME: "username";
};
/** JWT key and pass file names */
export declare const JWT_ENUM: {
readonly JWT_PRIVATE_KEY_NAME: ".jwtPrivate.key";
readonly JWT_PUBLIC_KEY_NAME: ".jwtPublic.key";
readonly JWT_PASSPHRASE_NAME: ".jwtPass";
};
/** ITC Channel Event types */
export declare const ITC_EVENT_TYPES: {
readonly SHUTDOWN: "shutdown";
readonly CHILD_STARTED: "child_started";
readonly CHILD_STOPPED: "child_stopped";
readonly SCHEMA: "schema";
readonly USER: "user";
readonly CLUSTER_STATUS_RESPONSE: "cluster_status_response";
readonly CLUSTER_STATUS_REQUEST: "cluster_status_request";
readonly METRICS: "metrics";
readonly GET_METRICS: "get_metrics";
readonly RESTART: "restart";
readonly START_JOB: "start_job";
readonly NATS_CONSUMER_UPDATE: "nats_consumer_update";
};
/** Supported thread types */
export declare const THREAD_TYPES: {
readonly HTTP: "http";
};
/** A version string for pre 4.0.0 comparison */
export declare const PRE_4_0_0_VERSION = "3.x.x";
/** Authentication audit statusses */
export declare const AUTH_AUDIT_STATUS: {
readonly SUCCESS: "success";
readonly FAILURE: "failure";
};
/** Authentication audit types */
export declare const AUTH_AUDIT_TYPES: {
readonly AUTHENTICATION: "authentication";
readonly AUTHORIZATION: "authorization";
};