wwebjs-firebase-storage
Version:
A remote authentication plugin for whatsapp-web.js, using Firebase Storage to securely store WhatsApp multi-device session data.
44 lines (43 loc) • 1.41 kB
TypeScript
import { type FirebaseStorage } from 'firebase/storage';
export { initializeApp } from 'firebase/app';
export { getStorage } from 'firebase/storage';
/**
* @class FirebaseStorageStore
* @param {Object} options - Options for the store
* @param {FirebaseStorage} options.firebaseStorage - A Firebase Storage instance
* @param {string} options.sessionPath - Path inside the storage bucket to store the session files
* @returns {FirebaseStorageStore}
* @example
* import { Client, RemoteAuth } from 'whatsapp-web.js';
* const client = new Client({
* authStrategy: new RemoteAuth({
* store: new FirebaseStorageStore({
* firebaseStorage: getStorage(app),
* sessionPath: 'sessions-whatsapp-web.js', // save in a sub-directory
* }),
* backupSyncIntervalMs: 600000, // 10 minutes
* }),
* ... // other options
* });
*/
export declare class FirebaseStorageStore {
fbStorage: FirebaseStorage;
sessionPath?: string;
constructor({ firebaseStorage, sessionPath, }: {
firebaseStorage: FirebaseStorage;
sessionPath?: string;
});
sessionExists(options: {
session: string;
}): Promise<boolean>;
save(options: {
session: string;
}): Promise<void>;
extract(options: {
session: string;
path: string;
}): Promise<void>;
delete(options: {
session: string;
}): Promise<void>;
}