40 lines
1.9 KiB
TypeScript
40 lines
1.9 KiB
TypeScript
import type Participant from '../room/participant/Participant';
|
|
import type { CryptorError } from './errors';
|
|
import type { KeyInfo, RatchetResult } from './types';
|
|
export declare enum KeyProviderEvent {
|
|
SetKey = "setKey",
|
|
/** Event for requesting to ratchet the key used to encrypt the stream */
|
|
RatchetRequest = "ratchetRequest",
|
|
/** Emitted when a key is ratcheted. Could be after auto-ratcheting on decryption failure or
|
|
* following a `RatchetRequest`, will contain the ratcheted key material */
|
|
KeyRatcheted = "keyRatcheted"
|
|
}
|
|
export type KeyProviderCallbacks = {
|
|
[KeyProviderEvent.SetKey]: (keyInfo: KeyInfo, updateCurrentKeyIndex: boolean) => void;
|
|
[KeyProviderEvent.RatchetRequest]: (participantIdentity?: string, keyIndex?: number) => void;
|
|
[KeyProviderEvent.KeyRatcheted]: (ratchetedResult: RatchetResult, participantIdentity?: string, keyIndex?: number) => void;
|
|
};
|
|
export declare enum KeyHandlerEvent {
|
|
/** Emitted when a key has been ratcheted. Is emitted when any key has been ratcheted
|
|
* i.e. when the FrameCryptor tried to ratchet when decryption is failing */
|
|
KeyRatcheted = "keyRatcheted"
|
|
}
|
|
export type ParticipantKeyHandlerCallbacks = {
|
|
[KeyHandlerEvent.KeyRatcheted]: (ratchetResult: RatchetResult, participantIdentity: string, keyIndex?: number) => void;
|
|
};
|
|
export declare enum EncryptionEvent {
|
|
ParticipantEncryptionStatusChanged = "participantEncryptionStatusChanged",
|
|
EncryptionError = "encryptionError"
|
|
}
|
|
export type E2EEManagerCallbacks = {
|
|
[EncryptionEvent.ParticipantEncryptionStatusChanged]: (enabled: boolean, participant: Participant) => void;
|
|
[EncryptionEvent.EncryptionError]: (error: Error, participantIdentity?: string) => void;
|
|
};
|
|
export type CryptorCallbacks = {
|
|
[CryptorEvent.Error]: (error: CryptorError) => void;
|
|
};
|
|
export declare enum CryptorEvent {
|
|
Error = "cryptorError"
|
|
}
|
|
//# sourceMappingURL=events.d.ts.map
|