From f279f47b3586b42e9ef41c90d51627813da5f52c Mon Sep 17 00:00:00 2001 From: Mikunj Date: Wed, 10 Jun 2020 09:43:26 +1000 Subject: [PATCH] Fix other declaration files --- js/modules/metadata/SecretSessionCipher.d.ts | 42 +++++++++++++++++++ js/modules/signal.d.ts | 9 ++++ .../stubs/ciphers/SecretSessionCipherStub.ts | 3 +- ts/window/index.ts | 2 +- ts/window/types/SecretSessionCipher.ts | 20 --------- ts/window/types/signal.ts | 9 ---- 6 files changed, 54 insertions(+), 31 deletions(-) create mode 100644 js/modules/metadata/SecretSessionCipher.d.ts create mode 100644 js/modules/signal.d.ts delete mode 100644 ts/window/types/SecretSessionCipher.ts delete mode 100644 ts/window/types/signal.ts diff --git a/js/modules/metadata/SecretSessionCipher.d.ts b/js/modules/metadata/SecretSessionCipher.d.ts new file mode 100644 index 000000000..98f85bede --- /dev/null +++ b/js/modules/metadata/SecretSessionCipher.d.ts @@ -0,0 +1,42 @@ +import { SignalService } from '../../protobuf'; +import { CipherTextObject } from '../../../libtextsecure/libsignal-protocol'; + +export interface SecretSessionCipherConstructor { + new (storage: any): SecretSessionCipherInterface; +} + +export interface SecretSessionCipherInterface { + encrypt( + destinationPubkey: string, + senderCertificate: SignalService.SenderCertificate, + innerEncryptedMessage: CipherTextObject + ): Promise; + decrypt( + cipherText: ArrayBuffer, + me: { number: string; deviceId: number } + ): Promise<{ + isMe?: boolean; + sender: string; + content: ArrayBuffer; + type: SignalService.Envelope.Type; + }>; +} + +export declare class SecretSessionCipher + implements SecretSessionCipherInterface { + constructor(storage: any); + public encrypt( + destinationPubkey: string, + senderCertificate: SignalService.SenderCertificate, + innerEncryptedMessage: CipherTextObject + ): Promise; + public decrypt( + cipherText: ArrayBuffer, + me: { number: string; deviceId: number } + ): Promise<{ + isMe?: boolean; + sender: string; + content: ArrayBuffer; + type: SignalService.Envelope.Type; + }>; +} diff --git a/js/modules/signal.d.ts b/js/modules/signal.d.ts new file mode 100644 index 000000000..4c313376a --- /dev/null +++ b/js/modules/signal.d.ts @@ -0,0 +1,9 @@ +import { SecretSessionCipherConstructor } from './metadata/SecretSessionCipher'; + +interface Metadata { + SecretSessionCipher: SecretSessionCipherConstructor; +} + +export interface SignalInterface { + Metadata: Metadata; +} diff --git a/ts/test/test-utils/stubs/ciphers/SecretSessionCipherStub.ts b/ts/test/test-utils/stubs/ciphers/SecretSessionCipherStub.ts index ffabce537..ec008e107 100644 --- a/ts/test/test-utils/stubs/ciphers/SecretSessionCipherStub.ts +++ b/ts/test/test-utils/stubs/ciphers/SecretSessionCipherStub.ts @@ -1,7 +1,8 @@ import { SignalService } from '../../../../protobuf'; import { CipherTextObject } from '../../../../../libtextsecure/libsignal-protocol'; +import { SecretSessionCipherInterface } from '../../../../../js/modules/metadata/SecretSessionCipher'; -export class SecretSessionCipherStub { +export class SecretSessionCipherStub implements SecretSessionCipherInterface { public async encrypt( _destinationPubkey: string, _senderCertificate: SignalService.SenderCertificate, diff --git a/ts/window/index.ts b/ts/window/index.ts index 1e7e909f7..4688cde7b 100644 --- a/ts/window/index.ts +++ b/ts/window/index.ts @@ -1,8 +1,8 @@ -import { SignalInterface } from './types/signal'; import { LocalizerType } from '../types/Util'; import LokiMessageAPI from '../../js/modules/loki_message_api'; import LokiPublicChatFactoryAPI from '../../js/modules/loki_public_chat_api'; import { LibsignalProtocol } from '../../libtextsecure/libsignal-protocol'; +import { SignalInterface } from '../../js/modules/signal'; interface WindowInterface extends Window { seedNodeList: any; diff --git a/ts/window/types/SecretSessionCipher.ts b/ts/window/types/SecretSessionCipher.ts deleted file mode 100644 index bdf1d3ff1..000000000 --- a/ts/window/types/SecretSessionCipher.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { SignalService } from '../../protobuf'; -import { CipherTextObject } from '../../../libtextsecure/libsignal-protocol'; - -export declare class SecretSessionCipher { - constructor(storage: any); - public encrypt( - destinationPubkey: string, - senderCertificate: SignalService.SenderCertificate, - innerEncryptedMessage: CipherTextObject - ): Promise; - public decrypt( - cipherText: ArrayBuffer, - me: { number: string; deviceId: number } - ): Promise<{ - isMe?: boolean; - sender: string; - content: ArrayBuffer; - type: SignalService.Envelope.Type; - }>; -} diff --git a/ts/window/types/signal.ts b/ts/window/types/signal.ts deleted file mode 100644 index e1ed96102..000000000 --- a/ts/window/types/signal.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { SecretSessionCipher } from './SecretSessionCipher'; - -interface Metadata { - SecretSessionCipher: typeof SecretSessionCipher; -} - -export interface SignalInterface { - Metadata: Metadata; -}