AuthenticationState
The main authentication state object that combines credentials and key storage.AuthenticationCreds
required
Authentication credentials containing identity keys and account information
SignalKeyStore
required
Key store for managing Signal protocol keys (pre-keys, sessions, etc.)
AuthenticationCreds
ExtendsSignalCreds with additional WhatsApp-specific authentication data.
KeyPair
required
The signed identity key pair (readonly)
SignedKeyPair
required
The signed pre-key pair (readonly)
number
required
Signal protocol registration ID (readonly)
KeyPair
required
Noise protocol key pair for encryption (readonly)
KeyPair
required
Ephemeral key pair used during device pairing (readonly)
string
required
Advanced secret key for device identity
Contact
Your own contact information
proto.IADVSignedDeviceIdentity
Signed device identity from WhatsApp
SignalIdentity[]
Array of signal identities for registered devices
string
Key ID for app state synchronization
number
required
ID of the first pre-key that hasn’t been uploaded to servers
number
required
The next pre-key ID to generate
number
Unix timestamp of last account synchronization
string
Platform identifier (e.g., “android”, “ios”)
MinimalMessage[]
required
Array of history messages that have been processed
number
required
Number of times history and app state has been synced
AccountSettings
required
Account-level settings
boolean
required
Whether the account is fully registered
string | undefined
required
Pairing code for linking devices
string | undefined
required
Hash of last properties update
Buffer | undefined
required
Routing information for message delivery
any | undefined
Additional custom data
Supporting Types
KeyPair
Uint8Array
required
Public key bytes
Uint8Array
required
Private key bytes
SignedKeyPair
KeyPair
required
The key pair
Uint8Array
required
Signature of the key pair
number
required
Unique identifier for this key
number
Timestamp in seconds when the key was created
SignalIdentity
ProtocolAddress
required
Protocol address containing JID and device ID
Uint8Array
required
Identity key bytes
ProtocolAddress
string
required
The JID (WhatsApp ID)
number
required
Device identifier
AccountSettings
boolean
required
Whether to unarchive chats when a new message is received
Pick<proto.IConversation, 'ephemeralExpiration' | 'ephemeralSettingTimestamp'>
The default mode to start new conversations with for disappearing messages
SignalKeyStore
Interface for storing and retrieving Signal protocol keys.function
required
Retrieve keys from the store
function
required
Store keys in the store
function
Clear all data in the store
SignalDataTypeMap
Mapping of Signal data types to their value types:KeyPair
Pre-key pairs for establishing sessions
Uint8Array
Encrypted session state
Uint8Array
Group message sender keys
{ [jid: string]: boolean }
Cache of distributed sender keys
proto.Message.IAppStateSyncKeyData
Keys for syncing app state
LTHashState
Version info for app state sync
string
Mapping between phone numbers and LIDs
string[]
List of devices associated with an account
{ token: Buffer; timestamp?: string }
Temporary credentials token
Uint8Array
Identity keys for contacts