CLIENT_KILL.d.ts 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738
  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. MAXAGE = "MAXAGE"
  10. }
  11. interface KillFilter<T extends ClientKillFilters> {
  12. filter: T;
  13. }
  14. interface KillAddress extends KillFilter<ClientKillFilters.ADDRESS> {
  15. address: `${string}:${number}`;
  16. }
  17. interface KillLocalAddress extends KillFilter<ClientKillFilters.LOCAL_ADDRESS> {
  18. localAddress: `${string}:${number}`;
  19. }
  20. interface KillId extends KillFilter<ClientKillFilters.ID> {
  21. id: number | `${number}`;
  22. }
  23. interface KillType extends KillFilter<ClientKillFilters.TYPE> {
  24. type: 'normal' | 'master' | 'replica' | 'pubsub';
  25. }
  26. interface KillUser extends KillFilter<ClientKillFilters.USER> {
  27. username: string;
  28. }
  29. type KillSkipMe = ClientKillFilters.SKIP_ME | (KillFilter<ClientKillFilters.SKIP_ME> & {
  30. skipMe: boolean;
  31. });
  32. interface KillMaxAge extends KillFilter<ClientKillFilters.MAXAGE> {
  33. maxAge: number;
  34. }
  35. type KillFilters = KillAddress | KillLocalAddress | KillId | KillType | KillUser | KillSkipMe | KillMaxAge;
  36. export declare function transformArguments(filters: KillFilters | Array<KillFilters>): RedisCommandArguments;
  37. export declare function transformReply(): number;
  38. export {};