CLIENT_KILL.d.ts 1.2 KB

12345678910111213141516171819202122232425262728293031323334
  1. import { RedisCommandArguments } from '.';
  2. export declare enum ClientKillFilters {
  3. ADDRESS = "ADDR",
  4. LOCAL_ADDRESS = "LADDR",
  5. ID = "ID",
  6. TYPE = "TYPE",
  7. USER = "USER",
  8. SKIP_ME = "SKIPME"
  9. }
  10. interface KillFilter<T extends ClientKillFilters> {
  11. filter: T;
  12. }
  13. interface KillAddress extends KillFilter<ClientKillFilters.ADDRESS> {
  14. address: `${string}:${number}`;
  15. }
  16. interface KillLocalAddress extends KillFilter<ClientKillFilters.LOCAL_ADDRESS> {
  17. localAddress: `${string}:${number}`;
  18. }
  19. interface KillId extends KillFilter<ClientKillFilters.ID> {
  20. id: number | `${number}`;
  21. }
  22. interface KillType extends KillFilter<ClientKillFilters.TYPE> {
  23. type: 'normal' | 'master' | 'replica' | 'pubsub';
  24. }
  25. interface KillUser extends KillFilter<ClientKillFilters.USER> {
  26. username: string;
  27. }
  28. type KillSkipMe = ClientKillFilters.SKIP_ME | (KillFilter<ClientKillFilters.SKIP_ME> & {
  29. skipMe: boolean;
  30. });
  31. type KillFilters = KillAddress | KillLocalAddress | KillId | KillType | KillUser | KillSkipMe;
  32. export declare function transformArguments(filters: KillFilters | Array<KillFilters>): RedisCommandArguments;
  33. export declare function transformReply(): number;
  34. export {};