import _m0 from 'protobufjs/minimal'; export declare const protobufPackage = "yandex.cloud.mdb.redis.v1.config"; /** * Fields and structure of `RedisConfig` reflects Redis configuration file * parameters. */ export interface RedisConfig { /** * Redis key eviction policy for a dataset that reaches maximum memory, * available to the host. Redis maxmemory setting depends on Managed * Service for Redis [host class](/docs/managed-redis/concepts/instance-types). * * All policies are described in detail in [Redis documentation](https://redis.io/topics/lru-cache). */ maxmemoryPolicy: RedisConfig_MaxmemoryPolicy; /** * Time that Redis keeps the connection open while the client is idle. * If no new command is sent during that time, the connection is closed. */ timeout?: number; /** Authentication password. */ password: string; /** Number of database buckets on a single redis-server process. */ databases?: number; /** Threshold for logging slow requests to server in microseconds (log only slower than it). */ slowlogLogSlowerThan?: number; /** Max slow requests number to log. */ slowlogMaxLen?: number; /** String setting for pub\sub functionality. */ notifyKeyspaceEvents: string; /** Redis connection output buffers limits for pubsub operations. */ clientOutputBufferLimitPubsub?: RedisConfig_ClientOutputBufferLimit; /** Redis connection output buffers limits for clients. */ clientOutputBufferLimitNormal?: RedisConfig_ClientOutputBufferLimit; /** Redis maxmemory percent */ maxmemoryPercent?: number; /** Maximum time in milliseconds for Lua scripts, 0 - disabled mechanism */ luaTimeLimit?: number; /** Replication backlog size as a percentage of flavor maxmemory */ replBacklogSizePercent?: number; /** Controls whether all hash slots must be covered by nodes */ clusterRequireFullCoverage?: boolean; /** Allows read operations when cluster is down */ clusterAllowReadsWhenDown?: boolean; /** Permits Pub/Sub shard operations when cluster is down */ clusterAllowPubsubshardWhenDown?: boolean; /** The time, in minutes, that must elapse in order for the key counter to be divided by two (or decremented if it has a value less <= 10) */ lfuDecayTime?: number; /** Determines how the frequency counter represents key hits. */ lfuLogFactor?: number; /** Allows to turn before switchover in RDSync */ turnBeforeSwitchover?: boolean; /** Allows some data to be lost in favor of faster switchover/restart */ allowDataLoss?: boolean; /** Use JIT for lua scripts and functions */ useLuajit?: boolean; /** Allow redis to use io-threads */ ioThreadsAllowed?: boolean; /** Controls max number of entries in zset before conversion from memory-efficient listpack to CPU-efficient hash table and skiplist */ zsetMaxListpackEntries?: number; /** AOF maximum size as a percentage of disk available */ aofMaxSizePercent?: number; /** Enable active (online) memory defragmentation */ activedefrag?: boolean; } export declare enum RedisConfig_MaxmemoryPolicy { MAXMEMORY_POLICY_UNSPECIFIED = 0, /** VOLATILE_LRU - Try to remove less recently used (LRU) keys with `expire set`. */ VOLATILE_LRU = 1, /** ALLKEYS_LRU - Remove less recently used (LRU) keys. */ ALLKEYS_LRU = 2, /** VOLATILE_LFU - Try to remove least frequently used (LFU) keys with `expire set`. */ VOLATILE_LFU = 3, /** ALLKEYS_LFU - Remove least frequently used (LFU) keys. */ ALLKEYS_LFU = 4, /** VOLATILE_RANDOM - Try to remove keys with `expire set` randomly. */ VOLATILE_RANDOM = 5, /** ALLKEYS_RANDOM - Remove keys randomly. */ ALLKEYS_RANDOM = 6, /** * VOLATILE_TTL - Try to remove less recently used (LRU) keys with `expire set` * and shorter TTL first. */ VOLATILE_TTL = 7, /** * NOEVICTION - Return errors when memory limit was reached and commands could require * more memory to be used. */ NOEVICTION = 8, UNRECOGNIZED = -1 } export declare function redisConfig_MaxmemoryPolicyFromJSON(object: any): RedisConfig_MaxmemoryPolicy; export declare function redisConfig_MaxmemoryPolicyToJSON(object: RedisConfig_MaxmemoryPolicy): string; export interface RedisConfig_ClientOutputBufferLimit { /** Total limit in bytes. */ hardLimit?: number; /** Limit in bytes during certain time period. */ softLimit?: number; /** Seconds for soft limit. */ softSeconds?: number; } export interface RedisConfigSet { /** * Effective settings for a Redis cluster (a combination of settings * defined in [user_config] and [default_config]). */ effectiveConfig?: RedisConfig; /** User-defined settings for a Redis cluster. */ userConfig?: RedisConfig; /** Default configuration for a Redis cluster. */ defaultConfig?: RedisConfig; } export declare const RedisConfig: { encode(message: RedisConfig, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RedisConfig; fromJSON(object: any): RedisConfig; toJSON(message: RedisConfig): unknown; fromPartial, never>) | undefined; clientOutputBufferLimitNormal?: ({ hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & Record, never>) | undefined; maxmemoryPercent?: number | undefined; luaTimeLimit?: number | undefined; replBacklogSizePercent?: number | undefined; clusterRequireFullCoverage?: boolean | undefined; clusterAllowReadsWhenDown?: boolean | undefined; clusterAllowPubsubshardWhenDown?: boolean | undefined; lfuDecayTime?: number | undefined; lfuLogFactor?: number | undefined; turnBeforeSwitchover?: boolean | undefined; allowDataLoss?: boolean | undefined; useLuajit?: boolean | undefined; ioThreadsAllowed?: boolean | undefined; zsetMaxListpackEntries?: number | undefined; aofMaxSizePercent?: number | undefined; activedefrag?: boolean | undefined; } & Record, never>>(object: I): RedisConfig; }; export declare const RedisConfig_ClientOutputBufferLimit: { encode(message: RedisConfig_ClientOutputBufferLimit, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RedisConfig_ClientOutputBufferLimit; fromJSON(object: any): RedisConfig_ClientOutputBufferLimit; toJSON(message: RedisConfig_ClientOutputBufferLimit): unknown; fromPartial, never>>(object: I): RedisConfig_ClientOutputBufferLimit; }; export declare const RedisConfigSet: { encode(message: RedisConfigSet, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): RedisConfigSet; fromJSON(object: any): RedisConfigSet; toJSON(message: RedisConfigSet): unknown; fromPartial, never>) | undefined; clientOutputBufferLimitNormal?: ({ hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & Record, never>) | undefined; maxmemoryPercent?: number | undefined; luaTimeLimit?: number | undefined; replBacklogSizePercent?: number | undefined; clusterRequireFullCoverage?: boolean | undefined; clusterAllowReadsWhenDown?: boolean | undefined; clusterAllowPubsubshardWhenDown?: boolean | undefined; lfuDecayTime?: number | undefined; lfuLogFactor?: number | undefined; turnBeforeSwitchover?: boolean | undefined; allowDataLoss?: boolean | undefined; useLuajit?: boolean | undefined; ioThreadsAllowed?: boolean | undefined; zsetMaxListpackEntries?: number | undefined; aofMaxSizePercent?: number | undefined; activedefrag?: boolean | undefined; } & Record, never>) | undefined; userConfig?: ({ maxmemoryPolicy?: RedisConfig_MaxmemoryPolicy | undefined; timeout?: number | undefined; password?: string | undefined; databases?: number | undefined; slowlogLogSlowerThan?: number | undefined; slowlogMaxLen?: number | undefined; notifyKeyspaceEvents?: string | undefined; clientOutputBufferLimitPubsub?: { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } | undefined; clientOutputBufferLimitNormal?: { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } | undefined; maxmemoryPercent?: number | undefined; luaTimeLimit?: number | undefined; replBacklogSizePercent?: number | undefined; clusterRequireFullCoverage?: boolean | undefined; clusterAllowReadsWhenDown?: boolean | undefined; clusterAllowPubsubshardWhenDown?: boolean | undefined; lfuDecayTime?: number | undefined; lfuLogFactor?: number | undefined; turnBeforeSwitchover?: boolean | undefined; allowDataLoss?: boolean | undefined; useLuajit?: boolean | undefined; ioThreadsAllowed?: boolean | undefined; zsetMaxListpackEntries?: number | undefined; aofMaxSizePercent?: number | undefined; activedefrag?: boolean | undefined; } & { maxmemoryPolicy?: RedisConfig_MaxmemoryPolicy | undefined; timeout?: number | undefined; password?: string | undefined; databases?: number | undefined; slowlogLogSlowerThan?: number | undefined; slowlogMaxLen?: number | undefined; notifyKeyspaceEvents?: string | undefined; clientOutputBufferLimitPubsub?: ({ hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & Record, never>) | undefined; clientOutputBufferLimitNormal?: ({ hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & Record, never>) | undefined; maxmemoryPercent?: number | undefined; luaTimeLimit?: number | undefined; replBacklogSizePercent?: number | undefined; clusterRequireFullCoverage?: boolean | undefined; clusterAllowReadsWhenDown?: boolean | undefined; clusterAllowPubsubshardWhenDown?: boolean | undefined; lfuDecayTime?: number | undefined; lfuLogFactor?: number | undefined; turnBeforeSwitchover?: boolean | undefined; allowDataLoss?: boolean | undefined; useLuajit?: boolean | undefined; ioThreadsAllowed?: boolean | undefined; zsetMaxListpackEntries?: number | undefined; aofMaxSizePercent?: number | undefined; activedefrag?: boolean | undefined; } & Record, never>) | undefined; defaultConfig?: ({ maxmemoryPolicy?: RedisConfig_MaxmemoryPolicy | undefined; timeout?: number | undefined; password?: string | undefined; databases?: number | undefined; slowlogLogSlowerThan?: number | undefined; slowlogMaxLen?: number | undefined; notifyKeyspaceEvents?: string | undefined; clientOutputBufferLimitPubsub?: { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } | undefined; clientOutputBufferLimitNormal?: { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } | undefined; maxmemoryPercent?: number | undefined; luaTimeLimit?: number | undefined; replBacklogSizePercent?: number | undefined; clusterRequireFullCoverage?: boolean | undefined; clusterAllowReadsWhenDown?: boolean | undefined; clusterAllowPubsubshardWhenDown?: boolean | undefined; lfuDecayTime?: number | undefined; lfuLogFactor?: number | undefined; turnBeforeSwitchover?: boolean | undefined; allowDataLoss?: boolean | undefined; useLuajit?: boolean | undefined; ioThreadsAllowed?: boolean | undefined; zsetMaxListpackEntries?: number | undefined; aofMaxSizePercent?: number | undefined; activedefrag?: boolean | undefined; } & { maxmemoryPolicy?: RedisConfig_MaxmemoryPolicy | undefined; timeout?: number | undefined; password?: string | undefined; databases?: number | undefined; slowlogLogSlowerThan?: number | undefined; slowlogMaxLen?: number | undefined; notifyKeyspaceEvents?: string | undefined; clientOutputBufferLimitPubsub?: ({ hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & Record, never>) | undefined; clientOutputBufferLimitNormal?: ({ hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & { hardLimit?: number | undefined; softLimit?: number | undefined; softSeconds?: number | undefined; } & Record, never>) | undefined; maxmemoryPercent?: number | undefined; luaTimeLimit?: number | undefined; replBacklogSizePercent?: number | undefined; clusterRequireFullCoverage?: boolean | undefined; clusterAllowReadsWhenDown?: boolean | undefined; clusterAllowPubsubshardWhenDown?: boolean | undefined; lfuDecayTime?: number | undefined; lfuLogFactor?: number | undefined; turnBeforeSwitchover?: boolean | undefined; allowDataLoss?: boolean | undefined; useLuajit?: boolean | undefined; ioThreadsAllowed?: boolean | undefined; zsetMaxListpackEntries?: number | undefined; aofMaxSizePercent?: number | undefined; activedefrag?: boolean | undefined; } & Record, never>) | undefined; } & Record, never>>(object: I): RedisConfigSet; }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact; } & Record>, never>; export {};