BITFIELD.d.ts 1.0 KB

1234567891011121314151617181920212223242526
  1. export declare const FIRST_KEY_INDEX = 1;
  2. export type BitFieldEncoding = `${'i' | 'u'}${number}`;
  3. export interface BitFieldOperation<S extends string> {
  4. operation: S;
  5. }
  6. export interface BitFieldGetOperation extends BitFieldOperation<'GET'> {
  7. encoding: BitFieldEncoding;
  8. offset: number | string;
  9. }
  10. interface BitFieldSetOperation extends BitFieldOperation<'SET'> {
  11. encoding: BitFieldEncoding;
  12. offset: number | string;
  13. value: number;
  14. }
  15. interface BitFieldIncrByOperation extends BitFieldOperation<'INCRBY'> {
  16. encoding: BitFieldEncoding;
  17. offset: number | string;
  18. increment: number;
  19. }
  20. interface BitFieldOverflowOperation extends BitFieldOperation<'OVERFLOW'> {
  21. behavior: string;
  22. }
  23. type BitFieldOperations = Array<BitFieldGetOperation | BitFieldSetOperation | BitFieldIncrByOperation | BitFieldOverflowOperation>;
  24. export declare function transformArguments(key: string, operations: BitFieldOperations): Array<string>;
  25. export declare function transformReply(): Array<number | null>;
  26. export {};