What is @types/ioredis?
The @types/ioredis package provides TypeScript type definitions for the ioredis package, which is a robust, performance-focused, and full-featured Redis client for Node.js. By using @types/ioredis, developers can take advantage of TypeScript's static type checking for ioredis, ensuring that they use the ioredis API correctly.
What are @types/ioredis's main functionalities?
Connecting to Redis
This code sample demonstrates how to create a new Redis client instance to connect to a Redis server using default settings.
import Redis from 'ioredis';
const redis = new Redis();
Executing Redis Commands
This code sample shows how to set a key-value pair in Redis and then retrieve the value of a key asynchronously.
redis.set('key', 'value');
redis.get('key').then(result => console.log(result));
Working with Hashes
This code sample illustrates how to work with Redis hashes by setting and getting field values within a hash.
redis.hset('hashKey', 'field', 'value');
redis.hget('hashKey', 'field').then(result => console.log(result));
Publish/Subscribe
This code sample demonstrates the publish/subscribe pattern where one Redis client publishes a message to a channel and another client subscribes to that channel to receive messages.
const publisher = new Redis();
const subscriber = new Redis();
subscriber.subscribe('channel', () => {
console.log('Subscribed to channel');
});
subscriber.on('message', (channel, message) => {
console.log(`Received message: ${message} from channel: ${channel}`);
});
publisher.publish('channel', 'Hello world!');
Transactions
This code sample shows how to use a pipeline to execute a transaction in Redis, which includes multiple commands that are executed atomically.
const pipeline = redis.pipeline();
pipeline.set('foo', 'bar');
pipeline.del('baz');
pipeline.exec().then(results => {
console.log(results);
});
Other packages similar to @types/ioredis
redis
The 'redis' package is a Node.js client for Redis. It provides similar functionality to ioredis but has different API design choices and lacks some advanced features like built-in cluster support and Lua scripting capabilities.
Installation
npm install --save @types/ioredis
Summary
This package contains type definitions for ioredis (https://github.com/luin/ioredis).
Details
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/ioredis.
Additional Details
- Last updated: Mon, 07 Feb 2022 07:01:30 GMT
- Dependencies: @types/node
- Global values: none
Credits
These definitions were written by York Yao, Christopher Eck, Yoga Aliarham, Ebrahim, Whemoon Jang, Dmitry Motovilov, Oleg Repin, Ting-Wai To, Alex Petty, Simon Schick, Tianlin, Demian Rodriguez, Andrew Lavers, Claudiu Ceia, Asyrique, Michael Salaverry, Hannes Van De Vreken, T.J. Tarazevits, Michiel De Mey, Dae Heon Han, and Yongkyun Choi.