import { CommandParser } from '../client/parser'; import { RedisArgument, TuplesReply, NumberReply } from '../RESP/types'; export interface IncrExOptions { /** * Optional explicit integer increment (default: 1). Pass as `string` to * preserve precision past `Number.MAX_SAFE_INTEGER` (Redis integers are * 64-bit), e.g. `{ by: '9223372036854775000' }`. */ by?: RedisArgument | number; lowerBound?: RedisArgument | number; upperBound?: RedisArgument | number; /** * Out-of-bounds policy. * - `true` — clamp the result to `lowerBound`/`upperBound` (or to type limits if no explicit bound). * - `false` or omitted (default) — the operation is rejected silently: the reply is * `[currentValue, 0]` and the key's value and TTL are left unchanged. An * `actualIncrement` of `0` always indicates a rejected out-of-bounds operation. */ saturate?: boolean; expiration?: { type: 'EX' | 'PX' | 'EXAT' | 'PXAT'; value: number; ENX?: boolean; } | { type: 'PERSIST'; }; } declare const _default: { readonly parseCommand: (this: void, parser: CommandParser, key: RedisArgument, options?: IncrExOptions) => void; readonly transformReply: () => TuplesReply<[NumberReply, NumberReply]>; }; export default _default; //# sourceMappingURL=INCREX.d.ts.map